Я не могу понять, почему я не вижу ответа DynamoDB в моем навыке Alexa.
Я создал несколько вариантов обещания с DynamoDB из разных источников, чтобы выяснить это. Но, похоже, ничего не работает. В журналах нет ни одной ошибки DynamoDB. Это сводит меня с ума.
Я пробовал сканировать, получать и помещать операции.
Вот код моего сканирования, попробуйте в AWS lambda:
....
'StartIntent': function () {
speechOutput = '';
var AWS = require('aws-sdk');
AWS.config.update({region: 'eu-west-1'});
var docClient = new AWS.DynamoDB.DocumentClient();
var params = {
TableName: "my_db_2",
FilterExpression: "data_type = card"
};
console.log("Scanning table.");
docClient.scan(params, onScan).promise().then(function(result) {
console.log("GetItem succeeded:", JSON.stringify(result, null, 2));
console.log("succeeded");
}).catch(error => {
console.log("ERROR catched");
});
console.log("scan done");
},
.....
function onScan(err, data) {
console.log("starting to scan");
if (err) {
console.error("Unable to scan the table. Error JSON:",
JSON.stringify(err, null, 2));
}
else {
console.log("Scan succeeded.");
data.Items.forEach(function(movie) {
console.log(movie.data_type);
});
}
}
Cloudwatch показывает только:
2018-09-13T11: 43: 11.500Z Таблица сканирования.
2018-09-13T11: 43: 11,522Z сканирование выполнено
2018-09-13T11: 43: сканирование 11,659Z 2-го выполнено