y.takky てくめも

web技術について勉強会の参加メモだったり、本を読んだメモだったりを載せる予定

Google HomeでツイートしたりIRKit経由で電気つけたりSlackに投稿したりする

Google Home 何?

f:id:ytacky:20171008175539j:plain いま結構バズワードになりつつあるスマートスピーカー。

Googleが出したもの。

store.google.com

AmazonAmazon Echoだしたり、LineがClova WAVEを出したりし始めつつある。

スマートスピーカーの共通の特徴として

  • AIアシスタント(主に音声認識周り等々)
  • IOT連携 (電気つけたり消したり)

などがあげられる

jp.techcrunch.com japan.cnet.com

GoogleHomeがデフォルトでできることは置いといて、エンジニアだったらほかサービスとの連携を試してみたくなる。

Google Homeの場合 IFTTT連携で他のサービスにつなぎこむのが基本的な使い方になる。

ツイートしてみる

ツイートの場合 IFTTTデフォルトレシピがあるのでそれを改良すればよい

IFTTTにログインして Search -> Google Assistantに Post a tweet using your voiceがあるのでそれを使う

f:id:ytacky:20171008165939p:plain

一旦Turn Onして Configurationする。

f:id:ytacky:20171008170220p:plain

コツとして What do you want to say? を

ツイート $ に

Language を Japaneseにする。

その人によるが発音的にtweetがどうしてもカタカナでツイートになってしまうので....

一回IFTTT連携した後うまく動かない場合はgoogle のmyactivityから何が発音されたか確認するといい。

myactivity.google.com

こんなかんじにツイートできる

f:id:ytacky:20171008172301p:plain 

IRkit経由で電気をつける

過去記事にDeviceID等の取得を書いたのでそれを参考に必要なDeviceID等をメモっておく

ytacky.hatenablog.com

My Applets -> New Appletから追加する。

f:id:ytacky:20171008173042p:plain

this(入力側)の方で google assistantを追加して

f:id:ytacky:20171008173212p:plain

f:id:ytacky:20171008173306p:plain

What do you want to say? -> 音声認識のコマンド。 電気オンとかにしておく

What do you want the Assistant to say in response? -> Google Homeからのレスポンス。 適当に Ok , 電気つけたよ とかにしておけばいい。

これで入力側が完了

Thatの方は Webhooksにしておく。 トリガーはMake a web request1つしかないので迷わないだろう

f:id:ytacky:20171008173702p:plain

以下のように埋めていく

  • URL : https://api.getirkit.com/1/messages
  • Method : POST
  • Content Type (optional) : application/x-www-form-urlencoded
  • Body (optional) : clientkey=YOUR_CLIENT_KEY&deviceid=YOUR_DEVICE_KEY&message={"format":"raw","freq":YOUR_FREQ,"data":[YOUR_IR_DATA]}

YOUR_CLIENT_KEY,YOUR_DEVICE_KEY,YOUR_FREQ,YOUR_IR_DATAは適宜変更する。

これで Saveすれば、 トリガーにした言葉で電気がつく。

IRKitと連携できたので赤外線データさえ取得できちゃえばどんなデバイスでも音声で操作できるようになる。

Slackに投稿する。

よく買い物メモをSlackに投げたりするので。 基本的にツイートのレシピの投げ先がslackになったものと考えればいい。

My Applets -> New Appletから追加して、 google assistantを選択。 Say a phrase with a text ingredient をトリガーとする。

What do you want to say? には メモ $とでもしておく。

$ が実際にSlackに投稿される内容になる。 レスポンスはお好みで。

That側はSlackを選択する。

f:id:ytacky:20171008174622p:plain

投げたいchannelを選択して、 Messageには適当に。

f:id:ytacky:20171008174956p:plain

こんな感じでSlackに投稿できる。

まとめ

Google Home + IFTTTの連携でわりといろいろなことができることがわかった。 まだ、Google Home + Crome Castの連携サービスが日本ではそんなにないのでまだ時期尚早かなー感はあるけど 面白いデバイスであるとは思う。