Webhook 音频响应出现错误但似乎正确

Webhook audio response coming out wrong but seems correct

在 DialogFlow 中试验 webhook 响应时,我 return 混合了音频和语音响应。 Actions Test Console 会乱读(即所有 xml 标签都被大声读出 e.t.c。)但是当我单击同一个测试控制台中的 Audio 选项卡以找出问题所在时XML 测试控制台reads/plays 声音和文字正确,好像没有任何问题。

这可能是什么原因造成的?

附录: 这是我在 Javascript:

中生成的响应
    conv.ask(`<speak>Här kommer ljudet.</speak>` +
    `<speak><par><media xml:id="environment" end="effect.end"fadeOutDur="3.0s"><audio src="${ljud3}" /></media>` +
    `<media xml:id="effect"><audio src="${ljud1}" begin="2.0s" /> </media></par></speak>`);}

在 Actions Console 的音频选项卡中,当我按下 "Update and listen":

时,它看起来像这样并且按预期工作
    <speak>Här kommer ljudet.</speak><speak><par><media xml:id="environment" end="effect.end" fadeOutDur="3.0s"><audio src="https://www.sigvardson.se/public/running_on_gravel.ogg" /></media><media xml:id="effect"><audio src="https://actions.google.com/sounds/v1/cartoon/clang_and_wobble.ogg" begin="2.0s" /> </media></par></speak>

控制台中的响应选项卡如下所示:

{"payload": {
"google": {
  "expectUserResponse": true,
  "richResponse": {
    "items": [
      {
        "simpleResponse": {
          "textToSpeech": "<speak>Här kommer ljudet.</speak><speak><par><media xml:id=\"environment\" end=\"effect.end\" fadeOutDur=\"3.0s\"><audio src=\"https://www.sigvardson.se/public/running_on_gravel.ogg\" /></media><media xml:id=\"effect\"><audio src=\"https://actions.google.com/sounds/v1/cartoon/clang_and_wobble.ogg\" begin=\"2.0s\" /> </media></par></speak>"
        }
      },
      {
        "simpleResponse": {
          "textToSpeech": "<speak>Vill du höra <break time=\"500ms\"/> mer?</speak>"
        }
      }
    ],
    "suggestions": [
      {
        "title": "ja"
      },
      {
        "title": "nej"
      }
    ]
  }
}

} }

问题是您的回复中有两个 <speak> 标签。如果您将其更改为仅在整个事物周围使用一个 <speak> 标记,它应该会更好。