В настоящее время я учусь, как развивать навыки Alexa, и хочу создать простой навык, который запрашивает у пользователя его имя, а когда он получает имя - имя может быть записано в таблицу DynamoDB.Приведенный ниже код предназначен только для части имени параметра, и у меня есть некоторый код, который пытается записать в мою таблицу.К сожалению, когда я запускаю навык, я просто получаю сообщение об ошибке «Возникла проблема с ответом запрошенного навыка».
Может кто-нибудь увидеть, какая проблема ниже или что может быть причиной проблемы?Спасибо!
function setNameInSession(intent, session, callback) {
const cardTitle = intent.name;
const nameSlot = intent.slots.Name;
let repromptText = '';
let sessionAttributes = {};
const shouldEndSession = false;
let speechOutput = '';
if (nameSlot) {
const name = nameSlot.value;
sessionAttributes = createNameAttributes(name);
speechOutput = `Great, thanks ${name}. You can ask me ` +
"your favorite color by saying, what's my favorite color?";
repromptText = "You can ask me your favorite color by saying, what's my favorite color?";
// Load the AWS SDK for Node.js
var AWS = require('aws-sdk');
// Set the region
AWS.config.update({region: 'eu-west-1'});
// Create the DynamoDB service object
var ddb = new AWS.DynamoDB({apiVersion: '2012-10-08'});
var params = {
TableName: 'myTestTable',
Item: {
'timeStamp' : {S: 'Richard Roe'}
}
};
ddb.putItem(params, function(err, data) {
if (err) {
console.log("Error", err);
} else {
console.log("Success", data);
}
});
} else {
speechOutput = "I'm not sure what your favorite color is. Please try again.";
repromptText = "I'm not sure what your favorite color is. You can tell me your " +
'favorite color by saying, my favorite color is red';
}
callback(sessionAttributes,
buildSpeechletResponse(cardTitle, speechOutput, repromptText, shouldEndSession));
}