RDP,doAck以及B2BUAServlet

由于找不到MusicServer,所以比如呼叫等待/呼叫保持之类的需要MusicServer的SDP消息,都直接在服务器中写入到SipServletMessage中去,但是这个SDP中具体需要哪些header呢?参考http://tech-invite.com/Ti-sip-service-3.html#fig6,最简只需要v,o,s,c,t,m,a.查了一下RFC4566,RFC2327,确定了其中的内容格式,修补一下添加SDP的方法.

 

 

doAck(),这里存在一个BUG,就是ACK有的时候能够发送到客户端,有的时候不行,花了很多时间检查,有的时候重启服务器就可以了,但是有的时候重启几次都不会成功一次...后来仔细检查服务器上的信令包,发现每个ACK的Router头都相当的长~于是把怀疑重点放在这上面,这ACK是TestAgent自动生成的,定然是复制200OK中的相关信息来create这个request,于是再看200OK,发现其recordRouter头也长得不得了,于是再向上,检查Invite,在Alice这边的客户端上,router头没问题,但是在Bob这边的Router就巨长了~最后突然想起,在doInvite()中,有一句:

proxy.setRecordRoute(true);

可以让后续的所有消息都先到达这个服务器,注释掉之后,搞定!!!

NND,搞了半天,问题出在doInvite()中

 

B2BUAServlet,没什么好说的...主要就处理两个doInvite()和doSuccessResponse()

doInvite()也很简单,主要是B2B需要用的API不是很熟悉...感觉很奇怪,最后还是copy了sun上的示例代码,做了一些修改

 

 

doSuccessResponse()更简单了...

 

只是B2BUA的功能还没进一步测试...理论上可行,今天的时间都花在ProxyServlet的Bug上了...哎

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值