Я боролся с этим сам и теперь его работаю. Если вы используете образец модуля AlexaSkill.js, который предоставляет Amazon, то вам нужно добавить пару разделов, чтобы иметь дело с карточками изображений.
В разделе buildSpeechletResponse добавить это после подобного типа "Simple" раздел:
if (options.cardSmallImageURL && options.cardLargeImageURL) {
alexaResponse.card = {
type: "Standard",
title: options.cardTitle,
text: options.cardContent,
image: {
smallImageUrl: options.cardSmallImageURL,
largeImageUrl: options.cardLargeImageURL
}
};
}
Затем после определения askWithCard далее вниз добавить это:
askWithPictureCard: function(speechOutput, repromptSpeech, cardTitle, cardContent, smallImageURL, largeImageURL) {
this._context.succeed(buildSpeechletResponse({
session: this._session,
output: speechOutput,
reprompt: repromptSpeech,
cardTitle: cardTitle,
cardContent: cardContent,
cardSmallImageURL: smallImageURL,
cardLargeImageURL: largeImageURL,
shouldEndSession: false
}));
Теперь вы можете назвать это, вероятно, используя переменные, а не константы I тестировал с использованием;
response.askWithPictureCard («Это выход речи», «Это reprompt», «это название карты», «Это текст карты, обратите внимание на поле называется текст не cardContent», 'https://s3.amazonaws.com/thisisthesmallpictureurl-small.jpg', 'https://s3.amazonaws.com/thisisthebigpictureurl-big.jpg');
Затем выполните аналогичный процесс, чтобы добавить функцию tellWithPictureCard.