将 Fulfillment 与 Dialogflow 结合使用时如何播放音频文件

How do I play an audio file when using Fulfillment with Dialogflow

我正在执行 Google 助理操作,类似于 Google 在你说 "Play an E note" 时所做的操作。

我已经设法让我的 nodejs 应用回复参数,但现在我需要传递一个音频文件。我该怎么做?

执行此操作的典型方法是将音频文件放在某处的托管服务上(Firebase 托管是一个不错的选择,特别是如果您还在 Action 中使用 Firebase Cloud Functions,但任何可以提供服务的地方通过 HTTPS 发送文件),然后发回 SSML 作为包含音频的响应。

这可能看起来像这样:

var audioUrl = 'https://example.com/audiofile.mp3';
var msg = `<speak><audio src="${audioUrl}"></audio></speak>`
app.tell( msg );

针对您自己的音频文件进行调整,您可能希望使用 app.ask() 而不是提示您是否提示用户回复您的音频。