mirror of
https://github.com/EDeev/chatping_abobot.git
synced 2026-06-15 11:00:59 +03:00
Многофункциональный Telegram-бот для управления группами с аналитикой активности, интеллектуальными упоминаниями и интерактивными функциями
https://t.me/chat_abobot
aiogramanalyticsasynciochatbotgroup-chatgroup-managementnlppymorphy3pythonspeech-recognitionsqlitetelegram-apitelegram-bottext-processingvoice-recognition
| code | ||
| data | ||
| db | ||
| README.md | ||
| requirements.txt | ||
🤖 ABOBOT - Telegram Group Management Bot
Многофункциональный Telegram-бот для управления групповыми чатами с расширенной аналитикой и интерактивными возможностями.
🎯 Основные возможности
📊 Система аналитики
- Комплексная статистика - детальный учёт активности участников
- Временная сегментация - анализ данных за месяц и весь период
- Многомерные метрики - сообщения, ответы, команды, медиафайлы, голосовые
👥 Управление участниками
- Интеллектуальные упоминания - автоматическое обнаружение имён в сообщениях
- Динамическое именование - морфологическая обработка и нормализация
- Групповые вызовы - команда
/allдля оповещения всех участников
🔧 Утилиты и инструменты
- Транслитерация - автоматический перевод с латиницы на кириллицу
- Транскрипция - конвертация голосовых сообщений в текст (gTTS)
- Текстовые трансформации - реверс слов и предложений
- Генерация голоса - озвучивание текстовых сообщений
🎮 Интерактивные функции
- Игровые механики - симуляция драк и взаимодействий
- Рандомизация - генерация случайных чисел в диапазоне
- Советник - интеграция с API для получения рандомных советов
🏗️ Архитектура системы
Технологический стек
Backend Framework: aiogram (Async Telegram Bot API)
Database Engine: SQLite (многотабличная структура)
NLP Processing: pymorphy3 (морфологический анализ)
Speech Recognition: speech_recognition + gTTS
Async Framework: asyncio (асинхронная обработка)
Структура базы данных
📁 Databases
├── base.db # Основная статистика групп
├── users.db # Маппинг пользователей
├── groups.db # Индивидуальная статистика участников
└── month.db # Временная сегментация данных
Модульная организация
📁 Project Structure
├── bot.py # Точка входа и инициализация
├── handlers.py # Обработчики событий и команд
├── script.py # Бизнес-логика и алгоритмы
├── sql.py # Абстракция базы данных
├── init.py # Конфигурация и зависимости
└── base.py # Константы и настройки
🚀 Быстрый старт
Установка зависимостей
pip install -r requirements.txt
Конфигурация
- Получите токен бота у @BotFather
- Обновите
TOKENвcode/base.py - Настройте права администратора для автоудаления системных сообщений
Запуск
cd code
python bot.py
📋 Команды
| Команда | Функционал |
|---|---|
/start, /help |
Интерактивное меню с описанием возможностей |
/all |
Упоминание всех участников группы |
/stat_group |
Детальная аналитика группы |
/stat_user |
Персональная статистика пользователя |
/recognize |
Транскрипция голосового сообщения |
/edit <имя> |
Установка кастомного имени для упоминаний |
/back_edit |
Возврат к динамическому именованию |
/start_bot |
Активация текстовых событий |
/stop_bot |
Деактивация текстовых событий |
🎲 Текстовые события
Интерактивные команды
- "Чмокнуть [имя]" - позитивное взаимодействие
- "Отмудохать [имя]" - игровая агрессия
- "Подраться с [имя]" - симуляция боя с рандомным исходом
- "Число от X до Y" - генерация случайного числа
- "Переведи (символ) - текст" - трансформация в "кирпичный" язык
- "Переверни - текст" - реверс слов с сохранением пунктуации
- "Озвучь - текст" - генерация голосового сообщения
🔍 Технические особенности
Алгоритмы обработки
- Морфологический анализ - приведение имён к начальной форме
- Детекция транслита - эвристический алгоритм определения раскладки
- Парсинг голоса - интеграция Google Speech Recognition
- Обработка пунктуации - сохранение форматирования при трансформациях
Оптимизации производительности
- Асинхронная архитектура - неблокирующая обработка запросов
- Кэширование соединений - переиспользование подключений к БД
- Ленивая загрузка - подгрузка данных по требованию
📈 Метрики и аналитика
Система ведёт учёт следующих параметров:
- Общее количество сообщений
- Количество ответов на сообщения
- Использование команд бота
- Отправка медиафайлов и стикеров
- Голосовые сообщения и видеокружки
- Размещение ссылок
🛠️ Требования к системе
- Python 3.8+
- Операционная система: Linux/Windows/macOS
- RAM: минимум 512MB
- Свободное место: 100MB для логов и медиафайлов
📄 Лицензия
Проект распространяется под лицензией MIT.
👨💻 Автор
Деев Егор Викторович - Backend Developer
- GitHub: @EDeev
- Email: egor@deev.space
- Telegram: @Egor_Deev
⭐ Если проект оказался полезным, поставьте звезду на GitHub!
Создано с ❤️ от вашего дорогого - deev.space ©