【问题标题】:SendMessage in Telegram bot with ReplyKeboardMarkup stops working after updateTelegram bot 中的 SendMessage 与 ReplyKeboardMarkup 在更新后停止工作
【发布时间】:2020-11-19 14:07:25
【问题描述】:

我有一个奇怪的问题。我有一个应用程序(机器人)将消息发送回用户。消息通常(但可能没有)配备键盘(reply_markup=ReplyKeboardMarkup),用户可以在该键盘上选择下一个选项。该应用程序基于 Ubuntu 14.04 > Tomcat 5 > Coldfusion 16 > Telegram bot API 4。一切都很顺利(现在仍然如此!)。

由于我想升级我的老服务器,我一直在为服务器(Ubuntu 18.04 LTS 或 20.04 LTS)、Coldfusion(16、18 以及 Lucee、Openbluedragon)的许多配方苦苦挣扎。 Telegram bot API 5 好像已经上线了,我不能选择。

问题是带有reply_markup 的SendMessage 会导致500 错误,但是没有键盘的相同消息会被接受并顺利发送。键盘已经刻骨铭心,如​​:

mykeyboard='{"keyboard":[["A","B"]],"one_time_keyboard":"true"} '

我在 HTTP 中尝试过 GET 或 POST 方法。我可以理解从 API 4 迁移到 API 5 的一些区别,但是同样的 API 5 一直在生产服务器上与我的应用程序一起工作......头痛。任何人都可以告诉我一种理解的方法吗?谢谢

【问题讨论】:

    标签: keyboard telegram


    【解决方案1】:

    在漫长的谜题之后,这就是答案。似乎在 API 5 中,在键盘的定义中,
    “one_time_keyboard” 不再支持子句。只是戏弄它: mykeyboard='{"keyboard":[["A","B"]]} '

    它会再次运行

    :-(

    【讨论】:

      猜你喜欢
      • 2021-03-26
      • 1970-01-01
      • 2016-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多