亚马逊 Alexa 无法识别号码槽

Posted

技术标签:

【中文标题】亚马逊 Alexa 无法识别号码槽【英文标题】:Amazon Alexa isn't recognizing a number slot 【发布时间】:2017-11-27 11:59:15 【问题描述】:

假设我的架构中有这个:

 
  "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】:

尝试将您的广告位名称从“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
 

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

【讨论】:

抱歉这么晚才回来。你是对的。这行得通。非常感谢!

以上是关于亚马逊 Alexa 无法识别号码槽的主要内容,如果未能解决你的问题,请参考以下文章

Alexa无法识别意图

在 Echo 上测试时无法识别 Alexa Skill

Alexa 自定义插槽类型:没有意图的价值

Python 语音识别

FedEx 追踪网络服务无法识别任何追踪号码

iOS 应用无法识别我的信标