【问题标题】:How to implement a Telegram bot program that could handle multiple steps of input?如何实现可以处理多个输入步骤的 Telegram 机器人程序?
【发布时间】:2017-10-28 13:10:13
【问题描述】:

我正在使用 Telegram 机器人 API 在 Python3 中编写电报机器人。我面临处理需要多个步骤来连​​接的请求的问题。 例如,对于航空公司搜索机器人:

  1. 机器人询问出发城市,
  2. 用户输入名称,
  3. 机器人询问目的地,
  4. 用户输入另一个名字,
  5. 在一堆问题之后,机器人将结果返回给用户。

我能做什么?

【问题讨论】:

    标签: python api python-3.x telegram


    【解决方案1】:

    你需要有一个用户可以遍历的问题树(你可以为它使用一个链表并将这个树保存到数据库中)。

    对于每个问题,都有一个方法可以执行一些操作(例如在数据库中存储一些数据)并将问题/结果发送给用户。每个用户都有一个CurrentState,其中包含问题树中用户的状态。用户发送了一个答案,机器人将运行相应的方法并响应用户。

    method = //Fetch user CurrentState from db e.g. airlineBot.doSomething
    method(TelegramMessage)
    

    【讨论】:

      猜你喜欢
      • 2021-03-25
      • 2022-12-15
      • 2020-05-30
      • 2015-11-16
      • 2018-09-15
      • 1970-01-01
      • 1970-01-01
      • 2021-12-06
      • 2022-10-18
      相关资源
      最近更新 更多