Розклад руху громадського транспорту у Telegram-боті

У доповнення до розкладу руху громадського транспорту на сайті, розклад доступний у вигляді Telegram-боту. На відміну від web-версії, де пошук здійснюється лише за назвою зупинки, у боті реалізований пошук ще й за адресами та геолокацією. Деталізація розкладу за часом така ж, як і на сайті.

ЗМІСТ

Чому Telegram-бот?

Безперечно, мобільний застосунок зручніший, ніж web-версія. Але писати під різні мобільні платформи занадто затратно, тому й виникла ідея з Telegram-ботом. Незважаючи на деякі труднощі у недемократичних країнах, Telegram активно развивается, активно розвивається, в Україні ним користується 31% користувачів месенджерів (основну частину поки що забирають Viber та Messenger Facebook).

При цьому він має унікальні можливості:

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

Саме останній пункт став у пригоді для створення боту з розкладом громадського транспорту, а наявність клієнта під основні операційні системи дала можливість не множити багато застосунків для мобільної версії.

З чого розпочати?

  1. Встановіть Telegram в своєму смартфоні або скористайтесь web-версією чи застосунком для комп'ютера.
  2. 2. Перейдіть за посиланням @depovnua_bot або у пошуку застосунку Telegram введіть @depovnua_bot. Там же у пошуку можете одразу підписатися на наш канал @depovnua та приєднатися до групи @depovnuag.
  3. Натисніть у боті Запустити та дотримуйтесь інструкції.

Можливості боту із відображення розкладу

Розклад за однією адресою

Просто напишіть боту необхідну адресу, він знайде три найближчих до зазначеного місця зупинки та покаже перелік маршрутів, які проходять по цих зупинках, та їх розклад. Адресу бажано зазначати у форматі Вулиця НомерБудинку, але бот зрозуміє, наприклад, і таке:

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

Ось приклад результату пошуку за запитом "мегамолл" із роз’ясненням отриманої інформації: (ця картинка також доступна в довідці бота в Telegram):

Бот вінницького розкладу

Отже, що ми отримуємо? На запит "мегамолл" бот:

  • показує адресу цього місця (вул. 600-річчя, 17), із наданням посилання на Карти Google;
  • знаходить географічні координати цієї адреси, за координатами знаходить три найближчі зупинки (Термінал, Вул. 600-річчя, Просп. Космонавтів);
  • надає посилання на місця розташування зупинок на Картах Google та зазначає відстань від координат визначеного за запитом місця до самої зупинки, окремо для кожної зупинки (117 м, 428 м, 444 м);
  • показує розклад руху трамваїв, тролейбусів, автобусів та маршрутних таксі по кожній зупинці, по усіх напрямках, з урахуванням поточного типу дня (робочий або вихідний).

На малюнку видно, що бот для кожного маршруту і напрямку руху видає посилання виду /morexxx. Натискання на цю команду відкриває деталізацію розкладу руху потрібного маршруту протягом усього дня.

телеграм бот громадського розкладу

Приклад відео:

Натискання на команду /detaxxxx відкриває деталізацію розкладу руху найближчого рейсу, де зазначені усі зупинки проходження маршруту.

розклад трамваїі і тролейбусів

Деталізація розкладу маршрутних таксі дещо відмінна від іншого транспорту. За командою /morexxxx буде наданий час перших та останніх рейсів, інтервал руху та перелік зупинок за маршрутом. За наявності на маршруті розкладу руху, замість інтервалу буде зазначений орієнтовний розклад по обраній зупинці.

розклад у Вінниці

Розклад за двома адресами

Шукаючи за однією адресою, ми отримали зупинки та розклад по них у всіх напрямках. Повторимо перший запит ("мегамолл"), але у другому рядку напишемо адресу, куди нам потрібно їхати ("залізничний вокзал"). Для цього після першого запиту у смартфоні натисніть з клавіатури Enter, а у десктопній або веб версії – Shift+Enter.

розклад руху у Вінниці

Тепер пошук обмежений маршрутами, які напряму проходять між зазначеними адресами. Зважайте, що при цьому можуть виникати ситуації, коли бот не вгадав точно, до якої зупинки ви їдете, тому не показав жодного маршруту. Тоді спробуйте змінити другу частину запиту на більш точне місце.

Приклад відео:

Розклад за геолокацією

Поділіться с ботом своїм поточним місцем розташування (кнопка Локація) або зазначеним вручну на мапі місцем (наприклад, в Android для цього потрібно натиснути на іконку-скріпку справа від тексту повідомлення, вибрати іконку розташування та вказати на мапі потрібну точку). У результаті отримаєте розклад як у пошуку за однією адресою, але за вашими координатами.

бот розкладу

Також є можливість дізнатись розклад за двома адресами, зазначивши в якості однієї з них символ "*". Цей символ (без лапок) бот зрозуміє як ваше останнє передане місце розташування. Майте на увазі, що через годину бот забуде локацію, якою ви з ним поділились, і при повторному використанні символа "*" попросить оновити місце розташування.

Закладки та зворотній зв’язок при неправильній адресі

Ви вже помітили, що внизу блоку з розкладом є дві кнопки ("В закладки" та "Невірна адреса") і здогадались, що перша кнопка додає ваш запит у ваші закладки. Вони доступні за кнопкою меню Закладки і дають можливість одним натисканням повторно використовувати ваші запити.

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

Додаткові можливості бота

Таксі

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

таксі в боті

Перелік святкових та робочих днів

За прямою командою /weekends можливо подивитись перелік святкових днів та перенесених робочих днів. На замітку, усі доступні команди боту можна дізнатись, набравши у рядку повідомлення символ "/".

Довідка

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

Що далі? Чим можна допомогти?

У подальшому плануємо:

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

Також будемо вдячні, якщо ви:

  • візьмете участь та будете вносити свої конструктивні зауваження і пропозиції у групі @depovnuag;
  • підпишетесь на новинний канал сайту @depovnua;
  • будете рекомендувати бота своїм знайомим.

Новини Telegram-бота