AlexaSkill.prototype.eventHandlers = {
OnSessionStarted: function(sessionStartedRequest, session){
},
OnLaunch: function(launchRequest, session, response){
throw: "OnLaunch should be overriden by subclass";
},
OnIntent: function(intentRequest, session, response){
var intent = intentRequest.intent,
intentName = intenRequest.intent.name,
intentHandler = this.intentHandler(intentName);
if (intentHandler){
console.log('dispatch intent =' + intenRequest);
intentHandl.ercall(this,intent, session,session);
} else {
throw 'Unsupported intent =' + intenName;
}
},
OnSessionEnded: function(sessionEndedRequest,session){
}
};
仍然试图弄清楚这个OnIntent在这个事件Handler中做了什么;
因此它(在会话中),“Alexa,请求调用,然后是话语”(只是混淆了 你必须再次询问Alexa(启动?)会话再次唤醒Alexa)
或者它只是故事技巧中的三条路线(路径一,路径二,路径三)
我也做了删除它,并尝试查看它是否有效,但它不是
祝福和爱很多
KC.D
答案 0 :(得分:1)
" onIntent" Alexa Skills Kit中的功能是Alexa语音服务和您正在构建的技能之间的中间层。它需要"意图" (用户根据您的Sample Utterances请求的内容)并将其传递给您自己代码中的匹配函数。
你可以在亚马逊的例子中看到一些intentHandlers的样本" Hello World"代码:https://github.com/amzn/alexa-skills-kit-js/blob/6c59448d8bb2701433ab7e117574199012bedd3f/helloWorld/src/index.js#L64-L72
此处还有技能工具包(包括您问题中的代码)的精彩演练:http://tobuildsomething.com/2015/08/14/Amazon-Alexa-JavaScript-SDK-The-Ultimate-Guide/
您担心多次唤醒Alexa:亚马逊提供了用户请求的详细信息:https://developer.amazon.com/docs/custom-skills/understanding-how-users-invoke-custom-skills.html
我强烈推荐其他文档以及介绍教程。这将有助于使您与用户的互动方式更加清晰。