目前出現(xiàn)的IM產(chǎn)品,其通信方式主要有兩種:
一種通信方式是把服務器作為客戶端之間通信的媒介。
服務器負責對整個網(wǎng)絡進行監(jiān)聽谈况,每個客戶端啟動后,與服務器的監(jiān)聽端口進行連接递胧,服務器派生一個新的工作線程去處理此客戶端的請求碑韵,并負責將此客戶端的請求數(shù)據(jù)中轉(zhuǎn)到接收方。即客戶端之間的連接請求和通信數(shù)據(jù)均需要通過服務器中轉(zhuǎn)缎脾。
這種方式便于對客戶端的數(shù)據(jù)進行流量分析和數(shù)據(jù)監(jiān)控祝闻,但服務器的性能很容易成為通信的瓶頸。
在線檢測即時消息傳遞遗菠。
另一中通信方式是客戶端間采用點對點的方式直接進行通信联喘。
此時服務器只負責協(xié)助客戶端之間建立點對點連接,客戶端直接建立連接后則直接進行點對點通信舷蒲。
SIP協(xié)議耸袜,基于ip協(xié)議。一般用于建立語音和視頻通信牲平。目前sip協(xié)議已經(jīng)被制定得較為完善堤框。
xmpp是一種基于xml的協(xié)議。不僅可以實現(xiàn)文本之間的傳遞纵柿,也具有靈活的擴展性從而方便地實現(xiàn)更復雜格式文件的即時傳遞蜈抓。
目前基本所有的通用IM產(chǎn)品,通信雙方都是直接進行通信昂儒,而不必通過服務器來中轉(zhuǎn)沟使,造成對于用戶間數(shù)據(jù)的監(jiān)管非常困難。如此渊跋,如何防止商業(yè)機密和其他非法信息的傳播也是一個重要的安全問題腊嗡。
xmpp:基于xml很強擴展性,很強靈活性拾酝,很好開放性(源碼開放)燕少,易于實現(xiàn)持久連接,很好安全性蒿囤。
應用
google 發(fā)布世界上首個開源的Html5 sip 客戶端
HTML5 SIP客戶端是一款開源的客们,完全利用JavaScript編寫的集社交(FaceBook,Twitter,Google+)底挫,在線游戲恒傻,電子商務等應用于一體。無擴展建邓,無插件或是必備的網(wǎng)關盈厘,視頻堆棧技術依賴于WebRTC。如同主頁里的Demo視頻演示涝缝,你可以輕松實現(xiàn)Chrome和IOS/Android移動設備之間的實時視頻/音頻通話扑庞。
很適合硬件(內(nèi)存和運算能力)受限的嵌入式系統(tǒng)使用譬重。
Html5 sip 客戶端 新特性包括:
支持Audio / Video通話功能拒逮;
支持即時信息;
Presence臀规;
呼叫保持/恢復滩援;
顯示呼叫轉(zhuǎn)移;
支持多個賬號塔嬉;
雙音多頻信號(DTMF)使用SIIP INFO