Kotoshiro v1.02.80.25から、拡張したリモコンの制御スクリプトが書けるようになりました。書き方は、基本的にリモコン制御スクリプトの書き方と同じです。
では、何が変わったのかというと、以下の3点です。
・引数に二つ目の温度湿度モジュールの温度・湿度情報が取れるようになった
・戻り値に複数のリモコン番号をカンマ区切りの文字列として返せるようになった
・今まで、5分ごとのサンプリングしかできなかったが1分ごとにできるようにした
※機能は拡張しましたが現在使用しているスクリプトはそのまま使用できます。
以前の方法
詳しく説明します。以前の方法だと関数の呼び出しは、以下のような感じでした。
関数呼び出し
function RemoconControl(temp, humid){
...
}
戻り値
戻り値は、リモコン番号かエアコン制御コードのみが使えました。
return 1 //リモコン番号
return "TempUp" //エアコンの温度を上げる
return "TempDown" //エアコンの温度を下げる
詳しくは/scripsフォルダの中の「エアコン操作サンプル.js」や「エアコン操作サンプル(設定温度を一段階上げる、下げる).js」を参照してみてください。
新しく拡張したスクリプトを書く方法
関数呼び出し
functionの名前はRemoconControlExで呼び出します。前回のものにExを付け加えたものです。
引数に、temp2, humid2が加わり温度湿度モジュールの二つ目の測定値を観測できるようになりました。
function RemoconControlEx(temp, humid, temp2, humid2){
...
}
戻り値
戻り値は、以前のものに加えて、マクロコマンドを返せるようになりました。
正の数に、リモコン番号指定し、待機させたい場合は負の数をカンマ区切りで記入します。
//複数のリモコン番号を返り値にする例(マクロのように実行)
//正の数 = リモコン番号
//負の数 = 待機時間(秒)
//整数を、コンマ(,)でつないだ文字列を返す。(スペースはあってもなくても良い)return "1, -3, 1, -1, 81, -1, 81, -1, 10, -3, 13"
こうすることで、一度に複数の家電を操作することができるようになります。詳しくは/scripsの「エアコン操作サンプル(拡張版).js」を参照してください。
※家電の自動操作などは、設定をミスった場合、重大な事故にも繋がる恐れもありますので設定はくれぐれも気をつけて行ってください。もし、事故が起こった場合でも、作者は責任を取りかねますのでよろしくお願いいたします。
スクリプトの書き方サンプル
あと、今回のバージョンアップとは関係ないですが、日付、時間や曜日などをトリガーとしたスクリプトの書き方を記しておきます。このような構文を駆使してスクリプト記入することにより、綿密な家電のスケジュールを設定することもできます。
//datetime文字列から日時情報を取得する例
//var dp = Date.parse(datetime)
var now_time = new Date()
var year = now_time.getYear()
var month = now_time.getMonth() + 1
var date = now_time.getDate()
var hour = now_time.getHours()
var minute = now_time.getMinutes()
var second = now_time.getSeconds()
var w = ["日","月","火","水","木","金","土"]
var day = w[now_time.getDay()]
//日時情報の利用例
if (day == "月") {}//曜日で分岐
if (hour >= 21) {}//時間で分岐(例:21時以降))
//dt = year + "年" + month + "月" + date + "日" + "(" + day + ")" +
// " " + hour + "時" + minute + "分" + second + "秒"
制御スクリプトの設定・テスト方法
制御スクリプトの設定・テスト方法は、リモコン制御スクリプトの書き方の「制御スクリプトの設定・テスト方法」の項を参照してください。