当用户的响应与现有参数不匹配时,可以在操作控制台中指定 NO_Match。但是那个 NO_MATCH 并没有提供到另一个场景的过渡。当无法识别用户输入时,我想回到对话的开始并重新开始。我怎样才能做到这一点?
问问题
399 次
1 回答
2
看起来很奇怪,NO_MATCH 在 Actions Builder/SDK 中支持的唯一转换是到(强制)结束对话场景。但这更多是一个概念性的概念 - NO_MATCH 表示您想尝试对话恢复,或者您正在放弃它。
如果您想捕捉所说的内容和/或对其采取行动(即 - 转换到不同的场景),您可以执行以下操作:
- 创建一个采用“自由格式文本”的类型(我通常称之为“任何”),方法是创建一个类型并选择它支持的“什么样的值”。
- 创建一个所有示例短语都使用此 Any 类型的 Intent - 在此示例中,我将其命名为“fallback”。您应该指定这不是全局 Intent,因为我们只希望它在场景中显式触发。然后创建一个使用 Any 类型的意图参数和一些使用此参数的示例短语。确保突出显示短语中的某些单词以显示哪些部分是“Any”类型,因为它们不会自动匹配。
- 最后,在您的场景中,将其作为最后一个自定义意图。(请注意,它必须是最后一个自定义意图,因为它们是按顺序评估的。)然后您可以将其分配给您想要的任何场景的过渡。
于 2020-08-08T20:07:07.903 回答