おはようございます!!
昨日は休日でプログラミングの日でした。
今日も、ちょこっと書かせていただきます。。
目次
7/19(木) Alexa道場 第10回「Echo Spotに対応したスキルを作ろう」を受講し、記事にまとめました。
こちらですね。
前半はEcho Spotのスキルを作る上での考え方など面白く拝見させていただいたのですが、後半はきつかったですね。
本来なら、自分のEcho Spotへも表示できるようになりたかったのですが、そこまで追いつきませんでした。
7/18(水)~22(日) Alexa道場 第8回(6/21分)の復習を行いました。(つづき2)
DynamoDB対応に変えたとたん、このエラーが出るようになってました。
「スキルからの応答に問題があります」
ですね。
以前、Lambda関数の方で「OrderIntent」が「Orderintent」になっていたときにこれがでましたが、今は大丈夫(なハズ)です。
DynamoDB対応の方も新規にロールを作成して設定したことで、こんな感じで表示されてますので大丈夫(なハズ)です。
エラーログの場所の名前が変わっていた!
こちらの記事にも書きましたが、ハンズオンテキストのP37「うまく動かない場合」の解決方法からログを調べて原因を探しててみました。
ちなみに、ハンズオンテキストではこうなってます。
「呼び出しアカウント」が「Invocations」に変更になっています。
他を見ていると、中身は一緒のようでしたので、ここからログを確認しました。
そこで見つかったのが次の問題です。
ログにApp_IDのWarningがあった!
エラーは見つからなかったのですが、Warningがありました。
「Warning: Application ID is not set 」
Lambda関数の記述で関連するところはAlexa道場第8回のこの2箇所↓です。
この部分は、第8回以前に配布された「Sample4.utf8.js」には存在しておりませんでしたが、動画を見ながらそのまま書き写したものでしたが、どうも「undefined」が怪しそうです。
シバトウ@Smartioさんから、必須でなく推奨扱いとのことと、こちらの情報を教えていただきました。
(参考:Alexaのスキル開発中、Warning: Application ID is not set)
https://qiita.com/chochotomason/items/849a436409a4e63ffdc0 …
(参考:Lambda関数に追加したAlexa Skills Kitのトリガーに対してアプリケーションIDを指定) https://qiita.com/horsewin/items/d4ac5b520dd11ecb5c20# …
注意点 https://developer.amazon.com/ja/docs/custom-skills/host-a-custom-skill-as-an-aws-lambda-function.html#configuring-the-alexa-skills-kit-trigger …
いつの間にか必須になることはよくあることなので、とりあえず記述することにしました。
本来は、最初の記事にある環境変数を使うべきなのですが、とりあえず直入力しました。
はい、これでWarningは消えました。
しかしながら、スキル呼び出し時の「スキルからの応答に問題があります」については消えませんでした。
・・・・現時点でここまでです。
本来は、早々にAlexa道場第9回のSDK V2を試してから、木曜日のEcho Spotに取りかかりたかったのですが、こんなところで足止めされてます。悔しいですね。
何か情報ありましたら、コメントいただけると助かります。
以上です。
(おわり)