More than 1 year has passed since last update.

LINEBOTのいもうとにメモのリマインドをお願いするAPIです。自身の作ったサービス、アプリ、デバイスからいもうと経由で通知をプッシュすることができます。
たとえば、Raspberry Piに話しかけた内容を、時刻指定でLINEにプッシュ通知するようなボイスメモデバイス/サービスを作ることができるようになります。

デモ実装:いもうと通知API × RaspberryPiでボイスメモをLINEにプッシュ通知

いもうとBOTについてはいもうとBOTのヘルプを参照ください。

エンドポイント

https://imouto.azurewebsites.net/api/notification

パラメータ

クエリストリングとして以下項目を送信してください。◯は必須項目、△はどちらか一方が必須となります。

項目 登録 取得 変更 削除 説明
apikey APIを利用するための認証キーです。いもうとに「通知キー発行」と言うと教えてくれます。また、流出してしまった場合などには「通知キー再発行」とお願いすることで新しいキーを教えてくれます。以前のキーは直ちに使用できなくなるのでお気をつけください
operation 通知の登録(create)・取得(get)・変更(modify)・削除(cancel)のいずれかを指定します。設定しない場合は「create」として処理します
text 通知してほしいメモ本文です。登録時は必須ですが、それ以外では無視されます。
after 現在時刻から起算して何秒後に通知するかを指定します。通知時刻変更のときはafterかnotifydtのどちらかが必須となります。0秒を指定した場合は「直ちに通知」となります。1以上の値を設定した場合は、バッチ処理となるため1分程度かかることがあります
notifydt 通知する日時を指定します。通知時刻変更のときはafterかnotifydtのどちらかが必須となります。両方が指定されている場合、notifydtを優先します
type directという値を設定すると、いもうとが入力文言をそのまま発言してくれます。新規登録時のみ指定可能。type=directの場合、いもうとの「メモ一覧」には表示されません
messageid 変更または削除する通知の番号を指定します。この番号は登録時の戻り値に含まれます。なお登録時に指定しても無視されます
confirm 登録できたことの確認をLINEで通知します。登録時かつ値を「true」を設定する必要があります

レスポンス

JSON形式で以下の値を返却します。(取得時以外)

項目 説明
messageId 通知メッセージのIDです。変更や削除をするには、この値を使用します
notifyDateTime 通知する日時(JST)です
errorMessage エラーメッセージです。問題がない場合は空文字列が設定されます

取得のときは、以下のとおりとなります。

項目 説明
notifications 取得時以外のときのレイアウトに通知メッセージ本文のtext項目を追加したものの配列です
errorMessage エラーメッセージです。問題がない場合は空文字列が設定されます

リクエスト・レスポンスのサンプル

登録

1時間後に「this is test」というメモを通知をする場合のリクエストは以下の通りです。

https://imouto.azurewebsites.net/api/notification?apikey=XXXX&after=3600&text=this%20is%20test
{
    messageId: "INA20170214000000000",
    notifyDateTime: "2017/02/15 12:00:00",
    errorMessage: ""
}

取得

登録した通知の一覧を取得するリクエストは以下のとおりです。

https://imouto.azurewebsites.net/api/notification?apikey=XXXX&operation=get
{
    errorMessage: "",
    notifications: [
        {
           "messageId":"INA20170214000000000",
           "type":"Memo",
           "notifyDateTime":"2017/02/15 12:00:00",
           "text":"this is test"
        }
    ]
}

変更

先ほど登録した通知時刻を、13:30に変更します。

https://imouto.azurewebsites.net/api/notification?apikey=XXXX&messageid=INA20170214000000000&operation=modify&notifydt=2017/02/15%2013:30:00
{
    messageId: "INA20170214000000000",
    notifyDateTime: "2017/02/15 13:30:00",
    errorMessage: ""
}

削除

先ほど登録した通知を削除(キャンセル)します。

https://imouto.azurewebsites.net/api/notification?apikey=XXXX&messageid=INA20170214000000000&operation=cancel
{
    messageId: "INA20170214000000000",
    notifyDateTime: "2017/02/15 13:30:00",
    errorMessage: ""
}

APIキーの取得

APIキーはいもうとが教えてくれます。LINE上で以下のように話しかけてください。

通知キー発行

また、流出してしまった場合などには「通知キー再発行」とお願いすることで新しいキーを教えてくれます。以前のキーは直ちに使用できなくなるのでお気をつけください。

通知キー再発行
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.