● 赤外線信号情報を学習する(Android/Windows)
iPhoneアプリがやってくれてることを、コマンドでやります。
まず覚えさせたいリモコンを IRKitに向けてポチ。LEDが点滅します。
そしたら次のコマンド。
% curl -i "http://(Fingで調べたIRKitのIP)/messages" -H "X-Requested-With: curl" HTTP/1.0 200 OK Access-Control-Allow-Origin: * Server: IRKit/2.1.3.13.gbe33d36 Content-Type: text/plain {"format":"raw","freq":38,"data":[19991,10047,1275,(中略),19991,5049,1275]}
ゲットした情報のうち、一番下の行がリモコンの赤外線信号を数値化したものです。
● Tasker経由で信号送信してみる(Android)
では得た情報をまとめて、送信用スクリプトを作りましょう。簡単です。
メモ帳を開いて、以下をコピーしてください。
var id = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
var key = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
var msg = {"format":"raw","freq":38,"data":[XXXX,XXXX,XXX,X,XXXX,XXXX,XXXX,XXXX]};
function send(message){
var xhr = new XMLHttpRequest();
xhr.open("post", "https://api.getirkit.com/1/messages", false);
var form = new FormData();
form.append("deviceid", id);
form.append("clientkey", key);
form.append("message", JSON.stringify(message));
xhr.send(form);
}
function main(){
send(msg);
}
try{
main();
}
catch(e){
flash(e.message);
}
exit();
var key = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
var msg = {"format":"raw","freq":38,"data":[XXXX,XXXX,XXX,X,XXXX,XXXX,XXXX,XXXX]};
function send(message){
var xhr = new XMLHttpRequest();
xhr.open("post", "https://api.getirkit.com/1/messages", false);
var form = new FormData();
form.append("deviceid", id);
form.append("clientkey", key);
form.append("message", JSON.stringify(message));
xhr.send(form);
}
function main(){
send(msg);
}
try{
main();
}
catch(e){
flash(e.message);
}
exit();
上から3行のXXXを書き換えます。(3行目はいちおう等号の後をすべて置き換えます)
・id の行に、前回ゲットした DeviceID
・key の行に、同じくゲットした ClientKey
・msg の行に、先ほどゲットした赤外線信号の情報。
そしたら"(任意の名前).json"という名前で保存してください。
わたしは家電の名前を付けてます。"humidifier.json"(加湿器)とか。
このあたりの手順は以下のブログを参考にさせていただきました。
rdmmtd's blog - IRKitを使って家に帰ったら電気がつくようにした
そしたらそれを Androidの適当な場所に置いてください。
わたしは Taskerフォルダの下に"Scripts"というフォルダを作って置きました。
そしたら、
1. Taskerで Tasksタブに移動。
2. "+"で新規作成>任意のタスク名(わたしはここも家電名)。
3. もう一度"+"でタスク内の処理を新規作成>Code>JavaScriptを選択
4. Path欄の虫メガネアイコンをタップして、先ほどのjsonファイルを指定
5. 戻るx2
これでタスクが1個できてると思います。
試しにタスクを開いて、左下の再生ボタンを押すと・・・
家電に信号が飛んだはずです。
● PebbleTasker(Pebble)
Tasker のタスクは、Profileタグで条件指定して自動発動もできますし、
ショートカットにしたりもできます。
それも便利なのですが、ここでは Pebble連携をやりましょう。
Tasker の右上の"・・・"から"Preferences"(設定)を選び、"Misc"タブへ。
"Allow External Access"にチェックを入れてください。
あとは簡単。PlayストアとPebbleストアで、スマホとPebbleの両方に PebbleTasker をダウンロード。Androidで PebbleTaskerを起動すると、Pebbleのボタンにアサインする画面が出るので、
先ほど作ったタスクを選択。
で、Pebbleで同アプリを起動してみると・・・
さあボタンを押してください。あなたの腕から家電が操作できるはず!
次回は Pebbleからの更なる使いこなしを行いましょう。
0 件のコメント:
コメントを投稿