Я пишу навык Alexa, который фиксирует возраст с одного намерения и вес с другого намерения.и в основном эти два типа номера.
Когда я пытаюсь ввести число для веса, оно фиксируется в первом слоте Намерения.Вот моя схема намерений.
{
"intents": [
{
"slots": [
{
"name": "AGE",
"type": "AMAZON.NUMBER"
}
],
"intent": "AgeIntent"
},
{
"slots": [
{
"name": "WEIGHT",
"type": "AMAZON.NUMBER"
}
],
"intent": "WeightIntent"
}
]
}
И мои примеры высказываний
AgeIntent
My age is {AGE}
{AGE}
WeightIntent
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 .Я получаю AgeIntent в моем request.intent.name
.
Я знаю, что он будет работать с , мой вес 68 ;А также я могу заставить его работать с функцией StateHandler в Alexa-SDK-V1, но я использую Alexa-SDK-V2
Так что проблема в следующем: Умение всегда отправляет intentName изпервое совпадающее намерение (т.е. AgeIntent) из модели взаимодействия, и я ожидаю получить второе совпадающее IntentName (то есть WeightIntent) для моего второго вопроса.