Как вступить в приватный канал, используя telethon?

Мне нужно вступать в приватные каналы с заявкой, используя библиотеку aiogram на python

Я используя вот такой код

    channel_entity = client.get_entity('название_или_идентификатор_канала')
    client(JoinChannelRequest(channel_entity))

У меня получается вступить в канал, если он публичный и имеет название по типу, topor907. Но у меня не получается вступить в канал, если он приватный, с заявкой и имеет вот такую ссылку https://t.me/+O1q2XsgzeZxmY2Fk Выдаёт ошибку

ValueError: Cannot find any entity corresponding to "https://t.me/+O1q2XsgzeZxmY2Fk"

Пробовал писать просто +O1q2XsgzeZxmY2Fk без https://t.me/


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

Автор решения: Андрей

Метод JoinChannelRequest подходит только для публичных каналов. Для приватных каналов нужно использовать ImportChatInviteRequest:

from telethon.tl.functions.messages import ImportChatInviteRequest
updates = await client(ImportChatInviteRequest('+O1q2XsgzeZxmY2Fk'))

https://docs.telethon.dev/en/stable/examples/chats-and-channels.html#joining-a-private-chat-or-channel

→ Ссылка