專利名稱:一種即時(shí)通訊方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)技術(shù)領(lǐng)域,具體涉及一種即時(shí)通訊方法。
背景技術(shù):
因特網(wǎng)時(shí)代,造就了我們新的工作和生活方式,其互聯(lián)性、開(kāi)放性及共享信息的模 式,打破了傳統(tǒng)信息傳播方式的重重壁壘,使得我們獲取信息比以往更加的方便、豐富?;?聯(lián)網(wǎng)技術(shù)的發(fā)展使我們可以足不出戶就實(shí)現(xiàn)了即時(shí)通訊,與好友聊天,與合作伙伴談判等 等。目前,基于需要下載安裝的即時(shí)通訊工具,如MSN,QQ,網(wǎng)易泡泡已經(jīng)深受大家的喜愛(ài),它 為人們的溝通、信息交流提供了新的途徑,是除手機(jī)、固話、電子郵件之外的又一種重要的 信息交流方式。通過(guò)這些工具,可以讓人和人之間的交流成本大大降低,且提高了效率。但 是,使用上述即時(shí)通工具用戶必須下載安裝相應(yīng)的客戶端軟件。這是一個(gè)較為復(fù)雜的配置 和了解熟悉的過(guò)程,對(duì)于從來(lái)沒(méi)有使用過(guò)這類工具和不經(jīng)常使用計(jì)算機(jī)的用戶來(lái)說(shuō)比較困 難。而且,現(xiàn)在的客戶端下載的即時(shí)通訊工具軟件越來(lái)越大,比如QQ2010軟件達(dá)到32. 6MB, MSN軟件達(dá)到11. 2MB,占用了不小的電腦存儲(chǔ)空間;同時(shí),因?yàn)橄螺d帶來(lái)的網(wǎng)絡(luò)安全問(wèn)題也 會(huì)困擾著用戶;另外,由于所有數(shù)據(jù)信息(比如聊天記錄等)都存儲(chǔ)在電腦終端,一旦更換 了電腦(如果出差等原因)或者重新安裝軟件,用戶將無(wú)法獲取原有的數(shù)據(jù)信息,非常不 便;而且,現(xiàn)在的網(wǎng)絡(luò)終端已經(jīng)普及到了手機(jī)等工具,對(duì)于即時(shí)通訊的即時(shí)性和工具的存儲(chǔ) 空間要求更高了。于是,人們便有了這樣的需求無(wú)需下載安裝任何軟件,一打開(kāi)網(wǎng)頁(yè)就可 以實(shí)現(xiàn)即時(shí)通訊,且所有的數(shù)據(jù)信息能夠安全地保存在網(wǎng)頁(yè)上。目前,網(wǎng)絡(luò)上也出現(xiàn)了一些網(wǎng)頁(yè)上的通訊方式,比如留言板、論壇等,但是,其共同 的不足是即時(shí)性太差,難以滿足人們即時(shí)溝通的需求。
發(fā)明內(nèi)容
本發(fā)明提供了一種即時(shí)通訊方法,解決了即時(shí)性太差,難以滿足人們即時(shí)溝通的 需求的問(wèn)題。為了達(dá)到上述目的,本發(fā)明的技術(shù)方案包括以下步驟1)用戶訪問(wèn)網(wǎng)頁(yè),調(diào)用flash插件的接口訪問(wèn)socket服務(wù)器,服務(wù)器為該用戶增 加一個(gè)新的socket監(jiān)聽(tīng)線程,建立永久連接,并將該socket線程和用戶的賬號(hào)ID保存到 一個(gè)變量list。2)源用戶獲取目標(biāo)用戶的賬號(hào)ID,然后根據(jù)目標(biāo)用戶的賬號(hào)ID獲取目標(biāo)用戶的 用戶信息,源用戶將目標(biāo)用戶的信息組成一個(gè)數(shù)據(jù),通過(guò)調(diào)用FLASH插件的接口將數(shù)據(jù)發(fā) 送給socket服務(wù)器。3) socket服務(wù)器收到數(shù)據(jù)后,獲取目標(biāo)用戶的賬號(hào)ID,并根據(jù)賬號(hào)ID,從變量 list找出該ID對(duì)應(yīng)的socket線程,將消息投遞到找到的socket線程,該socket線程將數(shù) 據(jù)轉(zhuǎn)發(fā)給連接到該socket線程的目標(biāo)用戶的FLASH插件。4)目標(biāo)用戶客戶端的flash插件收到消息后調(diào)用腳本程序的接口,將消息在網(wǎng)頁(yè)內(nèi)顯示出來(lái)。本發(fā)明與現(xiàn)有技術(shù)相比具有以下優(yōu)點(diǎn)用戶無(wú)需下載任何軟件在網(wǎng)頁(yè)上就可實(shí)現(xiàn) 即時(shí)通訊,節(jié)省了電腦的存儲(chǔ)空間,也減少了很多的不便利,同時(shí)提高了網(wǎng)絡(luò)環(huán)境安全性; 即時(shí)性很好,無(wú)滯后;適合包括個(gè)人電腦在內(nèi)的任何網(wǎng)絡(luò)終端的使用。
圖1是本發(fā)明的流程圖;圖2是本發(fā)明的具體通信過(guò)程的流程圖。
具體實(shí)施例方式下面結(jié)合附圖,對(duì)本發(fā)明進(jìn)行詳細(xì)描述本發(fā)明包括以下步驟1)用戶訪問(wèn)網(wǎng)頁(yè),調(diào)用flash插件的接口訪問(wèn)socket服務(wù)器,服務(wù)器為該用戶增 加一個(gè)新的socket監(jiān)聽(tīng)線程,建立永久連接,并將該socket線程和用戶的賬號(hào)ID保存到 一個(gè)變量list。2)源用戶獲取目標(biāo)用戶的賬號(hào)ID,然后根據(jù)目標(biāo)用戶的賬號(hào)ID獲取目標(biāo)用戶的 用戶信息,源用戶將目標(biāo)用戶的信息組成一個(gè)數(shù)據(jù),通過(guò)調(diào)用FLASH插件的接口將數(shù)據(jù)發(fā) 送給socket服務(wù)器。3) socket服務(wù)器收到數(shù)據(jù)后,獲取目標(biāo)用戶的賬號(hào)ID,并根據(jù)賬號(hào)ID,從變量 list找出該ID對(duì)應(yīng)的socket線程,將消息投遞給找到的socket線程,該socket線程將數(shù) 據(jù)轉(zhuǎn)發(fā)給連接到該socket線程的目標(biāo)用戶的FLASH插件。4)目標(biāo)用戶客戶端的flash插件收到消息后調(diào)用腳本程序的接口,將消息在網(wǎng)頁(yè) 內(nèi)顯示出來(lái)。上述技術(shù)方案中,步驟1)包含如下過(guò)程la)瀏覽器用戶登錄網(wǎng)站后記錄網(wǎng)頁(yè)訪問(wèn)者用戶賬號(hào),瀏覽器用戶訪問(wèn)網(wǎng)頁(yè)頁(yè)面, 網(wǎng)頁(yè)腳本程序調(diào)用flash插件的接口訪問(wèn)socket服務(wù)器,socket服務(wù)器收到flash插件的 連接請(qǐng)求后,為該瀏覽用戶新增一個(gè)socket監(jiān)聽(tīng)線程,該監(jiān)聽(tīng)線程和瀏覽器用戶的flash 插件建立永久連接;lb) socket服務(wù)器將新增的socket線程和賬號(hào)ID保存到list變量。上述技術(shù)方案中,步驟2~)包含如下過(guò)程2a)源用戶訪問(wèn)網(wǎng)頁(yè),獲取目標(biāo)用戶的賬號(hào)ID,將該賬號(hào)ID發(fā)送給web服務(wù)器, web服務(wù)器查找該賬號(hào)ID對(duì)應(yīng)的目標(biāo)用戶信息,若找到該目標(biāo)用戶信息,web服務(wù)器返回該 賬號(hào)ID對(duì)應(yīng)的目標(biāo)用戶信息,繼續(xù)下一步,否則提示目標(biāo)用戶不存在;2b)源用戶將web服務(wù)器返回的目標(biāo)用戶信息和源用戶的用戶信息組成一個(gè)數(shù) 據(jù),調(diào)用源用戶的客戶端flash插件的接口將消息發(fā)送給該源用戶所連接的socket線程。上述技術(shù)方案中,步驟幻包含如下過(guò)程3a)該源用戶所連接的socket線程收到消息后分析消息數(shù)據(jù),獲取目標(biāo)用戶的賬 號(hào)ID;3b)源用戶所連接的socket線程根據(jù)目標(biāo)用戶的賬號(hào)ID從list變量中查找對(duì)應(yīng)的socket線程,將消息轉(zhuǎn)交給查找到的目標(biāo)線程;3c)目標(biāo)用戶的socket線程將消息轉(zhuǎn)發(fā)給連接到該socket線程的目標(biāo)用戶的客 戶端的flash插件。上述技術(shù)方案中,步驟4)包含如下過(guò)程4a)目標(biāo)用戶的客戶端的flash插件接受socket服務(wù)器發(fā)來(lái)的消息;4b)目標(biāo)用戶的客戶端的flash插件通過(guò)調(diào)用網(wǎng)頁(yè)腳本程序的接口,將消息在網(wǎng) 頁(yè)內(nèi)顯示出來(lái)。圖1是本發(fā)明的流程圖,詳細(xì)說(shuō)明如下步驟101 開(kāi)始步驟102 源用戶訪問(wèn)網(wǎng)頁(yè)在線聊天系統(tǒng)步驟103 調(diào)用 Flash 接 口步驟104 =Flash連接socket服務(wù)器,并監(jiān)聽(tīng)連接步驟105 源用戶發(fā)送消息給目標(biāo)用戶步驟106 =Flash將消息轉(zhuǎn)發(fā)給服務(wù)器步驟107 服務(wù)器將消息轉(zhuǎn)發(fā)到目標(biāo)用戶的客戶端flash步驟108 =Flash調(diào)用javascript腳本將消息在網(wǎng)頁(yè)顯示步驟109:結(jié)束圖2是本發(fā)明的具體通信過(guò)程的流程圖,詳細(xì)說(shuō)明如下,步驟201:開(kāi)始;步驟202 檢測(cè)flash插件是否已安裝,若未安裝,則轉(zhuǎn)步驟203 ;若是,則轉(zhuǎn)步驟 204 ;步驟203:結(jié)束;步驟204 加載flash動(dòng)畫(huà)文件,開(kāi)啟數(shù)據(jù)傳輸接口,分配1個(gè)唯一的用戶標(biāo)識(shí)(ID 表示此標(biāo)識(shí));步驟205 若flash未連接socket服務(wù),則轉(zhuǎn)步驟206 ;否則,則轉(zhuǎn)步驟207 ;步驟206 提示連接失?。徊襟E207 將ID發(fā)送給socket服務(wù)器;步驟208 服務(wù)器將用戶ID和已建立的socket連接保存到一個(gè)變量list中;步驟209 輸入待通訊對(duì)象賬號(hào)ρ (ρ表示賬號(hào)變量);步驟210:源用戶輸入;步驟211 通過(guò)調(diào)用flash提供的接口將內(nèi)容、源用戶ID、ρ以及一些相關(guān)內(nèi)容組 成一個(gè)條消息發(fā)送給服務(wù)器;步驟212 服務(wù)器從變量List查找ρ對(duì)應(yīng)的目標(biāo)用戶對(duì)象(Object表示此對(duì)象) 的socket連接;步驟213 指定object接收消息;步驟214 =Object將消息轉(zhuǎn)發(fā)給連接到此object的目標(biāo)用戶客戶端flash ;步驟215 目標(biāo)用戶客戶端flash調(diào)用javascript腳本程序的接口,將消息在網(wǎng) 頁(yè)中顯示出來(lái);步驟216:結(jié)束。
下面進(jìn)一步說(shuō)明本發(fā)明所述的方法參見(jiàn)說(shuō)明書(shū)附圖,源用戶在瀏覽器里輸入本人的個(gè)人網(wǎng)頁(yè)地址或者通過(guò)鏈接到達(dá) 源用戶的個(gè)人網(wǎng)頁(yè);源用戶輸入賬號(hào)和密碼登錄源用戶的個(gè)人網(wǎng)頁(yè),若登錄成功,則將此 賬號(hào)作為通訊賬號(hào),若不登錄,則系統(tǒng)為其分配一個(gè)臨時(shí)通訊賬號(hào)??蛻舳四_本程序調(diào)用 flash插件的接口連接socket服務(wù)器,若連接成功,則客戶端調(diào)用flash接口將用戶賬號(hào)發(fā) 送給socket服務(wù)器,并建立永久連接。Socket服務(wù)器記錄該賬號(hào)和賬號(hào)對(duì)應(yīng)的socket線 程。源用戶點(diǎn)擊個(gè)人網(wǎng)頁(yè)內(nèi)的目標(biāo)用戶的頭像或鏈接,獲取該目標(biāo)用戶的賬號(hào),并生成信息 輸入界面。源用戶將目標(biāo)用戶的信息組成一個(gè)數(shù)據(jù),通過(guò)調(diào)用FLASH插件的接口將數(shù)據(jù)發(fā)送 給socket服務(wù)器。socket服務(wù)器收到數(shù)據(jù)后,根據(jù)目標(biāo)賬號(hào)ID,將消息投遞到該賬號(hào)ID對(duì) 應(yīng)的socket線程,該socket線程將數(shù)據(jù)轉(zhuǎn)發(fā)給連接到該socket線程的目標(biāo)用戶的FLASH 插件。目標(biāo)用戶客戶端的FLASH插件收到消息后調(diào)用腳本程序的接口,將消息在網(wǎng)頁(yè)內(nèi)顯 示出來(lái)。
權(quán)利要求
1.一種即時(shí)通訊方法,其特征在于,包括以下步驟1)用戶訪問(wèn)網(wǎng)頁(yè),調(diào)用flash插件的接口訪問(wèn)socket服務(wù)器,服務(wù)器為該用戶增加一 個(gè)新的socket監(jiān)聽(tīng)線程,建立永久連接,并將該socket線程和用戶的賬號(hào)ID保存到一個(gè) 變量list ;2)源用戶獲取目標(biāo)用戶的賬號(hào)ID,然后根據(jù)目標(biāo)用戶的賬號(hào)ID獲取目標(biāo)用戶的用戶 信息,源用戶將目標(biāo)用戶的信息組成一個(gè)數(shù)據(jù),通過(guò)調(diào)用FLASH插件的接口將數(shù)據(jù)發(fā)送給 socket服務(wù)器;3)socket服務(wù)器收到數(shù)據(jù)后,獲取目標(biāo)用戶的賬號(hào)ID,并根據(jù)賬號(hào)ID,從變量list找 出該ID對(duì)應(yīng)的socket線程,將消息投遞到找到的socket線程,該socket線程將數(shù)據(jù)轉(zhuǎn)發(fā) 給連接到該socket線程的目標(biāo)用戶的FLASH插件;4)目標(biāo)用戶客戶端的flash插件收到消息后調(diào)用腳本程序的接口,將消息在網(wǎng)頁(yè)內(nèi)顯 示出來(lái)。
2.如權(quán)利要求1所述的一種即時(shí)通訊方法,其特征在于,其中步驟1)包含如下過(guò)程 la)瀏覽器用戶登錄網(wǎng)站后記錄網(wǎng)頁(yè)訪問(wèn)者用戶賬號(hào),瀏覽器用戶訪問(wèn)網(wǎng)頁(yè)頁(yè)面,網(wǎng)頁(yè)腳本程序調(diào)用flash插件的接口訪問(wèn)socket服務(wù)器,socket服務(wù)器收到flash插件的連 接請(qǐng)求后,為該瀏覽用戶新增一個(gè)socket監(jiān)聽(tīng)線程,該監(jiān)聽(tīng)線程和瀏覽器用戶的flash插 件建立永久連接;lb) socket服務(wù)器將新增的socket線程和賬號(hào)ID保存到list變量。
3.如權(quán)利要求1所述的一種即時(shí)通訊方法,其特征在于,其中步驟2)包含如下過(guò)程 2a)源用戶訪問(wèn)網(wǎng)頁(yè),獲取目標(biāo)用戶的賬號(hào)ID,將該賬號(hào)ID發(fā)送給web服務(wù)器,web服務(wù)器查找該賬號(hào)ID對(duì)應(yīng)的目標(biāo)用戶信息,若找到該目標(biāo)用戶信息,web服務(wù)器返回該賬號(hào) ID對(duì)應(yīng)的目標(biāo)用戶信息,繼續(xù)下一步,否則提示目標(biāo)用戶不存在;2b)源用戶將web服務(wù)器返回的目標(biāo)用戶信息和源用戶的用戶信息組成一個(gè)數(shù)據(jù),調(diào) 用源用戶的客戶端flash插件的接口將消息發(fā)送給該源用戶所連接的socket線程。
4.如權(quán)利要求1所述的一種即時(shí)通訊方法,其特征在于,其中步驟3)包含如下過(guò)程 3a)該源用戶所連接的socket線程收到消息后分析消息數(shù)據(jù),獲取目標(biāo)用戶的賬號(hào)ID ;3b)源用戶所連接的socket線程根據(jù)目標(biāo)用戶的賬號(hào)ID從list變量中查找對(duì)應(yīng)的 socket線程,將消息轉(zhuǎn)交給查找到的目標(biāo)線程;3c)目標(biāo)用戶的socket線程將消息轉(zhuǎn)發(fā)給連接到該socket線程的目標(biāo)用戶的客戶端 的flash插件。
5.如權(quán)利要求1所述的一種即時(shí)通訊方法,其特征在于,其中步驟4)包含如下過(guò)程 4a)目標(biāo)用戶的客戶端的flash插件接受socket服務(wù)器發(fā)來(lái)的消息;4b)目標(biāo)用戶的客戶端的flash插件通過(guò)調(diào)用網(wǎng)頁(yè)腳本程序的接口,將消息在網(wǎng)頁(yè)內(nèi) 顯示出來(lái)。
6.如權(quán)利要求1所述的一種即時(shí)通訊方法,其中所述socket服務(wù)器是指所有可以用 來(lái)通訊的應(yīng)用程序。
7.如權(quán)利要求1所述的一種即時(shí)通訊方法,其特征在于所有用戶都連接到socket服 務(wù)器,socket服務(wù)器記錄所有用戶的賬號(hào)和永久連接到一個(gè)變量,源用戶調(diào)用flash將消息發(fā)送給socket服務(wù)器,socket從變量中找出目標(biāo)用戶對(duì)應(yīng)的連接,將消息轉(zhuǎn)發(fā)給目標(biāo)用 戶的flash,目標(biāo)用戶的flash調(diào)用網(wǎng)頁(yè)腳本的接口將消息在網(wǎng)頁(yè)顯示。
8.一種即時(shí)通訊方法,其特征在于用戶通過(guò)網(wǎng)頁(yè)訪問(wèn)socket服務(wù)器,所述socket服務(wù)器為所述用戶增加一個(gè)新的 socket線程并建立永久連接;源用戶結(jié)合獲得的目標(biāo)用戶的信息,組成一個(gè)數(shù)據(jù)并發(fā)送 給所述socket服務(wù)器;所述socket服務(wù)器將接收的所述數(shù)據(jù),通過(guò)目標(biāo)用戶信息對(duì)應(yīng)的 socket線程,發(fā)送給所述目標(biāo)用戶。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于用戶通過(guò)網(wǎng)頁(yè)訪問(wèn)socket服務(wù)器,所述 socket服務(wù)器為所述用戶增加一個(gè)新的socket線程并建立永久連接后,所述socket服務(wù) 器將所述socket線程和所述用戶的信息保存至一個(gè)變量。
10.根據(jù)權(quán)利要求8所述的方法,其特征在于源用戶結(jié)合獲得的目標(biāo)用戶的信息,組 成一個(gè)數(shù)據(jù)并發(fā)送給所述socket服務(wù)器的過(guò)程為源用戶結(jié)合獲得的目標(biāo)用戶的信息,組 成一個(gè)數(shù)據(jù),通過(guò)調(diào)用flash插件的接口,將所述數(shù)據(jù)發(fā)送給所述socket服務(wù)器。
全文摘要
本發(fā)明涉及一種即時(shí)通訊方法,屬于網(wǎng)絡(luò)技術(shù)領(lǐng)域,方法是源用戶和目標(biāo)用戶登錄網(wǎng)頁(yè),加載flash,flash連接socket服務(wù)器,服務(wù)器為該用戶分配socket線程,并建立永久連接。源用戶將消息數(shù)據(jù)發(fā)送給flash,flash將消息數(shù)據(jù)轉(zhuǎn)發(fā)給socket服務(wù)器,socket服務(wù)器查找連接目標(biāo)用戶的socket線程,將消息數(shù)據(jù)轉(zhuǎn)發(fā)給目標(biāo)用戶的socket線程,該目標(biāo)用戶的socket線程再將消息轉(zhuǎn)發(fā)到目標(biāo)用戶的flash,目標(biāo)用戶flash調(diào)用客戶端的腳本程序,將消息在網(wǎng)頁(yè)上顯示出來(lái)。該方法能使用戶不用下載任何軟件在網(wǎng)頁(yè)上就可以實(shí)現(xiàn)即時(shí)通訊,減少了很多的不便利,即時(shí)性很好,適合包括個(gè)人電腦在內(nèi)的任何網(wǎng)絡(luò)終端的使用。
文檔編號(hào)H04L12/58GK102075455SQ20111004289
公開(kāi)日2011年5月25日 申請(qǐng)日期2011年2月15日 優(yōu)先權(quán)日2010年9月28日
發(fā)明者胡加明 申請(qǐng)人:蘇州闊地網(wǎng)絡(luò)科技有限公司