google-home-notifierは、Google Home にテキストを読み上げさせるNode.jsパッケージだ。
普通に使っていたが、ある日を堺に、以下のようなエラーが起きるようになってしまった。
Error: get key failed from google
原因は、 issue と pull request がすでにある。詳しくはそちらに。わずかな変更だが、現時点ではまだマージされておらず、なかなかマージされないかもしれない。
issue
https://github.com/noelportugal/google-home-notifier/issues/46
pull request
https://github.com/noelportugal/google-home-notifier/pull/47/files
原因は、Google翻訳のAPI仕様が変わったからだ。 google-home-notifier が使う google-tts-api パッケージ側で追従する対応がなされた。
暫定的に、すぐに使いたい人は、google-home-notifierをクローンしてきて google-tts-api のバージョンを書き換えれば良い。
Before
"dependencies": {
:
"google-tts-api": "0.0.2",
:
}
After
"dependencies": {
:
"google-tts-api": "0.0.3",
:
}
そもそも、google-home-notifierやgoogle-tts-apiは、Google翻訳のWebサイトをスクレイピングしてAPIだけ利用するというもので、あまり良いやり方では無い。少なくとも非公式だ。もし使う場合は、突然使えなくなる覚悟が必要だろう・・・。
シンプルな読み上げ機能を、もう少しクリーンな方法で実装するならば、GCPの Cloud Text-to-Speech や、 AWSの Amazon Polly がある。