Raspberry Pi とGoogle HomeでTVを音声操作しよう!

前回の記事で、Raspberry Pi からADRSIR経由で、TVの操作するのはできそう!という所までは行けました。

今回は、Google HomeからBeebotteまでの部分を着手しようと思います。少しずつ着実に進んでるはず。

目指す構成

Google Home → IFTTT → Beebotte → Raspberry Pi

といった経路でチャレンジする予定です。

今回は、Google Home → IFTTT → Beebotte までやります。

テストとして、TVを消音してみます。※電源ON/OFFは、ウチにあるChrome castでできるので。。。

流れを簡単に

  1. Google Homeで音声を受け取って
  2. IFTTTがJsonデータをBeebotteに ※今回はここまで
  3. Beebotteで、MQTTをRaspberry Piに
  4. Raspberry PiのNode-redが受け取って、ADRSIRに赤外線信号を出すよう指示

Beebotteの設定

まずは、Sign in

https://beebotte.com/  に移動して、Sign upボタンをクリックして、

Beebotte site

必要な情報をいれまして、SIGN UPボタンクリック

Beebotte sign up

無事登録完了。

Beebotte registered

メールきましたね~。URLをクリックして認証

Beebotte 確認メール

先ほど設定した、メールアドレス&パスワードを入力して、LOG INボタン!

Beebotte login

無事、ログイン完了

Beebotte

Channel作成

Create Newボタンをクリック

Beebotte Channel作成

Create a new channel画面
• Channel Name
• Channel Description
• Resource name
• Resource Description
は、適当に入力。
そして、下のCreate channelボタンをクリック

今回は、

Channel Name google_home
Resource name voice

で、登録しました。

Beebotte Channel作成

できました
作成したChannelのChannel nameをクリック

Beebotte Channel作成

Channel Tokenが表示されますね。

後でコピーしにくるので、この場所は覚えておいてください。

Beebotte google home Channel

左メニューのAccount Settingsをクリックすると、

Beebotte menu

以下の設定画面が表示されるので、

Beebotte Plan

Access Managementタブをクリック
Secret Keyの記載発見。

Beebotte Access Management

今度は、左メニューのConsoleをクリック

Beebotte menu

Beebotte Secret Key

Secret Keyの所に、先ほどのSecret Keyをコピペ
Subscribeのところの、
Channel と Resourceに、先ほど設定したものを入力して、Subscribeボタンクリック

Beebotte Secret Key

Logの所に、Successfullyと出てるし、うまくいってるんでしょう。たぶん

Beebotte Log

IFTTTの設定

まずは、アカウント作成から

サイトに移動して、Sign upボタンをクリック

IFTTT

IFTTTはソーシャルログインできるんですね。便利だ

IFTTT ソーシャルログイン

Sign upできました。
3つクリックするよう言われてますが、右上の×ボタンクリック

Welcome to IFTTT

New Applet追加

右上の人アイコンの所をクリックして、 New Appletをクリック

IFTTT

IFTTT menu

トリガーの設定

+thisの所をクリック

IFTTT New Applet

検索ボックスに「google」と入れた所で、Google Assistantが出てくるので、クリック

IFTTT choose a service

Connectをクリック

IFTTT Connect Google Assistant

許可してあげます

IFTTT Googleアカウントへのリクエスト

今回は、単純なやつでトライしてみようと思います。

Say a simple phraseをクリック。他のやつだと、数値だったりパラメータ持たせることができるっぽいですね。

IFTTT Choose trigger

ココにトリガーになる、文言を入れていったりします。

IFTTT Complete trigger fields

”テレビを云々” にすると、Chrome castで電源が入ったりとかあるんで、商品名で逃げとくか。。

お好みで、変更してくださいね。

What do you want to say? 消音
What’s another way to say it? (optional) 消音にして
And another way? (optional) REGZA消音
What do you want the Assistant to say in response? 消音操作します
Language Japanese

で、Create triggerボタンクリック

IFTTT choose trigger

今度はActionの設定

+thatをクリック

IFTTT +that

webと打つと、Webhooksが出てくるのでクリック

IFTTT choose action service

そして、Connect

IFTTT Connect Webhooks

Make a web requestをクリック。

IFTTT choose action

飛ばすリクエストの設定ですね。

IFTTT complete action fields

URLの所は、beebotteで設定した値に置きかえてください。

Bodyの所は、試すだけならこのまんまで。後々作りこむ際にアレンジしてもらえれば。

URL https://api.beebotte.com/v1/data/publish/[beebotteのChannel Name]/[beebotteのResource name]?token=[beebotteのToken]
Method POST
Content Type application/json
Body {“data”:[{“device”:”regza”,”action”:”silence”}]}

と、入力して Create actionボタンをクリック

次画面で、Finishボタンクリックで完了。

テストしてみます

ためしに、Google homeに「OK Google 消音」と言ってみる。

・・・・・「消音操作します」

おー、IFTTT反応してますね。

次はbeebotteに、データが行っているか??

設定の際と同様に、Console画面を開いて、Secret Key・Channel・Resourceに入力して、Subscribeボタンクリック。

その状態で再度、Google homeに「OK Google 消音」

・・・・きましたね。

Beebotte Messages

今回は、ここまで。

次回、TV音声操作完結編です。