Remo情報まとめ
電源OFFにしたい時は 'power-off' 、電源ONにしたい時は '' ってリクエストを送るってところでちょっとハマった
Generate Tokenして、TOKENメモする(以下、TOKENは "XXXXX" と書きます)
【エアコンのID】を特定する。デバイスのIDやmodelIDと間違えないよう注意します
curl -X GET "https://api.nature.global/1/appliances" -H "accept: application/json" -H "Authorization: Bearer XXXXX"
以下のような結果が帰ってきます(一部項目を抜粋)
code:appliances.json
[
{
"id": "【エアコンのID】",
"device": {
"name": "ニョロ",
"id": "【デバイスのID】"
},
"model": {
"id": "【modelID】",
"manufacturer": "toshiba",
"name": "【エアコンのモデル名】"
},
"nickname": "【エアコンの名前】",
"settings": {
"temp": "26",
"mode": "cool",
"button": ""
},
"aircon": {
"range": {【設定可能項目とかの情報Object】},
"tempUnit": "c"
},
"signals": []
},
{【他の家電】}
]
JavaScript(Google Apps Script)のコード例
code:aaa.js
var REMO_TOKEN = 'XXXXX';
function sendRequest(url, param) {
var headers = {
'Authorization': 'Bearer ' + REMO_TOKEN,
'accept': 'application/json'
};
var options = {
'method': param.method,
'headers': headers,
'payload': param.payload || {},
};
var result = UrlFetchApp.fetch(BASE_URL + url, options);
if (result.getResponseCode() == 200) {
return JSON.parse(result.getContentText());
} else {
Logger.log('=====Error occurred. =========');
Logger.log(result.getResponseCode());
Logger.log(result);
throw new Error();
}
}
温度変えるPOST Request
code:post.js
var button = 'power-off'; // 電源OFFしたい場合
button = ''; // 電源ONしたい場合
postRequest('appliances/【エアコンのID】/aircon_settings', {'button': button, 'temperature': '26', 'operation_mode': 'cool'});
電源ONしたい時に空文字送るの最初わからなかった
温度やoperation_mode、全部一気に送るのが無難かも
エアコンのリモコンからエアコンには、毎回全情報送っているので