【问题标题】:Twilio - Code during a callTwilio - 通话期间的代码
【发布时间】:2017-09-28 14:34:23
【问题描述】:

我正在使用 Twilio,我想创建一个允许两个用户与编程代理交互的应用程序。

例如这里是应用程序的流程:

  • 用户 1 使用用户 2 的电话号码拨打电话
  • 用户 2 接听电话
  • 座席宣布该呼叫是一个特殊呼叫,其中包含一些可用于与座席交互的关键字

我想使用调用的状态回调,以便使用基于 Say 和 collect 标签的 TwiMl 代码在页面上发出获取请求。

我设法拨打了电话,我的服务器上收到了回调,但通话中没有任何反应。

现在我正在使用 Flask 在 Python 中进行编码,我的代码是这样的:

@app.route('/call', methods=['GET', 'POST'])
def call():
    ...

    resp = VoiceResponse()

    with resp.dial(callerId=caller_id) as r:
        r.number(destination_number, status_callback_event='answered',  status_callback='https://myapp.com/call_answered')

    return str(resp)

@app.route('/call_answered', methods=['GET', 'POST'])
def call_answered():

    resp = VoiceResponse()
    resp.Say("Hi, you are in a real time managed call")        
    return str(resp)

你知道为什么吗?

非常感谢

迈克尔

【问题讨论】:

    标签: twilio


    【解决方案1】:

    这里是 Twilio 开发者宣传员。

    您可以使用 REST API 更新调用。您可以将调用重定向到新的 TwiML 以更改正在发生的事情。在此处查看有关更新呼叫和重定向到新 URL 的文档:https://www.twilio.com/docs/guides/how-to-modify-calls-in-progress

    让我知道这是否有帮助。

    【讨论】:

    • 非常感谢。我正在使用拨号从我的计算机拨打真实号码,但我想使用收集和说名词。你知道我能不能做到吗?
    • 嗨,迈克,大多数事情都是可能的,但是如果您需要有关特定功能的指导,则需要更具体一些。如果你想更新你的问题,最好是你已经尝试过的事情以及你想要实现的事情,那么我会尽力提供帮助。
    • 当两个呼叫者直接相互连接时,您不能使用<Gather><Say>。当您说您已设法“拨打电话并在我的服务器上收到重定向但通话中没有任何反应”时。你是什​​么意思?你现在有什么代码?
    • 我添加了我的代码片段。我的意思是,在我的服务器上,我可以看到呼叫已被接听,但目前似乎不支持我想要做的事情!非常感谢!!
    • 对,statusCallback 是一个不直接影响调用的异步 webhook。正如我在原始答案中所说,您可以modify the live call from that status callback via the REST API。也许这是一个选择?否则,如果您希望通话中有两个呼叫者和一个代理(自动或其他方式),则需要以 <Conference> 开头。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-01
    • 1970-01-01
    • 2019-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多