概要

Google HomeとIFTTTとIRKitで家電操作ができるか試し、無事動作することを確認した。


背景と目的

先日発売されたばかりのGoogle Homeを入手したが、残念ながら私の家には対応家電が1つもない。しかし、私の家にはIRKitがあり家電操作ができるようになっている。そこで、Google Homeの音声コマンドを活用し、家電操作をできるようにしてみる。


詳細

0.方法の検討

  • Google Homeは、IFTTTのGoogle Assistantチャンネルと連携し、音声コマンドをIFTTTのトリガとして利用できる
  • IRKitは、インターネット経由で赤外線発信を制御できる(IRKit Internet HTTP API)
  • IFTTTには、任意のURLにWebhookを送信するWebhookチャンネル(これは、少し前までMakerというチャンネルのアクションだった気がするが・・・名前変わった???)がある

したがって、

  • Google Assistantチャンネルをトリガーとし、音声コマンドでトリガーが発行されるように設定する
  • Webhookチャンネルをアクションとし、IRKit Internet HTTP APIにWebhookを送信する

となるAppletを作れば、家電操作ができそうだ。


1.IFTTTの設定

1.1 Google Assistantチャンネル

トリガーとしてGoogle Assistantチャンネルのトリガのうち、今回は一番左の"say a simple phrase"を選択する。

20171008134847

そして、下図のように音声コマンドと、応答音声、言語の設定をしてCreate triggerを押せば、設定完了。

20171008134836

1.2 Webhookチャンネル

次に、アクションとしてWebhookチャンネルのMake a web requestを選ぶ。

20171008135300

今回は、操作対象をテレビの電源とするため、あらかじめ読み取り済みのコード情報をBodyとして設定。なお、Content-TypeやBodyの記入の仕方はこちらを参照するとよい。

request


2.動作テスト

Google Homeに対して、"OK Google,テレビを消して"と呼びかけたところ、"わかりました"と応答音声が発せられ、テレビの電源が消えた!ちゃんと動いた!


まとめ

とりあえず自前の環境で既存の家電操作ができるようになった。今後、Googleから赤外線リモコンを学習できるデバイスも発売されるとのことだが、まずはこんな感じで音声操作ができることが確かめられてよかった。