Телеграм бот пишет в лс пользователю при подписке на конкретный канал

Как сделать бота, который напишет в лс пользователю после того когда сам пользователь подпишеться на канал, к которому "привязан" бот? Работаю с библиотекой aiogram, соответственно язык - Python


Ответы (2 шт):

Автор решения: ФОЗАН

Если ты хочешь, чтобы бот сразу же после подписки писал в ЛС человеку, то нужно смотреть в возможности библиотеки на отслеживание подписки на канале. А так можешь прикрутить кнопку для проверки подписки. URL для проверки подписки:

https://api.telegram.org/bot[токен_бота]/getChatMember?chat_id=[айди_канала]&user_id=[айди_пользователя]
→ Ссылка
Автор решения: Vlad

Канал должен быть приватным, и чтобы ему кидали реквест на приём, только тогда бот может писать в лс:

код:

@dp.chat_join_request_handler()
async def he(link: ChatJoinRequest):
    await bot.approve_chat_join_request(link.chat.id, link.from_user.id)
    await bot.send_message(link.from_user.id, 'привет')
→ Ссылка