【发布时间】:2018-12-06 08:39:52
【问题描述】:
我正在编写一项 Alexa 技能,该技能可以从一个意图中获取年龄,并从不同的意图中获取体重。并且基本上,这两个都是数字类型。
当我尝试输入重量数字时,它被捕获在第一个 Intent 的插槽中。这是我的意图架构。
{
"intents": [
{
"slots": [
{
"name": "AGE",
"type": "AMAZON.NUMBER"
}
],
"intent": "AgeIntent"
},
{
"slots": [
{
"name": "WEIGHT",
"type": "AMAZON.NUMBER"
}
],
"intent": "WeightIntent"
}
]
}
我的示例话语是
年龄意图
My age is {AGE}
{AGE}
权重意图
My weight is {WEIGHT}
{WEIGHT}
对话
User : open my test skill
Alexa: what is your age
User: 28
Alexa: what is your weight
User: 68
这里当用户给他的权重输入 68 时,不是匹配 WeightIntent,而是匹配 AgeIntent。我在request.intent.name 中获得了 AgeIntent。
我知道它适用于我的体重是 68;而且我可以让它与 Alexa-SDK-V1 的 StateHandler 功能一起使用,但我使用的是 Alexa-SDK-V2
所以这里的问题是:技能总是从交互模型发送第一个匹配意图(即AgeIntent)的intentName,我希望为我的第二个问题获得第二个匹配的IntentName(即WeightIntent) .
【问题讨论】:
标签: alexa-skills-kit alexa-sdk-nodejs