Пеленгация общественного транспорта в любом смартфоне
Наверняка многие из нас знают об
Есть одно «но». У стоящего на остановке пассажира нет с собой полноценного настольного компьютера. А вся красота интерактивной карты превращается в тыкву при попытке открыть карту в браузере смартфона. Не тянет младший брат. Да, есть специальные приложения для смартфонов. Но пока только для
И тут возникает мысль. Почему бы не взять карту Яндекс или Google, и не поместить на нее в виде меток координаты автобусов нужного маршрута? С метками всё просто: Яндекс и Google позволяют ставить пользовательские метки на свои карты. А вот как получить координаты? Есть ли у карты транспорта odinbus.ru какой-нибудь интерфейс для считывания координат? С подобным вопросом я обратился по указанному на сайте адресу
Но вернемся к конструктиву. В очередной раз убеждаюсь, что Firefox — неплохой браузер. А именно, если открыть в нем консоль Javascript (Меню Инструменты — Веб-разработка — Веб-консоль — Вкладка «JS»), то можно увидеть, какие запросы делает интерактивная карта к своему серверу:
А если скопировать этот запрос и ввести его самостоятельно в адресную строку браузера (для тех, кто не в курсе — это место, в котором мы набираем «vk.com» или «odnoklassniki.ru»), то получим список автобусов/маршруток и их координаты:
Дело за малым — извлечь координаты и нанести их на карту на своей веб-странице. Но для этого потребуются усилия. А именно, найти бесплатный домен, предоставляющий PHP и междоменные запросы, а затем — написать на PHP обработку запроса к серверу и — на Javascript — отображение результатов в окне браузера. К счастью, нужный сервер нашелся (хотя всего таковых единицы), а освоение PHP в нужном объеме с учетом желанности цели прошло легко, да и само по себе оно полезно.
В итоге получил, что хотел —
Вы можете настроить карту под собственные нужды. Для этого к адресу веб-страницы карты нужно добавить параметры в следующем виде:
Например, если нужно показать карту размером 700×500, то запрос будет таким:
Еще один пример — показать только маршрут 339:
В этом запросе перечислены идентификаторы маршрута 339: 2 и 3 (2 — направление из Одинцово, 3 — в Одинцово). Чтобы узнать, какие ID у вашего маршрута, нажмите на сайте odinbus.ru кнопку «Маршруты», затем выделите нужный и откройте консоль Javascript, как описано выше. В запросах вы увидите фрагмент типа «2;0|3;0» — это и есть идентификаторы вашего маршрута (2, 3). Можно выделить сразу несколько маршрутов.
Полный список параметров описан в
А если кому интересно самостоятельно повозиться с программированием, то прилагаю
Всем счастливых путешествий!
а по теме…
сиё Хабра достойно!
только вот обратился автор не по адресу… надо было разработчику ИП Кондрахин А. В. в Рязань писать, ну или в «М2М телематика Рязань», которая поддержкой этой системы там занимается…
Хотя по сути я всего лишь изменил форму представления информации. Проблема в том, что мобильные браузеры не дружат с Adobe Flash Player-ом, на котором должна воспроизводиться карта. Думаю, что решение этой проблемы, равно как и появление мобильного приложения для WinPhone — дело времени. А вот над чем действительно следует потрудиться разработчикам — так это повысить оперативность обновления данных. Вчера смотрю по карте — маршрутка в 3.7 км от меня, бац — через секунду уже вылетает из-за поворота! Да, как правильно замечено еще в Территории профанаций, Одинцовская карта — всего . Просто я поступил формально — раз указан адрес обратной связи, значит должны отвечать. Но нет.
в отличии от ОГИ-шных табло