触发意图后,如何从Python Webhook发送多个延迟响应?

时间:2019-08-16 09:40:39

标签: python dialogflow dialogflow-fulfillment

一旦用户触发了意图,我想从python编写的Webhook发送多个延迟响应。触发意图后,我想要的第一个响应,在用户话语之上进行一些处理之后,我想要的另一个响应。

例如:

  • 用户:我想要我的帐户余额。
  • BOT::请告知您的帐号以获取详细信息。
  • 用户:我的帐号为218497234。
  • BOT:稍等,我们正在获取您的详细信息。
  • BOT::欢迎John,您的帐户余额为$ 70000。

在上面的示例中,这是一个银行机器人,它可以答复用户查询。当前正在提取用户提供帐号的帐户余额。当触发“ account_balance_check”意图时,来自BOT的最后两个响应来自Webhook。第一个响应是立即的,要求用户耐心等待帐户详细信息,而第二个响应是在使用帐号从数据库中获取了帐户详细信息之后。

另一种方法可能是触发漫游器的响应,而无需用户发声。在上述情况下,无论如何,机器人本身可以在告诉用户等待之后将响应发送给用户?请注意,告诉用户等待之后,我们不希望用户的讲话触发第二次响应。

1 个答案:

答案 0 :(得分:0)

不幸的是,您无法在Dialogflow中执行此操作,因为一旦发送响应,则您的代理将无法在没有任何用户输入或事件调用的情况下发送响应。

如果您的过程不花很长时间,那么这里是一个答案。一旦收到用户请求,请向他们发送带有“确定”建议的等待消息。用户点击建议后,即可显示回复。另外,使用一些API处理请求,并将数据保存在可以通过API和代理访问的通用文件中,然后从文件中向用户显示响应。