Как отправлять сообщения на канал Telegram после создания с помощью SendMessageRequest, не имеющего telethon.errors.rpcerrorlist.ChatWriteForbiddenError? - PullRequest
0 голосов
/ 27 марта 2019

Я пытаюсь выяснить, как отправлять сообщения на канал телеграммы, используя библиотеку телетонов. Я могу отправить сообщение на канал сразу после его создания, но после его создания я не могу получить к нему доступ, несмотря на то, что являюсь единственным пользователем, создателем и администратором канала.

Когда я запускаю это, я могу получить доступ к информации о канале, участникам и отправлять сообщения. И SendMessageRequest, и send_message работают хорошо.

client(functions.channels.CreateChannelRequest('NewTestChannel', 'testchannel'))

client(SendMessageRequest('NewTestChannel', 'test'))
client.send_message('NewTestChannel', 'next message')

Но в следующий раз, когда я запускаю тот же код (просто без создания канала), пытаясь получить доступ к уже существующему каналу, который я создал в прошлый раз

client(SendMessageRequest('NewTestChannel', 'test'))

это следующая ошибка, несмотря на то, что я создатель и администратор этого канала:

telethon.errors.rpcerrorlist.ChatWriteForbiddenError: Вы не можете писать в этом чате (вызвано SendMessageRequest)

Я также пытался получить доступ к созданию InputPeerChannel с идентификатором и хэшем, и он выдает ту же ошибку. Те же проблемы с доступом возникли, когда я пытаюсь получить любую другую информацию о канале в следующем запуске после создания.

Например, следующий код работает точно так же, как и при создании канала, но выдает telethon.errors.rpcerrorlist.ChatAdminRequiredError в следующих запусках.

client(functions.channels.GetParticipantsRequest(channel='MyTestChannel', filter=types.ChannelParticipantsAdmins(), offset=42, limit=100, hash=0))

Скажите, пожалуйста, что я делаю не так?

...