【发布时间】:2021-05-07 19:08:06
【问题描述】:
我正在尝试调试在 developer.amazon.com 在线开发平台(Alexa 开发者控制台)的技能开发过程中未触发的意图。
我基于音频播放器模板开发了一项技能。我遇到的问题是“AboutIntent”在测试一些示例话语后没有被触发/执行。 “评估模型”显示了我的话语,例如“Parrot Heads ask about Trop Rockit Radio”似乎是独一无二的,并且清楚地表明它在构建选项卡下的评估模型中触发。构建模型完全成功后,我转到代码选项卡并选择“部署”,然后转到“测试”选项卡并执行“鹦鹉头询问 trop Rockit Radio”。 Alexa 似乎不知道这种说法,并说了一些未得到回应的回应,例如“嗯,我不知道”等。
“PlayStreamIntent”及其示例话语模型效果很好。调用名称“trop rockit raido”确实有效。但只有“AbuoutIntent”在 Alexa 测试下不起作用。同样,我已经完成了模型构建、部署和测试。我已经尝试了几十个示例话语,这些话语似乎可以正确触发评估模型工具中的“AboutIntent”,但在 Alexa 测试中没有得到识别。
这是 AboutIntent 函数:
const AboutIntentHandler = {
canHandle(handlerInput) {
return handlerInput.requestEnvelope.request.type === 'IntentRequest'
&& handlerInput.requestEnvelope.request.intent.name === 'AboutIntent';
},
handle(handlerInput) {
const speechText = 'Trop Rockit Radio is a streaming radio service featuring tropical rock independent musicians with original music. Are
you a parrot head? Visit us at Rockit Broadcasting dot com and click on Trop Rockit Radio to learn more about us! To continue listening say:
resume, or say: stop to stop listening.';
return handlerInput.responseBuilder
.speak(speechText)
.reprompt(speechText)
.getResponse();
},
};
在意图编辑器中,我将意图名称设为“AboutIntent”,并将示例话语剥离为仅一个“鹦鹉头询问”。我有许多其他示例话语,但将问题剥离为仅用于调试/开发的一个。
调用名称是“trop rockit radio”,并且在测试中可以正确调用。此外,我的 20 多个示例话语中的另一个 inent“PlayStreamIntent”工作正常。
我做错了什么?解决方案?有什么建议吗?
提前感谢您的宝贵时间。
【问题讨论】:
-
您是否确保以正确的语言环境更改技能包并使用相同的语言环境进行测试?
标签: javascript alexa alexa-skills-kit