Google 具有多个输入参数的操作意图

Google Action Intent with multiple input parameters

我正在寻找 POC 一个小的 Google 操作,该操作根据用户必须首先回答的几个 yes/no 答案做出决定。实际上我需要:

  1. 提问
  2. 存储结果
  3. 问下一个问题
  4. 存储结果
  5. * 重复直到给出所有 yes/no 个答案,然后使用对话中保存的值做出决定结束对话。

进行中,但我想为任何问题提供帮助。所以用户可以说 "I don't understand"、"Can you give an example"、"Help",它会给出一个例子来帮助用户对他们要回答的问题回答是或否。

在实验中尝试后,我似乎会为我的最终决定创建一个 Intent,然后在其中嵌套一系列后续 Intent 以收集我所有的 yes/no 答案。我觉得这会变得很乱,因为它会是一个巨大的连锁店。

有没有更好的设计方法?

是的,使用 Followup Intents 会很麻烦。这几乎从来都不是解决问题的正确方法。请记住,Intents 捕获的是用户所说的内容,而不是您根据用户所说的内容所做的事情。

如果问题真的只是 yes/no,我会设置六个 Intents:

  • 但是你触发了提问的开始。这可能是您的欢迎意向,也可能是其他内容。
  • 说 "yes" 等价物
  • 说 "no" 等价物
  • 寻求帮助
  • 要求重复问题
  • 处理其他意外输入的后备 Intent

当问题开始时,您的实现将设置一个上下文,其中包含当前提出的问题和到目前为止对问题的回答。回答是或否将更新回复,确定接下来要问的问题,将其保存在上下文中并提出。 Help、repeat 和 fallback Intent 将根据当前问题以适当的信息响应。