專利名稱:用于動(dòng)態(tài)確定目標(biāo)的即時(shí)消息傳遞的方法
技術(shù)領(lǐng)域:
本發(fā)明一般地涉及即時(shí)消息傳遞(instant messaging)系統(tǒng)和方法。
背景技術(shù):
作為一種企業(yè)生產(chǎn)率解決方案,即時(shí)消息傳遞的重要性不斷地提升。新的能力和功能被不斷地加到已有的構(gòu)成了即時(shí)消息傳遞的基礎(chǔ)的一對(duì)一的消息交換和在場(chǎng)信息(presence information)。這些能力包括分組聊天、音頻和視頻消息、協(xié)作工具以及文件傳輸。
雖然已經(jīng)進(jìn)行了大量的工作擴(kuò)展即時(shí)消息傳遞系統(tǒng)的功能,但是現(xiàn)有可用于利用這些系統(tǒng)的粒度級(jí)別仍然大得驚人。即時(shí)消息傳遞軟件一般提供了與另一個(gè)人通信、與由用戶明確地挑選出的一小組人通信、以及在某些時(shí)候與預(yù)先確定的一大組人通信的能力。沒有方法可以自動(dòng)地將符合某個(gè)標(biāo)準(zhǔn)的人作為一個(gè)消息(或聊天邀請(qǐng)、音頻片段或文件傳輸)的目標(biāo)。因此,本技術(shù)領(lǐng)域中所需要的是一種自動(dòng)地將滿足所選擇的標(biāo)準(zhǔn)的個(gè)人或聽眾作為消息的目標(biāo)的方法。
發(fā)明內(nèi)容
此處公開的通信系統(tǒng)和方法克服或緩解了現(xiàn)有技術(shù)的上面所討論的以及其它的缺點(diǎn)和不足。此處在一個(gè)示例性實(shí)施例中公開的是一種用于在網(wǎng)絡(luò)通信系統(tǒng)中進(jìn)行即時(shí)消息傳遞的方法,包括為一個(gè)接受者制定一個(gè)組合消息,該組合消息包括一代碼和一通信消息;并且將所述代碼和組合消息中的至少一個(gè)傳輸給接收者。在另一示例性實(shí)施例中該方法還包括執(zhí)行代碼以建立下列各項(xiàng)中的至少一個(gè)基于所述代碼修改與接收者相關(guān)聯(lián)的一持續(xù)狀態(tài)以便指示是否應(yīng)該傳送所選擇的通信消息,并且傳送所述通信消息;以及建立所述代碼,作為用于評(píng)估是否應(yīng)當(dāng)傳送所選擇的通信消息的判定(predicate);返回一個(gè)指示該判定的函數(shù)值;以及如果該函數(shù)值指明應(yīng)該傳送該通信消息,則傳輸該通信消息。
此處在另一示例性實(shí)施例中公開的是一種用于即時(shí)消息傳遞的網(wǎng)絡(luò)通信系統(tǒng),包括一客戶機(jī)-服務(wù)器網(wǎng)絡(luò)系統(tǒng),其具有與客戶機(jī)和服務(wù)器通信的服務(wù)器,和一個(gè)用于在該客戶機(jī)和該服務(wù)器之間通信的網(wǎng)絡(luò),該服務(wù)器和該客戶機(jī)中的每一個(gè)作為組合消息的發(fā)送者或接收者中的至少一方而運(yùn)行;其中所述組合消息包括代碼和通信消息;并且其中發(fā)送者將所述代碼和所述組合消息中的至少一個(gè)傳輸給接收者。
此處在另一示例性實(shí)施例中公開的是一種上述的網(wǎng)絡(luò)通信系統(tǒng),其還包括執(zhí)行代碼以建立下述各項(xiàng)中的至少一個(gè)基于所述代碼修改與接收者相關(guān)聯(lián)的一持續(xù)狀態(tài)以便指示是否應(yīng)該傳送所選擇的通信消息,并且傳送所述通信消息;以及建立所述代碼作為用于評(píng)估是否應(yīng)當(dāng)傳送所選擇的通信消息的判定;返回一個(gè)指示該判定的函數(shù)值;并且如果該函數(shù)值指明應(yīng)該傳送該通信消息,則傳送該通信消息。
此處在另一示例性實(shí)施例中公開的是一種存儲(chǔ)介質(zhì),其上編碼有機(jī)器可讀的計(jì)算機(jī)程序代碼,所述代碼包括用于使得計(jì)算機(jī)執(zhí)行上述的用于在網(wǎng)絡(luò)通信系統(tǒng)中進(jìn)行即時(shí)消息傳遞的方法的指令。
在此處的另一示例性實(shí)施例中還公開了一種計(jì)算機(jī)數(shù)據(jù)信號(hào),所述數(shù)據(jù)信號(hào)包括被配置為使得控制器執(zhí)行上述的用于在網(wǎng)絡(luò)通信系統(tǒng)中進(jìn)行即時(shí)消息傳遞的方法的代碼。
通過參考附圖并閱讀對(duì)示例性實(shí)施例的詳細(xì)說明,可以最好地理解本發(fā)明的這些和其它的目的和優(yōu)點(diǎn),各個(gè)附圖中同樣的元素被標(biāo)以同樣的數(shù)字,其中圖1是示出了根據(jù)一個(gè)示例性實(shí)施例的客戶機(jī)服務(wù)器網(wǎng)絡(luò)通信系統(tǒng)的圖示;并且圖2是示出了根據(jù)本發(fā)明的一個(gè)示例性實(shí)施例在一個(gè)發(fā)送者和幾個(gè)接收者間的消息通信的部分圖示。
通過示例并結(jié)合附圖,下面的詳細(xì)說明解釋了本發(fā)明的優(yōu)選實(shí)施例以及本發(fā)明的優(yōu)點(diǎn)和特征。
具體實(shí)施例方式
如前面說明的,現(xiàn)有可用于利用即時(shí)消息傳遞系統(tǒng)的粒度級(jí)別現(xiàn)在仍然是較大的。即時(shí)消息傳遞軟件一般提供了與另一個(gè)人通信、與由用戶明確地挑選出的一小組人通信、以及在某些時(shí)候與預(yù)先確定的一大組人通信的能力。在此處的一示例性實(shí)施例中公開的是一種便利于自動(dòng)地將滿足選定標(biāo)準(zhǔn)的個(gè)人或聽眾作為消息的目標(biāo)的方法和系統(tǒng)。
現(xiàn)在參考圖1,其示出了根據(jù)本發(fā)明的一個(gè)示例性實(shí)施例的一種即時(shí)消息傳遞網(wǎng)絡(luò)系統(tǒng)10。即時(shí)消息傳遞系統(tǒng)包括,但是并不限于,服務(wù)器系統(tǒng)12以及各客戶機(jī)14,所述服務(wù)器系統(tǒng)12和各客戶機(jī)14通過各種通信裝置(例如網(wǎng)絡(luò))互連,以便利在客戶機(jī)14和服務(wù)器12之間以及客戶機(jī)14和客戶機(jī)14之間進(jìn)行信息傳輸。所述即時(shí)消息傳遞系統(tǒng)可用于各種通信,包括但并不限于,即時(shí)消息傳遞、電子郵件、數(shù)據(jù)、聲音和圖像傳輸、因特網(wǎng)服務(wù)等等,以及包括上述至少一種的組合。每個(gè)客戶機(jī)系統(tǒng)14可以是一通用臺(tái)式計(jì)算機(jī),其注冊(cè)于一網(wǎng)絡(luò)通信系統(tǒng),例如因特網(wǎng)服務(wù)提供商、電子郵件系統(tǒng)等,并且包括有駐留在存儲(chǔ)器中并且在客戶機(jī)系統(tǒng)14上執(zhí)行的操作系統(tǒng)軟件和任何其它適當(dāng)?shù)某绦?。本領(lǐng)域的技術(shù)人員將會(huì)理解,即時(shí)消息傳遞網(wǎng)絡(luò)系統(tǒng)10可以在具有各種不同體系結(jié)構(gòu)的計(jì)算機(jī)系統(tǒng)上執(zhí)行。客戶機(jī)系統(tǒng)14通過諸如因特網(wǎng)、內(nèi)部網(wǎng)、LAN、WAN或任何其它合適的聯(lián)網(wǎng)體系結(jié)構(gòu)的裝置等網(wǎng)絡(luò)連接與主機(jī)系統(tǒng)通信,所述主機(jī)系統(tǒng)也可以是服務(wù)器系統(tǒng)12。
服務(wù)器系統(tǒng)12是指為諸如客戶機(jī)系統(tǒng)14的計(jì)算機(jī)客戶端提供內(nèi)容的源。例如,服務(wù)器12可以由一個(gè)為其客戶維護(hù)一web站點(diǎn)的商業(yè)企業(yè)運(yùn)行。另一個(gè)服務(wù)器12可以是一企業(yè)服務(wù)器或者第三方主機(jī)服務(wù)器,該第三方主機(jī)服務(wù)器為將他們的內(nèi)容管理外包給該第三方主機(jī)服務(wù)器的企業(yè)、個(gè)人或者組織管理大量的數(shù)據(jù)。雖然只示出了一個(gè)服務(wù)器,但是應(yīng)當(dāng)理解可以使用任意數(shù)目的服務(wù)器12和客戶機(jī)14,以實(shí)現(xiàn)所說明的實(shí)施例的優(yōu)點(diǎn)。
在一個(gè)實(shí)施例中,服務(wù)器執(zhí)行一即時(shí)消息傳遞系統(tǒng)10,并且允許客戶機(jī)系統(tǒng)14訪問其此處進(jìn)一步說明的各種特征和功能。在另一個(gè)實(shí)施例中,客戶機(jī)14與服務(wù)器12共享即時(shí)消息傳遞系統(tǒng)10的執(zhí)行。
現(xiàn)在再參考圖2,在一個(gè)示例性實(shí)施例中,在即時(shí)消息傳遞系統(tǒng)10中使用基于客戶機(jī)的判定(或其它代碼)和變量解決上面提及的粒度問題?;诳蛻魴C(jī)的判定和變量提供了允許消息24的發(fā)送者20僅面向滿足或最好地滿足選定標(biāo)準(zhǔn)的那些接收者30的優(yōu)點(diǎn)。有利地,這種方法避免了迫使消息發(fā)送者20或是將潛在的聽眾接收者的超集作為目標(biāo),或是手動(dòng)地建立接收者30列表。更一般地,此處公開的一示例性實(shí)施例允許消息的發(fā)起者或發(fā)送者20發(fā)送任意代碼22(也表示為c)或者變量26(也表示為v),以及即時(shí)消息24(也表示為m)。代碼22或變量26可用于修改接收者30的即時(shí)消息傳遞軟件中的持續(xù)狀態(tài),或是作為一個(gè)判定以便確定是否應(yīng)當(dāng)將消息顯示給接收者或是將其丟棄。
應(yīng)當(dāng)理解當(dāng)在本章節(jié)中使用術(shù)語“消息”24時(shí),其含義是暗示著在即時(shí)消息傳遞系統(tǒng)10上發(fā)送的任何通信,包括,但并不限于,一對(duì)一消息、分組聊天邀請(qǐng)、音頻、視頻和文件傳輸?shù)?。即時(shí)消息傳遞可以被模型化為從發(fā)送者或發(fā)起者s 20到一個(gè)或多個(gè)接收者30(也表示為R)的消息24(也表示為m)的單向通信。此外,在一示例性實(shí)施例中,一任意代碼22(也表示為c)被連接到消息24上以傳輸給接收者30。在所選擇的例子中,代碼22可以被用作用于傳送消息24的判定。在其他例子中,代碼22可以被用于操控接收者30的狀態(tài)或狀態(tài)數(shù)據(jù)。此外,在另一示例性實(shí)施例中,使用了狀態(tài)變量26(也表示為v)來跟蹤接收者30的狀態(tài)。
在一示例性實(shí)施例中,使用了兩種類型的代碼22。第一種代碼22被配置為讀取并修改由接收者30存儲(chǔ)的持續(xù)狀態(tài)。在這個(gè)例子中,當(dāng)消息24和代碼22到達(dá)接收者30時(shí),接收者30的客戶端軟件所執(zhí)行的事件的順序是1)執(zhí)行代碼22(以獲得它的改變狀態(tài)的副作用)2)向接收者30傳送消息24。
可以在一示例性實(shí)施例中使用的另一種類型的代碼22是判定代碼22。判定代碼22是執(zhí)行于接收者30的機(jī)器上并且作為該操作的一函數(shù)返回一布爾值28任意的代碼22,所述布爾值指示著是否應(yīng)當(dāng)將消息24傳送給特定的接收者30。在這個(gè)例子中,當(dāng)消息24和代碼22到達(dá)接收者30的機(jī)器時(shí),其中的客戶端軟件執(zhí)行以下操作1)基于判定代碼22執(zhí)行。
2)返回函數(shù)的值28,該值也代表著代碼22執(zhí)行結(jié)果的指示。
3)評(píng)估函數(shù)的值,如果值為真,則向接收者30傳遞消息24;否則丟棄消息24。
應(yīng)當(dāng)理解,可以將單個(gè)消息24與狀態(tài)改變代碼和判定代碼22兩者一起發(fā)送。還應(yīng)當(dāng)理解一種實(shí)現(xiàn)可以自由地以任何方式提供這種判定代碼22,只要所述任何方式實(shí)施了這樣的整體語義,即,如果滿足了代碼26的判定,則應(yīng)當(dāng)將消息24傳送給接收者30。因此,例如,如果消息24是大的(諸如視頻片段),則可以首先發(fā)送并評(píng)估判定代碼26,從而僅在獲得對(duì)判定代碼22的肯定的響應(yīng)時(shí)才發(fā)送消息24。
通過示例可以清楚地了解諸示例性實(shí)施例的一個(gè)或多個(gè)特征和益處。在一例子中,通過一大型世界性公司的即時(shí)消息傳遞系統(tǒng)發(fā)送病毒警告的網(wǎng)絡(luò)管理員可以使用此處說明的一示例性實(shí)施例。管理員不能簡(jiǎn)單地將該消息發(fā)送一次,因?yàn)槟切╇x線的雇員將會(huì)收不到該消息。因此管理員可能決定在全天內(nèi)發(fā)送4次,以試圖訪問到所有的雇員。在沒有所說明的實(shí)施例的優(yōu)點(diǎn)時(shí),許多用戶將多次收到相同的消息。這種冗余的消息傳遞是低效率的并且?guī)砗艽蟮穆闊?。使用此處說明的方法,消息將與狀態(tài)改變和/或判定代碼一起發(fā)送。在一例子中,狀態(tài)改變代碼可以簡(jiǎn)單地設(shè)置一個(gè)由V表示的值,它指示著已經(jīng)傳遞該消息。伴隨著以后的消息的判定代碼檢查值V是否已經(jīng)被設(shè)置了,并且如果是的則丟棄該消息。因此,如果當(dāng)該消息首輪發(fā)送時(shí)一用戶處于離線狀態(tài),則將不設(shè)置值V。在第二輪中,假設(shè)現(xiàn)在該用戶在線,由于值V還沒有設(shè)置,所以傳送該消息,并且狀態(tài)改變代碼設(shè)置值V。如果在第三次或第四次發(fā)送該病毒警告時(shí)該用戶在線,則他將看不到該消息,因?yàn)榕卸ùa將檢測(cè)到值V的存在并且丟棄該消息。
其它的示例性實(shí)施例可以包括涉及直接、定向的廣告(例如,基于安裝在接收者的/用戶的計(jì)算機(jī)上的軟件)、軟件建議(例如,如果判定代碼檢測(cè)到用戶的機(jī)器上沒有安裝防火墻軟件則提醒安裝該軟件)、以及電子郵件提醒(例如,通過運(yùn)行判定代碼檢查用戶電子郵件收信箱的“最后訪問日期”)的應(yīng)用。
在另一示例性實(shí)施例中,可以使用一個(gè)或多個(gè)狀態(tài)變量26來跟蹤接收者30的狀態(tài)的各個(gè)方面。此外,可以基于發(fā)送者20將狀態(tài)變量26定義在名稱空間內(nèi)(以避免多個(gè)發(fā)送者20相互影響各自在各個(gè)接收者的機(jī)器上的狀態(tài)變量26)。例如,在一示例性實(shí)施例中,變量26可以由幾個(gè)參數(shù)表征或者是幾個(gè)參數(shù)的函數(shù)。這些參數(shù)可以包括,但不限于,狀態(tài)變量(v,r,s),其中v是狀態(tài)變量的名稱,r是將變量v 26施用在其上的接收者30,并且s是發(fā)送者20,該發(fā)送者20控制狀態(tài)變量v 26的行為并基于狀態(tài)變量26判定要發(fā)送到接收者30的消息24。
在一示例性實(shí)施例中,可以如下的方式建立并更新值(v,r,s)●發(fā)送者20可以將狀態(tài)變量26設(shè)置或更新為嚴(yán)格意義上的值(例如,狀態(tài)變量(v,r,s)=false);●發(fā)送者20可以運(yùn)行選定的代碼或過程,以便為狀態(tài)變量(v,r,s)26計(jì)算值(例如,狀態(tài)變量(v,r,s)26為發(fā)現(xiàn)安裝在接收者系統(tǒng)上的所選擇的軟件的版本);并且●發(fā)送者20可以選定的時(shí)間間隔運(yùn)行選定的代碼以便計(jì)算和更新狀態(tài)變量(v,r,s)26的值(例如,狀態(tài)變量(v,r,s)為每4小時(shí)采樣的平均內(nèi)存使用率)。
應(yīng)當(dāng)理解在一個(gè)實(shí)施例中期望狀態(tài)變量26存儲(chǔ)在接收者30的系統(tǒng)內(nèi)。在另一個(gè)實(shí)施例中,應(yīng)當(dāng)理解服務(wù)器12可以存儲(chǔ)狀態(tài)變量(v,r,s)26。在這個(gè)例子中,只有查詢接收者30系統(tǒng)的狀態(tài)的代碼22(判定或狀態(tài)變量26更新)才在接收者的機(jī)器上執(zhí)行,然后可以將結(jié)果返回給服務(wù)器12。
這種另一個(gè)實(shí)施例提供了明顯的優(yōu)點(diǎn),包括但不限于●如果被判定的消息24(例如,帶有僅取決于現(xiàn)存的狀態(tài)變量26的判定代碼22的消息)要被發(fā)送給許多接收者30,則只需要向服務(wù)器12發(fā)送一次消息24服務(wù)器12可以隨后施用所述(多個(gè))判定,并且將消息24的多個(gè)拷貝僅發(fā)送到滿足判定代碼22的接收者30。有利地,這種方法減少了消息流量并且因此節(jié)省了帶寬。
●在服務(wù)器12上存儲(chǔ)狀態(tài)變量26便利了利用所述狀態(tài)變量26而不管特定的接收者30正使用哪個(gè)客戶端14計(jì)算機(jī)。
●可以為在服務(wù)器12上維護(hù)的狀態(tài)變量26提供增強(qiáng)的私密性和防篡改的能力。
應(yīng)當(dāng)理解,所公開的實(shí)施例可能產(chǎn)生與安全考慮有關(guān)的幾個(gè)方面。最主要的擔(dān)心是客戶端14的(多個(gè))機(jī)器上的代碼的執(zhí)行。因此,為了維持標(biāo)準(zhǔn)的安全協(xié)議,應(yīng)使用一種安全機(jī)制以確保代碼的執(zhí)行不是破壞性的或危及敏感數(shù)據(jù)的安全。雖然此處沒有討論安全技術(shù),但是可以使用幾種現(xiàn)有的技術(shù)來提供足夠的安全性,以便便利于使用所公開的實(shí)施例。例如,客戶端代碼可以被局限在易于被制約/約束的環(huán)境(例如,一種腳本語言)中,從而可以設(shè)置并隨后監(jiān)視允許所述代碼進(jìn)行的操作,以便防止未授權(quán)代碼的執(zhí)行。另一個(gè)安全機(jī)制可以是通過證書和數(shù)字簽名來確保發(fā)送者的真實(shí)可靠。
為了執(zhí)行規(guī)定的功能和所希望的處理以及用于所述功能和處理的計(jì)算(例如,便利于在各個(gè)服務(wù)器12和客戶機(jī)14之間進(jìn)行即時(shí)消息傳遞等),(多個(gè))服務(wù)器12和/或(多個(gè))客戶機(jī)可以包括一計(jì)算機(jī)系統(tǒng),該計(jì)算機(jī)系統(tǒng)包括中央處理單元(CPU)、監(jiān)視器、存儲(chǔ)設(shè)備等。所述計(jì)算機(jī)系統(tǒng)可以包括,但不限于,(多個(gè))處理器、(多個(gè))計(jì)算機(jī)、存儲(chǔ)器、存儲(chǔ)設(shè)備、(多個(gè))寄存器、時(shí)序、(多個(gè))中斷、(多個(gè))通信接口、以及輸入/輸出信號(hào)接口等,以及包括上述至少一種的組合。例如,計(jì)算機(jī)系統(tǒng)可以包括用于控制此處描述的通信交換的信號(hào)輸入/輸出。計(jì)算機(jī)系統(tǒng)的其它特征和其中某些過程可能在本文的各處公開。
在整個(gè)即時(shí)消息傳遞系統(tǒng)10中執(zhí)行的處理可以各種方式進(jìn)行分布。例如,可以將執(zhí)行的處理分布在服務(wù)器12或客戶機(jī)14內(nèi)以及所使用的其它處理器間。通過組合在各個(gè)計(jì)算機(jī)系統(tǒng)內(nèi)分布的過程,這種分布可以消除對(duì)所說明的任何這種組件或過程的需要,反之亦然。這里描述的每個(gè)元件可以具有將在此處更詳細(xì)地說明的其它功能,并且還包括輔助于所公開的實(shí)施例的功能和處理。如此處所使用的,信號(hào)連接可以物理地采用任何能夠傳輸信號(hào)的形式,包括,但不限于,電的、光的或無線電的。
所公開的發(fā)明可以體現(xiàn)為計(jì)算機(jī)、控制器或處理器執(zhí)行的過程以及用于實(shí)現(xiàn)這些過程的裝置的形式。本發(fā)明還可以體現(xiàn)為計(jì)算機(jī)程序代碼的形式,所述計(jì)算機(jī)程序代碼包括體現(xiàn)在有形介質(zhì)16,諸如軟盤、CD-ROM、硬盤驅(qū)動(dòng)器或任何其它計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的指令,其中當(dāng)計(jì)算機(jī)、控制器或處理器12、14裝入所述計(jì)算機(jī)程序代碼并執(zhí)行它時(shí),所述計(jì)算機(jī)、控制器或處理器12、14就成為實(shí)現(xiàn)本發(fā)明的裝置。本發(fā)明還可以體現(xiàn)為作為數(shù)據(jù)信號(hào)17的計(jì)算機(jī)程序代碼的形式,所述數(shù)據(jù)信號(hào)例如或是存儲(chǔ)在存儲(chǔ)介質(zhì)中,由計(jì)算機(jī)、控制器或處理器12、14裝入并/或執(zhí)行,或通過某種傳輸介質(zhì)諸如通過電線連線或電纜連線、通過光纖或通過電磁輻射被傳輸,其中當(dāng)計(jì)算機(jī)12、14裝入并執(zhí)行所述計(jì)算機(jī)程序代碼時(shí),計(jì)算機(jī)12、14就成為實(shí)現(xiàn)本發(fā)明的裝置。當(dāng)在通用處理器上執(zhí)行時(shí),計(jì)算機(jī)程序代碼段配置該處理器以創(chuàng)建特定的邏輯電路。
應(yīng)當(dāng)理解,第一、第二或其它用于表示類似項(xiàng)的類似用語的使用并不旨在指定或暗示任何特定的順序,除非另有說明。
雖然已經(jīng)參考了一示例性實(shí)施例說明了本發(fā)明,但是本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解在不脫離本發(fā)明的范圍的情況下可以做出各種改變,并且可以用各種等同物替代其中的元件。此外,可以做出很多修改以使特定的情況或材料適應(yīng)本發(fā)明的講述,而不脫離本發(fā)明的基本范圍。因此,本發(fā)明并不旨在限制在作為被構(gòu)思用于實(shí)施本發(fā)明的最佳模式而公開的特定的實(shí)施例,而是本發(fā)明將包括落在所附權(quán)利要求的范圍內(nèi)的所有實(shí)施例。
權(quán)利要求
1.一種用于即時(shí)消息傳遞的網(wǎng)絡(luò)通信系統(tǒng),包括客戶機(jī)-服務(wù)器網(wǎng)絡(luò)系統(tǒng),其具有與客戶機(jī)和服務(wù)器通信的服務(wù)器以及用于在它們之間通信的網(wǎng)絡(luò),每個(gè)所述服務(wù)器和所述客戶機(jī)作為組合消息的發(fā)送者和接收者中的至少一方而運(yùn)行;其中所述組合消息包括代碼和通信消息;以及其中所述發(fā)送者將所述代碼和所述組合消息中的至少一個(gè)發(fā)送給所述接收者。
2.如權(quán)利要求1的網(wǎng)絡(luò)通信系統(tǒng),還包括執(zhí)行所述代碼以建立以下各項(xiàng)中的至少一個(gè)基于所述代碼修改與所述接收者相關(guān)聯(lián)的持續(xù)狀態(tài),以指示是否應(yīng)該傳送所選定的通信消息,并且傳送所述通信消息;以及建立所述代碼,作為用于評(píng)估是否應(yīng)傳送所選擇的通信消息的判定;返回可指示該判定的一個(gè)函數(shù)值;并且如果所述函數(shù)值指示應(yīng)該傳送所述通信消息,則傳輸所述通信消息。
3.如權(quán)利要求1的網(wǎng)絡(luò)通信系統(tǒng),還包括與所述接收者相關(guān)聯(lián)的狀態(tài)變量。
4.如權(quán)利要求3的網(wǎng)絡(luò)通信系統(tǒng),其中所述狀態(tài)變量相應(yīng)于所述接收者的狀態(tài)的一個(gè)或多個(gè)方面。
5.如權(quán)利要求4的網(wǎng)絡(luò)通信系統(tǒng),其中所述狀態(tài)變量基于消息的選定的發(fā)送者定義在名稱空間中。
6.如權(quán)利要求3的網(wǎng)絡(luò)通信系統(tǒng),其中所述狀態(tài)變量包括一個(gè)函數(shù)和一個(gè)或多個(gè)參數(shù)這兩者中的至少一個(gè)。
7.如權(quán)利要求3的網(wǎng)絡(luò)通信系統(tǒng),其中所述參數(shù)包括狀態(tài)變量名稱、發(fā)送者、接收者中的至少一個(gè)。
8.如權(quán)利要求3的網(wǎng)絡(luò)通信系統(tǒng),其中所述狀態(tài)變量至少被進(jìn)行如下一種操作由發(fā)送者修改、由在所述接收者處運(yùn)行的所選定的代碼確定、以及由在所述接收者處運(yùn)行的所選定的代碼更新。
9.如權(quán)利要求3的網(wǎng)絡(luò)通信系統(tǒng),還包括在與接收者分離的服務(wù)器上存儲(chǔ)狀態(tài)變量。
10.如權(quán)利要求1的網(wǎng)絡(luò)通信系統(tǒng),其中所述代碼評(píng)估所述接收者的狀態(tài)。
11.如權(quán)利要求10的網(wǎng)絡(luò)通信系統(tǒng),其中所述接收者的所述狀態(tài)包括是否以前已經(jīng)接收過消息。
12.如權(quán)利要求1的網(wǎng)絡(luò)通信系統(tǒng),還包括在接收者處建立一種安全機(jī)制,以便確保被傳輸給接收者并在接收者處執(zhí)行的代碼不是入侵性的。
13.一種用于在網(wǎng)絡(luò)通信系統(tǒng)中進(jìn)行即時(shí)消息傳遞的方法,包括為接收者制定組合消息,所述組合消息包括代碼和通信消息;以及向接收者發(fā)送所述代碼和所述組合消息中的至少一個(gè)。
14.如權(quán)利要求13的方法,還包括執(zhí)行所述代碼建立以下各項(xiàng)中的至少一個(gè)基于所述代碼修改與所述接收者相關(guān)聯(lián)的持續(xù)狀態(tài),以指示是否應(yīng)該傳送所選定的通信消息,并且傳送所述通信消息;以及建立所述代碼,作為用于評(píng)估是否應(yīng)傳送所選擇的通信消息的判定;返回可指示該判定的一個(gè)函數(shù)值;以及如果所述函數(shù)值指示應(yīng)該傳送所述通信消息,則傳輸所述通信消息。
15.如權(quán)利要求13的方法,還包括建立與所述接收者相關(guān)聯(lián)的狀態(tài)變量。
16.如權(quán)利要求15的方法,其中所述狀態(tài)變量相應(yīng)于所述接收者的狀態(tài)的一個(gè)或多個(gè)方面。
17.如權(quán)利要求15的方法,其中所述狀態(tài)變量基于消息的選定的發(fā)送者定義在名稱空間中。
18.如權(quán)利要求15的方法,其中所述狀態(tài)變量包括一個(gè)函數(shù)和一個(gè)或多個(gè)參數(shù)這兩者中的至少一個(gè)。
19.如權(quán)利要求15的方法,其中所述參數(shù)包括狀態(tài)變量名稱、發(fā)送者、接收者中的至少一個(gè)。
20.如權(quán)利要求15的方法,其中所述狀態(tài)變量至少被進(jìn)行如下操作中的一種由發(fā)送者修改、由在所述接收者處運(yùn)行的所選擇的代碼確定、以及由在所述接收者處運(yùn)行的選定的代碼更新。
21.如權(quán)利要求15的方法,還包括在與接收者分離的服務(wù)器上存儲(chǔ)狀態(tài)變量。
22.如權(quán)利要求13的方法,其中所述代碼評(píng)估所述接收者的狀態(tài)。
23.如權(quán)利要求22的方法,其中所述接收者的所述狀態(tài)包括是否以前已經(jīng)接收過消息。
24.如權(quán)利要求13的方法,還包括在接收者處建立一種安全機(jī)制,以確保被傳輸給接收者并在接收者處執(zhí)行的代碼不是入侵性的。
25.一種編碼有機(jī)器可讀的計(jì)算機(jī)程序代碼的存儲(chǔ)介質(zhì),所述代碼包括用于使得計(jì)算機(jī)執(zhí)行用于在網(wǎng)絡(luò)通信系統(tǒng)中進(jìn)行即時(shí)消息傳遞的方法的指令,所述方法包括為接收者制定組合消息,所述組合消息包括代碼和通信消息;以及向接收者發(fā)送所述代碼和所述組合的消息中的至少一個(gè)。
26.如權(quán)利要求25的存儲(chǔ)介質(zhì),還包括這樣的代碼,所述代碼包括用于使得計(jì)算機(jī)執(zhí)行用于在網(wǎng)絡(luò)通信系統(tǒng)中進(jìn)行即時(shí)消息傳遞的方法的指令,所述方法還包括執(zhí)行所述代碼以建立以下各項(xiàng)中的至少一個(gè)基于所述代碼修改與所述接收者相關(guān)聯(lián)的持續(xù)狀態(tài),以指示是否應(yīng)該傳送所選定的通信消息,并且傳送所述通信消息;以及建立所述代碼,作為用于評(píng)估是否應(yīng)傳送所選擇的通信消息的判定;返回可指示該判定的一個(gè)函數(shù)值;以及如果所述函數(shù)值指示應(yīng)該傳送所述通信消息,則傳輸所述系統(tǒng)消息。
27.一種計(jì)算機(jī)數(shù)據(jù)信號(hào),所述數(shù)據(jù)信號(hào)包括被配置為使得控制器執(zhí)行用于在網(wǎng)絡(luò)通信系統(tǒng)中進(jìn)行即時(shí)消息傳遞的方法的代碼,所述方法包括為接收者制定組合消息,所述組合消息包括代碼和通信消息;以及向接收者發(fā)送所述代碼和所述組合的消息中的至少一個(gè)。
28.計(jì)算機(jī)數(shù)據(jù)信號(hào),所述數(shù)據(jù)信號(hào)還包括被配置為使得控制器執(zhí)行用于在網(wǎng)絡(luò)系統(tǒng)中進(jìn)行即時(shí)消息傳遞的方法的代碼,所述方法還包括執(zhí)行所述代碼以建立以下各項(xiàng)中的至少一個(gè)基于所述代碼修改與所述接收者相關(guān)聯(lián)的持續(xù)狀態(tài),以指示是否應(yīng)該傳送所選定的通信消息,并且傳送所述通信消息;以及建立所述代碼,作為用于評(píng)估是否應(yīng)傳送所選擇的通信消息的判定;返回可指示該判定的一個(gè)函數(shù)值;以及如果所述函數(shù)值指示應(yīng)該傳送所述通信消息,則傳輸所述系統(tǒng)消息。
全文摘要
一種用于即時(shí)消息傳遞的網(wǎng)絡(luò)通信系統(tǒng),包括具有與客戶機(jī)和服務(wù)器通信的服務(wù)器以及用于在它們之間進(jìn)行通信的網(wǎng)絡(luò)的客戶機(jī)-服務(wù)器系統(tǒng),每個(gè)所述服務(wù)器和所述客戶機(jī)作為組合消息的發(fā)送者和接收者中的至少一方而運(yùn)行;其中組合消息包括代碼和通信消息;并且其中發(fā)送者向接收者發(fā)送所述代碼和通信消息中的至少一個(gè)。一種用于在網(wǎng)絡(luò)通信系統(tǒng)中發(fā)送即時(shí)消息的方法,包括為接收者制定組合消息,所述組合消息包括代碼和通信消息;并且向接收者發(fā)送所述代碼和所述組合消息中的至少一個(gè)。
文檔編號(hào)G06Q10/00GK1625162SQ20041009094
公開日2005年6月8日 申請(qǐng)日期2004年11月10日 優(yōu)先權(quán)日2003年12月1日
發(fā)明者J·A·阿爾沃諾斯, L·費(fèi)根鮑姆 申請(qǐng)人:國際商業(yè)機(jī)器公司