如何在TwilioAPI中应答传入呼叫

如何在TwilioAPI中应答传入呼叫,twilio,Twilio,如何在Twilio Api中使用应答按钮进行应答,我无法在浏览器上选择调用, 我想知道在我连接设备时如何接听或拒绝电话。点击接听按钮,请帮助我 我的片段是 Twilio.Device.setup('<?=$token?>'); Twilio.Device.ready(function(device) { }); Twilio.Device.incoming(function(conn) { $("#number").val(conn.parameters.From); va

如何在Twilio Api中使用应答按钮进行应答,我无法在浏览器上选择调用, 我想知道在我连接设备时如何接听或拒绝电话。点击接听按钮,请帮助我

我的片段是

Twilio.Device.setup('<?=$token?>');

Twilio.Device.ready(function(device) {
});

 Twilio.Device.incoming(function(conn) {
 $("#number").val(conn.parameters.From);
 var ss= "Incomging Call:\n"+conn.parameters.From; 
 $("#log").text("Incoming connection from " + conn.parameters.From);
    // accept the incoming connection and start two-way audio
    conn.accept();

});



Twilio.Device.error(function(conn) {
alert("Error:\n"+data);
});

function call() {
    // get the phone number or client to connect the call to
  //  params = {"PhoneNumber": $("#number").val()};
   // Twilio.Device.connect(params);
  Twilio.Device.connect();
  }

  function hangup() {
    Twilio.Device.disconnectAll();
  }


 <input type="text" id="number" name="number"  />
 <button class="call" onclick="call();">
  Answer
</button>

<button class="hangup" onclick="hangup();">
  Reject
</button>
<div id="log">Loading app</div>
Twilio.Device.setup(“”);
Twilio.设备准备就绪(功能(设备){
});
Twilio.设备输入(功能(连接){
$(“#number”).val(conn.parameters.From);
var ss=“输入调用:\n”+conn.parameters.From;
$(“#log”).text(“来自”+conn.parameters.from的传入连接”);
//接受传入连接并启动双向音频
康涅狄格州接受;
});
Twilio.设备错误(功能(连接){
警报(“错误:\n”+数据);
});
函数调用(){
//获取要连接呼叫的电话号码或客户端
//params={“PhoneNumber”:$(“#number”).val();
//Twilio.Device.connect(参数);
Twilio.Device.connect();
}
函数挂起(){
Twilio.Device.disconnectAll();
}
答复
拒绝
加载应用程序

你知道twilio的来电吗

这里是Twilio福音传道者

上面包含的代码会自动应答传入呼叫,因为您正在调用传入事件回调中的
accept()
函数

如果您想更改应用程序,以便只在单击按钮后接听电话,则首先需要在UI中添加第二个按钮。在该按钮中,单击调用调用函数的事件

您可以继续使用传入回调来执行类似于仅当有传入呼叫时才启用accept按钮的操作,但请注意,您需要创建一个保存传入连接的全局变量,以便可以在
accept
函数中访问它

var connection;

Twilio.Device.incoming(function(conn) {
    connection = conn;

    $("#number").val(conn.parameters.From);
    var ss= "Incomging Call:\n"+conn.parameters.From; 
    $("#log").text("Incoming connection from " + conn.parameters.From);

    //enable the accept button
    $(".accept").prop('disabled', false);
});

function accept() {
    connection.accept();
}

<button class="accept" onclick="accept();" disabled>Accept</button>
var连接;
Twilio.设备输入(功能(连接){
连接=连接;
$(“#number”).val(conn.parameters.From);
var ss=“输入调用:\n”+conn.parameters.From;
$(“#log”).text(“来自”+conn.parameters.from的传入连接”);
//启用“接受”按钮
$(“.accept”).prop('disabled',false);
});
函数accept(){
connection.accept();
}
接受
当然,您可以在传入函数中得到比上面显示的更复杂的结果。查看一个更复杂的示例,该示例演示了如何使用jQuery对话框小部件显示屏幕弹出窗口。
希望这能有所帮助。

我想普里扬卡可能和我有同样的问题。我的客户端浏览器确实在接听电话,但由于麦克风的权限问题,收件人仍需要采取措施启用麦克风。似乎只有Chrome能让我做到这一点。如果我在建立连接后主动点击网页,Firefox会自动关闭,但作为客户,我没有任何迹象表明我需要这样做。在IE中,我似乎无能为力。有没有办法用代码来处理传入事件?通常我在演示中所做的是在传入函数中,我会动态更改页面以显示弹出窗口(或覆盖,或类似的UI),让用户知道有传入呼叫。作为该UI的一部分,我还清楚地向用户显示,他们需要允许浏览器访问麦克风。那有用吗?是的,谢谢。有这样一个演示和/或示例代码的链接吗?更新了我上面的答案,添加了一个博客帖子的链接,展示了如何使用jQuery对话框小部件构建屏幕弹出窗口。你可以很容易地扩展它,同时显示一些提示用户接受麦克风访问请求的UI。你太棒了!谢谢(-):