【问题标题】:MessageRead event returns empty listMessageRead 事件返回空列表
【发布时间】:2023-12-08 06:19:01
【问题描述】:

我正在尝试检索通过 MessageRead 事件读取的消息,但是当有人读取消息时 get_messages() 返回一个空列表。

这是我的代码

#Handle read messages
@client.on(events.MessageRead)
async def handler(event):
    print('Someone has read all your messages until', event.max_id)
    s = await event.get_messages()
    print(s)

找不到任何解决方案。

我也在尝试获取已读消息的内容,但在文档中找不到任何内容。

【问题讨论】:

    标签: python events event-handling telegram telethon


    【解决方案1】:

    不确定 event.get_messages() 是如何工作的,但我使用 client.get_messages(args=event.chat_id 和 max_id)解决了我的问题。

    【讨论】:

    • MessageRead.Event.get_messages 只会“返回已读取内容的消息列表。”。意思是阅读媒体,如语音笔记。它无法返回已读消息列表,因为该信息不存在(仅顶部的msg_id)。