私はAmazon Echoのスキルを習得しようとしています。私は文字通りちょうどこんにちはと応答する超簡単なものを作りました。AWS Lambda 'プロセスがリクエストを完了する前に終了しました'
2度目の試みとして、私が学んだことを解明するために、もう少し冒険したいと思っていました。そして、AlexaにArrayからランダムなGoTを提供させてもらいました。私は一般的にコーディングするのがかなり新しく、ほとんどがウェブのものに取り組んでいます。私はかなり長い間別の手段で検索しようとしており、助けてくれたものは何も見つかりません。
ラムダでテストすると、ログ出力で「プロセスが完了する前にプロセスが終了しました」というメッセージが表示されます。「Alexaはexports.handlerで定義されていません」と表示されることもあります。本当に誰かが助けることを望む。以下は、この長いwindednessのため申し訳ありません..
私のコードです:
この変更前もvar Alexa = require('alexa-sdk');
へ
"use strict";
var alexa = require('alexa-sdk');
// QUOTES ARRAY
var quotes = [
'A mind needs books as a sword needs a whetstone, if it is to keep its edge',
'Never forget what you are, for surely the world will not',
'I wont be knitting by the fire while I have men fight for me'
];
// HANDLERS
var handlers = {
getThatQuote: function() {
var quoteIndex = Math.floor(Math.random() * quotes.length);
var randomQuote = quotes[quoteIndex];
return randomQuote;
},
LaunchRequest: function() {
this.emit(":tell", "Welcome to Game of Quotes");
},
QuoteGet: function() {
this.emit(":tell", "Here is your quote" + this.getThatQuote());
},
};
exports.handler = function (event, context) {
const alexa = Alexa.handler(event, context);
alexa.registerHandlers(handlers);
alexa.execute();
};
var alexa = require( 'alexa-sdk')は、Alexa SDK(Alexa.handler(event、context)経由)を使用しようとしている後のコードと互換性がありません。 Alexaと同じスペルを使用してください。 – jarmod