Node.js (Alexa)是否可以在相同的意图处理程序中获得响应?

Node.js (Alexa)是否可以在相同的意图处理程序中获得响应?,node.js,alexa,alexa-skills-kit,alexa-voice-service,vui,Node.js,Alexa,Alexa Skills Kit,Alexa Voice Service,Vui,我有一个自定义的Alexa技巧,类似于一些问答技巧,我要求用户做出回应(比如选项1、选项2、选项3),但当用户用其中一个被问到的选项做出回应时,会触发一个不同的意图(比如规则意图),因为选项文本与其话语有些相似 我认为,如果同一(或类似)短语触发了多个IntentHandler,那么这不是一个好的设计,但是我不知道为了避免这种情况,我提前知道选项的文本(或者用户将说出什么作为所问问题的答案)。如果我能以某种方式维护用户响应的上下文,我认为这将是解决方案之一 例如:- 1.User : Start

我有一个自定义的Alexa技巧,类似于一些问答技巧,我要求用户做出回应(比如选项1、选项2、选项3),但当用户用其中一个被问到的选项做出回应时,会触发一个不同的意图(比如规则意图),因为选项文本与其话语有些相似

我认为,如果同一(或类似)短语触发了多个IntentHandler,那么这不是一个好的设计,但是我不知道为了避免这种情况,我提前知道选项的文本(或者用户将说出什么作为所问问题的答案)。如果我能以某种方式维护用户响应的上下文,我认为这将是解决方案之一

例如:-

1.User : Start a Science test  {Invokes testIntent }.
2.Alexa : Okay, but before starting do you want to know the rules. Please answer in Yes or No. { response generated from testIntentHandler}
3.User : Yes { invokes many intents }

在第3行中,即使我将其硬编码为意图(比如ruleIntent),那么如果某个问题包含其选项为YesNo,会发生什么情况。我将如何区分这一点,并将其映射到所问问题的回答

解决这个问题的一种方法是使用持久属性或会话属性跟踪状态


您可以在canhandle方法中检查状态,以将用户路由到适当的测试意图

处理此问题的一种方法是使用持久或会话属性跟踪状态


您可以在canhandle方法中检查状态,以将用户路由到适当的测试意图

解决此问题的一种方法是使用对话框。您可以对对话框使用自动委派

为整个技能或特定技能启用自动委派 意图。在本例中,Alexa将根据需要完成所有对话框步骤 在对话框模型上。Alexa会给你的技能发送一个单一的IntentRequest 当对话框完成时


解决这个问题的一种方法是使用对话框。您可以对对话框使用自动委派

为整个技能或特定技能启用自动委派 意图。在本例中,Alexa将根据需要完成所有对话框步骤 在对话框模型上。Alexa会给你的技能发送一个单一的IntentRequest 当对话框完成时