Amazon Alexa 无法识别号码槽
Amazon Alexa isn't recognizing a number slot
假设我的架构中有这个:
{
"slots": [
{
"name": "number",
"type": "AMAZON.NUMBER"
}
],
"intent": "PriceMyProduct"
}
还有这些话语:
PriceMyProduct price of {number}
PriceMyProduct {number} price
在我的 lambda 函数中我有这个意图处理程序
'PriceMyProduct': function(){
var itemNumber = this.event.request.slots.number.value;
//DO STUFF
}
问题是"itemNumber"从不提取产品的编号,所以总是undefined。
我尝试过 "price of 133202" 或“133923 价格”之类的操作,但从未获取数值。可能是什么问题?
尝试将插槽名称从 "number" 更改为 "priceValue"。像这样:
{
"slots": [
{
"name": "priceValue",
"type": "AMAZON.NUMBER"
}
],
"intent": "PriceMyProduct"
}
然后像这样更新话语:
PriceMyProduct price of {priceValue}
PriceMyProduct {priceValue} price
并在 lambda 中使用新名称:
'PriceMyProduct': function(){
var itemNumber = this.event.request.slots.priceValue.value;
//DO STUFF
}
原因:number好像是保留名
假设我的架构中有这个:
{
"slots": [
{
"name": "number",
"type": "AMAZON.NUMBER"
}
],
"intent": "PriceMyProduct"
}
还有这些话语:
PriceMyProduct price of {number}
PriceMyProduct {number} price
在我的 lambda 函数中我有这个意图处理程序
'PriceMyProduct': function(){
var itemNumber = this.event.request.slots.number.value;
//DO STUFF
}
问题是"itemNumber"从不提取产品的编号,所以总是undefined。
我尝试过 "price of 133202" 或“133923 价格”之类的操作,但从未获取数值。可能是什么问题?
尝试将插槽名称从 "number" 更改为 "priceValue"。像这样:
{
"slots": [
{
"name": "priceValue",
"type": "AMAZON.NUMBER"
}
],
"intent": "PriceMyProduct"
}
然后像这样更新话语:
PriceMyProduct price of {priceValue}
PriceMyProduct {priceValue} price
并在 lambda 中使用新名称:
'PriceMyProduct': function(){
var itemNumber = this.event.request.slots.priceValue.value;
//DO STUFF
}
原因:number好像是保留名