我有一个带有请求url的电话号码,可以正常工作(先发短信,然后转发呼叫),但是我有一个应用程序(浏览器出站呼叫)转到同一个请求url,只有短信到语音才能正常工作,并且呼叫的转发会出错并挂断。为什么它不像号码的请求url那样转发?我检查过了,能力标记显示良好。。。
视图.py

def once_connected_view(request):
    response = twiml.Response()
    response.say("Please wait while we connect your call.", voice='alice')
    response.dial("xxx-xx-xxx-xxxx")
    return HttpResponse(str(response))

def home_view(request):
    capability = TwilioCapability(account_sid, auth_token)
    capability.allow_client_outgoing(application_sid)
    token = capability.generate()
    query_set = Model.objects.all()
    return render(request, "base.html", {"query_set":query_set, "token":token})

网址.py
urlpatterns = [
url(r'^$', views.home_view, name="home"),
    url(r'^once_connected/', views.once_connected_view, name="once_connected"),
]

号码请求url
http://xx.xx.com/once_connected/http获取
应用程序请求url
http://xx.xx.com/once_connected/http获取
主站点url
https://xx.xx.com/
基.html
<!doctype html>
<head>
<script type="text/javascript" src="https://static.twilio.com/libs/twiliojs/1.2/twilio.min.js"></script>
<script type="text/javascript"src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=320, height=device-height, target-densitydpi=medium-dpi" />
{% load staticfiles %}
<link rel="stylesheet" href="{% static 'cars/responsive.css' %}">
</head>
<body>
<div class="container" id="wrapper">
  <div class="video-background-container">
    <video preload="auto" autoplay="" loop="" muted="" class="video-background hidden-xs hidden-sm">
      <source type="video/mp4" src="omitted">
    </video>
  </div>
  <div class="grid-overlay text-center">
    <nav class="navbar navbar-default navbar-fixed-top" style="background:none;">
      <div class="container">
        <div class="navbar-header">
          <a class="navbar-brand" id="logo" href="#">Brand Name</a>
        </div>
        <div id="navbar" class="navbar-collapse collapse">
          <ul class="nav navbar-nav navbar-right">
            <li class="replace-call"><a href="#" data-toggle="modal" data-target="#myModal">Contact Us</a></li>
          </ul>
        </div>
      </div>
    </nav>

    ...
<script src="https://code.jquery.com/jquery-2.2.0.min.js" type="text/javascript"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<script type="text/javascript">

    /* Create the Client with a Capability Token */
    Twilio.Device.setup("{{ token }}");

    /* Let us know when the client is ready. */
    Twilio.Device.ready(function (device) {
        $(".replace-call").html("<a href='#' onclick='call()'>Call From Browser</a>");
    });

    /* Report any errors on the screen */
    Twilio.Device.error(function (error) {
        $(".replace-call").html('<a href="#" data-toggle="modal" data-target="#myModal">Contact Us</a>');
    });

    Twilio.Device.connect(function (conn) {
        $(".replace-call").html("<a href='#' onclick='hangup()'>End Call</a>");
    });

    /* Connect to Twilio when we call this function. */
    function call() {
        Twilio.Device.connect();
    }
    function hangup() {
        Twilio.Device.disconnectAll();
        $(".replace-call").html('<a href="#" data-toggle="modal" data-target="#myModal">Contact Us</a>');
    }
</script>
</body>
</html>

我在pythonanywhere接待。

最佳答案

在头发只少掉了一点之后,我在拨号动词中添加了callerID属性,使之工作起来。

def once_connected_view(request):
    response = twiml.Response()
    response.say("Please wait while we connect your call.", voice='alice')
    response.dial("xxx-xx-xxx-xxxx", callerId="+xxxxxxxxxx") #  here
    return HttpResponse(str(response))

10-08 03:20