【问题标题】:How to receive a CallbackQuery in a Telegram BOT如何在 Telegram BOT 中接收 CallbackQuery
【发布时间】:2018-03-31 20:55:18
【问题描述】:

我想在电报机器人中使用InlineKeyboardButton

我的请求是对以下网址的 GET 请求1

https://api.telegram.org/bot{TOKEN}/sendMessage?chat_id={ID}&text=Hello&reply_markup={"inline_keyboard":[[{"text":"Click","callback_data":"1"}]]}

我收到带有一个内联按钮的消息,它按预期工作,但是单击该按钮后没有收到任何更新。

我已经多次阅读文档,我希望更新 callback_query 字段,但没有收到。

我创建了另一个机器人,它完全按预期工作。所以现在的问题是

  • 为什么旧机器人无法按预期工作?这是一个非常古老的机器人,很久以前创建的,这有什么关系吗?

1当然,使用正确的机器人令牌和聊天 ID。

【问题讨论】:

  • 你如何发送这个HTTP请求?
  • 我在很多方面都做了 curl 从命令行,从一个使用 urllib 的 python 程序。为什么要问?
  • 我使用 curl 进行了尝试,它按预期工作 - 我可以使用 CallbackData 获取更新。顺便说一句,您如何获得更新?
  • 同理,通过getUpdates方法发出GET请求。
  • @IvanVinogradov 我没有给它传递任何参数,有什么特别的我不知道吗?

标签: telegram-bot


【解决方案1】:

很遗憾,我的机器人无法重现此问题。

但是,以下问题可能导致您的问题中描述的问题:

  • sendMessagegetUpdates方法的bot API key不同
  • getUpdates 方法的 offset 参数可能无效,导致需要的更新为 confirmed 并且永远不会 电报服务器返回给您
  • 可能有不同的 运行 getUpdates 的应用程序阻止您接收所需的更新

【讨论】:

    猜你喜欢
    • 2017-05-05
    • 1970-01-01
    • 2016-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-16
    • 2017-06-03
    相关资源
    最近更新 更多