alexa-sdk response.listen(reprompt speech)

时间:2017-12-26 01:50:56

标签: alexa-skills-kit aws-sdk-nodejs

Alexa High Low Game Skill中,startGameHandlers中有以下代码:

'AMAZON.YesIntent': function() {
    this.attributes["guessNumber"] = Math.floor(Math.random() * 100);
    this.handler.state = states.GUESSMODE;
    this.response.speak('Great! ' + 'Try saying a number to start the game.').listen('Try saying a number.');
    this.emit(':responseReady');
},

在我开始游戏并回复"是"后,我听到Alexa的语音输出"太棒了!尝试说一个数字来开始游戏。"。如果我没有回复,我是否应该期待#34;尝试说出一个号码的谴责。"被Alexa扮演?我观察到的是,重复的言论从未发挥过。

Alexa会在会议结束前等待多长时间?看来我必须快速回复才能继续,否则会话将会关闭。

1 个答案:

答案 0 :(得分:0)

是的,Alexa应该发表谴责言论。等待8秒后重新启动。在重新谴责之后作出回应的时间是8秒。在此时间段之后会话结束。

要解决Alexa未触发重新提示的问题,您可以尝试发送此类响应。

'AMAZON.YesIntent': function() {
    this.attributes["guessNumber"] = Math.floor(Math.random() * 100);
    this.handler.state = states.GUESSMODE;
    var speechOutput = 'Great! Try saying a number to start the game.';
    var repromptSpeech = 'Try saying a number.';
    this.emit(':ask', speechOutput, repromptSpeech);
};