ここ2ヶ月ほどアレクサ(Alexa)スキルの開発の調査を行っています。
最初にやろうとしているのは、Amazon Echo→Nature Remoを使った音声でのTV音量の細かい調整です。
Nature Remoアプリのプリセットでは家のTV音量の細かい調整をできなかったので。
本や参考となるWebサイト探しに始まり、下記Amazon関係のいろいろな登録作業を行いました。
・Alexa Skill Kit を使って開発するためにAmazon Developerアカウント登録
・スマートホームスキルはAWS(Amazon Web Service)のlambda上のPythonで記述するためAWSアカウントが必要なので登録
・PythonのRequestsライブラリはAWSでサポートされていなかったので取得のため、Ubuntu環境立ち上げ及びPyhtonのインストール後、取得したライブラリをAWSのlambdaへインポート
・スマートホームスキルははアカウントリンク必須なのでユーザーを管理する手段としてAWSのCognitoにユーザープールを登録
・Nature Remo Global APIを使用するためにNature Remo GlobalサイトからNature Remo Access Tokenを取得
現状、Amazon Echoには、妻がAmazonプライム会員なので妻のアカウントでサインインしています。
FireTVを介して映画など見れるので。
スキル開発は私のAmazonアカウント・Amazon Developerアカウント・AWSアカウントで行いたいので、開発したスキルを妻のアカウントに共有して有効にする必要があります。
そこで、
・妻のAmazon Developerアカウント登録
も行いました。
ですが、このアカウントを跨ったスキルの共有で嵌っていました。
通常、妻のAmazon Developerアカウントに設定→ユーザー権限で、私のアカウントを追加することでスキルを共有できるのですが、追加自体ができませんでした。
現在サポートの方に問い合わせ中です。
解決には時間がかかりそうなので、アレクサスキルはまだまだこれから発展途上なのかなと感じています。
私のアカウントではAlexa Skill Kitのシミュレータ上でスマートホームスキルのAlexa.Speakerインターフェースを使用してAWSのlambda上のPythonプログラムからNature Remo Grobal APIを介し、「TVの音量を2つ下げる」ところまでできているので、Amazon Echoで動作確認できたら公開していこうと思っています。
※後日、次の記事「アレクサのWiFiリモコン用スマートホームスキルをPythonでカスタマイズしてみました」でソースなどを公開しました。