0

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 的语音输出“太好了!试着说一个数字来开始游戏。”。如果我没有回应,我应该期待“试着说一个数字”的提示性演讲吗?被 Alexa 玩弄了?我观察到的是,即兴演讲从未播放过。

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

4

1 回答 1

0

是的,Alexa 应该播放即兴演讲。等待8s后触发reprompt。再次提示后的响应时间也是 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);
};
于 2017-12-27T08:41:11.090 回答