關於
sipdroid是如何實現像伺服器註冊的
?首先告訴大家**塊在**,註冊的核心在registeragent類中的函式register(int time)中,註冊的核心是:
//create message re (modified by mandrajg)
message req = messagefactory.createregisterrequest(sip_provider,
target, target, new nameaddress(user_profile.contact_url), qvalue, icsi);
req.setexpiresheader(new expiresheader(string.valueof(expire_time)));
複製**
註冊稍微簡單一點,因為只是需要客戶端和伺服器進行繫結就行了,註冊在sip協議中稱作
登記服務
,再向服務提供商進行註冊的時候,服務提供商都會給我們乙個url,這個url在sipdroid中被封裝在sipurl中的,這個url寫的格式如下:
sip:[email protected],使用者名稱+主機名。
登陸服務過程中的具體流程如下:
程式啟動便自動進行初始化,在初始化的過程中,每隔一段的時間,客戶端這邊就要傳送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
from: bob ;tag=456248
call-id: 843817637684230@998sdasdh09
cseq: 1826 register
contact:
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 ;tag=2493k59kd
from: bob ;tag=456248
call-id: 843817637684230@998sdasdh09
cseq: 1826 register
contact:
expires: 7200
content-length: 0
這裡面涉及到很多引數,但是在rfc3261中都有詳細的介紹,但是比較的分散,詳見:
sip中涉及到的協議之-rfc3261
第二篇將給大家介紹下,傳送的註冊訊息體裡面的每個引數所代表的意義.
**
IIS伺服器的註冊
使用iis瀏覽asp.net 時,首先需要保證.net framework 框架已經安裝並配置到iis上,而且如果你是先安裝的vs2010,後安裝的iis伺服器,那麼.net framework框架是沒有配置到iis上的,這時則需要在 開始 選單中開啟 visual studio 命令提示 2010...
tomcat伺服器避免惡意網域名稱註冊
其他的網域名稱指向了自己的ip位址,比如www.ytu.edu.cn是我學校的正常網域名稱,經常有惡意網域名稱指向這個ip位址202.194.116.18,比如www.uxwm.com,也指向了這個ip位址,ip位址繫結網域名稱,僅通過該網域名稱可以訪問這個ip位址 修改tomcat 7的serve...
註冊和刪除Apache伺服器的方法
apache伺服器的安裝和解除安裝方法 將apache資料夾存在桌面或其他盤,輸入cmd開啟命令提示行 安裝步驟 進入apache安裝目錄下的bin目錄 鍵入命令 httpd.exe k install n apache2.2,回車後,提示安裝成功 執行services.msc,開啟系統服務列表 檢...