Alexa SSML没玩

Jos*_*lls 4 ssml amazon-web-services alexa-skills-kit

我试图进入ASK,我只是尝试了一个SSML的虚拟示例.我正在使用Amazon Lambda和Python.如果我从Lambda控制台测试我的代码,我得到预期的输出:

{
  "version": "1.0",
  "response": {
    "outputSpeech": {
      "text": "<speak><audio src='https://s3.amazonaws.com/aws-website-resources-1183x/dice-die-roll.mp3' />Three</speak>",
      "type": "SSML"
    },
    "shouldEndSession": true,
    "card": {
      "content": "Three.",
      "type": "Simple",
      "title": "Dice"
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

当我去Alexa服务模拟器并尝试任何请求时,输出语音中的文本消失了,控制台中的"Listen"按钮被禁用,如果我在Echo上尝试它,它就不会播放任何内容:

{
  "version": "1.0",
  "response": {
    "outputSpeech": {
      "type": "SSML"
    },
    "card": {
      "content": "Three.",
      "title": "Dice",
      "type": "Simple"
    },
    "shouldEndSession": true
  }
}
Run Code Online (Sandbox Code Playgroud)

如果我将SSML复制/粘贴<speak><audio src='https://s3.amazonaws.com/aws-website-resources-1183x/dice-die-roll.mp3' />Three</speak>到语音模拟器中,我可以播放它并按预期播放.我已经使用ffmpeg转换了mp3文件:ffmpeg -y -i a.mp3 -ar 16000 -ab 48k -codec:a libmp3lame -ac 1 output.mp3我明白亚马逊的S3应该值得信赖,可能是什么问题?我尝试在SSML中使用单引号和双引号,我尝试转义引号无济于事.谁知道我应该研究什么?

Jos*_*lls 7

愚蠢的错误.输出应该是ssml而不是text.

"outputSpeech": {
      "ssml": "<speak><audio src='https://s3.amazonaws.com/aws-website-resources-1183x/dice-die-roll.mp3' />Three</speak>",
      "type": "SSML"
    },
Run Code Online (Sandbox Code Playgroud)