google-home-notifierが落ちても永続的に実行するように、foreverなるものを導入しました。参考にしたのは、こちらのサイトです。
【Node.js入門】foreverの使い方とデーモン化による永続化・自動起動まとめ! | 侍エンジニア塾ブログ(Samurai Blog) – プログラミング入門者向けサイト
確かに、killコマンドでnodeを殺しても、すぐに復活しているようです。
google-home-notifierが落ちても永続的に実行するように、foreverなるものを導入しました。参考にしたのは、こちらのサイトです。
【Node.js入門】foreverの使い方とデーモン化による永続化・自動起動まとめ! | 侍エンジニア塾ブログ(Samurai Blog) – プログラミング入門者向けサイト
確かに、killコマンドでnodeを殺しても、すぐに復活しているようです。
GrovePiに接続した光センサの値をGoogle home に喋らせます。
SeedWikiで紹介されている grove_light_sensor.py のコードのうち、光センサの値の取得部分を利用し、google-home-notifier(Node.js)のURLを叩くためのコードを追加します。
google-home-notifierのURLを叩くために、次のサイトを参考にしました。
Pythonでcurlコマンドを使用する方法とは【メンターが回答】 | TechAcademyマガジン
作成したプログラムは次のとおりです。ファイル名は、speak_light_sensor.py です。
試行のために、あらかじめ google-home-notifier を起動しておきます。
作成したspeak_light_sensor.pyの実行結果は次のとおりです。Google homeがセンサの値を読み上げました。<Response [200]>は、google-home-notifierのHTTPレスポンスです。
RaspberryPi3modelBに GrovePi+ を載せ、Groveの光センサとLEDを接続します。後に、光センサの値をGoogle home に喋らせる準備です。
参考サイト:Seeed Wiki
光センサはポートA0に、LEDはポートD4に接続します。

開発環境をSetting Up The Software – Dexter Industries(クイックスタート)の手順に従って構築します。
GitHubリポジトリから、ソフトウェア群をクローンして、光センサ用のPythonプログラムを実行します。しかし、エラーが発生しました。
エラーメッセージをキーワードに調べると、解決策にたどり着きました。
Grove Piで光量の取得エラー。ファームウェアのアップデートで解決
ここで、GrovePi+を提供しているDexter Industriesの公式サイトに、ファームウェアのアップデート方法が掲載されていることを知り、実行してみました。
ファームウェアのアップデートに失敗(汗)。原因は、GrovePi+の接続不良でした。トラブルは、物理層から疑うべきです。再度、ファームウェアのアップデートを試みて無事成功し、光センサのプログラムも無事動作しました。
参考にさせて頂いたのがこちらの方法です。
GoogleHomeスピーカーに外部からプッシュして自発的に話してもらいます
Node.jsは前回にインストール済みですので、それ以降の作業のみ示します。
example.js中のGoogle homeのIPアドレス、言語を変更してからサービスを起動します。
指定のURLにアクセスして、Google home に喋らせようとすと、”Error: get key failed from google”が返ってきます。
対処方法として、参考にさせて頂いたのがこちらです。本当に助かりました。
動かなくなりがちな Google Home Notifier の対応
このサイトの教えに従って修正したのがこのファイル達です。
以下のコマンドで、Google Homeが話すことを確認しました。
Google home mini を購入して、RaspberryPiに、Groveセンサーで取得した部屋の温度を喋らせたいと思います。
google-home-notifierを走らせるのに、Node.js や npm の最新版を入れる必要があるようですが、どうもしっくりこない。
一番、しっくりきたのがこの方法です。
https://github.com/blobsmith/raspberryTestNode/wiki/Node.js-installation-with-nvm-on-Raspberry-pi