我正在尝试通过Alexa播放音频文件。我的后端是Ruby on Rails,并且正在使用alexa-ruby gem。
我能够通过Ask and Tell指令发表演讲
def index
parsed_request = JSON.parse(request.body.read)
alexa = AlexaRuby.new(parsed_request)
speech = "Hey there! I am alexa"
response = alexa.response.ask!(speech)
render json: response
end
当我尝试播放音频时,没有任何反应。这就是我试图做的
def index
parsed_request = JSON.parse(request.body.read)
alexa = AlexaRuby.new(parsed_request)
params = { url: 'https://s3.amazonaws.com/my-ssml-samples/Flourish.mp3', token: 'flourish-token', offset: 0 }
response = alexa.response.add_audio_player_directive(:start, params)
render json: response
end
答案 0 :(得分:0)
因此,根据您尝试播放的音频类型,您可能想要尝试不同的策略。音频播放器指令更多地用于播放诸如流之类的内容,并提供暂停、倒带等类型的控件。如果您要创建音乐播放器或播放长格式音频文件(如播客),则会使用它。
从您的示例来看,您似乎只是想播放简单的 mp3。您可以使用与使用 SSML 进行演讲完全相同的方式来做到这一点。
例如:
def index
parsed_request = JSON.parse(request.body.read)
alexa = AlexaRuby.new(parsed_request)
speech = "<speak>
Welcome to Ride Hailer.
<audio src="soundbank://soundlibrary/transportation/amzn_sfx_car_accelerate_01" />
You can order a ride, or request a fare estimate.
Which will it be?</speak>"
response = alexa.response.ask!(speech)
render json: response
end
您可以在这里找到更多信息