專(zhuān)利名稱(chēng):一種兼容多種即時(shí)通信工具的客戶(hù)端系統(tǒng)和即時(shí)通信方法
技術(shù)領(lǐng)域:
本發(fā)明涉及即時(shí)通信技術(shù),尤其是一種兼容多種即時(shí)通信工具的客戶(hù)端系統(tǒng)以及應(yīng)用該客戶(hù)端系統(tǒng)的即時(shí)通信方法。
背景技術(shù):
網(wǎng)絡(luò)即時(shí)通信服務(wù)IM,即Instant Messenger,是一種基于互聯(lián)網(wǎng)的通信服務(wù),以實(shí)現(xiàn)網(wǎng)絡(luò)即時(shí)通信為主要功能,即時(shí)通信服務(wù)IM在互聯(lián)網(wǎng)上得到了廣泛的應(yīng)用和認(rèn)可。用戶(hù)可以通過(guò)這種IM即時(shí)通信工具進(jìn)行收發(fā)信息、傳送文件等多種操作。
現(xiàn)有即時(shí)通信工具的信息交互方法為客戶(hù)端將即時(shí)消息轉(zhuǎn)換為特定即時(shí)通信工具自有數(shù)據(jù)格式的數(shù)據(jù),經(jīng)過(guò)服務(wù)器將即時(shí)消息數(shù)據(jù)轉(zhuǎn)發(fā)的接收客戶(hù)端。
現(xiàn)有即時(shí)通信工具只能在自身之間進(jìn)行即時(shí)消息的通信。其缺陷在于無(wú)法在一個(gè)即時(shí)通信工具中與不同通信協(xié)議的即時(shí)通信工具下的用戶(hù)進(jìn)行通信。即若要分別與使用不同通信工具的用戶(hù)進(jìn)行通信,就要打開(kāi)所有通信工具。給用戶(hù)帶來(lái)不便。例如基于局域網(wǎng)協(xié)議與基于互聯(lián)網(wǎng)協(xié)議的同一個(gè)即時(shí)通信工具下的帳戶(hù)之間不能進(jìn)行信息交互;又例如,基于不同開(kāi)放協(xié)議的不同通信工具之間無(wú)法進(jìn)行信息交互,具體的,用戶(hù)擁有兩個(gè)不同協(xié)議的即時(shí)通信工具下的帳戶(hù)信息,用戶(hù)要同IM1和IM2帳戶(hù)下的好友分別進(jìn)行通話,則需要打開(kāi)IM1和IM2兩個(gè)即時(shí)通信工具,分別進(jìn)行通信。無(wú)法在一個(gè)即時(shí)通信工具中同時(shí)與IM1和IM2進(jìn)行通信。
發(fā)明內(nèi)容
為了解決上述問(wèn)題,本發(fā)明的目的是提供一種能夠兼容多種即時(shí)通信工具的客戶(hù)端系統(tǒng);相應(yīng)的本發(fā)明還提供一種即時(shí)通信方法。
為解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種兼容多種即時(shí)通信工具的客戶(hù)端系統(tǒng),包括輸入單元,用于產(chǎn)生即時(shí)消息;輸出單元,輸出即時(shí)消息;傳輸單元,通過(guò)網(wǎng)絡(luò)發(fā)送或接收即時(shí)消息數(shù)據(jù);所述客戶(hù)端系統(tǒng)還包括第一數(shù)據(jù)轉(zhuǎn)換單元和第二數(shù)據(jù)轉(zhuǎn)換單元;所述第一數(shù)據(jù)轉(zhuǎn)換單元,獲取輸入單元產(chǎn)生的即時(shí)消息,將即時(shí)消息數(shù)據(jù)由本端即時(shí)通信工具數(shù)據(jù)格式轉(zhuǎn)換為第一數(shù)據(jù)格式,第二數(shù)據(jù)轉(zhuǎn)換單元獲取所述第一數(shù)據(jù)格式的即時(shí)消息數(shù)據(jù),并轉(zhuǎn)換為對(duì)端即時(shí)通信工具所適用的數(shù)據(jù)格式,進(jìn)而通過(guò)傳輸單元發(fā)送;以及,第二數(shù)據(jù)轉(zhuǎn)換單元獲取傳輸單元接收的即時(shí)消息,將該消息數(shù)據(jù)轉(zhuǎn)換為第一數(shù)據(jù)格式,第一數(shù)據(jù)單元獲取所述第一數(shù)據(jù)格式的即時(shí)消息數(shù)據(jù),轉(zhuǎn)換為本端即時(shí)通信工具的數(shù)據(jù)格式,并通過(guò)輸出單元進(jìn)行輸出。
在上述系統(tǒng)結(jié)構(gòu)基礎(chǔ)上,所述第二數(shù)據(jù)轉(zhuǎn)換單元包括子單元,每一子單元專(zhuān)用于將即時(shí)消息在第一數(shù)據(jù)格式與特定通信協(xié)議數(shù)據(jù)格式之間進(jìn)行轉(zhuǎn)換。輸入單元產(chǎn)生即時(shí)消息時(shí),根據(jù)接收端賬號(hào)信息,調(diào)用所述第二數(shù)據(jù)轉(zhuǎn)換單元中的相應(yīng)子單元,獲取第一數(shù)據(jù)轉(zhuǎn)換單元的即時(shí)消息,并將即時(shí)消息數(shù)據(jù)格式轉(zhuǎn)換為特定的數(shù)據(jù)格式。
上述系統(tǒng)中,所述第一數(shù)據(jù)格式為采用預(yù)定義的標(biāo)簽XML對(duì)即時(shí)消息數(shù)據(jù)進(jìn)行描述;所述第一數(shù)據(jù)轉(zhuǎn)換單元以及第二數(shù)據(jù)轉(zhuǎn)換單元根據(jù)標(biāo)簽語(yǔ)言的描述,實(shí)現(xiàn)在第一數(shù)據(jù)格式和相應(yīng)通信協(xié)議數(shù)據(jù)格式的之間的互換;或者,所述第一數(shù)據(jù)格式為采用結(jié)構(gòu)體數(shù)據(jù)格式描述即時(shí)消息;所述第一數(shù)據(jù)轉(zhuǎn)換單元以及第二數(shù)據(jù)轉(zhuǎn)換單元根據(jù)結(jié)構(gòu)體的描述實(shí)現(xiàn)在第一數(shù)據(jù)格式和相應(yīng)通信協(xié)議數(shù)據(jù)格式的之間的互換。
本發(fā)明還提供了一種采用本發(fā)明所述客戶(hù)端系統(tǒng)的即時(shí)通信方法,包括預(yù)置第一數(shù)據(jù)格式;獲取接收端即時(shí)通信工具適用的數(shù)據(jù)格式;加載接收端即時(shí)通信工具賬號(hào)信息;本發(fā)明所述的客戶(hù)端系統(tǒng)作為發(fā)送端時(shí),選擇接收端即時(shí)通信工具賬號(hào)并產(chǎn)生即時(shí)消息數(shù)據(jù),將即時(shí)消息數(shù)據(jù)由本端即時(shí)通信協(xié)議的數(shù)據(jù)格式轉(zhuǎn)換為所述的第一數(shù)據(jù)格式;將第一數(shù)據(jù)格式的即時(shí)消息數(shù)據(jù)轉(zhuǎn)換為所述的接收端即時(shí)通信工具適用的數(shù)據(jù)格式,并進(jìn)行發(fā)送,接收端獲取即時(shí)消息并進(jìn)行輸出;本發(fā)明所述的客戶(hù)端系統(tǒng)作為接收端時(shí),將即時(shí)消息數(shù)據(jù)由發(fā)送端采用的數(shù)據(jù)格式轉(zhuǎn)換為所述的第一數(shù)據(jù)格式;將第一數(shù)據(jù)格式的即時(shí)消息數(shù)據(jù)轉(zhuǎn)換為本端即時(shí)通信協(xié)議的數(shù)據(jù)格式,輸出該即時(shí)消息。
上述方法中,所述第一數(shù)據(jù)格式為采用預(yù)定義的標(biāo)簽XML對(duì)即時(shí)消息數(shù)據(jù)進(jìn)行描述;以及根據(jù)標(biāo)簽語(yǔ)言的描述,實(shí)現(xiàn)在第一數(shù)據(jù)格式和相應(yīng)通信協(xié)議數(shù)據(jù)格式的之間的互換;或者,所述第一數(shù)據(jù)格式為采用結(jié)構(gòu)體數(shù)據(jù)格式描述即時(shí)消息;以及,根據(jù)結(jié)構(gòu)體的描述實(shí)現(xiàn)在第一數(shù)據(jù)格式和相應(yīng)通信協(xié)議數(shù)據(jù)格式的之間的互換。
上述方法中,當(dāng)本發(fā)明提供的客戶(hù)端系統(tǒng)作為即時(shí)消息發(fā)送端時(shí),直接將接收端即時(shí)通信工具適用所適用數(shù)據(jù)格式的即時(shí)消息發(fā)送到接收端服務(wù)器。
以上技術(shù)方案可以看出,本發(fā)明所提供的即時(shí)通信客戶(hù)端系統(tǒng),能夠與采用與本端所采用即時(shí)通信協(xié)議不同的其他客戶(hù)端進(jìn)行即時(shí)通信。進(jìn)一步,本發(fā)明采用了第一數(shù)據(jù)單元首先將不同的通信協(xié)議數(shù)據(jù)格式轉(zhuǎn)換為預(yù)置的數(shù)據(jù)格式,因而增強(qiáng)了現(xiàn)有即時(shí)通信工具的可擴(kuò)展性,靈活的支持各種多媒體信息,如支持多種字體、以及插入各種動(dòng)態(tài)效果等;同時(shí)上層在對(duì)即時(shí)消息進(jìn)行解析時(shí),無(wú)需考慮兼容問(wèn)題,只需對(duì)所述預(yù)置的數(shù)據(jù)格式的數(shù)據(jù)進(jìn)行解析即可,因而,本發(fā)明能夠兼容多種開(kāi)放協(xié)議的即時(shí)通信工具。
本發(fā)明還提供了一種即時(shí)通信方法,由于該方法中實(shí)現(xiàn)將即時(shí)消息數(shù)據(jù)在發(fā)送端即時(shí)通信協(xié)議數(shù)據(jù)格式和接收端即時(shí)通信協(xié)議數(shù)據(jù)格式,因而使采用不同即時(shí)通信協(xié)議的客戶(hù)端進(jìn)行即時(shí)消息的互通。
進(jìn)一步,在上述方法基礎(chǔ)上,在進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換過(guò)程中首先將即時(shí)消息數(shù)據(jù)由發(fā)送端即時(shí)通信協(xié)議數(shù)據(jù)格式轉(zhuǎn)換為預(yù)定義的數(shù)據(jù)格式,進(jìn)而再轉(zhuǎn)換為接收端即時(shí)通信協(xié)議的數(shù)據(jù)格式。該方法中由于預(yù)定義了中間層數(shù)據(jù)格式(即所述的第一數(shù)據(jù)格式),因而增強(qiáng)了現(xiàn)有即時(shí)通信工具的可擴(kuò)展性,靈活的支持各種多媒體信息,使得即時(shí)消息形式更加豐富生動(dòng),如支持多種字體、以及插入各種動(dòng)態(tài)效果等;并且,采用本方法后,上層在對(duì)即時(shí)消息進(jìn)行解析時(shí),無(wú)需考慮兼容問(wèn)題,只需對(duì)所述預(yù)置的數(shù)據(jù)格式的數(shù)據(jù)進(jìn)行解析即可,因而,本發(fā)明能夠兼容多種開(kāi)放協(xié)議的即時(shí)通信工具。進(jìn)一步,由于本方法中所有數(shù)據(jù)轉(zhuǎn)換的步驟在客戶(hù)端進(jìn)行,使得該客戶(hù)端可與未采用本發(fā)明方法且與本端即時(shí)通信協(xié)議不同的客戶(hù)端進(jìn)行即時(shí)通信。
圖1為本發(fā)明客戶(hù)端系統(tǒng)結(jié)構(gòu)示意圖;圖2為采用本發(fā)明客戶(hù)端系統(tǒng)的即時(shí)通信系統(tǒng)即時(shí)消息交互示意圖;圖3為本發(fā)明所述方法及客戶(hù)端系統(tǒng)即使消息處理邏輯圖;圖4為本發(fā)明方法流程圖。
具體實(shí)施例方式
本發(fā)明提供了一種即時(shí)通信客戶(hù)端系統(tǒng)。其核心在于在客戶(hù)端系統(tǒng)中建立第一數(shù)據(jù)轉(zhuǎn)換單元和第二數(shù)據(jù)轉(zhuǎn)換單元,將本端的即時(shí)消息數(shù)據(jù)格式轉(zhuǎn)換為對(duì)端即時(shí)通信工具適用的數(shù)據(jù)格式,以及將對(duì)端的即時(shí)消息數(shù)據(jù)格式轉(zhuǎn)換為本端即時(shí)通信工具的數(shù)據(jù)格式,進(jìn)而實(shí)現(xiàn)與不同即時(shí)通信工具的兼容,與采用不同即時(shí)通信協(xié)議客戶(hù)端的通信。
用IM0表示本發(fā)明的客戶(hù)端系統(tǒng)。參照?qǐng)D1,說(shuō)明本發(fā)明提供的即時(shí)通信客戶(hù)端系統(tǒng)的結(jié)構(gòu),該即時(shí)通信客戶(hù)端系統(tǒng)IM0包括輸入/輸出單元11,中間層數(shù)據(jù)轉(zhuǎn)換單元12、IM數(shù)據(jù)轉(zhuǎn)換單元13、輸出單元14。
輸入/輸出單元11,用于即時(shí)消息的輸入/輸出。
中間層數(shù)據(jù)轉(zhuǎn)換單元12(第一數(shù)據(jù)轉(zhuǎn)換單元),客戶(hù)端產(chǎn)生即時(shí)消息,通過(guò)輸入單元發(fā)送到所述中間層數(shù)據(jù)轉(zhuǎn)換單元,中間層數(shù)據(jù)轉(zhuǎn)換單元將該即時(shí)消息數(shù)據(jù)轉(zhuǎn)換為預(yù)置的數(shù)據(jù)格式(中間層數(shù)據(jù)格式),即由本端IM0所采用的數(shù)據(jù)格式轉(zhuǎn)換為中間層數(shù)據(jù)格式。IM數(shù)據(jù)轉(zhuǎn)換單元13(第二數(shù)據(jù)轉(zhuǎn)換單元),輸入單元輸入即時(shí)消息時(shí)調(diào)用該單元,獲取經(jīng)中間層數(shù)據(jù)轉(zhuǎn)換單元后的中間層數(shù)據(jù)格式的即時(shí)消息數(shù)據(jù),根據(jù)輸入端生成即時(shí)消息時(shí)選擇的接收端所采用的即時(shí)通信工具(IM)協(xié)議類(lèi)型,將即時(shí)消息數(shù)據(jù)的格式由中間層數(shù)據(jù)格式轉(zhuǎn)換為接收端IM采用的數(shù)據(jù)格式。具體的,所述IM數(shù)據(jù)轉(zhuǎn)換單元中可建立若干子單元,用于在第一數(shù)據(jù)格式與特定的即時(shí)通信協(xié)議數(shù)據(jù)格式之間進(jìn)行數(shù)據(jù)格式的轉(zhuǎn)換,即時(shí)消息產(chǎn)生時(shí)根據(jù)接收端所采用的即時(shí)通信工具(IM)協(xié)議類(lèi)型,調(diào)用相應(yīng)的子單元完成上述數(shù)據(jù)格式的轉(zhuǎn)換。最終,通過(guò)傳輸單元14將IM數(shù)據(jù)轉(zhuǎn)換單元轉(zhuǎn)換后的即時(shí)消息數(shù)據(jù)進(jìn)行發(fā)送,所述傳輸單元可將轉(zhuǎn)換后的即時(shí)消息直接發(fā)送到接收端服務(wù)器。
以及,傳輸單元獲取網(wǎng)絡(luò)發(fā)送來(lái)的對(duì)端的即時(shí)通信消息,IM數(shù)據(jù)轉(zhuǎn)換單元通過(guò)傳輸單元獲取該即時(shí)消息數(shù)據(jù),將其轉(zhuǎn)換為所述的第一數(shù)據(jù)格式。具體如上所述,IM數(shù)據(jù)轉(zhuǎn)換單元中可建立若干子單元,當(dāng)從傳輸單元獲取即時(shí)消息后,根據(jù)所獲取的即時(shí)消息的數(shù)據(jù)格式類(lèi)型,調(diào)用相應(yīng)的子單元完成即時(shí)消息數(shù)據(jù)格式的轉(zhuǎn)換。中間層數(shù)據(jù)轉(zhuǎn)換單元獲取轉(zhuǎn)換后的中間層數(shù)據(jù)格式的即時(shí)消息,并轉(zhuǎn)換為本端IM0所采用的數(shù)據(jù)格式;最終,將格式轉(zhuǎn)換后的即時(shí)消息數(shù)據(jù)通過(guò)輸出單元輸出。
本發(fā)明中所述中間層數(shù)據(jù)格式的定義將能夠增強(qiáng)即時(shí)通信工具的可擴(kuò)展性,以及易于兼容多種開(kāi)放協(xié)議的即時(shí)通信工具。
所述的中間層數(shù)據(jù)格式可采用預(yù)定義的標(biāo)簽XML對(duì)即時(shí)消息數(shù)據(jù)內(nèi)容進(jìn)行描述。以下所示為部分格式定義,本領(lǐng)于技術(shù)人員可依據(jù)實(shí)際業(yè)務(wù)需求增加或刪除定義內(nèi)容,以及可對(duì)采用不同的XML標(biāo)簽定義即時(shí)消息內(nèi)容的不同數(shù)據(jù)類(lèi)型。
#define TXT ″text″#define B″b″#define FONT ″font″#define U″u″#define I″i″#define SIZE ″size″#define FONT_NAME″name″#define ACTION ″action″#define WAVE ″wave″#define COLOR″color″#define FACE ″face″#define SELF_FACE″selfface″參照下表,說(shuō)明上述標(biāo)簽所定義的內(nèi)容。
該格式?jīng)]有樣式繼承,每個(gè)Font節(jié)點(diǎn)都是獨(dú)立的,即每個(gè)Font節(jié)點(diǎn)中,不能嵌套其他的Font節(jié)點(diǎn)。
例<text>
<font size=9 color=#00000>白</font>
<font size=6 color=#ff000b=1>日依<action>play ty.swf</action><wave>)</wave></font>
<font size=9 color=#00ff00>山盡,</font>
<br/>
<font size=9 color=#000000>黃<face>)</face>河</font>
<font size=16 color=#ff0000 b=1 i=1>入海</font>
<font size=9 color=#000000>流。</font>
<br/>
</text>
上例是對(duì)即時(shí)消息“白日依山盡,黃河入海流”的數(shù)據(jù)內(nèi)容的描述,其中“白”為9號(hào)字并且顏色是黑色;“日依”是綠色并且其中有一個(gè)<Action>,表示播放一段名為ty.swf的Flash,<wave>標(biāo)簽表示播放一段與符號(hào)“)”相關(guān)的聲音;“b=1”表示在“font”之間的字符串“日依”是粗體,“i=1”是斜體,“u=1”是下劃線。同理對(duì)該消息中其他字符屬性進(jìn)行描述。由于一段內(nèi)容中可以包含多個(gè)“<font>”所以該格式可以支持在一段話中,有多種字體樣式。
以上為采用XML語(yǔ)言定義中間層數(shù)據(jù)格式的實(shí)施例,本發(fā)明中同樣也可采用結(jié)構(gòu)體等其他方式定義中間層數(shù)據(jù)格式。以下示出一個(gè)采用結(jié)構(gòu)體定義中間層數(shù)據(jù)格式的實(shí)施例。
所述結(jié)構(gòu)體使一個(gè)可以包含不同數(shù)據(jù)類(lèi)型的一個(gè)結(jié)構(gòu),它是一種自定義的數(shù)據(jù)類(lèi)型,結(jié)構(gòu)體可以在一個(gè)結(jié)構(gòu)中聲明不同的數(shù)據(jù)類(lèi)型。例如struct text{font f;size s;bold b;color c;};上述代碼定義了一個(gè)即時(shí)消息內(nèi)容的結(jié)構(gòu)體,該結(jié)構(gòu)體中包括字體、大小、粗體、顏色四種數(shù)據(jù)屬性,用這樣一個(gè)結(jié)構(gòu)體即可以表示一段即時(shí)消息內(nèi)容。
本發(fā)明中所述的中間層數(shù)據(jù)轉(zhuǎn)換單元及IM數(shù)據(jù)轉(zhuǎn)換單元用于實(shí)現(xiàn)即時(shí)消息數(shù)據(jù)由所述中間層數(shù)據(jù)格式與特定的通信協(xié)議數(shù)據(jù)格式之間的轉(zhuǎn)換。
進(jìn)一步,可建立針對(duì)不同通信協(xié)議數(shù)據(jù)格式的數(shù)據(jù)轉(zhuǎn)換單元,例如與本端進(jìn)行即時(shí)消息通信的客戶(hù)端B和客戶(hù)端C采用了不同即時(shí)通信協(xié)議的通信工具IM(b)和IM(c),則若在Windows系統(tǒng)下,本端A中可分別建立插件IM(b)_dll和IM(c)_dll。
采用本發(fā)明所述的客戶(hù)端系統(tǒng),可以在一個(gè)即時(shí)通信工具(IM)中集成多個(gè)不同IM的賬號(hào)。例如某用戶(hù)使用即時(shí)通信工具,同時(shí),他又擁有IM1賬號(hào)、IM2賬號(hào);如果要與IM1賬號(hào)下的好友和IM2賬號(hào)下的好友通信,采用現(xiàn)有技術(shù),必須同時(shí)打開(kāi)IM1工具和IM2工具;采用本發(fā)的客戶(hù)端系統(tǒng)IM0,打開(kāi)IM0工具,將IM1和IM2賬號(hào)分別加載到IM0工具當(dāng)中,即可同IM0、IM1、IM2賬號(hào)下的好友進(jìn)行通信,而無(wú)需額外打開(kāi)IM1和IM2工具。無(wú)論與哪一個(gè)賬號(hào)進(jìn)行通信,發(fā)送端產(chǎn)生即時(shí)消息數(shù)據(jù)時(shí)采用的協(xié)議或是數(shù)據(jù)格式都是IM0協(xié)議格式的。
使用本發(fā)明的客戶(hù)端系統(tǒng)時(shí),需要獲取IM1及IM2的數(shù)據(jù)格式,針對(duì)不同IM的數(shù)據(jù)格式,分別編寫(xiě)賬號(hào)信息獲取單元,用于獲取不同IM的賬號(hào)信息數(shù)據(jù);當(dāng)用戶(hù)要與IM2賬號(hào)下的好友進(jìn)行通信時(shí),添加新的賬號(hào)類(lèi)型(im2),輸入賬號(hào)名等信息進(jìn)行登錄,系統(tǒng)根據(jù)用戶(hù)所添加的新的賬號(hào)類(lèi)型IM2,執(zhí)行IM2相應(yīng)的賬號(hào)信息獲取單元,獲取該賬號(hào)下的信息,并顯示。
圖2所示為在客戶(hù)端A為本發(fā)明的即時(shí)通信客戶(hù)端系統(tǒng)情況下,客戶(hù)A與客戶(hù)B的即時(shí)通信示意圖。該圖中,客戶(hù)A輸入一段即時(shí)消息;客戶(hù)端系統(tǒng)A接收后,由中間層數(shù)據(jù)轉(zhuǎn)換單元處理,把這段即時(shí)消息及各種操作以中間層格式描述出來(lái);IM格式數(shù)據(jù)轉(zhuǎn)換單元根據(jù)數(shù)據(jù)中標(biāo)識(shí)的客戶(hù)端B所使用的IM工具協(xié)議,將中間層格式數(shù)據(jù)轉(zhuǎn)換成相對(duì)應(yīng)的IM格式數(shù)據(jù)并傳輸?shù)椒?wù)器端;服務(wù)器端將即時(shí)消息數(shù)據(jù)發(fā)送客戶(hù)端B;客戶(hù)端B處理數(shù)據(jù)后,將消息內(nèi)容進(jìn)行輸出。
圖3為本發(fā)明所述客戶(hù)端系統(tǒng)即時(shí)消息處理邏輯圖。本端客戶(hù)端即時(shí)通信工具IM0中加載IM1和IM2的賬號(hào)信息,IM1與IM2分別采用不同的即時(shí)通信協(xié)議。發(fā)送端選擇IM1或IM2賬號(hào)下的通信對(duì)象并產(chǎn)生即時(shí)消息,以下假設(shè)所選擇通信對(duì)象在IM1賬號(hào)下。發(fā)送端將產(chǎn)生的即時(shí)消息數(shù)據(jù)由IM0的數(shù)據(jù)格式轉(zhuǎn)換為所述中間層數(shù)據(jù)格式,并且由于所選通信對(duì)象采用IM1的通信協(xié)議,進(jìn)而程序觸發(fā)IM1的數(shù)據(jù)轉(zhuǎn)換單元IM1_dll進(jìn)行數(shù)據(jù)轉(zhuǎn)換的操作,將即時(shí)消息數(shù)據(jù)由中間層數(shù)據(jù)格式轉(zhuǎn)換為IM1的數(shù)據(jù)格式,形成IM1格式的即時(shí)消息數(shù)據(jù),并直接發(fā)送到IM1服務(wù)器端。
本發(fā)明還提供了一種即時(shí)通信方法,參照?qǐng)D4,具體說(shuō)明本發(fā)明所述即時(shí)通信方法的較佳實(shí)施例。
步驟41預(yù)置第一數(shù)據(jù)格式,獲取接收端采用的即時(shí)通信協(xié)議數(shù)據(jù)格式,建立數(shù)據(jù)轉(zhuǎn)換單元,加載接收端即時(shí)通信工具賬號(hào)信息。
步驟42將發(fā)送端即時(shí)消息數(shù)據(jù)格式轉(zhuǎn)換為接收端IM適用的數(shù)據(jù)格式。
當(dāng)本發(fā)明所書(shū)的即使通信客戶(hù)端系統(tǒng)作為發(fā)送端時(shí),選擇采用特定即時(shí)通信協(xié)議的接收端并產(chǎn)生即時(shí)消息數(shù)據(jù),將數(shù)據(jù)格式由發(fā)送端采用的即時(shí)通信協(xié)議數(shù)據(jù)格式轉(zhuǎn)換為所述的中間層數(shù)據(jù)格式;并且,產(chǎn)生即時(shí)消息時(shí)選擇接收端所采用的即時(shí)通信協(xié)議,觸發(fā)所述數(shù)據(jù)轉(zhuǎn)換單元將中間層數(shù)據(jù)格式的即時(shí)消息轉(zhuǎn)換為接收端數(shù)據(jù)格式。
具體的,選擇某一即時(shí)通信協(xié)議的賬號(hào)產(chǎn)生即時(shí)消息,程序依據(jù)該通信協(xié)議類(lèi)型觸發(fā)相應(yīng)類(lèi)型的數(shù)據(jù)轉(zhuǎn)換單元的同時(shí),將信息數(shù)據(jù)轉(zhuǎn)換成中間層格式的數(shù)據(jù),被觸發(fā)數(shù)據(jù)轉(zhuǎn)換單元負(fù)責(zé)將中間層格式的數(shù)據(jù)轉(zhuǎn)換成所述的即時(shí)通信協(xié)議數(shù)據(jù)格式,亦即接收端所采用的數(shù)據(jù)格式,并將轉(zhuǎn)換后的即時(shí)消息數(shù)據(jù)進(jìn)行發(fā)送。
當(dāng)本發(fā)明所述即時(shí)通信客戶(hù)端系統(tǒng)作為接收端時(shí),依照上述思想將即時(shí)消息數(shù)據(jù)由發(fā)送端采用的數(shù)據(jù)格式轉(zhuǎn)換為所述的第一數(shù)據(jù)格式;將第一數(shù)據(jù)格式的即時(shí)消息數(shù)據(jù)轉(zhuǎn)換為本端即時(shí)通信協(xié)議的數(shù)據(jù)格式,輸出該即時(shí)消息。
步驟43接收端獲取即時(shí)消息數(shù)據(jù)并輸出。
步驟42中所述的數(shù)據(jù)格式的轉(zhuǎn)換過(guò)程可參見(jiàn)本發(fā)明客戶(hù)端系統(tǒng)的說(shuō)明,所述第一數(shù)據(jù)格式可采用預(yù)定義的標(biāo)簽XML對(duì)即時(shí)消息數(shù)據(jù)進(jìn)行描述;以及根據(jù)標(biāo)簽語(yǔ)言的描述,實(shí)現(xiàn)在第一數(shù)據(jù)格式和相應(yīng)通信協(xié)議數(shù)據(jù)格式的之間的互換;或者,所述第一數(shù)據(jù)格式為采用結(jié)構(gòu)體數(shù)據(jù)格式描述即時(shí)消息;以及,根據(jù)結(jié)構(gòu)體的描述實(shí)現(xiàn)在第一數(shù)據(jù)格式和相應(yīng)通信協(xié)議數(shù)據(jù)格式的之間的互換。
以上對(duì)本發(fā)明所提供的一種兼容多種即時(shí)通信工具的客戶(hù)端系統(tǒng)和即時(shí)通信方法進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說(shuō)明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式
及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說(shuō)明書(shū)內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。
權(quán)利要求
1.一種兼容多種即時(shí)通信工具的客戶(hù)端系統(tǒng),包括輸入單元,用于產(chǎn)生即時(shí)消息;輸出單元,輸出即時(shí)消息;傳輸單元,通過(guò)網(wǎng)絡(luò)發(fā)送或接收即時(shí)消息數(shù)據(jù);其特征在于,所述客戶(hù)端系統(tǒng)還包括第一數(shù)據(jù)轉(zhuǎn)換單元和第二數(shù)據(jù)轉(zhuǎn)換單元;所述第一數(shù)據(jù)轉(zhuǎn)換單元,獲取輸入單元產(chǎn)生的即時(shí)消息,將即時(shí)消息數(shù)據(jù)由本端即時(shí)通信工具數(shù)據(jù)格式轉(zhuǎn)換為第一數(shù)據(jù)格式,第二數(shù)據(jù)轉(zhuǎn)換單元獲取所述第一數(shù)據(jù)格式的即時(shí)消息數(shù)據(jù),并轉(zhuǎn)換為對(duì)端即時(shí)通信工具所適用的數(shù)據(jù)格式,進(jìn)而通過(guò)傳輸單元發(fā)送;以及,第二數(shù)據(jù)轉(zhuǎn)換單元獲取傳輸單元接收的即時(shí)消息,將該消息數(shù)據(jù)轉(zhuǎn)換為第一數(shù)據(jù)格式,第一數(shù)據(jù)單元獲取所述第一數(shù)據(jù)格式的即時(shí)消息數(shù)據(jù),轉(zhuǎn)換為本端即時(shí)通信工具的數(shù)據(jù)格式,并通過(guò)輸出單元進(jìn)行輸出。
2.如權(quán)利要求1所述的兼容多種即時(shí)通信工具的客戶(hù)端系統(tǒng),其特征在于所述第二數(shù)據(jù)轉(zhuǎn)換單元包括子單元,每一子單元專(zhuān)用于將即時(shí)消息在第一數(shù)據(jù)格式與特定通信協(xié)議數(shù)據(jù)格式之間進(jìn)行轉(zhuǎn)換。
3.如權(quán)利要求2所述的兼容多種即時(shí)通信工具的客戶(hù)端系統(tǒng),其特征在于輸入單元產(chǎn)生即時(shí)消息時(shí),根據(jù)接收端賬號(hào)信息,調(diào)用所述第二數(shù)據(jù)轉(zhuǎn)換單元中的相應(yīng)子單元,獲取第一數(shù)據(jù)轉(zhuǎn)換單元的即時(shí)消息,并將即時(shí)消息數(shù)據(jù)格式轉(zhuǎn)換為特定的數(shù)據(jù)格式。
4.如權(quán)利要求1所述的兼容多種即時(shí)通信工具的客戶(hù)端系統(tǒng),其特征在于所述第一數(shù)據(jù)格式為采用預(yù)定義的標(biāo)簽XML對(duì)即時(shí)消息數(shù)據(jù)進(jìn)行描述;所述第一數(shù)據(jù)轉(zhuǎn)換單元以及第二數(shù)據(jù)轉(zhuǎn)換單元根據(jù)標(biāo)簽語(yǔ)言的描述,實(shí)現(xiàn)在第一數(shù)據(jù)格式和相應(yīng)通信協(xié)議數(shù)據(jù)格式的之間的互換。
5.如權(quán)利要求1所述的兼容多種即時(shí)通信工具的客戶(hù)端系統(tǒng),其特征在于所述第一數(shù)據(jù)格式為采用結(jié)構(gòu)體數(shù)據(jù)格式描述即時(shí)消息;所述第一數(shù)據(jù)轉(zhuǎn)換單元以及第二數(shù)據(jù)轉(zhuǎn)換單元根據(jù)結(jié)構(gòu)體的描述實(shí)現(xiàn)在第一數(shù)據(jù)格式和相應(yīng)通信協(xié)議數(shù)據(jù)格式的之間的互換。
6.一種采用如權(quán)利要求1所述的客戶(hù)端系統(tǒng)的即時(shí)通信方法,其特征在于預(yù)置第一數(shù)據(jù)格式;獲取接收端即時(shí)通信工具適用的數(shù)據(jù)格式;加載接收端即時(shí)通信工具賬號(hào)信息;如權(quán)利要求1所述的客戶(hù)端系統(tǒng)作為發(fā)送端時(shí),選擇接收端即時(shí)通信工具賬號(hào)并產(chǎn)生即時(shí)消息數(shù)據(jù),將即時(shí)消息數(shù)據(jù)由本端即時(shí)通信協(xié)議的數(shù)據(jù)格式轉(zhuǎn)換為所述的第一數(shù)據(jù)格式;將第一數(shù)據(jù)格式的即時(shí)消息數(shù)據(jù)轉(zhuǎn)換為所述的接收端即時(shí)通信工具適用的數(shù)據(jù)格式,并進(jìn)行發(fā)送,接收端獲取即時(shí)消息并進(jìn)行輸出;如權(quán)利要求1所述的客戶(hù)端系統(tǒng)作為接收端時(shí),將即時(shí)消息數(shù)據(jù)由發(fā)送端采用的數(shù)據(jù)格式轉(zhuǎn)換為所述的第一數(shù)據(jù)格式;將第一數(shù)據(jù)格式的即時(shí)消息數(shù)據(jù)轉(zhuǎn)換為本端即時(shí)通信協(xié)議的數(shù)據(jù)格式,輸出該即時(shí)消息。
7.如權(quán)利要求6所述的即時(shí)通信方法,其特征在于所述第一數(shù)據(jù)格式為采用預(yù)定義的標(biāo)簽XML對(duì)即時(shí)消息數(shù)據(jù)進(jìn)行描述;以及根據(jù)標(biāo)簽語(yǔ)言的描述,實(shí)現(xiàn)在第一數(shù)據(jù)格式和相應(yīng)通信協(xié)議數(shù)據(jù)格式的之間的互換。
8.如權(quán)利要求6所述的即時(shí)通信方法,其特征在于所述第一數(shù)據(jù)格式為采用結(jié)構(gòu)體數(shù)據(jù)格式描述即時(shí)消息;以及,根據(jù)結(jié)構(gòu)體的描述實(shí)現(xiàn)在第一數(shù)據(jù)格式和相應(yīng)通信協(xié)議數(shù)據(jù)格式的之間的互換。
9.如權(quán)利要求6所述的即時(shí)通信方法,其特征在于如權(quán)利要求1所述的客戶(hù)端系統(tǒng)作為即時(shí)消息發(fā)送端時(shí),直接將接收端即時(shí)通信工具適用所適用數(shù)據(jù)格式的即時(shí)消息發(fā)送到接收端服務(wù)器。
全文摘要
一種兼容多種即時(shí)通信工具的客戶(hù)端系統(tǒng)和即時(shí)通信方法。所述客戶(hù)端系統(tǒng)包括輸入單元、輸出單元、傳輸單元,以及還包括第一數(shù)據(jù)轉(zhuǎn)換單元,獲取輸入單元產(chǎn)生的即時(shí)消息,將即時(shí)消息數(shù)據(jù)由本端即時(shí)通信工具數(shù)據(jù)格式轉(zhuǎn)換為第一數(shù)據(jù)格式,第二數(shù)據(jù)轉(zhuǎn)換單元獲取所述第一數(shù)據(jù)格式的即時(shí)消息數(shù)據(jù),并轉(zhuǎn)換為對(duì)端即時(shí)通信工具所適用的數(shù)據(jù)格式,進(jìn)而通過(guò)傳輸單元發(fā)送;以及,第二數(shù)據(jù)轉(zhuǎn)換單元獲取傳輸單元接收的即時(shí)消息,將該消息數(shù)據(jù)轉(zhuǎn)換為第一數(shù)據(jù)格式,第一數(shù)據(jù)單元獲取所述第一數(shù)據(jù)格式的即時(shí)消息數(shù)據(jù),轉(zhuǎn)換為本端即時(shí)通信工具的數(shù)據(jù)格式,并通過(guò)輸出單元進(jìn)行輸出。該系統(tǒng)能夠與采用與本端所采用即時(shí)通信協(xié)議不同的其他客戶(hù)端進(jìn)行即時(shí)通信。
文檔編號(hào)H04L29/06GK1764166SQ200510114950
公開(kāi)日2006年4月26日 申請(qǐng)日期2005年11月16日 優(yōu)先權(quán)日2005年11月16日
發(fā)明者田野, 林劍峰, 付黎, 陳亮, 周焱, 于忠民 申請(qǐng)人:北京金山軟件有限公司