Skip to content

Delegant/PadawansTelegramBot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Учебный проект телеграм бота

В рамках приближенного к коммерческому проекту командой было выполнено:

  • интеграция чат бота с базой данных
  • модульное и интеграционное тестирование
  • работа с файлами, как получение так и передача данных
  • Scheduling и формирование напоминаний
  • взаимодействие с API Google календаря
  • деплой проекта на hiroku

Итогами проекта стали наработки и кейсы решений приведенные в проекте.

ТЗ телеграм бота:

В этом документе заказчик описал базовые функции, которые должен выполнять телеграмм-бот.

Будет плюсом, но не обязательно, если вы дополните комментарием и сделанным функционалом функции, которых первоначально не было в ТЗ.

Функционал для пользователя

Этап 0. Определение запроса

Это входная точка общения бота с пользователем.

  • Бот приветствует нового пользователя, рассказывает о себе и может выдать меню на выбор, с каким запросом пришел пользователь:
    • Узнать информацию о приюте (этап 1)
    • Как взять собаку из приюта (этап 2)
    • Прислать отчет о питомце (этап 3)
    • Позвать волонтера
  • Если ни один из вариантов не подходит, то бот может позвать волонтера
  • Если пользователь уже обращался к боту ранее, то новое обращение начинается с выбора запроса, с которым пришел пользователь.

Этап 1. Консультация с новым пользователем

На данном этапе бот должен давать вводную информацию о боте: где он находится, как и когда работает, какие правила пропуска на территорию приюта, правила нахождения внутри и общения с собаками.

  • Бот приветствует пользователя
  • Бот может рассказать о приюте
  • Бот может выдать расписание работы приюта и адрес, схему проезда
  • Бот может выдать общие рекомендации о технике безопасности на территории приюта
  • Бот может принять и записать контактные данные для связи
  • Если бот не может ответить на вопросы клиента, то можно позвать волонтера

Этап 2. Консультация с потенциальным хозяином животного из приюта

На данном этапе бот помогает потенциальным усыновителям собаки из приюта разобраться с бюрократическими (оформление договора) и бытовыми (как подготовиться к жизни с собакой) вопросам.

Основная задача: дать максимально полную информацию о том, как предстоит подготовиться человеку ко встрече с новым членом семьи.

  • Бот приветствует пользователя
  • Бот может выдать правила знакомства с собакой до того, как забрать её из приюта
  • Бот может выдать список документов, необходимых для того, чтобы взять собаку из приюта
  • Бот может выдать список рекомендаций по транспортировке животного
  • Бот может выдать список рекомендаций по обустройству дома для щенка
  • Бот может выдать список рекомендаций по обустройству дома для взрослой собаки
  • Бот может выдать список рекомендаций по обустройству дома для собаки с ограниченными возможностями (зрение, передвижения)
  • Бот может выдать советы кинолога по первичному общению с собакой
  • Бот может выдать рекомендации по проверенным кинологам для дальнейшего обращения к ним
  • Бот может выдать список причин отказа в заборе собаки из приюта
  • Бот может принять и записать контактные данные для связи
  • Если бот не может ответить на вопросы клиента, то можно позвать волонтера

Этап 3. Ведение питомца

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

  • Фото животного
  • Рацион животного
  • Общее самочувствие и привыкание к новому месту
  • Изменение в поведении: отказ от старых привычек, приобретение новых

Отчет нужно присылать каждый день, ограничений в сутках по времени сдачи отчета нет. Раз в два-три дня волонтеры отсматривают все присланные отчеты. В случае, если усыновитель не должным образом заполнял отчет, волонтер через бота может дать обратную связь в стандартной форме :”Дорогой усыновитель, мы заметили, что ты заполняешь отчет не так подробно, как необходимо. Пожалуйста, подойди ответственнее к этому занятию. В противном случае, волонтеры приюта будут обязаны самолично проверять условия содержания собаки”.

В базу новых усыновителей пользователь попадает через волонтера, который его туда заносит. Задача бота: принимать на вход информацию и в случае, если пользователь не присылает информации, напоминать об этом, а если проходит более 2-х дней, то отправлять запрос волонтеру на связь с усыновителем.

Как только период в 30 дней заканчивается, волонтеры принимать решение о том, остается ли собака у хозяина или нет. Испытательный срок может быть пройден, может быть продлен на любое количество дней, а может быть не пройден.

  • Бот может прислать форму ежедневного отчета
  • Если пользователь прислал только фото, то бот может запросить текст
  • Если пользователь прислал только текст, то бот может запросить фото
  • Бот может выдать предупреждение о том, что отчет заполняется плохо (делает волонтер): ”Дорогой усыновитель, мы заметили, что ты заполняешь отчет не так подробно, как необходимо. Пожалуйста, подойди ответственнее к этому занятию. В противном случае, волонтеры приюта будут обязаны самолично проверять условия содержания собаки”
  • Если усыновитель прошел испытательный срок, то бот поздравляет его стандартным сообщением
  • Если усыновителю было назначено дополнительное время испытательного срока, то бот сообщает ему и указывает количество дополнительных дней.
  • Если усыновитель не прошел испытательный срок, то бот уведомляет его об этом и дает инструкции по дальнейшим шагам.
  • Если бот не может ответить на вопросы клиента, то можно позвать волонтера

About

A training project on creating a chat bot for animal shelter

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages