QuadDarv1ne / BusinessLogger

BusinessLogger — это Telegram-бот на Python, предназначенный для продвинутого логирования сообщений, отслеживания изменений и удаления сообщений в бизнес-чатах Telegram

Repository from Github https://github.comQuadDarv1ne/BusinessLoggerRepository from Github https://github.comQuadDarv1ne/BusinessLogger

BusinessLogger

BusinessLogger — это Telegram-бот на Python, предназначенный для продвинутого логирования сообщений, отслеживания изменений и удаления сообщений в бизнес-чатах Telegram.

Построен с использованием библиотеки Aiogram, Redis для кэширования и Loguru для логирования

Возможности

  1. Логирование сообщений: Сохраняет входящие сообщения в Redis с периодом истечения в 21 день.
  2. Обработка редактированных сообщений: Отслеживает и обрабатывает редактированные сообщения, сохраняя оригинальные данные для аудита.
  3. Отслеживание удаленных сообщений: Фиксирует удаленные сообщения и уведомляет назначенного пользователя.
  4. Интеграция с Redis: Эффективное кэширование и быстрый доступ к сообщениям.
  5. Обработка пользовательских колбэков: Поддержка взаимодействий через встроенные кнопки.

Требования

  • Python 3.8+
  • Redis сервер

Установка

  1. Клонирование репозитория:

    git clone <repository-url>
    cd BusinessLogger
  2. Создание виртуального окружения:

    python3 -m venv venv
    source venv/bin/activate  # На Windows используйте `venv\Scripts\activate`
  3. Установка зависимостей:

    pip install -r requirements.txt
  4. Настройка переменных окружения: Создайте файл .env в корневой директории и задайте следующие переменные:

    TOKEN=<Ваш токен Telegram-бота>
    REDIS_HOST=<Хост Redis>
    REDIS_PORT=<Порт Redis>
    REDIS_PASSWORD=<Пароль Redis (опционально)>
    USER_ID=<Ваш Telegram User ID>

Структура файлов

BusinessLogger/
├── bot.py                  # Основная логика бота
├── settings.py             # Конфигурационные настройки
├── keyboards.py            # Обработчики встроенных клавиатур
├── requirements.txt        # Python-зависимости
└── .env                    # Переменные окружения (определяются пользователем)

Использование

  1. Запуск бота:

    python bot.py
  2. Взаимодействие с ботом:

    • Добавьте бота в бизнес-чат.
    • Отслеживайте логирование, редактирование и удаление сообщений.
    • Используйте встроенные кнопки для взаимодействия.

Основные функции

1. Логирование сообщений

Сохраняет каждое входящее сообщение в Redis с предопределенным сроком истечения.

2. Обработка редактированных сообщений

Получает оригинальное сообщение, обновляет его и уведомляет пользователя.

3. Отслеживание удаленных сообщений

Извлекает удаленные сообщения из Redis и отправляет уведомление с их оригинальным содержанием.

4. Колбэки встроенных клавиатур

Кастомные колбэки для встроенных кнопок:

  • EMPTY: Никаких действий.
  • CLOSE: Удаляет сообщение при активации.

Вклад в проект

Ваши идеи и доработки приветствуются! Форкните репозиторий и создайте pull request с вашими улучшениями или исправлениями ошибок.

Лицензия

Этот проект распространяется под лицензией MIT License. Подробнее см. в файле LICENSE.

Благодарности

  • Aiogram за мощный фреймворк для создания Telegram-ботов.
  • Loguru за гибкую библиотеку логирования.
  • Redis за эффективное кэширование и управление данными.

Главный инженер

Автор: Дуплей Максим Игоревич

TG: @quadd4rv1n7

Дата: 30.12.2024

About

BusinessLogger — это Telegram-бот на Python, предназначенный для продвинутого логирования сообщений, отслеживания изменений и удаления сообщений в бизнес-чатах Telegram

License:Other


Languages

Language:Python 96.3%Language:Dockerfile 3.7%