【问题标题】:Dialogflow chatbot asyncDialogflow 聊天机器人异步
【发布时间】:2018-11-20 04:32:26
【问题描述】:

我正在使用带有V2 C# client library 的Dialogflow。当用户向聊天机器人提供地址时,我使用 web-hook 将地址发送到我的后端。

然后我的后端验证地址并做一些其他事情(我的后端大约需要 2 秒)。

但是,我希望聊天机器人在我的后端完成之前以类似于“给我一秒钟,我将验证您提供给我的地址”的方式回复用户。

然后,一旦我的后端完成,用地址验证的结果回复用户。我不想在后端处理的 2 秒内接受输入。

总之,我想知道,用消息确认用户输入的最佳方式是什么,在我的后端处理完成之前不接受任何进一步的输入,然后最终以结果回复用户我的后端?

【问题讨论】:

    标签: google-cloud-platform backend webhooks dialogflow-es chatbot


    【解决方案1】:

    您需要通过contexts 进行管理。如果您使用的是 Dialogflow SDK 而不是 UI,则可以通过更方便的代码来控制所有这些。

    如果您使用的是 GUI,请设置一个 input_context 并根据您的需要给它一些生命周期。在您的网络挂钩成功解决后,通过output_context 更新或取消相应的input_context 以证明请求的完整性。

    如果用户提出任何其他问题,通过使用contexts 事件,您不会丢失之前的问题,其答案仍将呈现给用户。

    通过不回答任何问题来脱离聊天机器人可能不是一个好的用户体验。如果你真的想这样做,你需要一些 JS 来帮助你在你的机器人界面上为特定的intents 创建一个加载/处理类型的图标,同时你以编程方式控制 UI 上的静音和取消静音命令。

    【讨论】:

      猜你喜欢
      • 2020-09-26
      • 1970-01-01
      • 2018-07-07
      • 2019-10-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-21
      相关资源
      最近更新 更多