1
我使用Telegram bot API編程Python3中的電報機器人。我正面臨處理需要多個聯接步驟的請求的問題。 例如,對於航空公司的搜索機器人:如何實現可以處理多個輸入步驟的Telegram bot程序?
- 機器人要求出發城市,
- 用戶輸入一個名稱,
- 機器人問目的地,
- 用戶輸入另外一個名字,
- 經過一堆問題後,機器人將結果返回給用戶。
我該怎麼辦?
我使用Telegram bot API編程Python3中的電報機器人。我正面臨處理需要多個聯接步驟的請求的問題。 例如,對於航空公司的搜索機器人:如何實現可以處理多個輸入步驟的Telegram bot程序?
我該怎麼辦?
你需要有一個問題樹,用戶可以遍歷它(你可以使用一個鏈表並將這棵樹保存到數據庫中)。
對於每個問題,都有一些方法需要採取一些操作(如在數據庫中存儲一些數據)並將問題/結果發送給用戶。每個用戶都有一個CurrentState
,其中包含問題樹中用戶的狀態。用戶發送了一個答案,機器人將運行相應的方法並回複用戶。
method = //Fetch user CurrentState from db e.g. airlineBot.doSomething
method(TelegramMessage)