Обязательные подписки
0.3 NEW — Проверка подписки на каналы/группы перед выдачей доступа.
Можно потребовать от пользователей подписку на определённые Telegram-каналы или группы перед одобрением авторизации.
Настройка
[telegram]
check_interval_min = 60 # как часто проверять подписки (минуты, по умолчанию 60)
[[telegram.required_chats]]
chat_id = -1001234567890 # ID канала/группы (отрицательный)
title = "Наш канал" # отображаемое имя
link = "https://t.me/our_channel" # ссылка для пользователя
[[telegram.required_chats]]
chat_id = -1009876543210
title = "Чат поддержки"
link = "https://t.me/support_chat"Как это работает
- Пользователь отправляет код авторизации боту
- Бот проверяет, подписан ли пользователь на все
required_chats - Если не подписан — бот отправляет список каналов со ссылками и просит подписаться
- Код остаётся активным — после подписки пользователь может отправить его повторно
- Если подписан — код принимается и обрабатывается обычным образом
Периодическая проверка
Подписки проверяются не только при авторизации, но и периодически (по check_interval_min). Если пользователь отпишется от обязательного канала — доступ будет ограничен при следующей проверке.
Требования
- Бот должен быть администратором в каждом из
required_chats(иначе не сможет проверить membership) chat_id— это числовой ID канала/группы (можно узнать через @getmyid_bot или пересылку в @userinfobot)