AlexaのAMAZON.DATEをDateオブジェクトに変換するライブラリ – amazon-date-parser

Alexaで日付を扱う場合、AMAZON.Dateというスロットを利用します。 ですが、このスロット、2017-W48-WEや2018-10-10など、さまざまな値が来るためそのままDateオブジェクトに叩き込むことがで […]

広告ここから
広告ここまで

目次

    Alexaで日付を扱う場合、AMAZON.Dateというスロットを利用します。

    ですが、このスロット、2017-W48-WE2018-10-10など、さまざまな値が来るためそのままDateオブジェクトに叩き込むことができません。

    そんな時に使いたいのがこのライブラリです。

    インストール方法

    npmにホストされていますので、インストールしましょう。

    $ npm i -S amazon-date-parser

    使い方

    AMAZON.Dateを定義したスロットの値をコンストラクタで投げます。

    範囲を持つ日付パラメータが来る場合があるため、startendの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)

    広告ここから
    広告ここまで
    Home
    Search
    Bookmark