Alexa Skill with Multiple是没问题

时间:2018-02-07 08:27:21

标签: alexa alexa-skills-kit alexa-skill amazon-echo

我有一个工作流程,询问不同的是/否问题。使用内置于“是”和“无意图”的亚马逊,如何将其用于多个问题。

以下是该流程图的示例。 enter image description here

我创建了一个名为" Injury"按顺序为此流程提供不同的处理程序。当使用说"否"对于第一个问题,AMAZON.NoIntent会发出BurnIntent个问题。此时,如果用户说"否",则它会循环回BurnIntent。如何确定意图继续进行的是和否意图?有没有办法跟踪我在哪个问题上确定要发出哪个意图?

2 个答案:

答案 0 :(得分:2)

其中一种方法是将状态或问题保留在self.attributes中。这是某种会话变量,它们在意图之间共享,并在用户使用技能结束后消失。

例如,您可以在那里存储您通过self.attrbiutes["lastQuestionID"] = questionId或当前"级别"向用户询问的最后一个问题。然后,一旦你的"是/否"意图已被触发,您可以使用该值并决定下一步该做什么。

我的假设是您正在使用Node.js SDK。但我非常确定其他语言也有类似内容。

您还可以在Tips on State Management at Three Different Levels文章中了解有关州管理的更多信息。

答案 1 :(得分:0)

另一种方法是在没有太大问题的情况下自定义“是”而不是“插槽”,并将其用于每个问题。 This post说明了操作方法。