ブログトップ 記事一覧 ログイン 無料ブログ開設

関心事時々日記 RSSフィード Twitter

2016-03-20

[]homebridge-applescriptを試す

Apple には HomeKit という技術がある。iOS 上の音声認識 siri との組合せで、対応する家庭内ので電気機器などのコントロールが行えるものだ。日本では利用可能な機器は多くないが、対応製品を購入すればこれを利用することが出来る。「テレビを付けて」とか「エアコンを付けて」などと iPhone に話しかけることで機器を動かす訳だ。

http://www.apple.com/jp/ios/homekit/

 

一方、正式対応機器ではなくてもこの技術を利用できるようにするために homebridge というソフトウェアが公開されている。

https://github.com/nfarina/homebridge

 

このソフトウェアを使ってどんなことが出来るのかはこの辺りが参考になる。

Siriで部屋中の家電を操作できるようにして未来のお部屋を作ってみた

homebridgeでsiriから家電コントロール

Raspberry Pi + HomeKit + IRKit = Siriで家電を音声操作できるようにする

 

おおよそ皆 Raspberry PiIRKit を組み合わせて使用しているが、Homebridge は node.js で作られているのでインストールする環境Linux に限らず、Mac でも Windows でも可能なはずだ。また色々な機器対応させるためにプラグインが書かれて公開されている。

Raspberry Pi 2 Model B

Raspberry Pi 2 Model B

 

我が家Raspberry Pi自動給餌機専用になってしまっているし、もう一台欲しいがどうせ買うなら Raspberry Pi 3 が少し安くなってから… と思ったので常時起動している Mac miniインストールしてみることにした。

homebridge-applescript というプラグインを見つけたからでもある。これは名前の通りで applescript を起動するためのプラグインである

 

homebridge の設定ファイルである config.json に以下のように設定する。

AppleScript はセンテンスの区切りが改行なので、ここでどう書いたら複数命令AppleScript が書けるか悩んだが ”\n” で良かった。ここでは30分待った後に iTunes音楽再生を停止するスクリプトだ。

        "accessories": [
                 {
                         "accessory": "Applescript",
                         "name": "Sleep after 30min",
                         "on": "delay 30*60 \n tell application ''iTunes'' to stop"
                 }
         ]

 

iPhone には Insteon+ というアプリインストールする。

 

同じローカルネットワーク上で homebridge が動いていると設定した命令が見えるようになる。SIRI CONTROL に siri認識可能な名称を設定する。しかし、付けたい名前を設定するとタイマー機能が動いてしまったり、「認識できません」と言われてしまったりでなかなか適切な名前が設定できず、とりあえずこんな名前に…

f:id:tono-p:20160321001326p:image

 

そしてこのように話すと設定した AppleScript が動く

f:id:tono-p:20160321001325p:image

 

今回は実験レベルなので常時これを動かそうとはしていないが、IRKit の導入も含めて今後いろいろ遊んでみたい。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証