我是Alexa开发的新手。我创建了一个Alexa技能连接到一个使用Nodejs的AWS lambda函数。
我的这项技能的目标是根据我做过的提要找出当天的专辑是什么,并阅读关于它的简介(完成),然后播放专辑。
我的简单意图,即获取数据并大声读取它是有效的。但我不知道如何让“玩”的意图发挥作用。
如果当天的专辑是"Witness by Katy“,我希望用户说:"alexa,Witness (myskill)播放当天的专辑”,它会回复“播放凯蒂·佩里的证人”,并开始播放该专辑。
这个是可能的吗??
谢谢!
发布于 2017-10-22 03:07:45
您可以在响应中使用<audio src="..."/>为outputSpeech的SSML类型。响应示例:
"response": {
"outputSpeech": {
"ssml": "<speak> Playing 'Witness by Katy Perry': <audio src="https://.../output.mp3" /> </speak> ",
"type": "SSML"
},
...
}但它有一个限制:音频文件不能超过90秒。有关mp3文件的要求可以在here中找到。作为一种变通办法,您可以将mp3文件拆分成90秒的块。
要为Alexa准备mp3文件,您可以从终端使用以下命令(它将从input.mp3转换为output.mp3):
ffmpeg -y -i input.mp3 -ar 16000 -ab 48k -codec:a libmp3lame -ac 1 output.mp3https://stackoverflow.com/questions/46817880
复制相似问题