Нам понадобится бот, которому мы будем передавать текст сообщения. Потому что если делать от юзера то сообщения будут помечены как прочитанные. Создаём в bot father, копируем токен
Потом создаём папку с сессиями
mkdir sessions
И файл для хранения переменных окружения
nano .env
Шаблон файла:
#Тут данные, полученные на https://my.telegram.org/auth
API_ID=ваш_api_id
API_HASH=ваш_api_hash
BOT_TOKEN=токен
#Куда пересылать сообщения из чатов TARGET_CHAT_ID=-
SOURCE_CHATS=-123456, -7891011
Собираем образ и запускаем авторизацию, для получения сессии
docker build -t tg .
docker run -it --rm -v $(pwd)/sessions:/app/sessions --env-file .env tg login.py
Теперь можно получить id всех чатов в аккаунте
docker run -it --rm -v $(pwd)/sessions:/app/sessions --env-file .env tg findchat.py
После получения списка всех чатов снова открываем .env
#Куда пересылать сообщения из чатов (ID чата)
TARGET_CHAT_ID=-123456
# Названия отслеживаемых чатов через запятую
SOURCE_CHATS=Admins, Users, Github
Собираем и запускаем
docker compose up -d
Формат пересылаемого сообщения:
📨 Сообщение из: Users
🔗 Ссылка: https://t.me/c/123456789/12345
💬 От: Alexey @mako_42
━━━━━━━━━━━━━━━━
Всем привет!