Система мониторинга транспорта GPS/ГЛОНАСС
Разработать серверную часть системы мониторинга транспортных средств под LAMP.
Входные данные:
Аппаратные трекеры, через сотовый Интернет по протоколу NMEA 0183 (RMC) передают на сервер приложений на определенный TCP порт IMEI трекера и наборы координат (от 6 до 50 точек за 1 сеанс связи) при движении транспортного средства.
Пример формата передаваемых данных:
#imei#user#pswd#event#6
#25396fb9$GPRMC,062558.000,A,6508.5598,N,03510.5427,E,0.00,0.00,080211,,,A*6D
#25396fb9$GPRMC,062609.000,A,6508.5598,N,03510.5427,E,0.00,0.00,080211,,,A*6A
#25396fb9$GPRMC,062619.000,A,6508.5598,N,03510.5427,E,0.00,0.00,080211,,,A*6B
#25396fb9$GPRMC,062630.000,A,6508.5598,N,03510.5427,E,0.00,0.00,080211,,,A*60
#25396fb9$GPRMC,062646.000,A,6508.5598,N,03510.5427,E,0.00,0.00,080211,,,A*61
#25396fb9$GPRMC,062656.000,A,6508.5598,N,03510.5427,E,0.00,0.00,080211,,,A*60
##
Требуется:
1. Выполнить прослушивание TCP порта на стороне сервера, разобрать полученные сведения от устр-в трекеров, привязать их к конкретному пользователю на сайте по IMEI трекера и записать в MySQL базу.
2. Зарегистрированному пользователю сервиса предоставить возможность просмотра треков (API Яндекс.Карт и API Google Maps), построенных по координатам, полученных от привязанного к пользователю IMEI трекера.
3. Предоставить пользователю возможность создания пользовательских объектов для более удобного именования треков, например "Работа -> Дом". Для треков, начало и конец которых не совпадают с пользовательскими объектами на карте - использовать обратное геокодирование(определение почтового адреса по известной широте и долготе).
4. Предусмотреть возможность редактирования треков (объединение, удаление, переименование)
5. Предусмотреть возможность информирования по желанию пользователя о приближении/удалении трекера от пользовательского объекта.
6. Предусмотреть возможность демо-доступа к сайту сервиса.
7. Разработка мобильной HTML версии сайта для просмотра на смартфонах и мобильных устройствах текущего положения транспорта, расстояния до него и направлении с использованием Geolocation API (например под Opera Mobile 10.1), а также реализовать возможность просмотра треков на экране мобильного устройства. Рекомендуется использование Static API Яндекс.Карт или аналогичного сервиса от Google для возможности использования на броузерах мобильных телефонов, не поддерживающие полноценный javascript.