首页 文章

如何让Alexa在我的话语中识别出“两个”和“四个”的数字

提问于
浏览
-1

我在Alexa Number类型上遇到了麻烦 . 当我尝试命令数字“两个”或“四个”时,Alexa总是返回一个未定义的值或“?”到我的服务器 .

我的话如下:

echo, tell machine "Machinename" "action" "......".

  • "machine"是技能调用 .

  • "Machinename"是AMAZON.FOUR_DIGIT_NUMBER . 我也试过它作为AMAZON.NUMBER .

  • 第二个和第三个组件是自定义类型,它们没问题 .

我已经阅读了几乎与此问题相关的主题 . 我发现解决方案{two | Machinename}不适用于我 . Alexa技能套件总是响应

"The built-in slot type " {二| Machinename} " cannot be extended with custom values. Error code: InextensibleSlot" .

因为“AMAZON.FOUR_DIGIT_NUMBER”和“AMAZON.NUMBER”不是可扩展的内置类型 .

  • 在另一种情况下,当我试图将"Machinename"移动到我话语中的最后一个插槽时 . 它仍然无法正常工作 . 除了"two"和"four"之外,所有数字都可以 . 所以看起来它与"to"或"for"的调用无关 .

任何人请给我一个解决方案或解决方法 .

ps:抱歉我的英语不好 .

提前致谢 .

2 回答

  • 0

    我用 AMAZON.NUMBER 而不是 AMAZON.FOUR_DIGIT_NUMBER 尝试了你的交互模型,一切都运行正常 . 插槽值已正确映射 .

    例如: ask machine number four start printing

    请求生成:

    "request": {
            ....
                "machinename": {
                        "name": "machinename",
                        "value": "4",
            ....
                "actionname": {
                        "name": "actionname",
                        "value": "start",
            ....
                "functionname": {
                        "name": "functionname",
                        "value": "printing",
            ....
    

    希望这可以帮助

  • 0

    大约2周后,我尝试通过互联网与亚马逊联系 . 这次他们无能为力 .

    从亚马逊支持团队,他们总是告诉我重新检查AMAZON.NUM / AMAZON.FOUR_DEGIT_NUMBER . 我告诉他们它总是可以使用模拟器并从真实设备寻求帮助 . 但是没有按预期做出任何回应 . 所以这次,我试图通过另一种方式解决这个问题:

    • AMAZON.SearchQuery ==>接收命令字符串并自己处理它而不是插槽 .

    • 对话管理 .

    希望这可以帮助

相关问题