TaskerでJavaScriptを実行し、IRKitからリモコン操作をする設定例

AndroidアプリのTasker(タスカー)は、設定した条件によって、スマートフォンにさまざまな命令をすることが出来るアプリ。そして、IRKitはWiFi機能の付いた赤外線リモコンデバイス。

今回は、TaskerでJavaScriptを実行し、IRKitから家電リモコンの赤外線を送信する例となります。

TaskerでJavaScriptを実行し、IRKitからリモコン操作する例

赤外線信号を送信するJavaScriptファイルを作成

まずは、IRkitのAPIを使用し赤外線信号を送信するJavaScriptファイルを作成します。ソースコードは以下となり、例としてファイル名を「remote_control.js」としました。作成したファイルは、スマートフォンのストレージに保存します。また、ファイルの保存場所は任意となります。

function main(){
	xhr = new XMLHttpRequest();
	xhr.open('POST','http://X.X.X.X/messages',true);
	xhr.send('{"format":"raw","freq":38,"password":"XXXX","data":[XXXXXXXX]}');
}
main();

上記ソースコードの、'http://X.X.X.X/messages' の箇所には、IRKitのIPアドレスを記述します。

'{"format":"raw","freq":38,"password":"XXXX","data":[XXXXXXXX]}'の箇所には、操作したいリモコンの赤外線信号を記述します。

IRkitのIPアドレス確認と、赤外線信号の取得方法は、以下のページを参考にしてみてください。

Taskerでリモコンの赤外線送信を行うタスクを作成

次に、Taskerで上記JavaScriptファイルを実行させるタスクを作成します。作成する手順は以下となります。

  1. TASKSタブ内の画面右下にある「+」ボタンを押すと、タスク名を入力するダイアログが表示されるので、今回の例では、タスク名を「リモコン」として新規タスクを作成します。
  2. 新規タスクを作成すると「Task Edit」画面に移行するので、画面の右下にあるアクションを追加する「+」ボタンから、以下のアクションを追加・設定します。
  3. カテゴリー「Code」から「JavaScript」アクションを追加し、設定画面の「Path」に上記で作成した「remote_control.js」ファイルへのパスを指定します。
「JavaScript」の設定画面。「Path」に、上記で作成した「remote_control.js」ファイルのパスを指定します。パスは虫眼鏡アイコンからファイルを検索し指定できます。
「JavaScript」の設定画面。「Path」に、上記で作成した「remote_control.js」ファイルのパスを指定します。パスは虫眼鏡アイコンからファイルを検索し指定できます。

以上が、IRKitからリモコンの赤外線送信を行うタスクとなります。

タスクの動作確認

作成したタスクが正常に動作するかを確認するには、タスク内の画面下部の左端にある「再生ボタン」をクリックすることで確認できます。

タスク内(Task Edit)画面の下部
タスク内(Task Edit)画面の下部。タスクの動作確認は左端の「再生ボタン」をクリック。

タスクの実行方法

作成したタスクを実行させる方法としては、以下の方法があります。

  • Taskerのウィジェットで作成したタスクのボタンをホーム画面に追加し、そのボタンからタスクを実行
  • プロファイルを作成して、指定した条件が満たされたら自動でタスクを実行

例えば、以下のリンク先の方法と、今回作成したタスクを組み合わせることにより、自宅についたら自動でテレビをつけるといった動作も可能です。

ソースコードについて|XMLHttpRequest

IRKitには、デバイス自体にHTTPサーバがあるためHTTP通信が可能です。今回はJavaScriptにて、サーバとHTTP通信を行えるXMLHttpRequest (XHR)を使用し、IRKitへ赤外線の情報を送信しています。

以下は、今回使用したXMLHttpRequestオブジェクトのメソッドと、そのパラメータとなります。

open() メソッド

指定したURLにリクエスト。

open( method, url, async, uname, pswd )

パラメータ

method(必須)
リクエストタイプを GET か POSTで指定
url(必須)
送信先URLを指定
async(必須)
非同期通信の場合には、true を指定。同期通信の場合には、false を指定
uname(省略可)
ユーザーネームを指定
pswd(省略可)
パスワードを指定

send() メソッド

サーバへリクエストを送信。

パラメータ

send( string )
string
open()メソッドがPOSTリクエストの場合に指定

「IRKit」の後継機「Nature Remo」


Notice: Undefined index: only in /home/xocqvhme/public_html/blog-and-destroy.com/wp-content/themes/my_theme_s/template-parts/adv/affiliate-link.php on line 81

Notice: Undefined index: only in /home/xocqvhme/public_html/blog-and-destroy.com/wp-content/themes/my_theme_s/template-parts/adv/affiliate-link.php on line 113

Notice: Undefined index: only in /home/xocqvhme/public_html/blog-and-destroy.com/wp-content/themes/my_theme_s/template-parts/adv/affiliate-link.php on line 124
の画像

スマートリモコン「Nature Remo」

Nature Remoで快適なスマートホーム生活を手軽に実現

IRkitは、現在、生産を終了していますが、後継機となる「Nature Remo」・「Nature Remo mini」が販売されています。

このブログ内の「Nature Remo」の記事は以下のリンク先となります。

「Nature Remo」の記事一覧

参照サイト・書籍

コメントまたはTwitterで返信

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