织梦CMS - 轻松建站从此开始!

罗索

关于Sipdroid是如何实现像服务器注册的?

落鹤生 发布于 2011-12-14 21:14 点击:次 
注册的核心在RegisterAgent类中的函数register(int time)中,注册稍微简单一点,因为只是需要客户端和服务器进行绑定就行了,注册在SIP协议中称作登记服务,再向服务提供商进行注册的时候,服务提供商都会给我们一个URL,这个URL在Sipdroid中被封装在SipURL中的
TAG:

首先告诉大家代码块在哪里,注册的核心在RegisterAgent类中的函数register(int time)中,注册的核心是:

  1. //Create message re (modified by mandrajg) 
  2. Message req = MessageFactory.createRegisterRequest(sip_provider, 
  3.     target, target, new NameAddress(user_profile.contact_url), qvalue, icsi); 
  4.  
  5. req.setExpiresHeader(new ExpiresHeader(String.valueOf(expire_time))); 

注册稍微简单一点,因为只是需要客户端和服务器进行绑定就行了,注册在SIP协议中称作登记服务,再向服务提供商进行注册的时候,服务提供商都会给我们一个URL,这个URL在Sipdroid中被封装在SipURL中的,这个URL写的格式如下:
sip:20847236@sip.tocall.cn,用户名+主机名。

登陆服务过程中的具体流程如下:

程序启动便自动进行初始化,在初始化的过程中,每隔一段的时间,客户端这边就要发送Register信息给服务器,Register中的信息包含了服务提供商分配给当前用户的SIP URI(通俗点说,SIP URI 就是客户端的标识,这个标识是必须是唯一的

服务器通过获得当前用户的URI便可以绑定这个用户,然后写到一个数据库中,在SIP协议中,这个叫做定位服务(location server)


发送的请求的格式如下:

F1 REGISTER Bob -> Registrar
REGISTER sip:registrar.biloxi.com SIP/2.0
Via: SIP/2.0/UDP bobspc.biloxi.com:5060;branch=z9hG4bKnashds7
Max-Forwards: 70
To: Bob <sip:bob@biloxi.com>
From: Bob <sip:bob@biloxi.com>;tag=456248
Call-ID: 843817637684230@998sdasdh09
CSeq: 1826 REGISTER
Contact: <sip:bob@192.0.2.4>
Expires: 7200
Content-Length: 0

注册会在2小时后超时。注册服务器回应一个200OK,返回的信息包含如下:

F2 200 OK Registar -> Bob
SIP/2.0 200 OK
Via: SIP/2.0/UDP bobspc.biloxi.com:5060;branch=z9hG4bKnashds7
;received=192.0.2.4
To: Bob <sip:bob@biloxi.com>;tag=2493k59kd
From: Bob <sip:bob@biloxi.com>;tag=456248
Call-ID: 843817637684230@998sdasdh09
CSeq: 1826 REGISTER
Contact: <sip:bob@192.0.2.4>
Expires: 7200
Content-Length: 0

这里面涉及到很多参数,但是在RFC3261中都有详细的介绍,但是比较的分散,详见:SIP中涉及到的协议之-RFC3261

(ShouYanWang)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/201112/15479.html]
本文出处:shouyanwang.org 作者:ShouYanWang 原文
顶一下
(4)
100%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容