Taxi
coinТехническое задание на разработку Telegram бота Такси
Разработчику желательно знать следующее:
Понимание командной разработки
Понимание БД PostgreSQL/MySQL
Понимание библиотек psycopg/py-postgresql / pyTelegramBotAPI
Понимание HTTP и SSL
Понимание веб сервера
Желателен опыт настройки веб сервера nginx/apache
Знание Python
Понимание синтаксиса
Понимание парадигмы объектно ориентированного программирования.
Все вышеперечисленные пункты помогли бы Вам быстро реализовать бота
Функционал бота:
После нажатия на кнопку старт появляется главное меню. Кнопки будут закрепленными. На блок-схеме изображены кнопки главного меню.
ЗАКАЗАТЬ ТАКСИ
Когда водитель нажимает кнопку Я еще не на месте бот запрашивает время через которое водитель будет на месте и комментарий (причину, почему водитель не на месте) .
Когда водитель отменяет заказ, бот спрашивает причину. После этого бот отправляет пользователю уведомление о том что водитель отменил заказ по выбранной причине и предлагает пользователю ввести свой комментарий на эту ситуацию.
Когда пользователь нажимает на кнопку Вывести текущую стоимость бот выводит цену только тех км, что они проехали в данный момент. За 5 минут, до того как такси приедет на место назначения бот оповещает и водителя и пользователя о том что они скоро прибудут на место назначения. Когда такси уже на месте, бот выводит такие кнопки:
Если у пользователя не хватает средств на кошельке, в конце поездки бот оповещает об этом водителя, и предлагает
выбрать способ, которым пользователь оплатил поездку. После оставления отзыва до рейтинга пользователя и водителя добавляются или отнимаются баллы, в зависимости от того какой отзыв им оставили.
😂+5 баллов 👍 +1 балл 🙄 0 баллов 😔 -1 балл 😡 -5 баллов
Переключатель Не беспокоить, обозначает, что пользователю можно только посылать сообщения (звонить нельзя)
В разделе Шаблоны адресов отображаются сохраненные адреса. Прямо оттуда можно заказать такси по выбранному маршруту. В разделе Отчеты о поездках отображаются отчеты о всех поездках пользователя.
Обратите внимание , все нюансы в ТЗ возможно будут изменены в ходе разработки для улучшения качества и удобства пользования.