我一直在尝试找出如何使AMAZON.YesIntent在触发另一个intent之后运行。我四处搜寻并尝试了不同的解决方案,但它们始终无法正常工作。
最佳答案
您可以从另一个意图处理程序调用任何处理程序。
alexa-nodejs-sdk v1
对于alexa-nodejs-sdk
v1,您可以使用
'SomeOtherIntent': function() {
// Do your stuff here
// Now to call AMAZON.YesIntent intent handler
this.emit('AMAZON.YesIntent');
}
alexa-nodejs-sdk v2
对于
alexa-nodejs-sdk
v2,您可以导入目标句柄函数(如果它在其他模块中)或直接调用它并传入handlerinput
。const SomeOtherIntentHandler = {
canHandle(handlerInput) {
const request = handlerInput.requestEnvelope.request;
return request.type === 'IntentRequest'
&& request.intent.name === 'SomeOtherIntent';
},
handle(handlerInput) {
// Do your stuff here
// Now to call AMAZON.YesIntent intent handler
return amazonYesIntentHandler.handle(handlerInput);
}
}