Этот навык Alexa предоставляет информацию о книгах в мягкой обложке или онлайн-книгах. Это просто пример, а не реальная вещь. Итак, вот пример пользователя: «Алекса, найди лучшую книгу с одним автором». Алекса: «Хорошо, вот и книга, бла-бла». Алекса: «Хотели бы вы услышать это снова?» Пользователь: «Да!» Алекса: повторить ту же информацию. Я хочу знать, как я могу реализовать код, чтобы Алекса ответила на этот вопрос да / нет и повторила сказанное. Я провел обширное исследование по этому поводу, но до сих пор не могу понять. Кстати, я новичок в этом.
'booksIntent': function () {
var speechOutput = '';
var speechReprompt = '';
var sourceSlot = resolveCanonical(this.event.request.intent.slots.source);
console.log('User requested source: ' + sourceSlot);
var authorSlot = resolveCanonical(this.event.request.intent.slots.author);
console.log('User requested author: ' + authorSlot);
var sources = {
'basic book' : {
'one author' : "Blah blah one author",
'two authors' : "Blah blah two authors",
'multiple authors' : "blah blah multiple authors"
},
'basic electronic' : {
'one author' : "Blah blah...some electronic information"
},
}
var authors = [
'one author',
'two authors',
'multiple authors'
];
var source =sourceSlot.toLowerCase();
if(sourceSlot && sources[source]){
var standardSource = '';
var author = 'one author'; //default author choice
if(authorSlot && author.indexOf(authorSlot) - 1){
author = authorSlot;
}
var getSource = sources[source][author];
speechOutput = 'Ok! ' + getSource;
speechReprompt= 'Would you like to hear this again?'; //I want the user to answer with a yes or no and the program to respond accordingly.
}
else{
speechOutput = 'Sorry, the information you asked is not supported yet'
speechReprompt = 'I support: this and that!'
}
this.emit(":ask", speechOutput, speechReprompt)
},