只从Alexa Skills Kit获取单个单词参数

Xan*_*xir 7 alexa alexa-skill alexa-skills-kit

我正在写一个Alexa技能,我只能在我的代码中获得单字参数.

这是intent模式:

    {
  "intents": [
    {
      "intent": "HeroQuizIntent",
      "slots": [
        {
          "name": "SearchTerm",
          "type": "SEARCH_TERMS"
        }
      ]
    },
    {
      "intent": "HeroAnswerIntent",
      "slots": [
        {
          "name": "SearchTerm",
          "type": "SEARCH_TERMS"
        }
      ]
    },
    {
      "intent": "AMAZON.HelpIntent"
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

我的样本话语是:

HeroQuizIntent quiz me
HeroAnswerIntent is it {SearchTerm}
Run Code Online (Sandbox Code Playgroud)

对于HeroAnswerIntent,我正在检查SearchTerm插槽,我只会在那里找到单个单词.

因此,"彼得帕克"给出"帕克","史蒂夫罗杰斯"给出"罗杰斯","托尼斯塔克"给出"斯塔克".

如何在插槽中接受多个单词?

Xan*_*xir 0

我必须将插槽类型更改为 AMAZON.LITERAL。

诀窍在于,在示例话语中,我还必须提供多个话语来演示 Alexa 应解释的最小和最大文字大小。这很奇怪,但是有效。

这是它的参考: https: //developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/alexa-skills-kit-interaction-model-reference