Node-RED から Amazon Echo の機能が使える、node-red-contrib-alexa-remote があります。
これを使うには、設定で Amazonアカウントの Email,パスワードを使うか、Cookie を記述する必要があります。
下記サイトの記事に情報があります。
声を使わずEchoを操作 node-red-contrib-alexa-remote ( その他コンピュータ ) – AlexaでBroadlink RMシリーズを制御 – Yahoo!ブログ
Cookie とは何を使えば良いのか?ですが、次のようにして取得します。
node-red-contrib-alexa-remote の Alexa speak ノードだけ試しましたが、下記でできました。
Chromeブラウザで https://www.amazon.co.jp にアクセス、ログインします。
F12キーを押すと、画面右側にデベロッパーツールが表示されるので、Network を選択します。
URLバーに https://alexa.amazon.co.jp/spa/index.html#help と入力し、Enter を押します。
次に赤丸の個所のボタンを押します。
ブラウザは「ヘルプとフィードバック」の画面になっているので、適当にリンクをクリックします。
画面右側のデベロッパーツールのテーブル表示の個所で、Name列が events以外のものを選択し、右クリックして Copy → Copy as cURL(bash) を選択します。
クリップボードに文字列がコピーされているので、エディタ上でペーストします。
-H ‘Cookie: x-amzn-dat-gui-….’ という個所の長い文字列があり、x-amzn-dat-gui-…から 「’」の前までが Cookie です。
ただし、次の制限があります。
・Alexa speak ノードでは、日本語を話させることができません。英語のみできました。
・時間がたつと Cookie が無効になるようです。1日経過後に試したらダメでした。
・Node-RED の画面で、Alexa speakノードの下に、エラーの場合「Login unsuccessfull.」と出ます。
これが出たら、以降、設定した Cookie では何をやっても失敗します。
Cookie のとり直しが必要です。
コメント