如何使用 Telethon 获取收到的消息的 message_id?

Vla*_*lev 1 python telegram-bot telethon

我将replier.py作为来自 Telethon 官方示例的基本代码。
每次收到消息时,我都想获取消息 ID。

...
@events.register(events.NewMessage)
async def handler(event):
    if not event.out:
        print(f'received message_id = {event.message_id()}')
    client = event.client

with client:
    client.add_event_handler(handler)
    client.run_until_disconnected()
Run Code Online (Sandbox Code Playgroud)
>>> ... AttributeError: 'Message' object has no attribute 'message_id'
Run Code Online (Sandbox Code Playgroud)

我尝试了几种变体,但都没有成功。
如何正确操作?

Lon*_*ami 5

它是一个属性,您可以使用点运算符来访问它:

@events.register(events.NewMessage)
async def handler(event):
    message_id = event.id
    print(message_id)
Run Code Online (Sandbox Code Playgroud)

另请参阅Telethon 关于该主题的常见问题解答