StartOverIntent的自定义插槽

时间:2016-07-24 21:21:40

标签: alexa alexa-skills-kit amazon-echo

如何使用AMAZON.StartOverIntent话语设置广告位?

例如:我想使用Alexa, ask <my skill> the definition of <custom value>

中的自定义广告位值启动该技能

我读到AMAZON.StartOverIntent无法自定义插槽,所以我打破了它:

DefIntent {Term}
AMAZON.StartOverIntent the definition of
AMAZON.StartOverIntent define
AMAZON.StartOverIntent what is

当我用Echo测试时,这似乎不起作用。你如何宣布这样的话语?

1 个答案:

答案 0 :(得分:0)

您为什么要覆盖StarOverIntent?做事的正常方法是使用你自己的意图。如果需要,您只需要使用内置意图。即便如此,这只是一个捷径。你仍然需要实现它们。他们实际上并没有内置功能。<​​/ p>

根据您的需要,您可以声明以下意图:

{
   "intents":[
      {
         "intent":"DefIntent",
         "slots":[
            {
               "name":"term",
               "type":"TERM"
            }
         ]
      }
    ]
}

这会创建一个具有一个插槽的intent,这是一个自定义类型TERM。您可以创建要在计划文本文件中查找的术语列表,并将其作为该自定义类型的值上载。然后你可以宣布话语:

DefIntent the definition of {term}
DefIntent define {term}
DefIntent what is {term}

那可以给你你想要的东西。

或接近你想要的。我想你希望用户能够为{term}说些什么。但Alexa不是一个听写机器。它不会那样工作。它期望一个适度限制的词汇表,以产生最高质量的识别。

你可以通过提供一个包含十万字的自定义列表来伪造它。或者其他技术来创建&#34;通用插槽&#34;。但它不会以高质量的识别表现。你最好重新思考你的设计,这样你就不需要通用的听写。

对于Alexa技能的完全复杂的复杂示例,有近一小时的视频,请参阅SubWar