專利名稱:處理通信的通信處理器和計算機的制作方法
技術領域:
本發(fā)明涉及計算機通信領域。更具體地,本發(fā)明涉及篩選聊天請求。
背景技術:
許多不同類型的計算系統(tǒng)在全世界已獲得了廣泛應用。這些計算系統(tǒng)包括個人計算機、服務器、大型機以及多種獨立和嵌入式的計算設備。存在有分散的客戶-服務器系統(tǒng),其中應用程序和信息遍布于許多個人計算機網(wǎng)絡、大型機和小型機中。在由網(wǎng)絡連接的分布式系統(tǒng)中,用戶可訪問許多應用程序、數(shù)據(jù)庫、網(wǎng)絡系統(tǒng)、操作系統(tǒng)和大型機應用程序。計算機為個人和企業(yè)提供了包括字處理、電子表格和會計在內的大量軟件應用的駐留。進一步地,網(wǎng)絡使不同地點的人們之間通過電子郵件、網(wǎng)站、即時消息以及網(wǎng)絡會議能夠高速通信。
高性能、單片微處理機的通用結構是精簡指令集計算機(RISC)結構,其以快速執(zhí)行的頻繁使用的指令的小簡化集為特征。因此,在RISC體系結構中,復雜的指令包括非??焖俚匕床襟E執(zhí)行的簡單指令的小集合。這些步驟在適合于執(zhí)行特定的簡單指令的執(zhí)行單元中執(zhí)行。在超標量體系結構中,這些執(zhí)行單元通常包括并行操作的加載/存儲單元、整數(shù)運算/邏輯單元、浮點運算/邏輯單元,以及圖形邏輯單元。在處理器體系結構中,操作系統(tǒng)控制處理器及處理器外部的部件的操作。可執(zhí)行應用程序被存儲在計算機的硬盤驅動器中。響應用戶輸入,計算機的處理器使應用程序運行。
一個這樣的應用是管理即時消息、聊天會話以及電子會議的客戶端??蛻舳耸强梢栽谟嬎銠C的處理器中執(zhí)行的軟件。一個出色的例子是IBM Lotus Sametime客戶端。一個不太廣泛的例子是AOL即時消息(AIM)服務。Sametime是使連接在網(wǎng)絡中的多個用戶之間能夠實時通信的通信處理軟件。網(wǎng)絡可以是因特網(wǎng),或內部網(wǎng),或兩者的組合。諸如Sametime客戶端的通信處理器的特性包括監(jiān)視其他用戶的狀態(tài)的能力。用戶可打開顯示人們以及其狀態(tài)的列表的窗口。狀態(tài)可包括活動、非活動、離開、請勿打擾等等。用戶可指定其狀態(tài)為例如請勿打擾。同樣,可以顯示人們的不同的列表。例如,用戶可將人們編成組,并且每次顯示僅僅一個所選擇的組的每個成員的狀態(tài)。
Sametime以及具有類似功能的程序實現(xiàn)了即時消息。用戶點擊即時消息圖標,然后窗口出現(xiàn),允許用戶選擇接受者來接收即時消息。用戶在為此所提供的窗口中的空白中鍵入其消息,然后點擊發(fā)送按鈕發(fā)送即時消息。消息被立即送給接受者。消息在接受者的計算機監(jiān)視器顯示屏上所顯示的窗口中出現(xiàn)。接受者可立即鍵入回答,并且將其發(fā)送回發(fā)起通信的用戶處。諸如Sametime的更先進的即時消息軟件使消息發(fā)出者能夠將音頻與視頻插入到消息中。
用戶也可點擊聊天圖標。窗口出現(xiàn),從而允許用戶選擇或輸入將被邀請聊天的人們的名字。然后,當用戶或聊天被邀請者發(fā)送消息時,消息被發(fā)給被邀請到聊天的其他的每個人。窗口出現(xiàn),其示出了提供到聊天的每個人的消息的按時間順序排列的記錄。窗口還示出了聊天的被邀請者以及其狀態(tài)。用戶可選擇忽略圖標,來忽略特定被邀請者的評論。
當繁忙的用戶接收太多信息時,問題產(chǎn)生了。例如,繁忙的用戶可被其計算機屏幕上不斷突然出現(xiàn)的即時消息從其工作中打斷出來。一個選擇是設置全局勿打擾狀態(tài),以使在后臺中仍接收消息,但不打斷工作。因為即時消息組的一些成員有比別人更重要的消息,并且用戶可能想立即接收這些重要的消息,所以這不能解決問題。另一個選擇是僅從其消息被認為有高優(yōu)先級的組或網(wǎng)絡的那些成員接收消息。就來自一些成員的緊急動作消息不被及時接收來說,這不能解決問題。
因此,需要克服現(xiàn)有技術的缺陷的成員消息篩選處理。
發(fā)明內容
上面所認識到的問題通過篩選成員消息的系統(tǒng)、方法以及介質被大部分地解決了。一個實施例是處理網(wǎng)絡的成員間的即時消息和聊天會話的通信處理器。實施例包括存儲用戶指定的對涉及一個或多個成員和該用戶的并行聊天會話的數(shù)目的限制的存儲器。實施例進一步地包括當并行聊天會話數(shù)目等于或超過用戶指定限制時,存儲來自成員的傳入消息的隊列。當聊天會話結束時,邏輯裝置處理存儲在隊列中的傳入消息。
實施例包括可配置成處理網(wǎng)絡的成員之間的通信的計算機。計算機包括存儲用于處理由計算機接收或要由其發(fā)送的消息的指令,以及存儲接收自一個或多個成員的消息的存儲器。處理器執(zhí)行指令來完成通信處理功能,包括確定并行聊天的數(shù)目是否等于或超過用戶指定的聊天限制。該功能進一步包括當并行聊天的數(shù)目低于用戶指定的聊天限制時,處理新聊天消息。
本發(fā)明的另一個實施例提供一種機器可訪問的介質,其包含當在數(shù)據(jù)處理系統(tǒng)中執(zhí)行時用于使系統(tǒng)執(zhí)行處理接收自網(wǎng)絡的一個或多個成員的聊天消息的一系列操作的指令。該系列操作通常包括在隊列中存儲所接收的聊天消息。該操作進一步包括確定并行聊天的數(shù)目是否等于或超過用戶指定的聊天限制,以及當并行聊天數(shù)目低于用戶指定的聊天限制時,處理來自隊列的新聊天消息。
本發(fā)明的優(yōu)點通過閱讀下面的詳細描述以及通過參考附圖將變得顯而易見,其中,類似參考標記可表明類似單元圖1描述網(wǎng)絡內的數(shù)字系統(tǒng)的實施例;數(shù)字系統(tǒng)內是處理器。
圖2描述了可被配置成處理通信請求的計算機內的處理器的實施例。
圖2A描述了處理通信請求的實施例的方框圖。
圖3描述了接收、存儲以及處理聊天消息的實施例的流程圖。
圖4描述了確定聊天等待時間以及消息的優(yōu)先級的實施例的流程圖。
具體實施例方式
下面詳細描述在附圖所描述的本發(fā)明的示例性實施例。示例性實施例如此詳細以便清楚地傳達本發(fā)明。然而,所提供的詳細度不意欲限制預期的實施例的變化。相反,目的卻是涵蓋屬于如所附權利要求所定義的本發(fā)明的精神和范圍的所有修改、等效方式以及替代方式。以下詳細描述的目的是使本領域普通技術人員易于明白此類實施例。
揭示了在即時消息環(huán)境中篩選成員消息的系統(tǒng)、方法以及介質。在一個實施例中,聊天消息被存儲為隊列中的通信請求。用戶指定的聊天限制確定可并行發(fā)生的聊天的最大數(shù)目。當達到聊天限制時,所接收的另外的請求被放入隊列中,等待被處理。當聊天終止時,從隊列接收下一出隊請求并且處理之。此外,用戶可為通信網(wǎng)絡中的多個成員的每個指定優(yōu)先級。來自具有特別優(yōu)先級的用戶的請求可前進到隊列的隊首,以便立即處理。
圖1示出了根據(jù)本發(fā)明的一個實施例實現(xiàn)的諸如計算機或服務器的數(shù)字系統(tǒng)116。數(shù)字系統(tǒng)116包括處理器100,其可根據(jù)BIOS(基本輸入/輸出系統(tǒng))代碼104以及操作系統(tǒng)(OS)代碼106運行。BIOS以及OS代碼被存儲在存儲器108中。BIOS代碼通常被存儲在只讀存儲器(ROM)上,而OS代碼通常被存儲在計算機系統(tǒng)116的硬盤驅動器上。數(shù)字系統(tǒng)116包括物理上接近處理器100的2級(L2)高速緩存102。存儲器108還存儲由處理器100執(zhí)行的其他程序以及存儲數(shù)據(jù)109。在實施例中,存儲器108存儲通信處理計算機代碼來處理即時消息通信,如此處將被描述的。
處理器100包括片上一級(L1)高速緩存190、取指裝置130、控制電路160以及執(zhí)行單元150。一級高速緩存190接收并存儲接近執(zhí)行時間的指令。取指裝置130從存儲器取指令。執(zhí)行單元150完成由指令要求的操作。執(zhí)行單元150可包括加載/存儲單元、整數(shù)運算/邏輯單元、浮點運算/邏輯單元以及圖形邏輯單元。每個執(zhí)行單元包括用于執(zhí)行由取指裝置130所取的指令的執(zhí)行中的步驟的級段??刂齐娐?60控制取指裝置130以及執(zhí)行單元150??刂齐娐?60還從執(zhí)行單元150接收與控制決策有關的信息。例如,當在執(zhí)行流水線中發(fā)生數(shù)據(jù)高速緩存命中失誤的情況下,通知控制電路160處理停止。
數(shù)字系統(tǒng)116通常還包括未示出的其他部件和子系統(tǒng),例如可信平臺模塊、存儲器控制器、隨機存取存儲器(RAM)、外圍驅動器、系統(tǒng)監(jiān)視器、鍵盤、彩色視頻監(jiān)視器、一個或多個軟盤驅動器、一個或多個諸如固定硬盤驅動器的可拆卸非易失性介質驅動器、CD和DVD驅動器、諸如鼠標的指示設備以及網(wǎng)絡接口適配器等。數(shù)字系統(tǒng)116可包括個人計算機、工作站、服務器、大型計算機、筆記本或便攜式計算機、臺式計算機等。處理器100也可通過輸入/輸出設備110與服務器112通信。服務器112將系統(tǒng)116與其他計算機和服務器114連接。因此,數(shù)字系統(tǒng)116可以在諸如因特網(wǎng)和/或本地內部網(wǎng)的計算機網(wǎng)絡中。進一步地,服務器112可控制訪問包括磁帶驅動器存儲器、硬盤陣列、RAM、ROM等的其他存儲器。
因此,在數(shù)字系統(tǒng)116的一個操作模式中,L2高速緩存102從存儲器108接收預計在處理器100的處理器流水線中處理的數(shù)據(jù)和指令。L2高速緩存102是物理上位置接近處理器100以便達到更快速度的快速存儲器。L2高速緩存從存儲器108接收多個指令線程的指令。此類指令可包括加載和存儲指令、分支指令、運算邏輯指令、浮點指令等。L1高速緩存190位于處理器中,并且包含優(yōu)選從L2高速緩存102接收的數(shù)據(jù)和指令。理論上,隨著將被執(zhí)行的程序指令的時間接近,指令隨其數(shù)據(jù)(如果有)被首先傳遞到L2高速緩存,然后隨著執(zhí)行時間更加接近,傳遞到L1高速緩存。
執(zhí)行單元150執(zhí)行從L1高速緩存190接收的指令。執(zhí)行單元150可包括加載/存儲單元、整數(shù)運算/邏輯單元、浮點運算/邏輯單元以及圖形邏輯單元。每個單元可適合于執(zhí)行特定的指令集。指令可被提交給不同的執(zhí)行單元以便并行執(zhí)行。在一個實施例中,采用兩個執(zhí)行單元來同時執(zhí)行某些指令。由執(zhí)行單元150處理的數(shù)據(jù)可存儲在整數(shù)寄存器堆和浮點寄存器堆(未示出)中,以及可從整數(shù)寄存器堆和浮點寄存器堆(未示出)訪問到。存儲在這些寄存器堆中的數(shù)據(jù)也可來自或被傳送到板上L1高速緩存190或外部高速緩存或存儲器。通過執(zhí)行加載指令,處理器可從諸如L1高速緩存的存儲器加載數(shù)據(jù)到處理器的寄存器。通過執(zhí)行存儲指令,處理器可將數(shù)據(jù)從寄存器存儲到存儲器中。
諸如系統(tǒng)116的計算機內圖1的處理器可執(zhí)行通信處理軟件來與網(wǎng)絡的多個成員通信,每個成員都有具有通信處理軟件的計算機,其通過一個或多個服務器連接在網(wǎng)絡中。服務器促成并且協(xié)調網(wǎng)絡中的計算機之間的通信。每個計算機具有其自己的存儲器,用于存儲其操作系統(tǒng)、BIOS和用于執(zhí)行應用程序的代碼、以及文件和數(shù)據(jù)。計算機的存儲器包括只讀存儲器(ROM)、在DRAM和SRAM中實現(xiàn)的高速緩沖存儲器、硬盤驅動器、CD驅動器和DVD驅動器。服務器還具有其自己的存儲器,并且可控制對諸如磁帶驅動器和硬盤陣列的其他存儲器的訪問。每個計算機可存儲并執(zhí)行其自己的應用程序。諸如數(shù)據(jù)庫的一些應用程序可駐留在服務器中。因此,每個計算機可訪問存儲在服務器內的相同數(shù)據(jù)庫。此外,每個計算機通過服務器可訪問其他存儲器。
因此,用戶可與諸如因特網(wǎng)或內部網(wǎng)或兩者的組合的網(wǎng)絡的大量其他成員通信。每個用戶通過諸如上面所示和描述的計算機進行通信。每個用戶計算機包括用于通信處理的應用軟件。更具體地,多個人是通信網(wǎng)絡的或網(wǎng)絡中的組的“成員”,而每個成員具有在其計算機上的通信處理軟件。在計算機的處理器中執(zhí)行通信處理軟件,以允許用戶監(jiān)視其他成員的狀態(tài)、發(fā)起以及響應即時消息、以及查看和響應在一個或多個聊天會話中輸入的聊天。因此,通信處理軟件動態(tài)地配置計算機處理器來執(zhí)行如此處所描述的通信處理功能。
圖2A示出了計算機網(wǎng)絡2040中的計算機2016內配置成通信處理器2002的處理器的功能方框圖。例如,網(wǎng)絡可以是連接到因特網(wǎng)的企業(yè)內部網(wǎng)。通信處理器2002由諸如將被參考圖2所描述的處理器實現(xiàn),其被動態(tài)地配置成執(zhí)行通信處理軟件指令。
通信處理器2002包括用于接收通信請求的請求隊列2004的存儲器。通信請求是具有包括請求者的屏幕名字和請求者的消息的屬性的即時消息或聊天消息。請求的其他屬性可包括由發(fā)送者指定的請求的優(yōu)先級。請求隊列2004按其從網(wǎng)絡到達的時間先后順序接收這些請求。用于存儲請求的存儲器被配置成先進先出(FIFO)緩沖器,其存儲多達可指定數(shù)目M的請求??杀淮鎯υ谡埱箨犃?004中的請求的數(shù)目M可以是非常大的。
新消息請求如所接收到的被輸入到FIFO隊列中。因此,在一個實施例中,提供請求隊列來存儲通信請求的時間先后順序。請求隊列2004是用戶可通過用戶接口2012來查看的。用戶接口2012包括在計算機監(jiān)視器上的窗口中按接收的順序顯示已發(fā)送消息的人以及其各自消息的能力。在實施例中,用戶可指定他一次可參與的聊天的限制N。所有額外的消息被置于請求隊列2004中,其也可被稱作等待隊列。隊列中有請求的各成員處于等待狀態(tài)。當N個并行的聊天中的一個終止時,可處理隊列中下一出隊請求。尤其是下一出隊請求被顯示給用戶以便其響應。
通信處理器2002還包括請求優(yōu)先級確定器2006。請求優(yōu)先級確定器2006根據(jù)由用戶指定的標準來確定請求的優(yōu)先級。因此,請求優(yōu)先級確定器2006從用戶接口2012接收輸入。例如,用戶可通過鍵盤和鼠標(指向、點擊以及鍵入)輸入網(wǎng)絡的組中的哪些成員具有特別優(yōu)先級或哪些組具有優(yōu)于其他組的優(yōu)先級。例如,如果因為N個聊天的限制已達到,成員將處于等待狀態(tài)中,然而她可被給予特別優(yōu)先級來立即與給予她優(yōu)先級狀態(tài)的用戶通信。或者,被給予優(yōu)先級狀態(tài)的成員將被置于由重排緩沖器2008生成的隊列之首。
因此,通信處理器2002可包括重排緩沖器2008來存儲從請求隊列2004接收的重新排序的請求。每當N個聊天中的一個終止時,系統(tǒng)從重排緩沖器2008中釋放一個針對聊天或即時消息的新請求,從而保持N個并行的聊天。因此,重排緩沖器根據(jù)一個或多個用戶指定的優(yōu)先級,按不同于基于消息到達時間的順序的順序存儲傳入消息。用戶接口2012包括在計算機監(jiān)視器上的窗口中按重排緩沖器2008中存儲的消息的順序顯示已發(fā)送消息的人以及其相應消息的能力。還顯示針對隊列中具有請求的每個成員的用戶指定的優(yōu)先級。
通信處理器2002進一步地包括聊天分析器2010。聊天分析器2010獲取和編制聊天統(tǒng)計數(shù)字。聊天統(tǒng)計數(shù)字包括與多個成員的每個的聊天的平均時間,以及可被傳達給成員的預計等待時間。因此,聊天分析器2010對聊天的持續(xù)時間進行計時。例如,假設用戶Bob與成員Joe平均聊天5分鐘。隨著Bob與Joe聊天,從Bob與Joe之間的平均聊天時間中減去其聊天的時間來產(chǎn)生可被傳達給等待狀態(tài)中的成員的預計剩余等待時間。或者,如果Bob同時與Joe和Fran聊天,則與Joe和Fran的平均聊天時間的平均值可被傳達為預計等待時間??蛇x地,通信處理器2002可執(zhí)行確定預計等待時間的其他算法。
這些統(tǒng)計數(shù)字以及由聊天分析器2010編制的其他統(tǒng)計數(shù)字可通過用戶接口2012查看。聊天分析器2010也可提供輸入給優(yōu)先級確定器2006。因此,聊天分析器2010可指導優(yōu)先級確定器2006根據(jù)一些標準重新排序聊天請求。例如,聊天分析器2010可指導優(yōu)先級確定器2006重新排序來自請求隊列2004的聊天請求,并且將其按與請求者的預計聊天時間的順序放置。因此,那些具有最少預計聊天時間的成員的消息可被首先處理。
圖2示出了處理器200的實施例,如此處所描述的,其可在諸如數(shù)字系統(tǒng)116的數(shù)字系統(tǒng)中被實現(xiàn)來執(zhí)行通信處理軟件。圖2的處理器200被配置成執(zhí)行通信處理器軟件的指令來提供圖2A中所描述的功能。一級指令高速緩存210從處理器外部的存儲器216,例如二級高速緩存接收指令。因此,通信處理軟件作為應用程序可被存儲在存儲器中。通信軟件的各順序指令組可被傳送到L2高速緩存中,而這些指令的子組可被傳送到L1高速緩存中。
取指裝置212維護程序計數(shù)器,并且從L1指令高速緩存210取出通信處理指令。取指裝置212的程序計數(shù)器包括將被執(zhí)行的下一個指令的地址。取指裝置212還執(zhí)行預取操作。因此,取指裝置212與存儲器控制器214通信以發(fā)起從存儲器216到指令高速緩存210的通信處理指令的傳送。高速緩存中從系統(tǒng)存儲器216傳送指令所到的位置通過從系統(tǒng)存儲器地址中獲得的索引來確定。
從系統(tǒng)存儲器216傳送指令序列到指令高速緩存210以實現(xiàn)通信處理功能。例如,指令序列可指示處理器確定要貼(post)給等待與用戶聊天的成員的預計等待時間。另一組指令可指示處理器確定其請求剛被接收的成員是否具有特別優(yōu)先級。而另一組指令可指示處理器處理來自FIFO請求緩沖器的下一出隊請求。
取指裝置取得傳遞到指令高速緩存210的通信處理指令并將其傳遞給指令譯碼器220。指令譯碼器220接收并解碼由取指裝置212所取的指令。指令緩沖器230從指令譯碼器220接收已解碼的指令。指令緩沖器230包括多個指令的存儲位置。指令緩沖器230可重新排序從指令譯碼器220接收的指令的執(zhí)行順序。指令緩沖器230因此包括指令隊列來提供指令被發(fā)送給分配單元240的順序。
分配單元240分配接收自指令緩沖器230的通信處理指令到執(zhí)行單元250。在超標量體系結構中,執(zhí)行單元250可包括加載/存儲單元、整數(shù)運算/邏輯單元、浮點運算/邏輯單元以及圖形邏輯單元,其全部并行操作。分配單元240因此將指令分配給一些或所有執(zhí)行單元來同時執(zhí)行指令。執(zhí)行單元250包括完成在執(zhí)行接收自分配單元240的指令時的步驟的級段。由執(zhí)行單元250處理的數(shù)據(jù)可儲存在未示出的整數(shù)寄存器堆和浮點寄存器堆中,并可從其訪問到。因此,指令被順序地并且并行地執(zhí)行。
圖2示出了具有多個執(zhí)行單元的處理器的第一執(zhí)行單元(XU1)270和第二執(zhí)行單元(XU2)280。每個執(zhí)行單元250的每個級段能夠執(zhí)行不同通信處理指令的執(zhí)行中的步驟。在處理器200的每個操作周期中,指令的執(zhí)行通過執(zhí)行單元250內的處理器流水線進行到下一個級段。本領域技術人員將認識到,處理器“流水線”的級段可包括圖2中未示出的其他級段和電路。
此外,通過多線程處理,多個通信進程可同時運行。例如,通過執(zhí)行不同線程的指令,處理器可對聊天進行計時,同時還確定已從其接收聊天請求的成員的優(yōu)先級。作為另一個例子,通過執(zhí)行不同線程的指令,處理器可確定新請求是否超過聊天限制N,同時還計算與特定成員聊天的預計等待時間。因此,多個指令可被順序并且并行地執(zhí)行以完成通信處理功能。
圖2還示出了執(zhí)行控制處理器200的操作的各種功能的控制電路260。例如,控制電路260內的操作控制器解釋包含于指令中的操作碼(OPCode),并且指引合適的執(zhí)行單元執(zhí)行所指示的操作。此外,控制電路260可包括分支重定向單元,其當分支被確定為已被錯誤預測時重定向取指裝置212。控制電路260可進一步地包括刷新控制器來刷新比錯誤預測的分支指令更新的指令。
分支可起因于執(zhí)行多個通信處理功能。例如,確定成員是否具有特別優(yōu)先級涉及分支指令。如果成員具有特別優(yōu)先級,則按照指令序列將成員請求提升到隊列之首。如果成員不具有特別優(yōu)先級,則執(zhí)行指令序列以將請求放置在隊列的后入位置。確定聊天限制是否已被超過也涉及分支指令。如果沒有超過聊天限制,則執(zhí)行指令序列以接收并處理來自隊列的下一出隊請求。因此通過控制電路260提供了執(zhí)行分支指令的控制邏輯。
如所提到的,通信處理器2002同時執(zhí)行多個處理。圖3示出了由通信處理器2002執(zhí)行的聊天請求處理的實施例的流程圖300。在操作的過程中,用戶的計算機從成員接收即時消息或聊天消息(單元302)。系統(tǒng)確定請求成員的優(yōu)先級狀態(tài)(單元304)。如果成員具有特別優(yōu)先級(單元306),則成員的請求被提升到FIFO請求隊列之首(單元310)。或者,不用等待,請求立即被顯示。如果成員不具有特別優(yōu)先級(單元306),則成員的請求被置于FIFO請求隊列的后入位置(單元308)。
在收到請求的時候,用戶的指定聊天限制N可能被超過或者可能不被超過(單元312)。如果并行聊天的數(shù)目沒有等于或超過自施加的用戶限制,則處理器接收并處理FIFO請求緩沖器中的下一出隊請求(單元314)。并且進程繼續(xù)。然而,如果并行聊天數(shù)目超過限制N,則在沒有處理來自FIFO緩沖器的新請求的情況下,進程繼續(xù)(單元316)。因此,當N個并行的聊天會話發(fā)生時,新請求被置于請求隊列中。每當聊天會話結束時,處理隊列中的下一出隊請求。特別地,顯示請求消息,使用戶能夠響應。
圖4示出了由通信處理器2002執(zhí)行的匯集和處理統(tǒng)計數(shù)字的實施例的流程圖400。系統(tǒng)連續(xù)地對與每個成員的聊天的持續(xù)時間進行計時(單元402)。系統(tǒng)利用該信息確定每個成員的平均聊天持續(xù)時間(單元404)。由該信息,系統(tǒng)確定給定當前聊天會話的當前預計等待時間(單元406)。例如,假設當前與Ted和Sue聊天。則確定與Ted的平均聊天時間和與Sue的平均聊天時間。假定Ted和Sue的平均聊天時間分別為15和7分鐘。
進一步假設,與Ted的當前聊天已進行了5分鐘而與Sue的進行了3分鐘。則與Ted聊天的預計剩余時間為10分鐘,而與Sue的為4分鐘。則系統(tǒng)可確定預計的等待時間為4分鐘。然后預計的等待時間被貼給其請求在請求隊列中的成員(單元408)。更具體地,4分鐘的預計等待時間被貼給其請求處于FIFO隊列中先出位置的成員。然后,進一步假設,與處于先出位置的成員的平均聊天時間為8分鐘。則貼給隊列中第二出隊位置的預計聊天時間將會是12(=4+8)分鐘。如此類推。因此,根據(jù)隊列中請求的順序,等待時間可被連在一起。
本發(fā)明的一些實施例被實現(xiàn)為用于諸如圖1中所示的系統(tǒng)116的計算機系統(tǒng)的程序產(chǎn)品。程序產(chǎn)品可被用于其他計算機系統(tǒng)或處理器上。程序產(chǎn)品的程序定義了實施例(包括此處所描述的方法)的功能,并且可被包含在各種信號承載介質上。說明性的信號承載介質包括但不局限于(i)永久存儲在非可寫的存儲介質(例如計算機內只讀存儲器設備,比如可由光盤驅動器讀取的CD-ROM盤)上的信息;(ii)存儲在可寫的存儲介質(例如,軟盤驅動器內的軟盤或硬盤驅動器)上的可改變信息;以及(iii)由通信介質傳達給計算機的信息,例如,通過計算機或電話網(wǎng),包括無線通信。后一實施例特別地包括從因特網(wǎng)和其他網(wǎng)絡下載的信息。當攜帶指引本發(fā)明的功能的計算機可讀指令時,此類信號承載介質代表本發(fā)明的實施例。
總之,被執(zhí)行來實現(xiàn)本發(fā)明的實施例的程序可以是操作系統(tǒng)的一部分,或特定的應用、部件、程序、模塊、對象或指令序列。本發(fā)明的計算機程序通常由多個指令組成,其將被由本機計算機翻譯成機器可訪問格式,以及因此可執(zhí)行指令。并且,程序由變量和數(shù)據(jù)結構組成,其或在程序本地駐留,或在存儲器中或存儲設備上找到。此外,在下文中所描述的各種程序可基于其在本發(fā)明的特定實施例中實現(xiàn)時所針對的應用來識別。然而,應該理解,隨后的任何特定程序命名僅為了方便起見而被使用,并且因此本發(fā)明不應限于只應用于在由如此命名所識別的和/或暗示的任何特定應用中。
因此,本發(fā)明的另一個實施例提供一種機器可訪問的介質,其包含當在數(shù)據(jù)處理系統(tǒng)中執(zhí)行時用于使系統(tǒng)執(zhí)行處理接收自網(wǎng)絡的一個或多個成員的聊天消息的一系列操作的指令。該系列操作通常包括在隊列中存儲所接收的聊天消息。該操作進一步包括確定并行聊天的數(shù)目是否等于或超過用戶指定的聊天限制,以及當并行聊天數(shù)目低于用戶指定的聊天限制時,處理來自隊列的新聊天消息。操作可進一步包括確定預計聊天持續(xù)時間,將預計聊天持續(xù)時間傳達給網(wǎng)絡中的成員,并且根據(jù)用戶指定的標準確定所接收的聊天消息的優(yōu)先級。
雖然已針對一些實施例對本發(fā)明以及其一些優(yōu)點做了詳細描述,然而應該理解,在沒有背離如所附權利要求所定義的本發(fā)明的精神和范圍的情況下,此處可產(chǎn)生各種變化、替換以及變更。雖然本發(fā)明的實施例可達到多個目的,然而并非屬于所附權利要求范圍內的每個實施例都將達到每個目的。此外,本應用的范圍不意欲受限于說明書中所描述的處理、機器、廠商、事物的構成、手段、方法以及步驟的具體實施例。因為本領域一名普通技術人員從本發(fā)明的揭示、處理、機器、廠商、事物的構成、手段、方法或步驟將容易地理解,根據(jù)本發(fā)明,可利用當前存在的或以后將被開發(fā)的與此處所描述的相應實施例基本上完成相同功能或基本上達到相同結果的方式。因此,所附權利要求意圖在其范圍內包括此類處理、機器、廠商、事物構成、手段、方法或步驟。
權利要求
1.一種處理網(wǎng)絡的成員間的即時消息和聊天會話的通信處理器,包括存儲器,用于存儲用戶指定的對涉及一個或多個成員和該用戶的并行聊天會話的數(shù)目的限制;隊列,當并行聊天會話的數(shù)目等于或超過用戶指定限制時,用于存儲來自額外成員的傳入消息;以及邏輯裝置,當所述并行聊天會話中的聊天會話結束時,用于處理存儲在所述隊列中的傳入消息中的一個。
2.根據(jù)權利要求1的通信處理器,進一步地包括對聊天會話的持續(xù)時間進行計時的聊天分析器。
3.根據(jù)權利要求2的通信處理器,其中聊天分析器包括確定預計等待時間以將該預計等待時間告知其傳入消息處于隊列中的一個或多個額外成員的邏輯。
4.根據(jù)權利要求1的通信處理器,進一步地包括重排緩沖器,其根據(jù)一個或多個用戶指定的優(yōu)先級,以不同于基于傳入消息到達時間的順序的順序存儲傳入消息。
5.根據(jù)權利要求1的通信處理器,進一步地包括優(yōu)先級確定器,其根據(jù)分配給網(wǎng)絡的一個或多個成員的優(yōu)先級,重排傳入消息。
6.一種可配置成處理網(wǎng)絡的成員間通信的計算機;包括存儲器,用于存儲用于處理由計算機接收或要由其發(fā)送的消息的指令,以及存儲接收自一個或多個成員的消息;以及處理器,用于執(zhí)行指令以完成通信處理功能,包括確定并行聊天的數(shù)目是否等于或超過用戶指定的聊天限制;以及當并行聊天數(shù)目低于用戶指定的聊天限制時,處理新聊天消息。
7.根據(jù)權利要求6的計算機,進一步地包括顯示已經(jīng)從其接收聊天消息并且該聊天消息正等待處理的成員的隊列的接口。
8.根據(jù)權利要求6的計算機,其中該處理器適合于執(zhí)行通信處理功能,包括將優(yōu)先級分配給一個或多個成員的組,并且在先前所接收的來自非該組的成員的消息之前,處理來自組的成員的消息。
9.根據(jù)權利要求6的計算機,其中處理器適合于執(zhí)行包括對一個或多個聊天的持續(xù)時間進行計時的通信處理功能。
10.根據(jù)權利要求6的計算機,其中處理器適合于執(zhí)行包括確定預計聊天時間的通信處理功能。
11.根據(jù)權利要求10的計算機,其中處理器適合于執(zhí)行包括發(fā)送已確定的預計聊天時間給處于等待狀態(tài)中的成員的通信處理功能。
12.根據(jù)權利要求6的計算機,其中消息首先按照接收順序被存儲在配置為先進先出緩沖器的存儲器中。
13.根據(jù)權利要求12的計算機,其中消息接著在存儲器中按優(yōu)先級順序存儲。
14.一種處理接收自網(wǎng)絡的一個或多個成員的聊天消息的方法,包括在隊列中存儲所接收的聊天消息;確定并行聊天的數(shù)目是否等于或超過用戶指定的聊天限制;以及當并行聊天數(shù)目低于用戶指定的聊天限制時,處理來自隊列的新聊天消息。
15.根據(jù)權利要求14的方法,其中操作進一步包括確定至少一個預計聊天持續(xù)時間。
16.根據(jù)權利要求15的方法,其中操作進一步包括將該至少一個預計聊天持續(xù)時間傳達給網(wǎng)絡中的成員。
17.根據(jù)權利要求14的方法,其中操作進一步包括根據(jù)用戶指定的標準,確定所接收的聊天消息的優(yōu)先級。
18.根據(jù)權利要求17的方法,其中操作進一步包括根據(jù)其優(yōu)先級,分組所接收的聊天消息。
19.根據(jù)權利要求14的方法,其中操作進一步包括顯示其消息處于隊列中的成員的列表。
20.根據(jù)權利要求19的方法,其中顯示器顯示出消息在隊列中等待的順序。
全文摘要
公開了處理通信的通信處理器和計算機。揭示了在即時消息環(huán)境中篩選成員消息的系統(tǒng)、方法以及介質。在一個實施例中,聊天消息被存儲為隊列中的通信請求。用戶指定的聊天限制確定可并行的聊天的最大數(shù)目。當聊天限制達到時,所接收的另外的請求被放入隊列中,等待被處理。當聊天終止時,從隊列接收下一出隊請求并且處理之。此外,用戶可指定通信網(wǎng)絡中的多個成員的每個的優(yōu)先級。來自具有特別優(yōu)先級的用戶的請求可前進到隊列之首,將被立即處理。
文檔編號H04L12/58GK1976333SQ20061014467
公開日2007年6月6日 申請日期2006年11月14日 優(yōu)先權日2005年11月15日
發(fā)明者維克托斯·博斯提斯 申請人:國際商業(yè)機器公司