alerts_bot/README.md
Евгений Панков bb7d6b03be Более точное поведение при пересылке.
* другой алгоритм отслеживания изменённых сообщений.
По событиям вместо частых запросов.
* add: portable-install.sh
2025-08-15 20:31:12 +03:00

2.8 KiB
Raw Blame History

Alerts_bot

Телеграм бот для пересылки постов по ключевым словам. Использует библиотеку Telethon и User bot API. То есть для работы бота нужен аккаунт пользователя телеграм.

Установка, настройка и запуск

  1. Запустить portable_install.bat для Виндовс или portable_install.sh для Linux. Это скачает портбельный Пайтон и загрузит необходимые пакеты для работы. Создаст файл
  2. Появится файл run_me.bat или run-me.sh соответсвенно для Windows или Linux
  3. Нужно настроить файл .env
api_id=12345678
api_hash=1234567890....
session_name=userbot_session
source_channel_username=public_tg_channel
target_groups=1234567890,9876543210
groups_clean_srv_msgs=1234567890,9876543210 # если не указать, то берётся из target_groups
filter_keywords=триггерное выражение,слово,ещё слова
filter_negative_keywords=негативные выражения,исключение,то что не должно пересылаться
  • api_id, api_hash получается на my.telegram.org созданием приложения.
  • Записав эти данные api_id, api_hash нужно получить список доступных чатов через python312\python.exe get_chat_list.py. Так же эта процедура создаст необходимый файл сессии. Нужный чат для пересылки в него сообщений записать в target_groups= в файле .env. Их может быть перечислено несколько через запятую.
  • source_channel_username - публичная ссылка на исходный канал. Может сработать и chat_id из полуенного списка выше.
  • groups_clean_srv_msgs Можно указать в каких группах ведётся очистка сервисных сообщений. По умолчанию в тех же что и target_groups
  • Фильтры перечисляются через запятую без пробелов
  1. После настройки запустить run_me.bat или run-me.sh соответсвенно для Windows или Linux

Запуск на доккер

  1. Нужно настроить локально по инструкции выше
  2. Пример docker-compose содержится в docker-compose.yml. Проверить пути для файлов сессии и путь к коду, который будет подгужен в Volume.