如果我们的后端收到说AMAZON.YesIntent
或任何其他自定义意图的请求。我们能否以与触发的意图不同的意图来吸引广告位作为响应。
例如:
...
user: Yes
(Amazon.YesIntent is mapped)
Alexa: Which city do you want to stay in?
(elicit slot of another intent)
...
答案 0 :(得分:3)
不幸的是你不能。只能使用 Dialog.ElicitSlot
指令发送相同类型的更新意图。
请注意,返回Dialog指令时不能更改意图, 因此,意图名称和插槽组必须匹配发送给您的意图 技能。
您将收到一张“无效指令”卡,并以“所请求的技能响应出现问题” 作为错误消息。
使用updateIntent
对象指定必须触发其插槽的新意图。当您使用新的updateIntent
更新最初发送给您的技能的Intent对象时,包括所有插槽,包括您未更改的所有空插槽。
{
"type": "Dialog.ElicitSlot",
"slotToElicit": "slotOfSomeOtherIntent",
"updatedIntent": {
"name": "SomeOtherIntent",
"confirmationStatus": "NONE",
"slots": {
"slotOfSomeOtherIntent": {
"name": "slotOfSomeOtherIntent",
"value": "string",
"resolutions": {},
"confirmationStatus": "NONE"
}
}
}
}
详细了解Change the intent or update slot values during the dialog
进一步了解ElicitSlot Directive