Slide 1

Slide 1 text

Google Homeでつくる スマートホーム 田中 みそ (田中 大樹)

Slide 2

Slide 2 text

自己紹介 田中 みそ (田中 大樹) Qiita: miso_develop →Google Homeでやったことまとめ

Slide 3

Slide 3 text

スマートホーム構成図

Slide 4

Slide 4 text

• Google Homeに話かけた内容を受け取って何かやるには主に2通りの 方法がある • IFTTTを使う • Google Assistantアプリを作る • 家電操作程度ならIFTTTでさくっと作るのが楽 • 特にWebhookを飛ばせるのでこれで大体のことはできる Google Home → IFTTT あるサービスとあるサービスを連携させるサービス Goole Home → Twitter Goole Home → LINE

Slide 5

Slide 5 text

IFTTT → Firebase • IFTTTからはWebhookでFirebaseのRealtime Databaseへ情報書込 • なんで? →音声解析情報はグローバルネットワーク上にあり、ローカルのラズパイ に情報を渡すためにトンネリングさせる • IFTTTで受け取る言葉の一部にワイルドカードが使用でき、その部分を変数とし て送れる 照明 $ ↓ 照明 つけ て 照明 消し て

Slide 6

Slide 6 text

Firebase → Raspberry Pi • Firebaseへの書き込みをラズパイ上のNode.jsで監視 • 家のポートを開ける必要がないので安全 • あらかじめ定義されたレコードが書き込まれたら条件にマッチする動作を行う • Raspberry Piまで来ちゃえば大体なんでもできます • ちっちゃいサーバー • Linuxが動く • 低消費電力

Slide 7

Slide 7 text

Raspberry Pi → 家電 • Wi-Fi付き赤外線リモコンのAPI叩いて家電を操作したり • `ps4-waker`というNodeモジュールでPS4を操作したり • WindowsをWake on Lanで起動したり、コマンド実行したり • Google Homeを喋らせたり eRemote mini Wi-Fi付き赤外線学習リモコン

Slide 8

Slide 8 text

ESP32 → 色々 • ESP32というWi-Fi付きマイコンを用いてよりIoTな使い方もできます • Arduino IDEで開発できます • サーボモーターで無理やり物理スイッチを操作したり ESP32(開発ボード) Wi-Fi、Bluetooth付きArduino サーボモーター 一定の角度内でホーンを自由に動かせる

Slide 9

Slide 9 text

Web → Firebase • Firebase Hostingに自作Webアプリを設置すればスマホからも操作可能 • 外出先からも家電操作やGoogle Homeを喋らせたりできる

Slide 10

Slide 10 text

まとめ • 独自音声コマンドを作るにはとりあえずIFTTT • 自宅サーバ(ラズパイ等)で制御を行うには インターネット→ローカルのトンネリングが必要 • Firebaseがオススメ • ラズパイまで辿り着けば大体なんでもできる • Node.jsすごい • 詳しい作り方はQiitaで記事にまとめています • Google Homeでやったことまとめ

Slide 11

Slide 11 text

あとこんなの作ってます GitHub: miso-develop Google Home Auto Tester • csvに喋らせたい言葉とwaitのミリ秒を書いて、 それに合わせてGoogle Homeを喋らせる Dialogflow2AlexaSkillJson • DialogflowからエクスポートしたAgentのzipから Alexa SkillのJSONへ変換

Slide 12

Slide 12 text

おわり ご清聴ありがとうございました