如何在 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 (将#修改为@)