gpt4 book ai didi

bots - 如何获取 Telegram Bot 中最后执行的命令?

转载 作者:行者123 更新时间:2023-12-05 03:10:26 34 4
gpt4 key购买 nike

我有一个像这样的 Telegram Bot :

  • 通过 webhook 获取更新
  • 语言:C#(我也欢迎其他语言的回答)
  • 我们有以下用户场景:

    1. 向机器人发送/MyPhoto a_parameter命令
    2. 向机器人发送照片
    3. 向机器人发送另一张照片
    4. 向机器人发送另一张照片

基本问题:

在发送 /MyPhoto a_parameter 命令后确保用户发送的照片正确无误的最佳方法是什么?

一些方法:

  • 我可以将每个用户执行的每个命令保存在数据库中,并获取当前用户最后执行的命令并将其与/MyPhoto 进行比较,如果它们相等然后我确定用户在 /MyPhoto 命令后发送照片。
  • 创建一个缓存系统来保存每个用户最后执行的命令(与数据库混合)

But if it is possible, I want prevent fetch the last executed command from database to improve performance.

你知道更好的解决方案吗?例如,在 telegram bot API 中使用某些东西将上次执行的命令隐藏在用户和 bot 之间的发送/接收消息中。


我通过在上述场景中添加步骤 3 和 4 来编辑问题。

最佳答案

这正是 ForceReply 按钮的用途。 https://core.telegram.org/bots/api#forcereply

1) 机器人收到 MyPhoto命令并使用 ForceReply 键盘将此消息发送回用户。

2) Bot 收到带有 reply_to_message 的新消息包含用户先前消息和 photo 的对象

关于bots - 如何获取 Telegram Bot 中最后执行的命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39981850/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com