0

对于聊天机器人,为单个事件实现 webhook 事件很简单,例如:

If option A, send X
If option B, send Y
If Option C, send Z

但是,如果下一个事件应该基于上一个事件怎么办。比如有列出的选项:

A)
   1
   2
   3
B)
   1
   2
   3

你必须先发送一封信,然后发送一个号码。所以如果我想选择B2,我必须发送B,然后发送2。但是,它需要一种方法来记住B的选择。webhook 的实现方式是,下一条消息会重新启动程序,因此它会从头开始再次期待字母而不是数字。

如果它是普通的 python,我会在第一个字母选择之后使用 input() 方法来等待数字选择,但是这个方法在 webhook 中不是一个可用的选项,因为它会破坏程序。

我假设为此需要某种数据库,在其中记住字母选择,然后可以选择一个数字。我正在通过 Heroku 运行我的 webhook,并希望了解如何通过数据库实现这一点,或者是否有人可以提出不同的方法。

4

1 回答 1

0

我可以建议你两个选择。
选项 1:
您可以使用用户选择的 PSID 和选项来保存用户的当前状态。
选项 2:
您可以以某种方式设计有效负载,以便您可以识别您的选项。例如,当您发送 A) 1、2、3 时,您实际上会在有效负载中发送 A1、A2、A3,并将 1、2、3 作为查看文本发送。

于 2018-10-18T06:37:34.987 回答