專利名稱:網(wǎng)頁上實現(xiàn)的即時通訊的方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)技術(shù)領(lǐng)域,具體屬于一種網(wǎng)頁上實現(xiàn)的即時通訊 的方法。
技術(shù)背景因特網(wǎng)時代,造就了我們新的工作和生活方式,其互聯(lián)性、開放 性和共享信息的模式,打破了傳統(tǒng)信息傳播方式的重重壁壘,使得我 們獲取信息比以往更加的方便且內(nèi)容豐富?;ヂ?lián)網(wǎng)技術(shù)的發(fā)展使我們 可以足不出戶就實現(xiàn)了即時通訊,與好友聊天,與合作伙伴談判等等。目前,基于需要下載安裝的即時通訊工具,如msn, qq,網(wǎng)易泡泡已 經(jīng)深受大家的喜愛,它為人們的溝通、信息的交流提供了新的途徑, 是除了手機,固話,電子郵件之外的又一種重要的信息交流方式。通 過這些工具,可以讓人和人之間的交流成本大大降低,且提高了便利 性和效率。但是使用上述即時通工具用戶必須下載安裝相應(yīng)的客戶端 軟件,對于從來沒用過這類工具的人來說,需要較為復(fù)雜的配置過程 和了解熟悉的過程,同時對于不經(jīng)常使用計算機的用戶來說比較困 難,而且下載的軟件對于電腦的存儲空間也是個占用,另外用戶如果 出差等原因要換電腦的話又要重新安裝軟件,非常的不方便;而且, 現(xiàn)在的網(wǎng)絡(luò)終端已經(jīng)普及到了手機等工具,對于即時通訊的即時性和工具的存儲空間要求更高了。于是,人們便有了在基于網(wǎng)頁就可以實 現(xiàn)即時通訊的需求,期待一打開網(wǎng)頁就可以實現(xiàn)即時通訊,無需下載 安裝任何軟件?,F(xiàn)在,網(wǎng)絡(luò)上也出現(xiàn)了一些網(wǎng)頁上的通訊方式,比如 留言板、論壇和一些其他的通訊方式,但是一個共同的缺點是即時性 太差。這種現(xiàn)狀顯然是無法滿足人們的即時溝通需求。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種在網(wǎng)頁上實現(xiàn)的即時通 訊的方法。
為了解決上述技術(shù)問題,本發(fā)明采用以下的技術(shù)方案 一種在網(wǎng) 頁上實現(xiàn)的即時通訊的方法,包括以下步驟
1) 用戶訪問網(wǎng)頁,調(diào)用flash插件的接口訪問socket服務(wù)器,服務(wù) 器為該用戶增加一個新的socket監(jiān)聽線程,建立永久連接,并將 該socket線程的線程ID寫入該源用戶對應(yīng)的數(shù)據(jù)表,然后返回 該socket的線程ID。
2) 源用戶獲取目標用戶的賬號ID,然后根據(jù)目標用戶的賬號ID獲 取目標用戶的用戶信息和目標用戶的線程ID。源用戶將目標用戶 的信息和目標用戶的線程ID組成一個數(shù)據(jù),通過調(diào)用FLASH插件 的接口將數(shù)據(jù)發(fā)送給socket服務(wù)器。
3) socket服務(wù)器收到數(shù)據(jù)后,根據(jù)線程ID,將消息投遞到該線程 ID對應(yīng)的socket線程,該socket線程將數(shù)據(jù)轉(zhuǎn)發(fā)給連接到該socket線程的目標用戶的FLASH插件。 4)目標用戶客戶端的flash插件收到消息后調(diào)用腳本程序的接口, 將消息在網(wǎng)頁內(nèi)顯示出來。其中步驟l)包含如下過程la)瀏覽器用戶登錄網(wǎng)站后記錄網(wǎng) 頁訪問者用戶賬號,瀏覽器用戶訪問網(wǎng)頁頁面,網(wǎng)頁腳本程序調(diào)用 flash插件的接口訪問socket服務(wù)器,socket服務(wù)器收到flash插 件的連接請求后,為該瀏覽用戶新增一個socket監(jiān)聽線程,該監(jiān)聽 線程和瀏覽器用戶的flash插件建立永久連接;lb) socket服務(wù)器為 新增的socket線程分配一個線程ID,將線程ID寫入瀏覽器用戶的 賬號所在的數(shù)據(jù)表;lc)返回線程ID給瀏覽器用戶的flash插件。其中步驟2)包含如下過程2a)源用戶訪問網(wǎng)頁,獲取目標用 戶的賬號ID,將該賬號ID發(fā)送給web服務(wù)器,web服務(wù)器查找該賬 號ID對應(yīng)的目標用戶信息,若找到該目標用戶信息,web服務(wù)器返 回該賬號ID對應(yīng)的目標用戶信息,繼續(xù)下一步,否則提示目標用戶 不存在;2b)源用戶將web服務(wù)器返回的目標用戶信息和源用戶的用 戶信息組成一個數(shù)據(jù),調(diào)用源用戶的客戶端flash插件的接口將消息 發(fā)送給該源用戶所連接的socket線程。其中步驟3)包含如下過程3a)該源用戶所連接的socket線程 收到消息后分析消息數(shù)據(jù),獲取目標用戶的線程ID;3b)源用戶所連 接的socket線程根據(jù)目標用戶的線程ID査找對應(yīng)的socket線程,將消息轉(zhuǎn)交給査找到的目標線程;3c)目標用戶的socket線程將消息
轉(zhuǎn)發(fā)到連接到該socket線程的目標用戶的客戶端的flash插件。
其中步驟4)包括如下過程4a)目標用戶的客戶端的flash插
件接受socket服務(wù)器發(fā)來的消息;4b)目標用戶的客戶端的flash插
件通過調(diào)用網(wǎng)頁腳本程序的接口,將消息在網(wǎng)頁內(nèi)顯示出來。 本發(fā)明與現(xiàn)有技術(shù)相比具有以下的優(yōu)點-
(1)用戶不用下載任何軟件在網(wǎng)頁上就可以實現(xiàn)即時通訊,節(jié)省 了電腦的存儲空間,也減少了很多的不便利;
(2) 即時性很好,無滯后;
(3) 適合包括個人電腦在內(nèi)的任何網(wǎng)絡(luò)終端的使用。
圖l、圖2是本發(fā)明的詳細流程圖。
具體實施例方式
一種在網(wǎng)頁上實現(xiàn)即時通訊的方法,包括以下步驟
1) 用戶訪問網(wǎng)頁,調(diào)用flash插件的接口訪問socket服務(wù)器,服務(wù) 器為該用戶增加一個新的socket監(jiān)聽線程,建立永久連接,并將該 socket線程的線程ID寫入該源用戶對應(yīng)的數(shù)據(jù)表,然后返回該 socket的線程ID。
2) 源用戶獲取目標用戶的賬號ID,然后根據(jù)目標用戶的賬號ID獲 取目標用戶的用戶信息和目標用戶的線程ID;源用戶將目標用戶的 信息和目標用戶的線程ID組成一個數(shù)據(jù),通過調(diào)用FLASH插件的接 口將數(shù)據(jù)發(fā)送給socket服務(wù)器。3) socket服務(wù)器收到數(shù)據(jù)后,根據(jù)線程ID,將消息投遞到該線程 ID對應(yīng)的socket線程,該socket線程將數(shù)據(jù)轉(zhuǎn)發(fā)給連接到該socket 線程的目標用戶的FLASH插件。
4) 目標用戶客戶端的FLASH插件收到消息后調(diào)用腳本程序的接口, 將消息在網(wǎng)頁內(nèi)顯示出來。
下面進一步詳細說明本發(fā)明所述的方法 參見圖1、圖2,源用戶在瀏覽器里輸入本人的個人網(wǎng)頁地址或者 通過鏈接到達源用戶的個人網(wǎng)頁;源用戶輸入賬號和密碼登錄源用戶 的個人網(wǎng)頁,若登錄成功,則將此賬號作為通訊賬號,若不登錄,則 系統(tǒng)為其分配一個臨時通訊賬號??蛻舳四_本程序調(diào)用flash插件的 接口連接socket服務(wù)器,若連接成功,則返回一個該賬號對應(yīng)的 socket線程ID,服務(wù)器將該賬號和賬號對應(yīng)的socket線程ID進行 廣播,并建立永久連接。網(wǎng)頁所有瀏覽用戶收到廣播后,記錄該賬號 和賬號對應(yīng)的socket線程ID。源用戶點擊個人網(wǎng)頁內(nèi)的目標用戶的 頭像或鏈接,獲取該目標用戶的賬號和賬號對應(yīng)的socket線程ID, 并生成信息輸入界面。
源用戶將目標用戶的信息和目標用戶的線程ID組成一個數(shù)據(jù),通過 調(diào)用FLASH插件的接口將數(shù)據(jù)發(fā)送給socket服務(wù)器。socket服務(wù)器 收到數(shù)據(jù)后,根據(jù)線程ID,將消息投遞到該線程ID對應(yīng)的socket線程,該socket線程將數(shù)據(jù)轉(zhuǎn)發(fā)給連接到該socket線程的目標用戶 的FLASH插件。目標用戶客戶端的FLASH插件收到消息后調(diào)用腳本程 序的接.口,將消息在網(wǎng)頁內(nèi)顯示出來。
權(quán)利要求
1、一種網(wǎng)頁上實現(xiàn)的即時通訊的方法,包括以下步驟1)用戶訪問網(wǎng)頁,調(diào)用flash插件的接口訪問socket服務(wù)器,服務(wù)器為該用戶增加一個新的socket監(jiān)聽線程,建立永久連接,并將該socket線程的線程ID寫入該源用戶對應(yīng)的數(shù)據(jù)表,然后返回該socket的線程ID。2)源用戶獲取目標用戶的賬號ID,然后根據(jù)目標用戶的賬號ID獲取目標用戶的用戶信息和目標用戶的線程ID。源用戶將目標用戶的信息和目標用戶的線程ID組成一個數(shù)據(jù),通過調(diào)用FLASH插件的接口將數(shù)據(jù)發(fā)送給socket服務(wù)器。3)socket服務(wù)器收到數(shù)據(jù)后,根據(jù)線程ID,將消息投遞到該線程ID對應(yīng)的socket線程,該socket線程將數(shù)據(jù)轉(zhuǎn)發(fā)給連接到該socket線程的目標用戶的FLASH插件。4)目標用戶客戶端的flash插件收到消息后調(diào)用腳本程序的接口,將消息在網(wǎng)頁內(nèi)顯示出來。
2、 如權(quán)利要求l所述的一種在網(wǎng)頁上實現(xiàn)即時通訊的方法,其特征 在于:其中步驟1)包含如下過程la)瀏覽器用戶登錄網(wǎng)站后記錄 網(wǎng)頁訪問者用戶賬號,瀏覽器用戶訪問網(wǎng)頁頁面,網(wǎng)頁腳本程序調(diào)用 flash插件的接口訪問socket服務(wù)器,socket服務(wù)器收到flash插 件的連接請求后,為該瀏覽用戶新增一個socket監(jiān)聽線程,該監(jiān)聽 線程和瀏覽器用戶的flash插件建立永久連接;lb) socket服務(wù)器為新增的socket線程分配一個線程ID,將線程ID寫入瀏覽器用戶 的賬號所在的數(shù)據(jù)表;lc)返回線程ID給瀏覽器用戶的flash插件。
3、 如權(quán)利要求1或2所述的一種在網(wǎng)頁上實現(xiàn)即時通訊的方法,其 特征在于:其中步驟2)包含如下過程2a)源用戶訪問網(wǎng)頁,獲取目 標用戶的賬號ID,將該賬號ID發(fā)送給web服務(wù)器,web服務(wù)器査找 該賬號ID對應(yīng)的目標用戶信息,若找到該目標用戶信息,web服務(wù) 器返回該賬號ID對應(yīng)的目標用戶信息,繼續(xù)下一步,否則提示目標 用戶不存在,2b)源用戶將web服務(wù)器返回的目標用戶信息和源用戶 的用戶信息組成一個數(shù)據(jù),調(diào)用源用戶的客戶端Hash插件的接口將 消息發(fā)送給該源用戶所連接的socket線程。
4、 如權(quán)利要求3所述的一種在網(wǎng)頁上實現(xiàn)即時通訊的方法,其特征 在于:其中步驟3)包含如下過程3a)該源用戶所連接的socket線 程收到消息后分析消息數(shù)據(jù),獲取目標用戶的線程ID;3b)源用戶所 連接的socket線程根據(jù)目標用戶的線程ID查找對應(yīng)的socket線程, 將消息轉(zhuǎn)交給查找到的目標線程;3c)目標用戶的socket線程將消息 轉(zhuǎn)發(fā)到連接到該socket線程的目標用戶的客戶端的flash插件。
5、 如權(quán)利要求4所述的一種在網(wǎng)頁上實現(xiàn)即時通訊的方法,其特征 在于:其中步驟4)包括如下過程4a)目標用戶的客戶端的flash 插件接受socket服務(wù)器發(fā)來的消息;4b)目標用戶的客戶端的flash 插件通過調(diào)用網(wǎng)頁腳本程序的接口 ,將消息在網(wǎng)頁內(nèi)顯示出來。
6、 如權(quán)利要求l、 2和5所述的一種在網(wǎng)頁上實現(xiàn)即時通訊的方法,其特征在于源用戶調(diào)用客戶端的flash插件的接口將消息發(fā)送 socket服務(wù)器,目標用戶的flash插件調(diào)用該目標用戶客戶端的腳 本程序接口執(zhí)行相應(yīng)的操作;所述flash插件接口是flash插件提供出來的可被腳本程序或者其他 程序調(diào)用的函數(shù)或方法;所述socket服務(wù)器是運行在網(wǎng)站服務(wù)器所 在的主機上的一個應(yīng)用程序;所述腳本程序接口是網(wǎng)頁中javascript或者vbscript腳本程序的方 法或函數(shù);所述腳本程序接口執(zhí)行相應(yīng)的操作是解析消息數(shù)據(jù),生成信息界面。
全文摘要
本發(fā)明名稱是網(wǎng)頁上實現(xiàn)的即時通訊的方法,屬于網(wǎng)絡(luò)技術(shù)領(lǐng)域。采用的技術(shù)方案一種網(wǎng)頁上實現(xiàn)的即時通訊的方法。本發(fā)明提供一種在網(wǎng)頁上實現(xiàn)即時通訊的方法。方法是源用戶登錄網(wǎng)頁,加載flash,flash連接socket服務(wù)器,服務(wù)器為該用戶分配socket線程,并建立永久連接。源用戶將消息數(shù)據(jù)發(fā)送給flash,flash將消息數(shù)據(jù)轉(zhuǎn)發(fā)給socket服務(wù)器,socket服務(wù)器查找連接目標用戶的socket線程,將消息數(shù)據(jù)轉(zhuǎn)發(fā)給目標用戶的socket線程,該目標用戶的socket線程再將消息轉(zhuǎn)發(fā)到目標用戶的flash。目標用戶flash調(diào)用客戶端的腳本程序,將消息在網(wǎng)頁上顯示出來。該方法能使用戶不用下載任何軟件在網(wǎng)頁上就可以實現(xiàn)即時通訊,減少了很多的不便利,即時性很好,適合包括個人電腦在內(nèi)的任何網(wǎng)絡(luò)終端的使用。
文檔編號H04L29/06GK101217554SQ20081005910
公開日2008年7月9日 申請日期2008年1月14日 優(yōu)先權(quán)日2008年1月14日
發(fā)明者張堯森, 胡加林 申請人:張堯森;胡加林