mirror of
https://github.com/FerraSoft/bottohelp.git
synced 2026-08-06 21:55:03 +00:00
9.7 KiB
9.7 KiB
🚀 Telegram Bot с системой отчетов об ошибках и ИИ-анализом
Многофункциональный Telegram бот на Python с продвинутой системой ранжирования пользователей, играми и интеграцией с внешними API.
✨ Основные возможности
🤖 Система отчетов об ошибках с ИИ
- Умные отчеты - администраторы могут отправлять детальные отчеты об ошибках
- ИИ-анализ - автоматический анализ проблем с помощью OpenAI GPT
- Автоматическая интеграция - обработанные ошибки попадают в план разработки
- Уведомления разработчика - мгновенные оповещения о новых ошибках
🤝 Интерактивные функции
- Автореакции - автоматическая реакция 🤝 на сообщения с "+"
- Повышение вовлеченности - интерактивные элементы для активного общения
🎮 Игровые возможности
- Классические игры: Камень-ножницы-бумага, Крестики-нолики, Викторина
- Расширенные игры: Морской бой, 2048, Тетрис, Змейка
- Система достижений - разблокировка значков и начисление очков
🤝 Интерактивные функции
- Автореакции - автоматическая реакция 🤝 на сообщения с "+"
- Повышение вовлеченности - интерактивные элементы для активного общения
📊 Система ранжирования
- Военная иерархия - от Рядового до Маршала
- Рейтинговые таблицы - топ пользователей по очкам
- Достижения - система значков и наград
🛠 Администрирование
- Модерация - бан, мут, кик, предупреждения пользователей
- Планировщик постов - автоматическая публикация по расписанию
- Импорт пользователей - загрузка данных из CSV файлов
🌐 Интеграция с API
- Погода - актуальная информация через OpenWeatherMap
- Новости - свежие новости через NewsAPI
- ИИ-анализ - интеллектуальная обработка ошибок через OpenAI
🚀 Быстрый старт
Предварительные требования
Python 3.10+
pip install -r requirements.txt
Настройка
-
Склонируйте репозиторий
git clone <repository-url> cd telegram_bot -
Настройте API ключи
cp config_template.py config_local.py # Отредактируйте config_local.py с вашими ключами -
Запустите бота
python bot.py -
Протестируйте систему
python test_error_system.py
📋 Команды администраторов
Система отчетов об ошибках
/report_error <тип> <заголовок> [описание]- отправить отчет об ошибке/admin_errors [статус]- показать список ошибок/analyze_error_ai <ID>- проанализировать ошибку ИИ/add_error_to_todo <ID>- добавить в план разработки
Модерация
/warn [пользователь] [причина]- выдать предупреждение/ban [пользователь] [причина]- заблокировать пользователя/mute [пользователь] [время]- временно заглушить
Управление контентом
/schedule_post [время] [текст]- запланировать публикацию/list_posts- показать запланированные посты
🧪 Тестирование
Проект включает встроенный тестовый скрипт для проверки функциональности:
python test_error_system.py
Что тестируется:
- ✅ Подключение к базе данных
- ✅ Работа с таблицей ошибок
- ✅ Система фильтрации и поиска
- ✅ Интеграция с ИИ (если настроен)
- ✅ Работа с TODO файлом
- ✅ Система уведомлений
📁 Структура проекта
telegram_bot/
├── bot.py # Основной файл бота
├── database_sqlite.py # Работа с БД (+ таблица errors)
├── config_local.py # Ваши API ключи (не публикуется)
├── config_template.py # Шаблон для настройки
├── test_error_system.py # Тестовый скрипт
├── requirements.txt # Зависимости Python
├── TODO.md # План разработки
├── README.md # Полная документация
└── .gitignore # Игнорируемые файлы
🔧 Настройка API ключей
Обязательные ключи:
- Telegram Bot Token - получите от @BotFather
Опциональные ключи:
- OpenWeatherMap API - для команды
/weather - NewsAPI - для команды
/news - OpenAI API - для анализа ошибок ИИ
Получение ключей:
- Скопируйте
config_template.pyвconfig_local.py - Заполните реальными ключами API
- Никогда не публикуйте
config_local.pyв открытый доступ
📊 База данных
Автоматически создается файл telegram_bot.db со следующими таблицами:
- users - пользователи и их статистика
- errors - система отчетов об ошибках
- warnings - предупреждения пользователей
- games - игровые сессии
- scheduled_posts - запланированные публикации
🤝 Как внести вклад
- Сделайте форк проекта
- Создайте ветку для вашей функции (
git checkout -b feature/amazing-feature) - Закоммитьте изменения (
git commit -m 'Add amazing feature') - Отправьте в ветку (
git push origin feature/amazing-feature) - Создайте Pull Request
📝 Лицензия
Этот проект распространяется под лицензией MIT - см. файл LICENSE для подробностей.
🙏 Поддержка проекта
Если вам нравится этот бот, вы можете поддержать разработку:
- ⭐ Поставьте звезду на GitHub
- 🐛 Сообщайте об ошибках через систему отчетов
- 💡 Предлагайте новые функции
- 🔄 Делайте форки и улучшайте код
📋 Быстрый запуск
-
Клонируйте репозиторий
git clone <repository-url> cd telegram_bot -
Настройте API ключи
cp config_template.py config_local.py # Отредактируйте config_local.py -
Установите зависимости
pip install -r requirements.txt -
Запустите бота
python bot.py -
Протестируйте систему
python test_error_system.py
🔧 Основные команды администраторов
Система отчетов об ошибках
/report_error <тип> <заголовок> [описание]- отправить отчет/admin_errors [статус]- просмотреть ошибки/analyze_error_ai <ID>- проанализировать с ИИ/add_error_to_todo <ID>- добавить в план разработки
Типы ошибок
bug- ошибка в работе ботаcrash- критическая ошибка/падениеfeature- предложение новой функцииui- проблема интерфейсаsecurity- проблема безопасностиimprovement- предложение улучшения
🚀 Развертывание
Docker (рекомендуется)
docker-compose up -d
Локальный запуск
# Основной бот
python bot.py
# Планировщик постов (в другом терминале)
python scheduler.py
Создано с ❤️ для сообщества Telegram ботов