如何将日期作为Alexa的输入?

时间:2017-10-30 07:51:00

标签: node.js alexa alexa-skills-kit

我是技能开发的新手所以请原谅我,如果问题很愚蠢:) 当用户说“alexa,请求agecalculator计算我的年龄?”然后alexa回答“你的出生日期是什么时候?”并且用户以“1995年11月12日”,“1995年11月12日”

等任何格式告知出生日期

如何在nodejs变量中获取此日期,以便我可以将其传递给我的api。

任何可以接受的帮助或建议:) 提前致谢。 :)

2 个答案:

答案 0 :(得分:1)

使用AMAZON.DATE作为您希望从Alexa技能中捕获日期的广告位的数据类型。

然后,您可以将此插槽中的数据传递给node.js lambda代码。

https://developer.amazon.com/docs/custom-skills/slot-type-reference.html

答案 1 :(得分:1)

嘿我在搜索了很多之后也面对同一个我发现非常有用的代码来自github以及亚马逊网站也让我与你分享这一切。

如果您将日期作为输入

,意图是这样的
Intents :
    {
      "intents": [
        {
          "intent": "AMAZON.CancelIntent"
        },
        {
          "intent": "AMAZON.HelpIntent"
        },
        {
          "intent": "AMAZON.PauseIntent"
        },
        {
          "intent": "AMAZON.ResumeIntent"
        },
        {
          "intent": "AMAZON.StopIntent"
        },
        {
          "slots": [
            {
              "name": "date",
              "type": "AMAZON.DATE"
            }
          ],
          "intent": "Ask"
        }
      ]
    }

从nodejs方面你需要做类似

的事情
var date = event.request.intent.slots.date.value;

以下是参考链接以获取更多信息:)

https://github.com/robm26/SkillsDataAccess

https://developer.amazon.com/docs/custom-skills/slot-type-reference.html