一、即時通訊簡單介紹 1、簡單說明 即時通訊技術(shù)(IM)支持用戶在線實時交談。如果要發(fā)送一條信息,用戶需要打開一個小窗口,以便讓用戶及其朋友在其中輸入信息并讓交談雙方都看到交談的內(nèi)容。 有許多的IM系統(tǒng),如AOL IM、Yahoo IM、 MSN以及QQ,它們最大的區(qū)別在于各自通訊協(xié)議的實現(xiàn),所以即時通訊技術(shù)的核心在于它的傳輸協(xié)議。 協(xié)議用來說明信息在網(wǎng)絡(luò)上如何傳輸,如果有了統(tǒng)一的傳輸協(xié)議,那么應(yīng)當可以實現(xiàn)各個IM之間的直接通訊,為了創(chuàng)建即時通訊的統(tǒng)一標準,目前已經(jīng)出現(xiàn)過的IM 協(xié)議包括:IETF的對話初始協(xié)議(SIP)和即時通訊對話初始協(xié)議和表示擴展協(xié)議(SIMPLE)、應(yīng)用交換協(xié)議(APEX)、顯示和即時通訊協(xié)議 (PRIM)及基于XML且開放的可擴展通訊和表示協(xié)議(XMPP)協(xié)議(常稱為 Jabber 協(xié)議)。 業(yè)界經(jīng)過多次努力,試圖統(tǒng)一各大主要IM供應(yīng)商的標準(AOL、Yahoo 及 Microsoft),但無一成功,且每一種IM仍然繼續(xù)使用自己所擁有的協(xié)議。 2.遵守XMPP即時通訊協(xié)議 3.即時通訊在垂直社交中的意義 和 第一代大而全的水平網(wǎng)站(又稱綜合性網(wǎng)站)不同,垂直網(wǎng)站注意力集中在某些特定的領(lǐng)域或某種特定的需求,提供有關(guān)這個領(lǐng)域或需求的全部深度信息和相關(guān)服 務(wù),作為互聯(lián)網(wǎng)的新亮點,垂直網(wǎng)站正引起越來越多人的關(guān)注。在越來越多的網(wǎng)絡(luò)吸引老百姓的注意力時,網(wǎng)民卻逐漸走出時髦、好奇的初級階段,不斷在網(wǎng)上尋找 著實際、實用和實惠。隨著移動互聯(lián)網(wǎng)應(yīng)用的發(fā)展,現(xiàn)在越來越多的App正在向垂直應(yīng)用遷移,垂直應(yīng)用中同類用戶群體之間的溝通,產(chǎn)生聚合就顯得尤為重要了,因此目前國內(nèi)市場的XMPP應(yīng)用開發(fā)的人才需求非常大。 4.XMPP的起源 XMPP是基于XML的協(xié)議,用于即時消息(IM)以及在線現(xiàn)場探測。最初,XMPP作為一個框架開發(fā),目標是支持企業(yè)環(huán)境內(nèi)的即時消息傳遞和聯(lián)機狀態(tài)應(yīng)用程序。當時的即時消息傳遞網(wǎng)絡(luò)是私有的,不適合企業(yè)使用。XMPP前身是Jabber(1998年),是一個開源組織定義的網(wǎng)絡(luò)即時通信協(xié)議。 XMPP是一個分散型通信網(wǎng)絡(luò),這意味著,只要網(wǎng)絡(luò)基礎(chǔ)設(shè)施允許,任何XMPP用戶都可以向其他任何XMPP用戶傳遞消息。多個XMPP服務(wù)器也可以通過一個專門的“服務(wù)器-服務(wù)器”協(xié)議相互通信,提供了創(chuàng)建分散型社交網(wǎng)絡(luò)和協(xié)作框架的可能性。 盡管XMPP的出現(xiàn)是為了滿足“個人-個人”即時消息傳遞的要求,但它完全不必局限于此任務(wù)。 二、XMPP相關(guān) 1.XMPP介紹 XMPP是一種基于XML的協(xié)議,
它繼承了在XML環(huán)境中靈活的發(fā)展性。這表明XMPP是可擴展的??梢酝ㄟ^發(fā)送擴展的信息來處理用戶的需求,以及在
XMPP的頂端建立如內(nèi)容發(fā)布系統(tǒng)和基于地址的服務(wù)等應(yīng)用程序。而且,XMPP包含了針對服務(wù)器端的軟件協(xié)議,使之能與另一個進行通話,這使得開發(fā)者更容
易建立客戶應(yīng)用程序或給一個配置好的系統(tǒng)添加功能。 注意:相對xml,json更高效一些。 2.Google Talk說明 Google Talk是Google的IM工具,除了具有IM功能外,另外還加上了Voip功能,“界面清新大方”,可直接鏈接Gmail,接受查看郵件。由于Google Talk是基于Jabber開源標準,這種標準允許用戶和其它的即時訊息系統(tǒng)相連,比如蘋果電腦的iChat,GAIM,Trillian Pro以及Psi。Google Talk只能夠在Windows平臺上運行。Google Talk的用戶無法使用這種軟件與AIM,MSN Messenger或者雅虎Messenger的用戶進行互通。 2013年5月,在Google I/O大會上,Google推出統(tǒng)一跨平臺聊天應(yīng)用Hangouts(環(huán)聊)取代Google Talk。Google Hangouts不支持XMPP協(xié)議。Google Hangouts用戶與非Google服務(wù)如XMPP協(xié)議的強有力支持者jabber.org之間的交流無法進行。 目前,Google Wave是基于XMPP協(xié)議的,并且Google還開發(fā)Jingle擴展進行基于XMPP協(xié)議的視頻聊天。盡管Google尚未宣布Talk的關(guān)閉日期,不過從Google關(guān)閉Reader和iCal支持來看,Talk關(guān)閉之日不會太遠 3.XMPP定義 XMPP:The Extensible Messaging and Presence Protocol(可擴展通訊和表示協(xié)議)。 XMPP可用于服務(wù)類實時通訊、表示和需求響應(yīng)服務(wù)中的XML數(shù)據(jù)元流式傳輸。XMPP以Jabber協(xié)議為基礎(chǔ),而Jabber是即時通訊中常用的開放式協(xié)議。 XMPP是基于XML的協(xié)議,用于即時消息(IM)以及在線現(xiàn)場探測。促進服務(wù)器之間的準即時操作。這個協(xié)議可能最終允許因特網(wǎng)用戶向因特網(wǎng)上的其他任何人發(fā)送即時消息,即使其操作系統(tǒng)和瀏覽器不同。 4.基本結(jié)構(gòu) XMPP是一個典型的C/S架構(gòu),而不是像大多數(shù)即時通訊軟件一樣,使用P2P客戶端到客戶端的架構(gòu),也就是說在大多數(shù)情況下,當兩個客戶端進行通訊時, 他們的消息都是通過服務(wù)器傳遞的。采用這種架構(gòu),主要是為了簡化客戶端,將大多數(shù)工作放在服務(wù)器端進行。 XMPP中定義了三個角色,客戶端,服務(wù)器,網(wǎng)關(guān)。通信能夠在這三者的任意兩個之間雙向發(fā)生。 服務(wù)器同時承擔了客戶端信息記錄,連接管理和信息的路由功能。 網(wǎng)關(guān)承擔著與異構(gòu)即時通信系統(tǒng)的互聯(lián)互通,異構(gòu)系統(tǒng)可以包括SMS(短信),MSN,ICQ等。 基本的網(wǎng)絡(luò)形式是單客戶端通過TCP/IP連接到單服務(wù)器,然后在之上傳輸XML流。 |
|