【发布时间】:2018-04-11 23:30:39
【问题描述】:
我现在正在构建一个基于 Rails 后端的 Alexa 应用程序。到目前为止,我可以通过在 LaunchRequest 上返回这个 JSON 来轻松播放音频文件:
{
"body": {
"version": "1.0",
"response": {
"outputSpeech": {
"type": "PlainText",
"text": "Welcome To My App"
},
"directives": [
{
"type": "AudioPlayer.Play",
"playBehavior": "REPLACE_ALL",
"audioItem": {
"stream": {
"token": "12345",
"url": "https://s3.us-east-2.amazonaws.com/my-s3-bucket/songs/audio_files/000/000/008/original/SampleAudio_0.4mb.mp3?1523318953",
"offsetInMilliseconds": 0
}
}
}
],
"shouldEndSession": true
}
}
}
这可以正常工作并播放位于我的 s3 存储桶中的音频文件。我什至无法弄清楚如何让新的音频文件在当前文件结束后自动播放,或者当我说“Alexa,下一个”时。
根据我收集到的信息,我需要使用“ENQUEUE”playBehavior、tokens 和 expectedPreviousTokens,以及 PlaybackNearlyFinished。但是,我找不到任何好的教程或代码示例来解释如何使用这些东西。
PlaybackNearlyFinished 如何发送?它是从我的 rails 后端发送到 Alexa 还是从 Alexa 发送到我的 rails 后端?我该如何回应?如何以将新音频文件添加到队列的方式对其进行响应?
如果有人能解释我将如何将新的音频文件添加到队列中,请填写,或指导我查看说明如何完成此操作的教程。
【问题讨论】:
标签: audio alexa alexa-skills-kit alexa-skill