【Nature Remo】APIで気温・湿度などRemo本体がもつ情報を取得する方法
Nature RemoはWi-Fi機能の付いた赤外線リモコンデバイスとなり、赤外線送信などの操作ができるCloud APIとLocal APIが公開されています。
今回は、そのNature RemoのCloud APIを利用して、コマンドライン(Macのターミナル・Windows のコマンドプロンプトなど)から、気温・湿度などNature Remo本体がもつ情報を取得する方法となります。
気温・湿度などNature Remo本体がもつ情報を取得する方法
アクセストークンを発行
Nature Remoでは、Cloud APIで登録したリモコン情報などを取得することができますが、そのCloud APIを利用するには、Nature Remoのアクセストークンを発行する必要があります。
アクセストークンの発行方法は、以下のリンク先を参考にしてみてください。
Cloud APIを利用してNature Remo本体がもつ情報を取得
Nature Remo本体がもつ情報を取得できるCloud APIのエンドポイント(APIにアクセスするためのURI)は、"https://api.nature.global/1/devices"となります。
そのエンドポイントを利用して以下のcurlコマンドを入力し実行します。XXXXXXXXの箇所には自身で発行したアクセストークンの値を指定します。
curl -X GET "https://api.nature.global/1/devices" -H "accept: application/json" -H "Authorization: Bearer XXXXXXXX"
それにより、Nature Remo本体がもつ情報などがJSONデータで取得できます。
JSONデータの整形について
上記方法で取得したJSON形式の情報は整形されていなかもしれません。
そのような場合には、コマンドラインで扱うJSONデータを整形できる『jq』を利用する方法があります。詳しくは以下のリンク先を参考にしてみてください。
Nature Remo本体がもつJSONデータについて
上記のコマンドを実行すると、次のようなJSON形式のデータを取得できます。
[
{
"name": "remo",
"id": "XXXXXXXXXXXXXXXXXXXX",
"created_at": "2018-07-15T03:00:41Z",
"updated_at": "2018-07-17T12:52:37Z",
"mac_address": "XX:XX:XX:XX:XX:XX",
"serial_number": "XXXXXXXXX",
"firmware_version": "Remo-mini/1.0.87-g8b06f0e",
"temperature_offset": 0,
"humidity_offset": 0,
"users": [
{
"id": "XXXXXXXXXXXXXXXXXXXX",
"nickname": "XXXXX",
"superuser": true
}
],
"newest_events": {
"te": {
"val": 27.4,
"created_at": "2018-07-17T12:52:37Z"
}
}
}
]
JSONデータにあるキー"newest_events"の値となるオブジェクトに、Nature Remo本体がもつ気温などの情報となります。
上記の例では、デバイスが『Nature Remo Mini 』のため、取得した情報はキー"te"の気温データのみとなります。キー"te"の値はオブジェクトとなり、"val"の値が気温の数値となり、"created_at"の値が取得した日時となります。