7
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

スマートスピーカーAdvent Calendar 2018

Day 2

EnOceanのスイッチストライクエアーでGoogle Homeに通知してもらう

Last updated at Posted at 2018-12-01

EnOceanのトイレセンサー「スイッチストライクエアー」を使ってGoogle Homeに通知してもらうようにしました。
コチラの記事で信号を受信するところは確認してください。

2019-02-07 更新
google-tts-apiのバージョン変更

完成イメージ

1. Node-REDにgoogle-home-notifyをインストールする

Node-REDから同じwi-fiに接続されているGoogle Homeにしゃべらせるためのモジュールをインストールします。

1-1. Manage paletteをクリック

右上のハンバーガーメニューからManage paletteをクリックします。

スクリーンショット_2018-11-01_9_07_52.png

1-2. google-homeで検索する

Installタブをクリックして、検索窓からgoogle-homeを入力して検索します。
node-red-google-home-notifyがあるので、右下にあるinstallボタンをクリックします。

スクリーンショット_2018-11-01_9_08_13.png

1-3. google-home-notifyノードを設置する

インストールが完了するとoutputカテゴリにgoogle-home-notifyノードが表示されているかと思います。
フローエディタにドラッグアンドドロップしてください。ドラッグアンドドロップしたノードをダブルクリックして設定を行います。

スクリーンショット_2018-11-01_9_09_25.png

1-4. Google HomeのIPアドレスを設定する

Google Homeアプリからしゃべらせたい端末のIPアドレスを確認します。
IPアドレスをそのまま入力します。言語は接続が完了しないとEnglishしか選べません。

googlehome_001.png

1-5. 一旦デプロイして、日本語に設定する

一旦デプロイして、google-home-notifyノードがReadyになることを確認します。

スクリーンショット 2018-11-01 9.14.54.png

ノードをダブルクリックすると今度は言語のプルダウンリストが更新されてJapaneseが選択できるようになります。
スクリーンショット_2018-11-01_9_15_16.png

1-6. templateノードでGoogle Homeにしゃべらせる言葉を設定する

templateノードをドラッグアンドドロップして、Google Homeにしゃべってもらう言葉を指定します。
payload.wordに前回の記事で指定した言葉が格納されています。
スクリーンショット_2018-11-01_9_19_33.png

1-7. ノードをつないでデプロイする

各ノードを下記のようにつないでデプロイしてください。これでスイッチストライクエアーを押下する毎にGoogle Homeがしゃべりだします。
スクリーンショット_2018-11-01_9_20_11.png

注意点

google-home-notifyノードがget key failed from googleと表示されることがあります。
これはgoogle-home-notifyで使っているgoogle-tts-apiのバージョンが古いからです。
スクリーンショット 2018-11-01 9.22.28.png

google-tts-apiをアップデートする

Node-REDのインストールしているフォルダへ移動してpackage.jsonファイルを直接編集する必要があります。

$ cd ~/.node-red/node_modules/google-home-notify
$ vi package.json
package.json(抜粋)
// before
"dependencies": {
  "bluebird": "3.5.1",
  "castv2-client": "^1.2.0",
  "google-tts-api": "0.0.2-alpha.1" // ←ここのバージョンが古い
},

// after
"dependencies": {
  "bluebird": "3.5.1",
  "castv2-client": "^1.2.0",
  "google-tts-api": "0.0.4" // 0.0.4に変更する
},

npm updateする

編集が終われば、npm updateコマンドでgoogle-tts-apiを更新します。

$ npm update

まとめ

Google Homeのnotifyが最近更新されたので、このような手動アップデートが必要でしたが、
そのうち更新が反映されるかと思います。
Node-REDを使えば簡単にGoogle Homeと連携することができます。

システム化のご検討やご相談は弊社までお問い合わせください。
https://i-enter.co.jp/contact/

7
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?