[IoT] GoogleHomeで家電操作 らずぱい+Mesh+NatureRemo

前回はMesh+NatureRemo+IFTTTでのルンバ操作でしたが、それ以外の環境も一通り満足いくLvまでできたので
GoogleHomeを使用した各種家電操作でやったことなどをまとめてみます。

まず簡易的な全体図。

使用しているもの

道具

サービス

基本は、GoogleHome→IFTTT→NatureRemoによる音声操作がベースです。
TVをつける・消す・Youtubeを見る についてはGoogleHome+ChromeCastでも
実行できるので、IFTTTは使用していません。

NatureRemo+IFTTT

NatureRemoは、いわゆる「赤外線学習リモコン」というやつで

こんなかんじで、赤外線リモコンがある家電なら、
スマホから各種家電を操作することができます。

このNatureRemoは、公式でIFTTTとの連携に対応しているので

IFTTTの that でnatureRemoを指定することで、スマホで登録しておいた各種ボタンを
音声に反応させることが出来ます。

ちなみに、キーワード言ってからの反応はこのぐらい。
明かりのON/OFFぐらいなら、全然気にならないスピードで反応してくれます。

IFTTT設定時にハマったのが、
IFTTTに音声のキーワードを設定するときに

こんな感じで文字を指定しておくのですが、
この文字は、GoogleAssistantsで認識される漢字である必要があります。

なので、設定で「そうじして」のようにひらがなで指定したりしても
GoogleHomeは反応してくれません。
なので、

あらかじめスマホ版のGoogleAssistantsでどのように変換されて認識されるのか
確認しておくと安全です。
また、GoogleHomeがデフォルトで使っているキーワードも認識してくれないので
「ライトをつけて」のようなワードは使えません。
(なので私は「明るくして」と登録しました)

NatureRemo+ラズパイ

一応、ほとんどはIFTTT+NatureRemoデモ事が済むんですが、それだとできないのが
複数の操作を連動させる挙動や時間指定での挙動。
例えば、前回のルンバのようなものや、朝8時に明かりをつけるのようなものや
この後説明する、 実行後、Slackに通知する ような事ですね。

このような複数のIFTTTのアプレット実行だったりを作るのに便利なのが
Meshというサービス。

こういういろんなセンサータグを使用して

IFTTTなどの各種サービスをノードベースで接続・連動させることができるサービスです。
↑の画像のは、ルンバ実行や範囲に入ったらライトつけてSlack通知だったり
温度・湿度をチェックしてSlackに通知を出してくれるといった自動処理を作ってあります。

このアプリは、対応するタグを1つでも持っていれば、iPadのバックグラウンドで監視・実行してくれるのですが
そうなると、かならずMeshを起動していないと行けないし
タグとiPadを常に一緒に持ち歩いていないと行けなくなります。

それをなんとかしてくれるのが、このラズベリーパイ。
コレ単体が小さなLinuxPCで、microSDにOSを焼いて通電すれば
OSが起動して、Meshを実行してくれるMeshHubをインストールすれば
iPadを実行しないでも自動処理を実行できます。

私の場合、自宅につねにiPadを置いてあるのでなくてもOKっちゃOKだったのですが
いずれiPadを持ち出すかもしれないし、常にMeshアプリが起動していないと行けないというのは
微妙に面倒だったので、ラズパイ起動を出来るようにしました。

・・・というのは建前で、さわってみたかったんです。らずぱい。

現状だと、Meshを実行するためのHubとしての役割しか持たせていないですが
NatureRemoがAPI公開して、直接フックできるようになったら
このラズパイ経由で実行とか出来そうです。
ゆめがひろがりんぐ。

Slack

最後に通知まわり。

かつてはスマホへの通知にPushBulletというサービスを使っていたのですが
最近は更新されなくなりiOSだと通知が表示されなくなってしまいました。
スマホでみてたHPをPCに送りたいときとかにも多用してたので
まともに動かないのがとてもしょぼーんで、他のサービスを探していたのですが
ふと、Slackを調べているときに

あれ、これ・・・通知アプリとして有用じゃね・・・?

と言うことに気がついてしまいました。

自分だけの部屋をつくって、用途ごとにチャンネルを作成しておいてIFTTTと連携。
IFTTT経由で各種通知を飛ばしたり
スマホのブラウザ経由でURLを貼り付けておいてあとで見直したり…やばい超便利。

Meshの各種処理の途中に通知用のノードを挟んでおいて、
こんな感じでSlackのスレッドに飛ばしてあげると
スマホの通知としても反応してくれます。

家電操作の時間つきログが溜まっていくので、「あれ・・・上手く動いてないな」とか
ノードとノードの間の時間を計ったりと、デバッグ的な使い方もできます。

IoTとは別ですが、TodoistとMeshと連動して スーパーの近くに来たら
Todoistの買い物リストに入ってる内容をSlackに飛ばす・・・とかも出来ますね。

とまぁこんなかんじで。
IFTTT+GoogleHomeを中心に、各種ツールを連動していくことで
めんどくさがり屋をさらに面倒くさがり屋にする自動システムが増やせることが分かりました。
NatureRemoとかはまだまだ発展途上だし、GoogleHomeも普及し始めたぐらいなので
今後さらに出来ることが広がると思うと、ダメ人間の血が騒ぎますね。

あと、今回はまだプログラムでなにかを実装したりまではしていないので、
DjangoでWebHookするサーバー立てたり、Meshのオリジナルタグ実装してみたり
TodoistのAPIいじってみたりSlackにいろいろHookしてみたり、ソフトウェア的アプローチは
これから随時やっていく感じ。

当初はIoTには興味を持ってなかったのですが、やり始めるといろいろ連携させたりできるので
とても楽しい!!

 

コメントを残す

メールアドレスが公開されることはありません。

*