【问题标题】:How to play and record voice at same time in twilio如何在 twilio 中同时播放和录制语音
【发布时间】:2017-10-19 21:30:32
【问题描述】:

我正在使用 twilio

我的情况是当用户拨打电话时,IVR 会询问用户心情,然后开始录制 10 秒,将该录音带到服务器根据用户心情查找播客,然后将 TWIML 与播客 mp3 一起发送回url 并播放给用户

我已经完成了这项工作

现在我想实现当用户说“跳过”或“我不喜欢这个请跳过”(或我将使用 Ai 处理的类似内容)时立即执行的功能停止播放并转到服务器并获取另一个播客 mp3 url 并播放它

为此我需要这样做:

<?xml version="1.0" encoding="UTF-8" ?>  
<Response> 
    <Play>https://somechannel.com/podcast.mp3</Play>
    <record action='/voice/check-what-user-said'></record>
</Response>

但是这样做并不能解决我的问题,因为 twilio 将在播放完毕后开始录制,我想每 10 秒录制一次,并在用户收听播客时将其连续发送到服务器

let say, twilio start playing mp3, it also start recording

e.g:
playing 
00:00 - start recording for ten seconds
00:10 - finish recording and send it to server
00:11 - start another recording for 10 seconds
00:20 - finish recording and send it to server

每次我们在服务器上录制时,我都会将录制转换为文字广告检查用户是否说“跳过”,如果是,我将即时修改通话

【问题讨论】:

    标签: javascript twilio twilio-api twilio-twiml


    【解决方案1】:

    这里是 Twilio 开发者宣传员。

    恐怕目前*无法在播放 mp3 的同时录制通话片段。

    我可以建议您不要为这个功能发声use a key press 吗?然后您可以使用以下 TwiML(作为示例)

    <?xml version="1.0" encoding="UTF-8" ?>  
    <Response> 
      <Say>Press any digit to skip this podcast</Say>
      <Gather action="/voice/check-digits" numDigits="1">
        <Play>https://somechannel.com/podcast.mp3</Play>
      </Gather>
    </Response>
    

    然后,您将需要在您的应用程序中使用/voice/check-digits 的端点,将用户引导至下一个播客。

    *好的,如果您将音频播放到会议中并让另一个脚本拨入会议并录制 10 秒,然后在另一个脚本拨入开始录制时挂断,这可能是可能的。但即便如此,您仍会尝试从播客的音频中提取来电者的声音,而这根本不可能准确。特别是如果播客中的声音说“跳过”。所以我还是推荐使用&lt;Gather&gt;

    【讨论】:

    • 请多解释一下 * 部分,我认为它会起作用,请在答案末尾添加一些 twiml。脱帽致敬
    • 当我对它的工作没有信心时,我并不特别倾向于尝试编写能够实现这一目标的应用程序。不过,欢迎您自己尝试。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-05-12
    • 2012-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多