5

我正在尝试开发 Alexa 技能,我需要获取相对时间,例如:“ 5 分钟前”。

我已经为我的技能定义了一个时间段,它接受时间5 minutes,例如6.30 am4 in the morning。但我无法接受这样的时间5 minutes ago。我是 Alexa 新手,有人可以帮我解决这个问题吗

{
  "slots": [
    {
      "name": "time",
      "type": "AMAZON.TIME"
    }
  ],
  "intent": "ReportTime"
}
4

1 回答 1

3

您可以添加一个{modifier}可以采用多个关键字的插槽,例如“以前”和“从现在开始”。然后,意图可能具有类似于以下话语的内容:

{
  "name": "TimeTest",
  "samples": [
    "what happened {time} {modifier}",
    "what will happen {time} {modifier}"
  ],
  "slots": [
    {
      "name": "time",
      "type": "AMAZON.TIME",
      "samples": []
    },
    {
      "name": "modifier",
      "type": "custom_time_modifier",
      "samples": []
    }
  ]
}

使用以下自定义修饰符类型:

"types": [
{
  "name": "custom_time_modifier",
  "values": [
    {
      "id": null,
      "name": {
        "value": "ago",
        "synonyms": [
          "in the past"
        ]
      }
    },
    {
      "id": null,
      "name": {
        "value": "from now",
        "synonyms": [
          "in the future"
        ]
      }
    }
  ]
}
于 2017-07-19T16:31:51.850 回答