Как стать автором
Обновить

Telegram.Такси за 200 строк кода

Время на прочтение2 мин
Количество просмотров18K
Телеграм Такси

Сегодня из пустых пивных банок и старых покрышек мы соберём телеграм-бота для такси. С его помощью можно будет вызывать такси нажатием всего лишь двух кнопок. Вернее так: при первом использовании потребуется нажать три кнопки, а затем всегда — только две. Код написан на Node.js (т.е. ECMAScript, aka JavaScript), без использование каких-либо бот-фреймворков или бот-библиотек — только натуральный продукт — Telegram Bot API. Количество кода указано в названии статьи, выполняется он в Яндекс.Облаке, а точнее в Cloud Functions, а состояния и данные хранятся в Firebase, вернее в Cloud Firestore. Ну а заявки на такси наш скромный бот отправляет в CRM Битрикс24. Как видите — задействованы все! На самого бота можно посмотреть на комиксах ниже, а кликнув по картинке-ссылке под комиксами — открыть и проверить в деле.

Что из себя представляет этот бот


Открытие и запуск телеграм-бота
Комикс #1: Открываем и запускаем бота.

Передача номера телефона
Комикс #2: Да, придётся дать номер телефона. Более того, бот запишет его в БД, чтобы не спрашивать каждый раз.

Сообщение местоположения
Комикс #3: Передаём боту свои координаты. Но их бот сохранять не будет, вполне обоснованно полагая, что вы можете слегка перемещаться.

Подтверждение заказа и борьба с флудом.
Комикс #4: Получаем подтверждение заказа. А наш умный бот пресекает попытку флуда.

Получение заказа в Bitrix24
Комикс #5: А тем временем заказ поступает в CRM Битрикс24.

Детали заказа в Bitrix24
Комикс #6: Диспетчер службы такси видит все необходимые данные, и может звонить своему потенциальному клиенту.

Желаете попробовать? Пожалуйста — кликните по картинке ниже. И не волнуйтесь — ваш номер телефона торговаться на «Горбушке» (и где-либо ещё) не будет.

Ссылка на бот Telegram.Такси
Ссылка на бот: https://t.me/InstantTaxiBot

Как сделать


О том как создавать Telegram-ботов да ещё и в Яндекс.Облаке — читайте в туториале Строим Telegram-бот в Яндекс.Облаке.

Яндекс.Облако
Код бота в Яндекс.Облаке.

О том как подключить код из Yandex Cloud Functions к базе данных Firebase Cloud Firestore — читайте в туториале Алиса помнит всё.

Firebse
Данные бота в Cloud Firestore.

О том как передавать данные в CRM Битрикс24 — читайте в туториале Алиса в стране Битрикс.

Сам код должен быть вполне понятен, к тому же он весьма щедро прокомментирован. Просто читайте его, как архивариусы читают манускрипты.

Программный код бота
Ссылка на GitHab: https://github.com/stmike/tg-bot-taxi.git

git clone https://github.com/stmike/tg-bot-taxi.git
cd tg-bot-taxi
npm install


Есть, конечно, о чём подумать для улучшения юзабилити (прости, господи), а также, в случае изготовления бота для юридического лица в РФ, нельзя забывать и о славно-известном законе (ни то Яровой, ни то Озимой) — ФЗ 152. Дополнительно можно подумать и об использовании этого кода не только для вызова такси, но и для доставки пончиков или перевода бабушек через проезжую часть. Везде, где нам необходимо знать местоположение пользователя и его контакты — это можно легко адаптировать.

Заключение


На сегодня всё. Другие материалы следуют. Кому подобное читать интересно — подписывайтесь на уведомления о новых публикациях. Подписаться можно на этом сайте (кнопка Подписаться внизу), или на Telegram-канал IT Туториал Захар, или на одноимённое сообщество в VK, или Twitter @mikezaharov.
Теги:
Хабы:
Если эта публикация вас вдохновила и вы хотите поддержать автора — не стесняйтесь нажать на кнопку
-16
Комментарии26

Публикации

Истории

Работа

Ближайшие события