在使用SendMessageRequest创建后不具有telethon.errors.rpcerrorlist.ChatWriteForbiddenError的情况下如何将消息发送到Telegram通道?

时间:2019-03-27 14:10:40

标签: python telegram telethon

我试图弄清楚如何使用telethon库将消息发送到电报频道。我可以在创建消息后立即将消息发送到该频道,但是创建消息后,尽管成为了该频道的唯一用户,创建者和管理员,我仍然无法访问它。

运行此命令时,我可以访问频道信息,参与者和发送消息。 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引起)

我还尝试通过创建具有ID和哈希值的InputPeerChannel进行访问,并且抛出相同的错误。创建后,我在下次运行中尝试获取有关通道的任何其他信息时,也会出现相同的访问问题。

例如,以下代码与创建通道在同一运行中正常工作,但在下一次运行中抛出telethon.errors.rpcerrorlist.ChatAdminRequiredError。

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

请告诉我我在做什么错?

0 个答案:

没有答案
相关问题