JsSIP库-调用方法无请求或响应

时间:2018-11-04 15:04:04

标签: javascript sip jssip

我正在使用JsSIP库连接到我的freeswitch SIP服务器并在其上进行呼叫。这是我的代码,与JsSIP github page上的示例代码相同:

jssip_1.debug.enable('JsSIP:*');
var socket = new jssip_1.WebSocketInterface('wss://85.85.8.5:7443');
var configuration = {
   sockets: [socket],
   uri: 'sip:282132646427442@abc.xyz',
   password: '123456',
   register_expires: 1800,
};
var ua = new jssip_1.UA(configuration);
ua.start();

// Register callbacks to desired call events
var eventHandlers = {
   'progress': function (e) {
       console.log('call is in progress');
   },
   'failed': function (e) {
       console.log('call failed with cause: ' + e.data.cause);
   },
   'ended': function (e) {
       console.log('call ended with cause: ' + e.data.cause);
   },
   'confirmed': function (e) {
       console.log('call confirmed');
   }
};
var options = {
   'eventHandlers': eventHandlers,
   'mediaConstraints': { 'audio': true, 'video': true },
   'extraHeaders': [
   'X-rol: caller',
   'X-rid: 01',
   'X-src-app: 12345' ,
   'X-srv: a2a',
   'X-ver: 1'
   ],
};
setTimeout(function () {
   var session = ua.call('sip:25896456525@abc.xyz', options);
}, 3000);

使用此代码,我发送注册请求并成功建立连接。我在此处放置了一些连接日志:

JsSIP:传输发送消息:

  

注册sip:@ abc.xyz SIP / 2.0

     

通过:SIP / 2.0 / WSS hdnbf6qreal4.invalid; branch = z9hG4bK8363908

     

最大前进次数:69

     

收件人:sip:282132646427442@abc.xyz>

     

来自:sip:282132646427442@abc.xyz>; tag = gkej80tf03

     

呼叫ID:fnblcnmvcbr9p61nl9slv0

     

CSeq:2个注册

     

授权:摘要算法= MD5,用户名=“ 282132646427442”,realm =“ abc.xyz”,nonce =“ 16352d5c-d761-43f0-af0b-7eb4bfd607c0”,

     

uri =“ sip:abc.xyz”,response =“ f8c20be99ca1b84b5a6bf805c84662dd”,

     

qop = auth,cnonce =“ 75c61daautv7”,nc = 00000001

     

联系方式:; + sip.ice; reg-id = 1; + sip.instance =“”; expires = 1800

     

有效期:1800

     

允许:邀请,确认,取消,再见,更新,消息,选项,参考,信息

     

支持:路径,gruu,出站

     

用户代理:JsSIP 3.2.15

     

内容长度:0

JsSIP:传输收到的短信:

  

SIP / 2.0 200 OK

     

通过:SIP / 2.0 / WSS hdnbf6qreal4.invalid;分支= z9hG4bK8363908;已接收= 192.168.104.182;端口= 57890

     

发件人:; tag = gkej80tf03

     

收件人:; tag = r672gj5BUmH1m

     

呼叫ID:fnblcnmvcbr9p61nl9slv0

     

CSeq:2个注册

     

联系人:; expires = 497

     

联系人:; expires = 1800

     

日期:2018年11月4日,星期日,格林尼治标准时间

     

用户代理:FreeSWITCH-mod_sofia / 1.6.13 + git〜20161214T213702Z〜d422498d0f〜64bit

     

允许:邀请,确认,再见,取消,选项,消息,信息,更新,注册,引用,通知

     

支持:计时器,路径,替换

此后,我希望发送和接收INVITE类型的消息以开始通话,但是在浏览器控制台中未打印任何含义日志:

  

JsSIP:UA call()+ 3s browser.js:183 JsSIP:RTCSession new + 22m

     

browser.js:183 JsSIP:RTCSession connect()+ 1ms

     

browser.js:183 JsSIP:RTCSession发出“对等连接” + 4ms

     

browser.js:183 JsSIP:RTCSession newRTCSession()+ 1ms

     

browser.js:183 JsSIP:RTCSession会话失败+ 81ms

     

browser.js:183 JsSIP:RTCSession close()+ 1ms

     

browser.js:183 JsSIP:RTCSession发出“失败” + 2ms

我的代码或服务器是否有问题?我检查了服务器日志,但注册后没有任何通话请求。

0 个答案:

没有答案