Техническое задание на разработку Telegram-бота
Цель проекта - создание Telegram-бота с функционалом, аналогичным популярному решению для управления входящими сообщениями от клиентов. Бот должен выступать в роли автоответчика и переадресатора сообщений между пользователями и операторами.
Основные требования к функционалу
- Возможность для пользователей начать диалог с компанией через бота.
- Автоматическая переадресация сообщений от пользователей назначенным операторам (администраторам).
- Ответ операторов от имени бота для сохранения анонимности их личных контактов.
- Система очереди сообщений, если все операторы заняты.
- Автоматические уведомления пользователя о статусе его обращения (например, "Оператор получил ваше сообщение").
- Панель управления (админка) для настройки бота, добавления операторов и просмотра статистики.
Структура базы данных (основные таблицы)
Примерный список необходимых таблиц:
- Users - данные пользователей, начавших диалог.
- Operators - список операторов/администраторов с правами доступа.
- Messages - история всех переданных сообщений с метками времени, отправителя и получателя.
- ChatSessions - активные диалоговые сессии, связывающие пользователя и оператора.
- Settings - настройки бота (приветственные сообщения, уведомления и т.д.).
Сценарии работы (User Flow)
- Инициация диалога: Пользователь пишет боту → бот отправляет приветственное сообщение и ставит запрос в очередь.
- Распределение заявки: Система находит свободного оператора и пересылает ему сообщение пользователя.
- Ответ оператора: Оператор отвечает в специальном интерфейсе → бот доставляет ответ пользователю от своего имени.
- Завершение диалога: Оператор отмечает диалог как завершенный или он закрывается автоматически по таймауту.
- Администрирование: Главный администратор может добавлять/удалять операторов, просматривать статистику и настраивать тексты автоответов через веб-панель.
Требования к документации
Техническое задание должно быть максимально подробным и включать:
- Детальное описание всех функций и кнопок.
- Схему базы данных с типами полей и связями.
- Диаграммы ключевых сценариев взаимодействия.
- Описание API (если требуется интеграция с внешними системами).
- Требования к хостингу и инфраструктуре.