phicdy devlog

Androidアプリ開発やその他技術系の記事をたまに書きます

AndroidとかiOSとかモバイル多め。その他技術的なことも書いていきます。

Google Home+Nature Remo+IFTTTを使って音声でテレビの入力を切り替える

今リビングで使っているテレビでは入力1がPS4、入力2がChromecast、入力3がNintendo Switchとなっている。テレビは基本的にPS4のトルネで見ている。 よくChromecastでYoutubeを見たりすると入力が切り替わるのだが、Chromecastに入力切替の操作が奪われてしまい(?)、PS4に戻すにはチャンネル変更で操作を奪い返し、ホーム→入力切替としなければいけないので結構面倒くさい(でかいリモコンを使えばもっと楽にできるかもしれない)。この操作をGoogle Home経由でできるようにした(ついでにAndroidウィジェットからも)。

※この記事では全ての機器、サービスの初期設定が終わっている前提です。

環境

機器

アプリ

  • Google Home 2.7.21.2
  • Nature Remo 2.7.0(168)
  • IFTTT3.7.4

Nature Remoアプリでシーンを作る

最近Nature Remoアプリではシーンという複数の家電・操作をまとめて1アクションにできる機能が増えた。 この機能を使って入力切替を行うシーンを作る。

f:id:phicdy:20181202163806p:plain

IFTTTアプリでGoogle Home → Nature Remoの連携する

My Applets → 「+」 で新規作成開始。 thisにGoogle Assistantを選択。 Triggerを「Say a simple phrese」にし、「What do you want to say ?」に「クロームキャストからプレステ」等設定する。LanguageをJapaneseにする。

f:id:phicdy:20181202163521p:plain

thatでNature Remoを選択。「Execute scene」で先程作った「1つ上の機器に切り替える」を選択

f:id:phicdy:20181202164037p:plain

これで設定は完了です。Google Homeに「OK, Google。クロームキャストからプレステ」と言えば入力が切り替わる。

Androidウィジェットの設定

Nature Remoアプリを開けばシーンを実行できるが、面倒なのでウィジェットとしてホーム画面に置きたい。 IFTTTアプリでウェジェットが作れるのでITTTTアプリを開いてMy Applets → 「+」 で新規作成開始。 thisにButton widgetを選択。thatでNature Remoを選択。「Execute scene」で先程作った「1つ上の機器に切り替える」を選択。

これでスマホのホーム画面にウィジェットを追加できる。

おわりに

正直なところを言えば「プレステに変えて」でどの入力を表示していたとしても切り替えられるようにしたい。しかしテレビ入力の現在の状態を取得する方法がないため、「クロームキャストからプレステ」で1個上に切り替える、「スイッチからプレステ」で2個上に切り替えるという風に設定して人間が現在の状態を判断してアクションを実行しないといけない。実現するにはテレビ側が対応するかNature Remoが状態を持っていないといけないのでなかなか難しそう・・・。あとPS4の操作もできるようにならないかなあと思った。家についたらテレビとPS4をつけて入力をPS4に戻してトルネ起動くらいまで自動化したい。