Техническое задание: Telegram-бот для учета клиентских заявок
Необходимо разработать функционального Telegram-бота, который автоматизирует процесс приема и обработки заявок от клиентов.
Основные функции системы
1. Клиентская часть (взаимодействие с пользователем)
- Бот должен предоставлять форму для заполнения, включающую следующие поля:
- Имя клиента
- Контактный телефон
- Выбор услуги из заранее заданного списка
- Поле для комментария или дополнительной информации
- Интерфейс должен быть интуитивно понятным и удобным для пользователя.
2. Интеграция с Google Таблицами
- Все данные, полученные от пользователей через форму, должны автоматически и в реальном времени записываться в указанную Google Таблицу.
- Каждая новая заявка должна создавать новую строку в таблице с заполненными полями и временной меткой.
- Необходимо реализовать надежное подключение через Google Sheets API.
3. Уведомления для администратора
- При поступлении каждой новой заявки администратор должен получать мгновенное уведомление в Telegram.
- Уведомление может быть реализовано через отдельного бота, чат или канал - на усмотрение исполнителя, с обоснованием выбора.
- В уведомлении должны отображаться ключевые данные из заявки для быстрого ознакомления.
4. Управление статусами и обратная связь с клиентом
- В Google Таблице администратор должен иметь возможность вручную менять статус заявки (например: «Новая», «В работе», «Выполнена», «Отменена»).
- При изменении статуса заявки в таблице бот должен автоматически отправлять уведомление пользователю, от которого поступила эта заявка, в Telegram.
- Текст уведомления должен соответствовать выбранному статусу.
Технические требования и ожидаемый результат
- Интеграция с Google Sheets: Реализация будет выполнена с использованием официального Google Sheets API. Необходимо настроить сервисный аккаунт или OAuth 2.0 для безопасного доступа к таблице, организовать функцию записи данных и периодического (или событийного) опроса таблицы на предмет изменений статусов.
- Отправка уведомлений администратору: Будет использован метод
sendMessage Telegram Bot API. Для админ-уведомлений может быть создан отдельный бот или использован основной, с отправкой в приватный чат администратора. Это обеспечит мгновенное оповещение без необходимости постоянного мониторинга таблицы. - Надежность и масштабируемость: Код должен быть хорошо структурирован, с обработкой ошибок (например, при недоступности таблицы или API Telegram). Желательно предусмотреть возможность легкого добавления новых полей в форму или новых статусов.
Что необходимо предоставить в ответе
- Оценку сроков: Предположительное время, необходимое для полной реализации проекта, с разбивкой на основные этапы (разработка, тестирование, развертывание).
- Предварительную стоимость: Детальную смету проекта. Если возможны разные варианты реализации (например, с разным уровнем сложности интерфейса или дополнительными функциями), просьба описать их и привести стоимость для каждого варианта.
- Краткое описание реализации: Несколько предложений о том, как вы планируете технически реализовать интеграцию с Google Sheets и систему уведомлений для администратора.