我使用https://www.twilio.com/docs/howto/twilio-client-browser-soft-phone作为模板创建了一个应用程序。我正在尝试为呼入和呼出呼叫记录CallSid,以便我可以在本地标记呼叫并使用Callsid在我的本地数据和twilio的呼叫存储之间建立链接。我可以通过以下方式轻松获取来电的CallSid:
Twilio.Device.incoming(function (conn) {
if (confirm('Accept incoming call from ' + conn.parameters.From + '?')){
connection=conn;
conn.accept();
callsid = connection.parameters.CallSid;
}
else {
connection=conn;
conn.reject();
}
});
但是,我似乎无法从软电话发起的任何拨出电话中获取它。我试过这里:
$("#call").click(function() {
params = { "tocall" : $('#tocall').val()};
connection = Twilio.Device.connect(params);
callsid = connection.parameters.CallSid;
});
在这里:
Twilio.Device.connect(function (conn) {
$('#status').text("Successfully established call");
toggleCallStatus();
callsid = connection.parameters.CallSid;
// And also tried
callsid = conn.parameters.CallSid;
});
但是,这两个都返回undefined。我在https://www.twilio.com/docs/client/connection上看到CallSid设置在页面底部的Outgoing .parameters中,所以我认为它应该在其中一个函数调用中可用。
CallSid是否可用于客户端发出的呼叫?如果是这样,我在哪里/如何访问它?
答案 0 :(得分:1)
嗯,你得到的connection.parameters是空的,你可以通过插入来检查 console.dir(连接)
然而,原因是: Twilio不会为传入连接上的twilio.js V:1.1填充参数 所以请使用twilio.js 1.2使它工作:)
答案 1 :(得分:0)
使用adnanonline推荐的TwilioJS 1.2是正确的选择。此版本设置了所有适当的参数供您访问。
//static.twilio.com/libs/twiliojs/1.2/twilio.min.js