首页 > 解决方案 > 在 Telethon 上编辑机器人消息

问题描述

我正在尝试创建一个带有 Telethon 的电报机器人,它使用内联按钮,并且似乎无法在按下按钮后弄清楚如何编辑我的消息。我有这样的事情要开始:

@bot.on(events.NewMessage(pattern='/start'))
async def send_welcome(event):

    await bot.send_message(event.from_id, 'What food do you like?', buttons=[
        Button.inline('Fruits', 'fruit'),
        Button.inline('Meat', 'meat')
    ])

@bot.on(events.CallbackQuery(data='fruit'))
async def handler(event):

    await bot.edit_message(event.from_id, event.id, 'What fruits do you like?', buttons=[
        Button.inline('Apple', 'apple'),
        Button.inline('Pear', 'pear'),
        ...
    ])

单击水果按钮后,没有任何反应。希望对此有所帮助!

标签: botstelegramtelethon

解决方案


像这样你可以编辑

message = await client.send_message(chat, 'hello')
await client.edit_message(chat, message, 'hello!')
# or
await client.edit_message(chat, message.id, 'hello!!')
# or
await client.edit_message(message, 'hello!!!')

来自 Telethon 的官方文档


推荐阅读