Расписание городского транспорта в Telegram-боте

Кроме расписания городского транспорта на сайте, рады представить расписание в виде Telegram-бота. В отличие от web-версии, в боте возможен поиск по адресам и геолокации с такой же детализацией по времени, как и на сайте.

СОДЕРЖАНИЕ

Почему Telegram-бот?

Без сомнения, мобильное приложение удобней web-версии. Но писать под разные мобильные платформы сильно затратно, потому и пришла идея с Telegram-ботом. Не смотря на некоторые трудности в недемократических странах, Telegram активно развивается, в Украине  его используют 11% пользователей мессенджеров (основную часть пока забирает Viber и Skype). При этом он имеет уникальные возможности:

  • доступное создание публичных каналов;
  • клиент под Android, iPhone, iPad, Windows Phone, Firefox OS, Windows, Mac, Linux, web-версию, приложение под Chrome и другие;
  • возможность создания пользовательских ботов.

Именно последний пункт пригодился для создания бота с расписанием городского транспорта, а наличие клиента под основные операционные системы позволило не плодить много приложений для мобильной версии.

С чего начать?

  1. Установите телеграм в своем телефоне или воспользуйтесь web-версией/десктопным приложением.
  2. Перейдите по ссылке @depovnua_bot или в поиске приложения Telegram введите @depovnua_bot. Там же в поиске можете сразу подписаться на наш канал @depovnua и присоединиться в группу @depovnuag.
  3. Нажмите Запустить и следуйте инструкции.

Возможности бота по отображению расписания

Расписание по одному адресу

Просто напишите боту желаемый адрес. Желательно в формате Улица НомерДома, но бот разспознает и такое:

  • залізничний вокзал;
  • жд вокзал;
  • ВДТУ;
  • фонтан;
  • грош на вишенці.

Вот пример результата расписания по запросу "грош на вишенці" с описанием значения полученной информации (эта же картинка доступна в справке бота):

Итого, что мы получаем? Введя запрос ("грош на вишенці"), бот:

  • показывает название этого места (вул. 600-річчя, 21);
  • находит географические координаты по этому запросу, по координатам находит 3 ближайшие остановки (вул. 600-річчя, завод Форт, вул. Л.Ратушної) и показывает расписание трамваев, троллейбусов и автобусов по каждой остановке с учетом типа дня (выходной или рабочий).
  • возле каждой остановки указывает расстояние от координат определенного по запросу места к самой остановке (129 м).

После внимательного рассмотрения картинки вопрос вызовут разве что странные ссылки вида /morexxx. Нажатие на эту команду открывает детализацию по времени нужного маршрута, так как в сокращенном виде показано только время начала маршрута по остановке, предпоследнее (не в депо) время, и последнее. Например, вот такое:

 

    Пример видео:

    Расписание по двум адресам

    При поиске по одному адресу мы получили остановки и расписание по ним во все стороны. Давайте первый запрос повторим (“грош на вишенці”), а во второй строке напишем адрес, куда нам нужно ехать (“залізничний вокзал”). Для этого после первого запроса в телефоне нажмите Enter с клавиатуры, а в десктопной версии (или web) – Shift+Enter.

    Теперь маршруты ограничены двумя адресами. Правда, при этом могут быть коллизии, когда бот не угадал точно к какой второй остановке вы едете. Тогда попробуйте изменить второй запрос на более точный.

    Пример видео:

    Расписание по геолокации

    Поделитесь с ботом своей текущей локацией (кнопка Локація) или локацией, указанной вручную по карте (например, в Android для этого нужно нажать на иконку-скрепку справа от текста сообщения, выбрать иконку локации и указать на карте точку). В итоге получим рассписание как в поиске по одному адресу, но по вашим координатам.

    А если вдруг появилось желание узнать расписание с геолокацией по двум адресам, создайте запрос в двух строках, в одной из строк введите символ "*" - бот это поймет, как вашу последнюю переданную геолокацию. Через час он забудет, где вы были и, в случае повторного использования этого символа, попросит обновить местоположение.

    Закладки и обратная связь при неправильном адресе

    Вы уже заметили, что снизу блока с расписанием есть две кнопки (“В закладки” и “Невірна адреса”) и догадались, что первая кнопка добавляет ваш запрос в ваши закладки. Они доступны по кнопке меню Закладки и дают возможность одним нажатием повторно использовать ваши запросы.

    Вторая кнопка даст команду боту передать информацию о неверном адресе разработчикам, за что они будут благодарны.

    Дополнительные возможности бота

    Такси

    По кнопке меню Такси бот покажет популярные такси с ценами и телефонами. Нажатие на нижние кнопки с номерами выбирает нужную службу. Для вызова такси нажмите на номер телефона.

    Список праздничных и рабочих дней

    Возможность посмотреть список праздничных и рабочих дней (перенесенных на другую дату) доступна по прямой комманде /weekends. На заметку, все доступные комманды бота можно узнать, нажав символ "/".

    Справка

    Краткая справка доступна по кнопке меню Довідка и по прямой комманде /help.

    Что дальше? Чем можно помочь?

    В дальнейшем планируется:

    • подключить рассписание маршрутных такси ("маршруток")(готово);
    • если будет много неправильно определенных адресов, сделать поиск сначала по базе остановок, а потом определять по геолокации;
    • добавить поиск больше чем по 3 ближайшим остановкам (с использованием инлайновых кнопок, как в Такси);
    • добавить поиск больше чем к 1 остановке.

    Также будем благодарны, если вы:

    • примете участие и будете вносить свои конструктивные замечания и пожелания в группе @depovnuag;
    • подпишетесь на новостной канал сайта @depovnua;
    • будете рекомендовать бота своим знакомым;
    • напишете отзыв в каталоге ботов https://storebot.me/bot/depovnua_bot.