-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Телеграм бот для приюта для животных.
Задачей является реализация телеграм бота для приюта для животных. В проекте использованы следующие технологии:
- Spring Boot, Data
- Pengrad
- Junit, Mockito
Бот поддерживает следующий функционал:
- работа с несколькими приютам для животных
- выдача информации об интересуемом приюте
- возможность связаться с волонтером
- возможность оставить свои контактные данные
- консультирование новых пользователей о правилах усыновления, мерах предосторожности, необходимых условий для содержания животных и т.п.
- прием отчетов от усыновителей
- информирование пользователей о необходимости своевременного предоставления отчетов
Бот реализован на основе обработке команд - эндпоинтов, принимаемых от пользователей в виде текстовой команды, например "/start", или формируемой при нажатии пользователем соответствующей кнопки в приложении. Эндпоинты делятся на два вида: специализированные и обычные.
Специализированные эндпоинты - команды, для выполнения которых необходимо выполнять какую-либо логику: обработка входящих текстовых данных, прием фотографий, отображение не типовых меню и т.п. Для каждого такого эндпоинта реализован отдельный метод. Специализированные эндпоинты:
- /start - стартовое меню приложения
- /mainMenu - главное меню выбранного приюта
- /pray - вызов волонтера пользователем
- /getContacts - отправка пользователем своих контактных данных
- /reportInfo - информирование пользователя о форме отчета
- /report - прием текстовой части отчета
- /violation - отправка волонтером предупреждения пользователю
Обычные эндпоинты - эндпоинты, задача которых отправить пользователю некое информационное сообщение (адрес приюта, техника безопасности, схема проезда и пр.) и меню для выбора пользователем дальнейшего действия. Эти эндпоинты хранятся в базе данных, каждый из них обрабатывается одним методом.
API телеграм-бота поддерживает CRUD операции для всех сущностей. Документация так же содержится в Swagger.
HTTP Responses:
Код | Описание |
---|---|
200 | Результат запроса получен |
400 | Невалидные входные данные |
404 | Результат запроса = NULL |
500 | Внутренний косяк сервера |