如何为twilio语音api设置URL?

时间:2019-03-11 07:32:08

标签: python flask twilio

我是烧瓶新手。我使用url_for函数来定位twilio xml文件以响应该调用。我在本地主机上运行我的应用程序。执行此代码时,它返回无法找到该xml文件错误。 错误号为21205

我的路线是:

@app.route('/scall', methods=['POST'])
def scall():
    account_sid = '***************'
    auth_token = '***************'
    client = Client(account_sid, auth_token)
    phonenumber = request.form['phonenumber']
    call = client.calls.create(
                        url="url_for('templates', filename='res.xml')",
                        to='+91' + phonenumber,
                        from_='************'
                    )

1 个答案:

答案 0 :(得分:0)

这里是Twilio开发人员的传播者。

您的问题是Twilio试图在无法访问的位置查找XML文件。

当您传递reload!参数时,您只是在告诉Twilio接听电话时该怎么做。因此,Twilio然后向该XML文件发出一个HTTP请求,希望该文件能够理解它的TwiML。

您需要做的是给它提供一个可公开访问的URL。有几种方法可以做到这一点:

  1. 将XML托管在可访问的位置(S3,Dropbox,您的网络服务器等)
  2. 在Twilio控制台中创建一个TwiML Bin,然后直接指向它。
  3. 使用ngrok之类的工具公开您的本地主机,并从代码中指向该URL。

希望这对您有所帮助。