亚马逊Alexa无法识别数字广告位

时间:2017-06-23 20:15:59

标签: javascript amazon alexa

让我说我的架构中有这个:

 {
  "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”永远不会获取产品的编号,所以它始终是未定义的。

我尝试过做“133202的价格”或“133923价格”之类的东西,但数字值从未被提取过。可能是什么问题?

1 个答案:

答案 0 :(得分:1)

尝试从"号码"更改广告位的名称让我们说" 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
 }

原因:数字似乎是保留名称