【问题标题】:Use one intent twice back to back背靠背使用同一个意图两次
【发布时间】:2019-05-12 08:07:43
【问题描述】:

我有一个具有以下预期结构的聊天机器人-
...
bot:这里有一些问题-
1.什么是编程?
2.什么是对话流?
3. 什么是上下文?
请回复一些问题以了解答案。
用户: 2
机器人: Dialogflow 是一个聊天机器人构建平台
这里有一些您可能有更多问题-
4.什么是意图?
5.什么是履行?
回复问题编号以了解答案-
用户: 5
bot: 实现是......
...
(等等)

在这里,我通过履行从 firebase 获取问题和答案。我有一个将问题编号作为输入的意图,然后 webhook 显示该问题的答案并在其后显示更多问题。
问题是 - 当用户第二次发送问题编号时,不会触发意图。

意图的名称是showAnswer,上下文设置如图所示-

我所做的是 - 将其自身后续的输入和输出上下文放在这里 (showAnswer-followup)。这样它就可以成为它自己的后续意图。

问题是 - 当使用上述上下文技巧时,它甚至第一次都没有响应。当我不将上下文(showAnswer-followup)放在输入上下文区域时,它可以工作。但只有一次。用户第二次发送问题号,它不识别它。

我希望这个意图也能识别用户输入的第二个(问题编号)。 这里有什么问题,我该如何制作这个循环?

【问题讨论】:

    标签: dialogflow-es actions-on-google


    【解决方案1】:

    问题在于,要触发 Intent,所有输入上下文必须匹配。因此,由于您只是在该 Intent 的输出上下文中设置 showAnswer-followup,因此它永远不会触发。

    目前还不清楚为什么您需要后续意图。您可以在上下文中维护有效问题(仅用于存储)并具有触发数字的 Intent。您的 Intent Handler 可以检查数字、更新有效数字并返回答案。

    (顺便说一句,让用户回复数字似乎非常非对话。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-09-08
      • 2010-11-23
      • 1970-01-01
      • 2017-07-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多