はじめに
- gmailなどが届いたら、Google homeさんが教えてくれるようにしていた->参考
- ところが、日本時間 2018/09/21(金) 午前07:30程度から、メールが着信してもGoogle homeさんが反応しなくなっていた
- 調べてみたところ、google homeさんをしゃべらせる仕掛けであるgoogle-home-notifierが「Error: get key failed from google」なるエラーを出力していた
- これは、googleからの戻り値が変わっていたためと分かった
- googleの変更に合わせて、node_modules/google-tts-api/lib/key.jsを修正してやることで解決した
環境
- Windows 10 pro バージョン1803
- Windows Subsystem for Linux(WSL) ubuntu VERSION="18.04.1 LTS (Bionic Beaver)"
- node.js v10.6.0
- 'google-home-notifier': '1.2.0',
現象
- 日本時間 2018/09/21(金) 午前07:30程度から、google-home-notifierが「Error: get key failed from google」なるエラーを出力していた
原因
- google翻訳(https://translate.google.com)の返すキーが、「TKK = '405291.1334555331'」から「TKK='12345678.90123'」になり、それをチェックする「node_modules/google-tts-api/lib/key.js」でエラーが返っていた。
対策
- 「node_modules/google-tts-api/lib/key.js」の24行目の「
eval(html.match(/TKK=eval\(\'\(.*\)\'\);/g)[0]);
」を「eval(html.match(/TKK='[0-9]+.[0-9]+'/g)[0]);
」に書き換えた。
おわりに
- 以上は暫定対策
- Githubを覗くと、この問題への対策のpull requestがあった
- そちらを取り込んだ方が確実ではあると思う
- 今回は、自分で調べて対策した情報を折角なので残す形にした