Python 如何实现一个电报机器人程序,可以处理多个步骤的输入?

Python 如何实现一个电报机器人程序,可以处理多个步骤的输入?,python,api,python-3.x,telegram,Python,Api,Python 3.x,Telegram,我正在使用电报机器人API在Python3中编程一个电报机器人。我面临着处理请求的问题,这些请求需要多个步骤来实现耦合。 例如,对于航空公司搜索机器人: 机器人请求离开城市 用户输入一个名称 机器人询问目的地 用户输入另一个名称 在一系列问题之后,机器人将结果返回给用户 我能做什么?您需要一个问题树,用户可以遍历它(您可以使用一个链接列表,并将此树保存到数据库) 对于每个问题,都有一个方法可以执行一些操作(比如在数据库中存储一些数据),并向用户发送问题/结果。每个用户都有一个CurrentSta

我正在使用电报机器人API在Python3中编程一个电报机器人。我面临着处理请求的问题,这些请求需要多个步骤来实现耦合。 例如,对于航空公司搜索机器人:

  • 机器人请求离开城市
  • 用户输入一个名称
  • 机器人询问目的地
  • 用户输入另一个名称
  • 在一系列问题之后,机器人将结果返回给用户

  • 我能做什么?

    您需要一个问题树,用户可以遍历它(您可以使用一个链接列表,并将此树保存到数据库)

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

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