AlexaのAMAZON.DATEをDateオブジェクトに変換するライブラリ – amazon-date-parser
Alexaで日付を扱う場合、AMAZON.Dateというスロットを利用します。 ですが、このスロット、2017-W48-WEや2018-10-10など、さまざまな値が来るためそのままDateオブジェクトに叩き込むことがで […]
広告ここから
広告ここまで
目次
Alexaで日付を扱う場合、AMAZON.Date
というスロットを利用します。
ですが、このスロット、2017-W48-WE
や2018-10-10
など、さまざまな値が来るためそのままDateオブジェクトに叩き込むことができません。
そんな時に使いたいのがこのライブラリです。
インストール方法
npmにホストされていますので、インストールしましょう。
$ npm i -S amazon-date-parser
使い方
AMAZON.Date
を定義したスロットの値をコンストラクタで投げます。
範囲を持つ日付パラメータが来る場合があるため、start
とend
の2つをもつオブジェクトが返ってきます。
const AmazonDateParser = require('amazon-date-parser');
const slot = handlerInput.requestEnvelope.request.slot.date.value
const date = new AmazonDateParser(slot)
console.log(`Start date: ${date.startDate}`)
console.log(`End date: ${date.startDate}`)
TypeScript
には対応してませんので、以下のようなことをしてやるとよいかもしれません。
const AmazonDateParser = require('amazon-date-parser')
interface AmazonDate {
startDate: Date
endDate: Date
}
const date: AmazonDate = new AmazonDateParser(slot)