【Nature Remo】APIでSignal IDを取得|リモコンボタンのJSONデータ

Nature RemoはWiFi機能の付いた赤外線リモコンデバイスとなり、Nature Remoのスマホアプリでエアコンのリモコンや、その他の赤外線リモコンを登録して使用します。

今回は、そのNature RemoのCloud APIを使いSignal IDを取得する方法となります。

Signal IDについて

アプリでリモコンのボタンを一つづつ登録すると、ボタン毎にSignal IDが振られます。そして、そのSignal IDは、Cloud APIを使い赤外線送信を行う際などで利用できます。

また、アプリでエアコンの「ON」ボタンを登録し、エアコンのリモコン操作を一括で登録した場合には、Signal IDは振られません。エアコンのリモコン情報のデータについては、以下のリンク先を参考にしてみてください。

Signal IDを取得する方法

Signal IDを含むアプリで登録したリモコン情報などは、Cloud APIを使いJSON形式で取得できます。

以下、Signal IDを取得する手順となります。

アプリで赤外線リモコンのボタンを登録

Cloud APIを使いSignal IDを取得するには、まず、Nature Remoのアプリを使い赤外線リモコンを登録します。

今回の例では、アプリで「新しい家電を追加する」ボタンから「電気」を追加して名前を「照明」とします。そして、追加した家電内に照明をコントロールするリモコンのON、OFFの赤外線ボタンを、それぞれ「オン」と「オフ」という名前で登録します。

なお、照明をコントロールするリモコンには以下のようなもがあります。

の画像

天井照明 リモコンスイッチ OCR-04W

天井の照明器具をリモコンで便利に操作

アプリで登録したリモコン情報などを取得

Signal IDを含むアプリで登録したリモコン情報などを取得するには、CUI(Macのターミナル・Windows のコマンドプロンプトなど)で以下のcurlコマンドを入力し実行します。XXXXXXXXの箇所には自身で発行したアクセストークンの値を指定します。

curl -X GET "https://api.nature.global/1/appliances" -H "accept: application/json" -H "Authorization: Bearer XXXXXXXX"

上記コマンドの詳細については以下のリンク先を参考にしてみてください。

リモコン情報のJSONデータ

上記のコマンドを実行すると、リモコン情報などが以下のようなJSON形式で取得されます。

[
  {
    "id": "XXXXXXXX",
    "device": {
    	// 中略(Nature Remoのデバイスのデータ)
    },
    "model": null,
    "nickname": "照明",
    "image": "ico_light",
    "type": "IR",
    "settings": null,
    "aircon": null,
    "signals": [
      {
        "id": "XXXXXXXX",
        "name": "オン",
        "image": "ico_on"
      },
      {
        "id": "XXXXXXXX",
        "name": "オフ",
        "image": "ico_off"
      }
    ]
  }
]

アプリで登録した赤外線リモコンの情報は、JSONデータ内のキー名"type"の値が"IR"となり、 キー名"signals"の値に赤外線ボタンの情報をオブジェクトで取得されます。

赤外線ボタンの情報のオブジェクト内にあるキー名"id"の値が割り振られたSignal IDとなり、キー名"name"と"image"の値 は、アプリで赤外線ボタンを登録した際の「ボタン名」と「アイコン名」となります。

今回の例では、照明リモコンのボタン「オン」「オフ」を登録したため、その2つの赤外線ボタンが、キー名"signals"の値に配列として取得されています。

今回は、アプリで「新しい家電を追加する」ボタンから一つの家電を登録しただけでしたが、複数の家電を登録すると、上記のようなJSONデータが家電毎に配列として取得されます。

また、JSONオブジェクトの先頭にあるキー名"id"の値は、Appliance IDとなり、アプリで登録した家電毎に割り振られるIDとなります。

参考サイトなど

コメント投稿またはTwitterで返信

コメントは、以下の項目(*は必須項目)を入力し「コメントを送信」ボタンから送信お願いします。メールアドレスは公開されることはありません。
Twitterで返信する場合はこちらから。

また、コメントは承認制となります。