Alexa: изо всех сил пытается ссылаться на список / пункт в намерении
Я начинаю и пытаюсь развить некоторые навыки для Алексы, но я, кажется, каждый раз сталкиваюсь с одним и тем же камнем преткновения, и, как бы я ни старался, я не могу его преодолеть. Я пытался использовать различные шаблоны, а затем модифицировать их для удовлетворения своих собственных потребностей, но даже это, похоже, не работает.
Например: вот образец для выбора вашего любимого цвета. Это работает абсолютно нормально само по себе. Но если я попытаюсь сослаться на свое собственное намерение 'CharacterIntent', я не смогу вообще сохранить Intent, его имя, слот или значение.
Когда я тестирую команду, я вижу, что команда Lambda ссылается на правильное намерение, имя слота и элемент. Если бы я должен был выполнить оператор if, ищущий "CharacterIntent", он никогда не найдет его.
Я работал по крайней мере с 5 различными примерами. Начал с нуля и просматривал их построчно, чтобы понять, что я делаю неправильно, но я не могу это взломать. Я удалил проекты и перезапустил множество раз. Я расстраиваюсь с этим сейчас, поскольку это не должно быть таким сложным, но я не знаю, что мне не хватает.
Я удалил проект, который у меня был - и начну снова. Но я надеюсь, что кто-то может предложить мне некоторое понимание, прежде чем я потеряю все свои волосы.
Спасибо
Энтони
function setColorInSession(intent, session, callback) {
const cardTitle = intent.name;
const favoriteColorSlot = intent.slots.Color;
let repromptText = '';
let sessionAttributes = {};
const shouldEndSession = false;
let speechOutput = '';
if (favoriteColorSlot) {
const favoriteColor = favoriteColorSlot.value;
sessionAttributes = createFavoriteColorAttributes(favoriteColor);
speechOutput = `I now know your favorite color is ${favoriteColor}. You can ask me ` +
"your favorite color by saying, what's my favorite color?";
repromptText = "Yo
u can ask me your favorite color by saying, what's my favorite color?";
} 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));
}