0

我是Alexa开发的新手。我创建了一个连接到使用Nodejs的AWS lambda函数的Alexa技能。通过自定义Alexa技能从Amazon目录播放专辑

我的这个技巧的目标是找出当天的专辑是基于我有(完成)的馈送并阅读关于它的完成(完成)并播放专辑。

我的简单意图获取数据并朗读它正在工作。但我无法弄清楚如何让“戏剧”意图发挥作用。

如果当天的专辑是“Katy Perry的见证”,我希望用户说“alexa,请(myskill)播放当天的专辑”,并且会以“Katy Perry的扮演见证“并开始播放该专辑。

这可能吗?

谢谢!

回答

0

您可以使用SSML类型与outputSpeech中的<audio src="..."/>作为响应。响应示例:

"response": { 
    "outputSpeech": { 
    "ssml": "<speak> Playing 'Witness by Katy Perry': <audio src="https://.../output.mp3" /> </speak> ", 
    "type": "SSML" 
    }, 
    ... 
} 

但它有一个限制:音频文件不能超过90秒。关于mp3文件的要求可以在here找到。 作为一种解决方法,也许你可以分割90秒持续时间的大块的MP3文件。

要准备的Alexa您可以使用来自终端的以下命令的MP3文件(从input.mp3转换为output.mp3):

ffmpeg -y -i input.mp3 -ar 16000 -ab 48k -codec:a libmp3lame -ac 1 output.mp3 
+0

我想使用内置的亚马逊目录播放专辑 - 因为它们都应该存在。 – Deez

+0

意思是,我想给Alexa一个命令,在其目录中播放“Katy Perry的见证”。说起凯蒂佩里的“扮演见证”并不重要......我宁愿弄清楚如何真正发送命令来播放它。 – Deez

相关问题