Список функций для разработки Telegram-бота
Этот документ содержит перечень функций, которые необходимо
реализовать в Telegram-боте. Список составлен на основе требований
заказчика.
Функции бота
1. 1. Обработка текстовых запросов с использованием ИИ:
- Использование OpenAI (GPT-4) для генерации ответов.
- Возможность добавлять и переключать провайдеров ИИ (например,
Azure, Google AI) в будущем.
2. 2. Функция погоды:
- Команда /weather [город] для получения информации о текущей
погоде.
- Источник данных: OpenWeatherMap API.
- Ответ включает описание погоды, температуру, влажность и
скорость ветра.
3. 3. Праздничные поздравления:
- Автоматическая отправка поздравлений в дни государственных
праздников Узбекистана.
- Ежедневная проверка даты с использованием планировщика.
4. 4. Ограничение доступа:
- Доступ к функционалу бота только для создателя бота.
- Команда /restricted для проверки прав доступа.
5. 5. Управление ИИ-провайдерами:
- Команда /set_ai [провайдер] для переключения активного провайдера
ИИ.
- Поддерживаются OpenAI, Azure, Google AI с возможностью добавления
новых.
6. 6. Удаление рекламы и ссылок:
- Автоматическое удаление сообщений с запрещенными ссылками.
- Настраиваемый список разрешенных доменов.
- Уведомление пользователя о причине удаления сообщения.
7. 7. Ограничение запросов участников:
- Лимит: 20 запросов в день для одного участника.
- Возможность снятия ограничений для активных участников по
решению администраторов.
- Ежедневное обнуление счетчика запросов.
8. 8. Уведомления о технических работах:
- Участники группы получают уведомление о технических работах
при ошибке обработки запроса.
- Создатель бота получает подробное уведомление об ошибке.
9. 9. Ответы от имени компании:
- Формулирование ответов как от имени ROBOAGRANOM компании
GREEN BIO TECH.
- Указание на рекомендательный характер ответов.
10. 10. Логирование и мониторинг:
- Логирование всех ошибок и действий для упрощения отладки.
- Хранение данных запросов пользователей для анализа активности.
Дополнительные пожелания
- Архитектура должна быть модульной для легкого добавления новых
функций.
- Документация по настройке и запуску бота, включая API-ключи и
конфигурацию.
- Настройка бота для работы на сервере (например, AWS, Heroku).
Рекомендуемые технологии
Язык программирования: Python.
Библиотеки:
- python-telegram-bot (для Telegram API).
- openai (для работы с OpenAI API).
- apscheduler (для планирования задач).
- requests (для работы с внешними API, например, погодными сервисами).
Сервис погоды: OpenWeatherMap API.