微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 Twilio 中的媒体流调用期间更改 TWIML

如何解决如何在 Twilio 中的媒体流调用期间更改 TWIML

我想与 twilio 实现完全程序化的交互:用户呼叫,我的服务器决定说什么,用户说话,服务器分析音频并决定使用文本到语音转换的内容

但我在文档中找不到如何同时使用媒体流和文本转语音。

使用此代码,我可以接收和发送 ulaw/8000 编码的音频:

@sockets.route('/')
def echo(ws):
    while not ws.closed:
        message = ws.receive()
        if message is None:
            continue

    data = json.loads(message)
    if data['event'] == "media":
        # b64decode media.payload and audioop.ulawtolin() it

    ...
    # make a media object with audio in media.payload and ws.send() it

有了这个,我可以在用户接听电话时说些什么:

@app.route("/voice",methods=['GET','POST'])
def voice():
    """Respond to incoming phone calls with a 'Hello world' message"""
    resp = VoiceResponse()
    resp.say("Hello World!",voice='alice')

    return str(resp)

如何在长时间的用户-服务器交互期间同时使用两者?

EDIT:更改了标题(见下面我的评论

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。