Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Aws lambda 如何关闭使用AudioPlayer界面的Alexa技能_Aws Lambda_Alexa_Alexa Skills Kit_Alexa Skill - Fatal编程技术网

Aws lambda 如何关闭使用AudioPlayer界面的Alexa技能

Aws lambda 如何关闭使用AudioPlayer界面的Alexa技能,aws-lambda,alexa,alexa-skills-kit,alexa-skill,Aws Lambda,Alexa,Alexa Skills Kit,Alexa Skill,我目前正在开发Alexa技能,使用AudioPlayer界面播放歌曲 调用取消意图时,我执行以下操作: 'AMAZON.CancelIntent': function() { this.emit(':tell', "Bye!");} 问题是,在alexa说“再见”之后,音频没有音频,技能仍在运行 如何从意图处理程序关闭技能?您必须发送一个音频播放器。Stop指令停止当前播放的音频流 'AMAZON.CancelIntent': function() { this.response.spe

我目前正在开发Alexa技能,使用
AudioPlayer
界面播放歌曲

调用取消意图时,我执行以下操作:

'AMAZON.CancelIntent': function() {
this.emit(':tell', "Bye!");}
问题是,在alexa说“再见”之后,音频没有音频,技能仍在运行


如何从意图处理程序关闭技能?

您必须发送一个
音频播放器。Stop
指令停止当前播放的音频流

'AMAZON.CancelIntent': function() {
   this.response.speak('Bye').audioPlayerStop();
   this.emit(':responseReady');
}
在ask-sdk-v2中,您可以使用:

return handlerInput.responseBuilder
      .addAudioPlayerStopDirective()
      .getResponse();
更新
Alexa服务将跟踪您的音频播放器技能,作为最近播放音频的技能,对于任何内置意图,Alexa将创建一个新会话并触发对您的技能的请求

当您的技能发送播放指令开始播放时,Alexa服务将音频流发送到设备进行播放。 一旦会话正常结束(例如,如果您的响应 包括shouldEndSession标志设置为true),Alexa记得 您的技能开始播放,直到用户执行以下操作之一: 以下:

  • 使用不同的技能调用音频播放
  • 调用另一个流式传输音频的服务,例如内置音乐服务或flash简报
  • 重新启动设备
  • 检查此文档


    更多关于AudioPlayer指令的信息

    音频暂停,但技能仍在运行,我希望在调用此意图后关闭技能。无论如何,谢谢你的快速回复