【发布时间】:2018-07-22 12:53:25
【问题描述】:
有没有办法将用户输入保存到 ALexa 技能工具包中的变量中。
【问题讨论】:
标签: node.js amazon-web-services amazon alexa
有没有办法将用户输入保存到 ALexa 技能工具包中的变量中。
【问题讨论】:
标签: node.js amazon-web-services amazon alexa
是的,你可以做到。您可以使用插槽存储用户提供的任何信息。您可以使用内置插槽,也可以定义自定义插槽。
如果您想获取或存储数字或日期或人名等,您可以使用内置插槽。 请参阅此链接以获取内置插槽列表:https://developer.amazon.com/docs/custom-skills/slot-type-reference.html
如果你想存储用户给出的整个语句,那么你可以使用 AMAZON.SearchQuery:
在考虑用户可能提出的问题时,请考虑使用内置或自定义槽类型来捕获更可预测的用户输入,并使用 AMAZON.SearchQuery 槽类型来捕获构成搜索查询。
确保您的技能对每个意图使用不超过一个 AMAZON.SearchQuery 槽。 Amazon.SearchQuery 槽类型不能与示例话语中的另一个意图槽组合。
【讨论】:
当您使用 Skill Builder 创建意图时,您可以使用大括号指定 Slot。
您还可以定义插槽类型。您可以定义自己的类型或从内置类型中进行选择。
在此处查看完整列表:https://developer.amazon.com/docs/custom-skills/slot-type-reference.html
从您的 Alexa 技能(lambda 函数)中,您可以捕捉到用户在说什么。你可以从:
this.event.request.intent.slots.<SlotName>.value
然后你用你想要的值做什么。
更新:
交互模式是:
{
"name": "MyColorIsIntent",
"samples": [
"my favorite color is {Color}"
],
"slots": [
{
"name": "Color",
"type": "LIST_OF_COLORS"
}
]
},
【讨论】: