Телеграммбот построения маршрута с использованием общественного транспорта города Киева
Скачать 2.02 Mb.
|
Письмо ИТ51.320БАК.002 ПО 53 Изм. Письмо № докум. Подпись Дата Рисунок 8.2 – Запрос на доступ к геопозиции Как только пользователь согласится на получение ботом геопозиции, бот автоматически будет искать все возможные остановки общественного транспорта в радиусе 500 метров. Введя адрес, который нужен пользователю, бот будет искать все возможные остановки общественного транспорта и отправит все найденные варианты в чат (рисунок 8.3). Письмо ИТ51.320БАК.002 ПО 54 Изм. Письмо № докум. Подпись Дата Рисунок 8.3 – Ответ бота по запросу Также бот предоставляет возможность заранее видеть, какой общественный транспорт останавливается на той или иной остановке. При выборе остановки общественного транспорта мы получаем информацию об ожидаемом времени прибытия общественного транспорта (рисунок 8.4). Письмо ИТ51.320БАК.002 ПО 55 Изм. Письмо № докум. Подпись Дата Рисунок 8.4 – Подробная информация об остановке Письмо ИТ51.320БАК.002 ПО 56 Изм. Письмо № докум. Подпись Дата 9 ОПИСАНИЕ СОБСТВЕННОЙ РЕАЛИЗАЦИИ В соответствии с заданием дипломного проекта и в соответствии с рассмотренными подходами было решено с помощью средств TeleBot, CherryPy и Requests на языке программирования Python создать телеграмм-бот, который будет предоставлять необходимую информацию. Основные аспекты, которые планируется реализовать в ходе выполнения дипломного проекта: а) получение запроса пользователя; б) обработка запроса пользователя; в) при необходимости уточнить некоторые аспекты запроса; г) в соответствии с обработанным запросом выдать необходимую информацию пользователю; д) предусмотреть реакцию бота на непредвиденные запросы; Также при возможности рассмотреть и реализовать следующие аспекты: а) создание базы данных общественного и остановок; б) получение координат местонахождения пользователя; в) предложить несколько вариантов остановок и маршрутов. Более подробно опишем каждый из аспектов. Мы уверены, что пользователь захочет задать свой вопрос на естественном языке, или выбрать из предложенных нами вариантов, далее это сообщение будет передаваться в сервис, с помощью которого мы сможем получить необходимый нам контекст сообщения, затем эта информация будет передаваться в нашу программу, в которой мы будем определять что делать с этим сообщением, сразу предоставлять информацию, или нужно задать определенные уточняющие вопросы, процесс уточнения может повторяться до тех пор, пока мы не получим необходимую информацию для выдачи максимально полного ответа для пользователя, после завершения процесса получения запроса пользователя и его анализа, мы присылаем ему необходимую информацию. Письмо ИТ51.320БАК.002 ПО 57 Изм. Письмо № докум. Подпись Дата Если пользователь ввел непредвиденный нами запрос или запрос, не касающийся нашей предметной области, то есть два варианта развития. Если запрос не касается темы, то будет отображаться сообщение о том, чтобы пользователь вводил вопросы только относительно транспорта. Если же пользователь ввел запрос о транспорте, но бот по какой-то причине либо не понял его, либо мы не смогли предоставить необходимую информацию по этому запросу, мы будем отвечать заранее подготовленными ответами. Письмо ИТ51.320БАК.002 ПО 58 Изм. Письмо № докум. Подпись Дата ВЫВОДЫ В ходе выполнения дипломной работы были проведены исследования предметной области, определены главные требования к системе и бизнес-процессы. Проанализированы требования к системе в целом, требования к функциям системы, программному и техническому обеспечению. Было проведено исследование технологий для построения телеграмм-бота. В результате исследования были выбраны следующие языки программирования и технологии: Python, модуль TeleBot, модуль CherryPy, Requests, Telegram API и база данных MongoDB. Результатом проведенного исследования явилось создание телеграмм-бота для построения маршрутов с использованием общественного транспорта города Киева. Система современна и удобна, удовлетворяет всем требованиям с точки зрения функциональности, юзабилити, логики. Письмо ИТ51.320БАК.002 ПО 59 Изм. Письмо № докум. Подпись Дата СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 1. Подборка: 30 полезных ботов [Электронный ресурс] – Режим доступа: https://ain.ua/2017/08/14/30-telegram-botov/ 2. Telegram Bot API [Электронный ресурс] – Режим доступа: https://core.telegram.org/bots/api 3. Самоучитель Python [Элктронный ресурс] : Режим доступа: https://pythonworld.ru/samouchitel-python 4. Telegram FAQ [Электронный ресурс]. – Режим доступа: https://telegram.org/faq 5. Сайт Eway [Электронный ресурс]. – Режим доступа: https://www.eway.in.ua/ru/cities/kyiv 6. Telegram-bot[Электронный ресурс]. – Режим доступа: https://habr.com/ru/post/442800/ 7. Телеграмм бот с помощью TeleBot [Электронный ресурс]. – Режим доступа: https://habr.com/ru/post/448310/ 8. Бот для Telegram на Python. Heroku сервер [Электронный ресурс]. – Режим доступа: https://tproger.ru/translations/telegram-bot-create-and-deploy/ 9. CherryPy [Электронный ресурс]. – Режим доступа: https://cherrypy.org/ 10. Создание бота. Telebot [Электронный ресурс]. – Режим доступа: https://medium.com/@plug2up/ %D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%B5%D0%BC- %D1%82%D0%B5%D0%BB%D0%B5%D0%B3%D1%80%D0%B0%D0%BC- %D0%B1%D0%BE%D1%82%D0%B0- 2c8377d4d482 11. Python Requests [Электронный ресурс]. – Режим доступа: https://2.python-requests.org/en/master/ 12. Руководство по работе с HTTP в Python. Библиотека requests [Электронный ресурс]. – Режим доступа: https://khashtamov.com/ru/ pythonrequests/ Письмо ИТ51.320БАК.002 ПО 60 Изм. Письмо № докум. Подпись Дата 13. Сайт Heroku [Электронный ресурс]. – Режим доступа: https://www.heroku.com/ 14. Heroku – Википедия [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/wiki/Heroku 15. Обзор протокола HTTP [Электронный ресурс]. – Режим доступа: https://developer.mozilla.org/ru/docs/Web/HTTP/Overview 16. Очередь сообщений [Электронный ресурс]. – Режим доступа: https://aws.amazon.com/ru/message-queue/ 17. Synbot [Электронный ресурс]. – Режим доступа: https://ru.telegram- store.com/catalog/bots/synbot_/ 18. REST API[Электронный ресурс]. – Режим доступа: https://habr.com/ru/post/351890/ 19. JSON[Электронный ресурс]. – Режим доступа: https://www.json.org/json-ru.html 20. Тестирование телеграмм-бота [Электронный ресурс]. – Режим доступа: https://habr.com/ru/post/322816/ 21. What is Artificial Intelligence (AI) [Электронный ресурс]. – Режим доступа: https://www.techopedia.com/definition/190/artificial-intelligence-ai Письмо ИТ51.320БАК.002 ПО 61 Изм. Письмо № докум. Подпись Дата |