为了账号安全,请及时绑定邮箱和手机立即绑定

如何在电视广播库的对话中获取按钮回调查询

如何在电视广播库的对话中获取按钮回调查询

潇湘沐 2022-10-05 10:05:44
我正在学习使用模块。我想在对话中使用按钮,并获取用户选择的按钮的输出。asynciotelethon@bot.on(events.NewMessage(incoming=True, pattern=r'start'))async def chatbot(event):   sender = await event.get_sender(); SENDER = sender.id   async with bot.conversation(SENDER) as conv:   await conv.send_message('Select a button :')   await conv.send_message('Yes or no?', buttons=[        Button.inline('Yes!', b'yes'),        Button.inline('Nope', b'no')    ])   if selected_button == 'yes' :        # do something   else:       # do something使用文档中给出的回调查询,跳转到 的函数。但不会回到函数。handler(event)events.CallbackQuery()convchatbot如何获取所选按钮信息并在功能中进一步操作?chatbot
查看完整描述

1 回答

?
海绵宝宝撒

TA贡献1809条经验 获得超8个赞

从Telethon v1.11开始,您需要使用Conversation.wait_event,这有点丑陋,但可以解决问题:

# Defined somewhere

def press_event(user_id):

    return events.CallbackQuery(func=lambda e: e.sender_id == user_id)


...


# Later in your conversation

press = await conv.wait_event(press_event(SENDER))


查看完整回答
反对 回复 2022-10-05
  • 1 回答
  • 0 关注
  • 93 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信