專利名稱:增強的呼叫追蹤的制作方法
技術(shù)領(lǐng)域:
本發(fā)明總體涉及通信,具體涉及呼叫追蹤。
背景技術(shù):
會話發(fā)起協(xié)議(Session Initiation Protocol, SIP)是用于建立多種實時通信 會話的開放信令協(xié)議??衫肧IP建立的通信會話的類型的示例包括語音、視頻和/或即 時消息。這些通信會話可在諸如個人計算機、膝上型計算機、個人數(shù)字助理之類的任何類型 的通信設(shè)備上進行。SIP的一個關(guān)鍵特征是其能夠使用末端用戶的記錄地址(Address of Record, A0R)作為所有通信的單個統(tǒng)一公共地址。從而,在SIP增強通信的世界中,用戶的 AOR成為了其單一地址,該地址將該用戶鏈接到與該用戶相關(guān)聯(lián)的所有通信設(shè)備。利用此 A0R,主叫者可以聯(lián)絡(luò)到用戶的任何一個也被稱為用戶代理(User Agent, UA)的通信設(shè)備, 而無需知道每個唯一設(shè)備地址或電話號碼。傳統(tǒng)通信系統(tǒng)中的呼叫追蹤是相對容易的,因為通信期間傳送的消息大多數(shù)是與 該通信相關(guān)的(例如,是承載著內(nèi)容的消息)。然而,當使用SIP時,來自特定端點或IP地 址的許多消息對于該呼叫是無用的。例如,SIP利用許多不是內(nèi)容承載消息并因此對于呼 叫追蹤目的而言不一定需要的消息。從而,對于SIP環(huán)境中的智能呼叫追蹤,目前沒有解決方案。傳統(tǒng)的呼叫追蹤解決方案應(yīng)用單個過濾器,用于識別經(jīng)歷呼叫追蹤機制的所關(guān)注 呼叫。過濾器標準通常包括發(fā)起者標識符和目標標識符。例如,呼叫追蹤過濾器標準可以 指示出對于從IP地址“A”到IP地址“B”以及從IP地址“B”到IP地址“A”的任何呼叫應(yīng) 當發(fā)生呼叫追蹤。在SIP環(huán)境中使用這些傳統(tǒng)機制的問題在于這些簡單的過濾標準可能觸 發(fā)對相對不重要或不想要的SIP消息的呼叫追蹤,從而不必要地占用呼叫追蹤資源和呼叫 記錄資源。
發(fā)明內(nèi)容
因此,本發(fā)明的一個方面是提供一種尤其適用于SIP環(huán)境中的智能呼叫追蹤機 制。本發(fā)明的實施例提出了一種用于通信會話追蹤的多級過濾器。初始過濾器標準可以類 似于現(xiàn)有技術(shù)的過濾器標準,因為它是以主叫者和/或被叫者為中心的。例如,初始過濾器 標準可以指示出,對于從地址“A”到地址“B”或從域“X”到域“Y”的呼叫,應(yīng)當發(fā)生通信會 話追蹤。當發(fā)現(xiàn)第一消息滿足初始過濾器標準時,模塊針對諸如呼叫ID和標簽信息之類的 某些類型的呼叫參數(shù)或特性分析第一消息。呼叫ID和標簽信息隨后被用于形成第二級過 濾器標準。該第二級過濾器標準被用于對任何隨后傳送的可能滿足也可能不一定滿足初始 過濾器標準的消息進行過濾。這種系統(tǒng)配置提供的一個益處在于,初始標準對于與其建立的呼叫對話有關(guān)的消 息可能不成立。一旦對話被建立,SIP就“變更”一些消息字段。如果初始過濾器依賴于這 些字段,則初始“觸發(fā)”過濾器將會錯過這些消息。本發(fā)明的一個方面是捕捉由初始過濾器匹配的初始消息所創(chuàng)建的對話。為此,本發(fā)明的實施例動態(tài)地/算法地生成第二級“對話” 或“呼叫”過濾器,以捕捉對話內(nèi)消息。對話或呼叫過濾器將在對話期滿時期滿,或者在過 濾器限定的無活動超時發(fā)生時或者在超過終端消息計數(shù)閾值時期滿。后一種消息計數(shù)閾值可以依第二級“對話”過濾器的個體實例而定,或者它可以依 觸發(fā)過濾器或其產(chǎn)生的對話過濾器而定,或者它可以是普適于追蹤應(yīng)用的??梢詫嵤﹣碜?此層次體系的任何組合的限度閾值。初始過濾器標準可以保持活動,使得其他對話可以被同時或順序地追蹤。初始過 濾器標準不需要支持或維持基于情境的第二級過濾器,然而可能仍存在一剩余消息限度計 數(shù)器,該計數(shù)器是在其產(chǎn)生的第二級過濾器之間共享的。另外,在第二級過濾器標準被創(chuàng)建之后,該過濾器標準可在初始過濾器標準被應(yīng) 用之前被應(yīng)用。這使得與對話有關(guān)的被丟棄消息可被包括在呼叫追蹤標準(第二級)中, 從而使得被丟棄的對話可以被完全追蹤。這是有用的,因為惡意呼叫經(jīng)常包含遭到破壞并 且被通信服務(wù)器拋棄的消息。觸發(fā)和呼叫過濾器都可被應(yīng)用到被丟棄的消息,從而使得能 夠捕捉和分析完整惡意呼叫消息序列。從而,本發(fā)明的另一個方面是使得被丟棄的消息可 以聯(lián)系與第二級過濾器相關(guān)聯(lián)的追蹤過濾器被記錄,而不依賴于也滿足初始過濾器標準的 消息。本領(lǐng)域的技術(shù)人員應(yīng)當明白,本發(fā)明的實施例并不限于呼叫,而是可以用在任何 類型的通信會話中。自適應(yīng)性的情境式追蹤可以擴展到涉及通信會話的任何用途。例如, 基于會話的文本消息傳遞或安保相機流傳輸可涉及應(yīng)用用戶代理對會話/對話的建立,這 就可以利用此自適應(yīng)性技術(shù)來追蹤。根據(jù)本發(fā)明的至少一些實施例,提供了一種方法,其一般地包括接收后續(xù)消息;向第二消息應(yīng)用第二級過濾器標準以判定第二消息是否要經(jīng)歷預(yù)定處理,其中第 二級過濾器標準是由于預(yù)先分析第一消息的屬性并且判定第一消息要經(jīng)歷預(yù)定處理而形 成的;判定第二消息滿足第二級過濾器標準;以及使第二消息經(jīng)歷預(yù)定處理。這里使用的術(shù)語“事務(wù)”指的是通過可選的中間代理在兩個端點之間交換信息。這 通常是通過交換多種有關(guān)消息來實現(xiàn)的,這些消息中的一些不是端到端的。這里使用的術(shù)語“對話”或“會話”被理解為指的是通過事務(wù)建立的并且可選地通 過事務(wù)更新和/或終止的通信情境。對話可以可選地由于無活動(沒有事務(wù))而通過超時 來終止。這里使用的術(shù)語“初始事務(wù)”指的是建立對話的事務(wù)。這里使用的術(shù)語“更新事務(wù)”指的是與該對話相關(guān)聯(lián)的對話中事務(wù),其既不建立也 不終止對話。這里使用的術(shù)語“獨立事務(wù)”指的是不與對話相關(guān)聯(lián)并且既不建立也不終止對話 的事務(wù)。這里使用的術(shù)語“終止事務(wù)”指的是終止對話的事務(wù)。術(shù)語“觸發(fā)過濾器”和/或“初始過濾器”可以互換使用,指的是第一應(yīng)用過濾器或第一組過濾器規(guī)則。這種過濾器包含被應(yīng)用到初始事務(wù)或獨立事務(wù)中的一些或全部消息 的內(nèi)容的屬性。如果利用觸發(fā)過濾器或初始過濾器匹配成功,那么觸發(fā)消息將被追蹤,其后 是相關(guān)聯(lián)的事務(wù)中的所有其他消息。如果對話被建立,那么與更新和終止事務(wù)相關(guān)聯(lián)的所 有消息將被對話過濾器所追蹤。術(shù)語“對話過濾器”、“呼叫過濾器”和/或“第二級過濾器”也可互換使用,指的是 由觸發(fā)過濾器邏輯創(chuàng)建來對與對話相關(guān)聯(lián)的所有消息進行過濾的任何類型的過濾器。對話 過濾器的匹配屬性包括以下各項的任何組合1)從匹配的一個或多個消息取得的屬性;2) 從觸發(fā)過濾器拷貝的屬性,這些屬性可能已經(jīng)也可能未曾被該過濾器應(yīng)用在初始事務(wù)中匹 配初始的一個或多個消息,3)從外部源計算的屬性,例如時間或日期等等,以及4)從1)、 2)、3)和4)的組合計算的屬性。此外,如果觸發(fā)過濾器不能匹配初始事務(wù)的剩余消息的話, 則對話過濾器可以匹配初始事務(wù)的剩余消息。這里使用的術(shù)語“計算機可讀介質(zhì)”指的是參與向處理器提供指令以供執(zhí)行的任 何有形的存儲和/或傳送介質(zhì)。這種介質(zhì)可以采取許多形式,包括但不限于非易失性介質(zhì)、 易失性介質(zhì)以及傳送介質(zhì)。非易失性介質(zhì)例如包括NVRAM或者磁盤或光盤。易失性介質(zhì)包 括動態(tài)存儲器,比如主存儲器。計算機可讀介質(zhì)的常見形式例如包括軟盤、柔性盤、硬盤、磁 帶或任何其他磁介質(zhì)、磁光介質(zhì)、CD-ROM、任何其他光介質(zhì)、穿孔卡、紙帶、任何其他具有孔 圖案的物理介質(zhì)、RAM、PROM、EPROM、FLASH-EPR0M、固態(tài)介質(zhì)(比如存儲卡)、任何其他存儲 芯片或卡盤、如下所述的載波、或者任何其他可被計算機讀取的介質(zhì)。附加到電子郵件的數(shù) 字文件或者其他獨立的信息檔案或檔案集合被認為是等同于有形存儲介質(zhì)的分發(fā)介質(zhì)。當 計算機可讀介質(zhì)被配置為數(shù)據(jù)庫時,應(yīng)理解數(shù)據(jù)庫可以是任何類型的數(shù)據(jù)庫,例如關(guān)系型、 層次型、面向?qū)ο笮偷鹊取亩?,本發(fā)明被認為包括其中可存儲本發(fā)明的軟件實現(xiàn)形式的有 形存儲介質(zhì)或分發(fā)介質(zhì)以及現(xiàn)有技術(shù)認識到的等同物或后續(xù)的介質(zhì)。這里使用的術(shù)語“判定”、“計算”及其變體可互換使用并且包括任何類型的方法、 處理、數(shù)學運算或技術(shù)。這里使用的術(shù)語“模塊”、“代理”或“工具”指的是任何已知的或?qū)黹_發(fā)的能夠執(zhí) 行與該元件相關(guān)聯(lián)的功能的硬件、軟件、固件、人工智能、模糊邏輯或者硬件和軟件的組合。 另外,雖然是按示例性實施例來描述本發(fā)明的,但應(yīng)當明白,本發(fā)明的各個方面可以被分別 請求保護。以上是對本發(fā)明的實施例的簡要總結(jié),以幫助理解本發(fā)明的一些方面。此總結(jié)不 是對本發(fā)明及其各種實施例的廣泛且無遺漏的概述。它既非想要確定本發(fā)明的關(guān)鍵或必要 要素,亦非想要限定本發(fā)明的范圍,而只是以簡化形式給出所選擇的本發(fā)明的思想,作為對 以下給出的更詳細描述的介紹。將會明白,單獨或組合利用以上闡述的或以下詳細描述的 特征中的一個或多個,本發(fā)明的其他實施例是可能實現(xiàn)的。
圖1是示出根據(jù)本發(fā)明的至少一些實施例的通信系統(tǒng)的框圖;圖2是示出根據(jù)本發(fā)明的至少一些實施例使用的數(shù)據(jù)結(jié)構(gòu)的框圖;并且圖3是示出根據(jù)本發(fā)明的至少一些實施例的處理消息的方法的流程圖。
具體實施例方式下面將結(jié)合示例性通信系統(tǒng)來說明本發(fā)明。雖然本發(fā)明非常適合于結(jié)合例如使用 (一個或多個)服務(wù)器和/或(一個或多個)數(shù)據(jù)庫的系統(tǒng)使用,但是本發(fā)明并不限于結(jié)合 任何特定類型的通信系統(tǒng)或系統(tǒng)元件配置使用。本領(lǐng)域的技術(shù)人員將會認識到,所公開的 技術(shù)可以用在任何希望追蹤呼叫或者調(diào)用類似應(yīng)用的通信應(yīng)用中。還將聯(lián)系分析軟件、模塊和相關(guān)聯(lián)的分析硬件來描述本發(fā)明的示例性系統(tǒng)和方 法。然而,為了避免不必要地模糊本發(fā)明,以下描述省略了可以以框圖形式示出的、公知的 或者以其他方式總結(jié)的公知結(jié)構(gòu)、組件和設(shè)備。出于說明目的,闡述了許多細節(jié)以幫助透徹理解本發(fā)明。然而,應(yīng)當明白,本發(fā)明 可以以超出這里闡述的具體細節(jié)的多種方式來實現(xiàn)。首先參考圖1,將根據(jù)本發(fā)明的至少一些實施例來描述示例性通信系統(tǒng)100。更具 體而言,通信系統(tǒng)100包括適于將一個或多個通信設(shè)備108與應(yīng)用服務(wù)器112互連的通信 網(wǎng)絡(luò)104。受信任的通信網(wǎng)絡(luò)104可以是任何類型的已知通信介質(zhì)或通信介質(zhì)的集合,并且 可以使用任何類型的協(xié)議來在端點之間傳輸消息。通信網(wǎng)絡(luò)104還可包括有線和/或無線 通信技術(shù)。因特網(wǎng)是通信網(wǎng)絡(luò)104的示例,其構(gòu)成由位于世界各地的許多計算機和其他通 信設(shè)備組成的IP網(wǎng)絡(luò),這些計算機和其他通信設(shè)備通過許多電話系統(tǒng)和其他手段相連接。 通信網(wǎng)絡(luò)104的其他示例包括但不限于標準簡易老式電話系統(tǒng)(POTS)、綜合業(yè)務(wù)數(shù)字網(wǎng)絡(luò) (ISDN)、公共交換電話網(wǎng)絡(luò)(PSTN)、局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)、會話發(fā)起協(xié)議(SIP)網(wǎng)絡(luò)、 任何類型的企業(yè)網(wǎng)絡(luò)以及本領(lǐng)域已知的任何其他類型的分組交換或電路交換網(wǎng)絡(luò)。通信設(shè)備108可以是任何類型的已知的通信或處理設(shè)備,例如個人計算機、膝上 型計算機、個人數(shù)字助理(PDA)、蜂窩電話、智能電話、電話、模擬電話、DCP電話或其組合。 單個通信設(shè)備108可以由單個用戶控制或與單個用戶相關(guān)聯(lián),或者可以適于供許多用戶使 用(例如,企業(yè)通信設(shè)備,其使任何企業(yè)用戶可在給出有效用戶名和口令后利用該通信設(shè)通信設(shè)備108中的兩個或更多個可與同一用戶相關(guān)聯(lián)。換言之,兩個通信設(shè)備108 可屬于單個用戶并且可以對應(yīng)于不同類型的通信設(shè)備。作為一個示例,用戶可擁有四個通 信設(shè)備108,其中每一個分別對應(yīng)于單個用戶的個人電話、工作電話、個人計算機以及電子 郵件取回設(shè)備。或者,每個通信設(shè)備108可由一不同的用戶所擁有和操作(例如與一不同 的用戶相關(guān)聯(lián))。一般地,通信設(shè)備108可適于支持與其他通信設(shè)備108之間的視頻、音頻、文本和 /或數(shù)據(jù)通信。一個通信設(shè)備108用來與另一通信設(shè)備108通信的介質(zhì)的類型可取決于在 一個或兩個通信設(shè)備108上可用的通信應(yīng)用。應(yīng)用服務(wù)器112適于向通信設(shè)備108提供應(yīng)用和功能,尤其是在與其他通信設(shè)備 108之間的通信會話期間。根據(jù)本發(fā)明的至少一些實施例,應(yīng)用服務(wù)器112上存儲的一個或 多個應(yīng)用可包括用于向SIP呼叫或SIP通信會話提供特征和功能的SIP應(yīng)用。這種特征和 功能可通過對作為通信會話的一部分的一個或多個消息進行處理來提供??纱鎯υ趹?yīng)用服 務(wù)器112上的應(yīng)用的一個示例包括呼叫追蹤應(yīng)用116,其在被處理器執(zhí)行時適于對由應(yīng)用 服務(wù)器112接收到的消息執(zhí)行呼叫追蹤功能。
根據(jù)本發(fā)明的至少一些實施例,呼叫追蹤應(yīng)用116提供與呼叫追蹤相關(guān)聯(lián)的特定 的一個功能或一組功能,例如消息識別、記錄和存儲。呼叫追蹤應(yīng)用116可包括一個或多個 模塊128,用于幫助應(yīng)用116執(zhí)行這種任務(wù)。根據(jù)本發(fā)明的至少一些實施例,呼叫追蹤應(yīng)用116還可包括兩組不同的過濾器標 準。第一組過濾器標準可對應(yīng)于用于識別通信會話中可經(jīng)歷呼叫追蹤處理的第一消息的觸 發(fā)過濾器標準120。第二組過濾器標準可對應(yīng)于對話或呼叫過濾器標準124。第二級過濾 器標準124可被形成來更準確且智能地判定在通信會話(尤其是既使用內(nèi)容承載消息又使 用非內(nèi)容承載消息的通信會話)中傳送的消息是否應(yīng)當經(jīng)歷呼叫追蹤處理。根據(jù)本發(fā)明的至少一些實施例,對話或呼叫過濾器標準124是由于預(yù)先分析第一 消息的屬性并且判定第一消息要經(jīng)歷呼叫追蹤處理而形成的。換言之,呼叫追蹤應(yīng)用116 可適于在通信會話期間接收消息,判定來自通信會話的消息中的一個或多個滿足觸發(fā)過濾 器標準120,并且通過調(diào)用追蹤模塊128來使該消息經(jīng)歷呼叫追蹤處理。另外,滿足觸發(fā)過 濾器標準120的消息可被追蹤模塊128或呼叫追蹤應(yīng)用116中的某個其他模塊所分析,以 確定對話或呼叫過濾器標準124。作為示例,追蹤模塊128針對諸如呼叫ID和標簽信息之 類的某些類型的呼叫參數(shù)或特性,對滿足觸發(fā)過濾器標準120的消息進行分析。呼叫ID (其 可以就是包括呼叫開始時間以及主叫者和/或被叫者的組合的標識符,或者可以是利用呼 叫開始時間、主叫者、被叫者中的一個或多個產(chǎn)生的散列函數(shù),或者可以是隨機分配的呼叫 標識符)以及標簽信息(其可以作為標簽被存儲在一個或多個消息頭部中)隨后被用于形 成對話或呼叫過濾器標準124。應(yīng)當注意,在SIP中,一標簽與主叫者相關(guān)聯(lián),并且一不同的標簽與被叫者相關(guān) 聯(lián)。這些標簽應(yīng)被認為是應(yīng)用標識符(在端點處可能有不止一個應(yīng)用,因此在那里可能有 不止一個標簽)。標簽在SIP中是必需的,但在其他協(xié)議中可能不存在。建立會話的只不過 是從初始消息收集的一組信息中的成分。該信息被用于提供依協(xié)議而定的過濾器以捕捉會 話。在SIP的情況下,在所有會話中都將有標簽,包括參與者可能會沒有興趣追蹤的最多達 2051090個標簽。這種標簽被忽略。該對話或呼叫過濾器標準124被用于過濾任何隨后傳送的消息,這些消息可能滿 足也可能不一定滿足觸發(fā)過濾器標準120。因此,如果初始觸發(fā)被禁用,那么滿足觸發(fā)過濾 器標準120的一些消息如果不滿足對話或呼叫過濾器標準124則將不被追蹤。這僅在初始 “觸發(fā)”過濾器被禁用的情況下才成立。這有助于將呼叫追蹤限于相關(guān)消息并且保留通信 會話追蹤資源(例如,處理器、存儲器等等)以便僅在希望和相關(guān)時才使用。然而,如果初 始觸發(fā)過濾器標準繼續(xù)被啟用,則新的對話或呼叫過濾器124將被產(chǎn)生。正如本領(lǐng)域的技 術(shù)人員將會明白的,呼叫追蹤的結(jié)果可被存儲在應(yīng)用服務(wù)器112本身或者諸如企業(yè)數(shù)據(jù)庫 132之類的遠程數(shù)據(jù)庫中。企業(yè)數(shù)據(jù)庫132還可包括與用戶(不一定限于企業(yè)用戶)及其 通信歷史有關(guān)的信息?,F(xiàn)在參考圖2,將根據(jù)本發(fā)明的至少一些實施例來描述示例性數(shù)據(jù)結(jié)構(gòu)200。數(shù)據(jù) 結(jié)構(gòu)200可包括若干個字段,用于存儲與執(zhí)行呼叫追蹤處理相關(guān)的信息。從而,數(shù)據(jù)結(jié)構(gòu) 200可被存儲在應(yīng)用服務(wù)器112上和/或企業(yè)數(shù)據(jù)庫132中。數(shù)據(jù)結(jié)構(gòu)200還可包括與執(zhí) 行呼叫追蹤處理的結(jié)果有關(guān)的信息或者指向存儲所記錄內(nèi)容的存儲單元的指針。更具體而 言,數(shù)據(jù)結(jié)構(gòu)200可包括呼叫屬性字段204、觸發(fā)追蹤過濾器標準字段208、對話或呼叫追蹤過濾器標準字段212、有關(guān)通信字段216以及過濾器終止信息字段220。呼叫屬性字段204可包含與呼叫或通信會話的屬性有關(guān)的信息??赏ㄟ^對滿足了 初始過濾器標準120的消息進行分析來填充呼叫屬性字段204。作為示例,呼叫屬性字段 204可包括通信會話的參與者的標識信息以及標簽標識符,該標簽標識符可被與隨后傳送 的消息的標簽相比較,以判定這些消息是否要被應(yīng)用呼叫追蹤處理。觸發(fā)追蹤過濾器標準字段208可包括觸發(fā)過濾器標準120,觸發(fā)過濾器標準120例 如定義了要被應(yīng)用呼叫追蹤處理的參與者或通信設(shè)備(通常利用通信設(shè)備標識符或端口 地址)。觸發(fā)追蹤過濾器標準字段208中的信息通常用于首先判定通信會話是否要被應(yīng)用 呼叫追蹤處理。另一方面,對話或呼叫追蹤過濾器標準字段212具有下述信息,該信息用于隨后 判定滿足觸發(fā)過濾器標準120的通信會話中的消息是否應(yīng)當被應(yīng)用呼叫追蹤處理。從而, 對話或呼叫追蹤過濾器標準字段212可包括對話或呼叫過濾器標準124以及用于判定通信 會話(其也可被稱為對話)是否需要被應(yīng)用觸發(fā)過濾器標準120的其他相關(guān)信息。其他通信字段216可包括標識出各種通信會話之間的關(guān)系的信息。例如,如果呼 叫被丟棄并隨后在相同參與者之間重新發(fā)起,則被丟棄的呼叫與隨后的呼叫有關(guān)這一事實 可被維護在其他通信字段216中。當兩個呼叫彼此有關(guān)時(多方會議就經(jīng)常是這種情況), 這尤其有用。過濾器終止信息字段220可包括用于判定第二級過濾器標準124何時要被拋棄和 /或不再被使用的數(shù)據(jù)。更具體而言,一旦通信會話正被追蹤模塊128追蹤,那么繼續(xù)追蹤 整個通信會話一般是有利的。在此情況下,第二級過濾器標準124可在該通信會話結(jié)束之 后被拋棄或忽略?;蛘撸谕ㄐ艜捊Y(jié)束之后的預(yù)定量的時間期間維持第二級過濾器標準 124,可能是有利的,尤其對于應(yīng)對丟棄呼叫的情形更是如此。在此實施例中,過濾器終止信 息字段220可以限定,在所追蹤的通信會話結(jié)束之后的預(yù)定量的時間(例如,5分鐘、10分 鐘、一天等等)期間應(yīng)當應(yīng)用第二級過濾器標準124。還應(yīng)明白,過濾器終止信息字段220 可以限定,在通信會話開始之后的預(yù)定量的時間期間,應(yīng)當應(yīng)用第二級過濾器標準124。使 終止信息基于通信會話的開始可能有益也可能沒有益,這取決于呼叫追蹤處理的預(yù)期應(yīng)用 和用途,尤其因為通信會話在第二級過濾器標準124被丟棄之前可能沒有結(jié)束。當然,如果 通信會話在第二級過濾器標準124已終止之后繼續(xù),則可以通過根據(jù)初始過濾器標準120 分析通信會話的另一消息以重填充呼叫屬性字段204,來重制定或重創(chuàng)建第二級過濾器標 準 124?,F(xiàn)在參考圖3,將根據(jù)本發(fā)明的至少一些實施例來描述消息處理的示例性方法。該 方法是當在應(yīng)用服務(wù)器112處接收到消息時發(fā)起的(步驟304)。隨后基于現(xiàn)有的對話或呼 叫過濾器標準124分析所接收的消息(步驟308),以判定該消息是否應(yīng)當經(jīng)歷呼叫追蹤處 理(步驟312)。更具體而言,如果該消息是被追蹤模塊128追蹤的通信會話或?qū)υ挼囊徊?分,那么對話或呼叫過濾器標準124可以限定,該對話的某些呼叫應(yīng)當被追蹤模塊128所處 理。如上所述,對話或呼叫過濾器標準124可基于先前接收到的、作為與當前接收到的消息 相同的對話的一部分的消息的特性來生成。如果判定呼叫的屬性匹配對話或呼叫過濾器標準124并且該消息要經(jīng)歷呼叫追 蹤,那么該方法通過調(diào)用呼叫追蹤模塊128而繼續(xù)(步驟316)。如果該消息不滿足對話或呼叫過濾器標準124,則該方法通過判定消息是否是先前分析過的對話的一部分而繼續(xù)(步 驟318)。在此步驟中,應(yīng)用116可以分析其消息處理歷史,以判定該消息是否屬于任何其他 已經(jīng)被分析過但沒有經(jīng)歷呼叫追蹤處理的對話。進行此判定是為了嘗試限制所使用的處理 資源的量,尤其是嘗試避免再次判定對話不應(yīng)被追蹤。如果此詢問的答案是肯定的,那么該 方法通過在不調(diào)用追蹤模塊128的情況下允許該消息被應(yīng)用服務(wù)器112處理而繼續(xù)(步驟 328)。另一方面,如果接收到的消息是對話的第一消息(例如,SIP INVITE消息或類似 類型的發(fā)起通信會話的邀請)或者如果該消息是對話的第一個內(nèi)容承載消息,則基于觸發(fā) 過濾器標準120來分析該消息(步驟320),以判定該消息及其對話是否要經(jīng)歷呼叫追蹤處 理(步驟324)。如果此詢問的答案是否定的(即,該消息不滿足初始過濾器標準120),那 么該方法繼續(xù)到步驟328。如果接收到的消息滿足初始過濾器標準120,那么該方法將通過分析該消息以限 定可用于過濾同一對話的后續(xù)消息的對話或呼叫過濾器標準124而繼續(xù)(步驟332)。從 該消息取回并用于形成對話或呼叫過濾器標準124的信息可包括該消息的主體和/或頭 部中包含的呼叫ID和標簽信息中的至少一個。一旦已形成了適當?shù)膶υ捇蚝艚羞^濾器標 準124,該方法就通過將第二級過濾器標準124存儲在數(shù)據(jù)結(jié)構(gòu)200中而繼續(xù)(步驟336)。 與此同時,或者在此之后不久,追蹤模塊128被調(diào)用,以對接收到的消息執(zhí)行呼叫追蹤功能 (步驟316)。應(yīng)當注意,此過程可被重復(fù)無限多次。從而,本發(fā)明的實施例不限于第一組和第二 組或第一層或第二層過濾器標準。本發(fā)明的實施例設(shè)想了三級及更多級過濾器。本發(fā)明的 實施例設(shè)想了基于使單條消息匹配觸發(fā)過濾器標準而創(chuàng)建至少第二組過濾器標準(用于 對話匹配)和第三組過濾器標準(用于呼叫匹配)。如上所述,額外數(shù)目的過濾器標準也在 本發(fā)明的范圍內(nèi)。作為一個示例,在能夠由數(shù)個(甚至數(shù)百個)對話構(gòu)成的某些類型的呼 叫(例如,會議)中,本發(fā)明的實施例可用于在每個參與者被添加到會話中時創(chuàng)建新的過濾 器匹配模式或規(guī)則。對話過濾器所針對的消息常常具有不與觸發(fā)過濾器的標準相匹配的簽名。在比如 SIP之類的協(xié)議中尤其如此,其中聯(lián)系人信息被交換并且替換曾用于建立對話的聯(lián)系人信 息。根據(jù)本發(fā)明的至少一些實施例,一旦與觸發(fā)過濾器發(fā)生匹配,觸發(fā)過濾器就可以保持也 可以不保持“就緒”或活動。如果它保持“就緒”,那么新的、獨立的對話過濾器可被創(chuàng)建來 追蹤與新對話相關(guān)聯(lián)的消息。由于匹配了觸發(fā)過濾器這一事實而被選擇來追蹤的新對話可以具有與被同一觸 發(fā)過濾器匹配的其他對話相重疊的生存期。在操作者所選擇的觸發(fā)過濾器屬性不適用于對話消息的可變更字段的情況下,有 可能對話消息將與觸發(fā)過濾器和對話過濾器兩者相匹配。在這種情況下,對話過濾器起支 配作用,不會創(chuàng)建重復(fù)的對話過濾器。如果觸發(fā)過濾器在對話已建立之后就緒并且對話消息匹配觸發(fā)過濾器,那么對話 過濾器可被構(gòu)造并且對話的剩余部分將被追蹤。根據(jù)本發(fā)明的至少一些實施例,存在這樣的情況,即通信服務(wù)器可把自身強加于 呼叫上以充當靜默參與者。這有時被稱為背對背代理。通常,會議呼叫實際上由數(shù)個兩方呼叫組成,其中會議服務(wù)器充當每個呼叫的共同參與者。每當一“呼叫”在信令級被如此 分割成多個對話時,就希望追蹤這些相關(guān)聯(lián)的呼叫中的每一個并將它們關(guān)聯(lián)起來(故障排 查、合法截取等等)。本發(fā)明的實施例提供了通過若干種方法支持組合呼叫的方法1)觸發(fā) 過濾器可被設(shè)計為識別任何個體低級別對話的建立并且為每個對話產(chǎn)生個體對話過濾器, 或者2)觸發(fā)過濾器可被設(shè)計為識別任何個體低級別對話的建立,并且在第一次發(fā)生這種 匹配時,產(chǎn)生寬到足以匹配這個和任何后續(xù)的多個對話(可能包括多方呼叫)的對話過濾 器,或者3)第一個產(chǎn)生的對話過濾器可以識別出呼叫被擴展從而包括額外的參與者,并且 可以在每個有關(guān)對話被創(chuàng)建時自行修改其匹配標準以擴展到每個有關(guān)對話,或者4)第一 個產(chǎn)生的對話過濾器可以識別出呼叫被擴展從而包括額外的參與者,并且可以在每個有關(guān) 對話被創(chuàng)建時產(chǎn)生額外的對話過濾器以匹配每個有關(guān)對話。后兩種方法在初始觸發(fā)過濾器 因為不針對對話內(nèi)消息進行過濾而無法監(jiān)視呼叫擴展時尤其有用。雖然已經(jīng)聯(lián)系特定的事件順序論述了上述流程圖,但是應(yīng)當明白,這種順序可被 改變,而不會實質(zhì)地影響本發(fā)明的操作。此外,事件的順序不需要與示例性實施例中闡述的 完全一致。這里說明的示例性技術(shù)并不限于具體說明的實施例,而是也可以結(jié)合其他示例 性實施例使用,并且每個描述的特征可以各自分別被請求保護。本發(fā)明的系統(tǒng)、方法和協(xié)議可以在作為所描述的通信設(shè)備的附加或替換的專用計 算機、編程的微處理器或微控制器以及(一個或多個)外圍集成電路元件、ASIC或其他集 成電路、數(shù)字信號處理器、硬連線電子或邏輯電路(比如分立元件電路)、可編程邏輯器件 (比如PLD、PLA、FPGA、PAL)、通信設(shè)備(比如服務(wù)器)、個人計算機、任何相當?shù)难b置等等上 實現(xiàn)。一般地,任何能夠?qū)崿F(xiàn)一狀態(tài)機的設(shè)備都可用于實現(xiàn)根據(jù)本發(fā)明的各種通信方法、協(xié) 議和技術(shù),其中該狀態(tài)機進而能夠?qū)崿F(xiàn)這里說明的方法。另外,所公開的方法可以很容易地利用對象或面向?qū)ο筌浖_發(fā)環(huán)境在軟件中實 現(xiàn),所述環(huán)境提供可用在多種計算機或工作站平臺上的可移植源代碼。或者,所公開的系 統(tǒng)可以部分或全部地利用標準邏輯電路或VLSI設(shè)計在硬件中實現(xiàn)。是用軟件還是硬件來 實現(xiàn)根據(jù)本發(fā)明的系統(tǒng)取決于系統(tǒng)的速度和/或效率要求、具體功能以及所利用的具體軟 件或硬件系統(tǒng)或微處理器或微計算機系統(tǒng)。這里說明的分析系統(tǒng)、方法和協(xié)議可以很容易 地由本領(lǐng)域的普通技術(shù)人員根據(jù)這里提供的功能性描述、利用通信和計算機領(lǐng)域的一般基 本知識、使用任何已知的或以后開發(fā)的系統(tǒng)或結(jié)構(gòu)、設(shè)備和/或軟件在硬件和/或軟件中實 現(xiàn)。另外,所公開的方法可以很容易地在軟件中實現(xiàn),所述軟件可以存儲在存儲介質(zhì) 上,并在控制器和存儲器的協(xié)作下在編程的通用計算機、專用計算機、微處理器等等上執(zhí) 行。在這些情況下,本發(fā)明的系統(tǒng)和方法可以實現(xiàn)為嵌入在個人計算機上的程序(比如小 應(yīng)用程序、JAVA 或CGI腳本)、實現(xiàn)為存在于服務(wù)器或計算機工作站上的資源、實現(xiàn)為 嵌入在專用通信系統(tǒng)或系統(tǒng)組件中的例程,等等。也可以通過將該系統(tǒng)和/或方法物理地 結(jié)合到軟件和/或硬件系統(tǒng)(比如通信設(shè)備或系統(tǒng)的硬件和軟件系統(tǒng))中來實現(xiàn)該系統(tǒng)。因此,很明顯,根據(jù)本發(fā)明的實施例,提供了用于基于對滿足另一組過濾標準的消 息進行分析來生成消息過濾標準的系統(tǒng)、裝置和方法。雖然已經(jīng)結(jié)合若干個實施例描述了 本發(fā)明,但是顯然,許多替換、修改和變化對于本領(lǐng)域的普通技術(shù)人員來說都將是或者是很 明顯的。從而,希望包含在本發(fā)明的精神和范圍內(nèi)的所有這種替換、修改、等同和變化。
權(quán)利要求
1. 一種方法,包括接收第二消息;向所述第二消息應(yīng)用第二級過濾器標準以判定所述第二消息是否要經(jīng)歷預(yù)定處理,其 中所述第二級過濾器標準是由于預(yù)先分析在所述第二消息之前接收的第一消息的屬性并 且判定所述第一消息要經(jīng)歷所述預(yù)定處理而形成的;判定所述第二消息滿足所述第二級過濾器標準;并且使所述第二消息經(jīng)歷所述預(yù)定處理。
2.如權(quán)利要求1所述的方法,其中不滿足所述第二級過濾器標準的第三消息不經(jīng)歷所 述預(yù)定處理。
3.如權(quán)利要求2所述的方法,其中所述第三消息和所述第二消息是共同的對話和共同 的呼叫中的至少一種的一部分。
4.如權(quán)利要求3所述的方法,其中所述第二消息是內(nèi)容承載消息并且所述第三消息是 非內(nèi)容承載消息。
5.如權(quán)利要求3所述的方法,其中所述第二消息和第三消息是在共同的端點之間傳送的。
6.如權(quán)利要求1所述的方法,還包括利用初始過濾器標準來分析所述第一消息,其中如果所述第一消息是去往和/或來自 預(yù)定的地址、域或用戶中的至少一種,則所述初始過濾器標準指示出所述第一消息要經(jīng)歷 預(yù)定處理;判定所述第一消息是去往和來自所述預(yù)定的地址中的至少一種;并且基于判定所述第一消息是去往和來自所述預(yù)定的地址中的至少一種,發(fā)起對所述第一 消息的分析,以形成所述第二級過濾器標準和第三級過濾器標準中的一個或多個。
7.如權(quán)利要求1所述的方法,其中所述預(yù)定處理包括呼叫追蹤處理。
8.如權(quán)利要求7所述的方法,其中所述第二消息的有效載荷包括語音消息、視頻消息 和文本消息中的一個或多個。
9. 一種應(yīng)用服務(wù)器,包括存儲器,該存儲器適于存儲指令,所述指令包括應(yīng)用,該應(yīng)用適于在被執(zhí)行時使消息經(jīng)歷預(yù)定處理,所述應(yīng)用包括初始過濾器標準和 第二級過濾器標準,其中所述應(yīng)用向由所述應(yīng)用接收到的第二消息應(yīng)用第二級過濾器標準 以判定所述第二消息是否要經(jīng)歷所述預(yù)定處理,其中所述第二級過濾器標準是由于預(yù)先分 析在所述第二消息之前在所述應(yīng)用處接收到的第一消息的屬性并且判定所述第一消息要 經(jīng)歷所述預(yù)定處理而形成的;以及處理器,該處理器用于執(zhí)行所述應(yīng)用。
10.如權(quán)利要求9所述的服務(wù)器,其中在所述應(yīng)用處接收到的不滿足所述第二級過濾 器標準的第三消息不經(jīng)歷所述預(yù)定處理。
全文摘要
本發(fā)明提供了增強的呼叫追蹤。提供了用于使用高效的呼叫追蹤算法的方法、設(shè)備和系統(tǒng)??筛鶕?jù)初始過濾器標準來過濾消息,然后分析滿足初始過濾器標準的消息以形成第二級過濾器標準。然后可以在預(yù)定量的時間期間向隨后傳送的消息應(yīng)用第一和/或第二過濾器標準,所述預(yù)定量的時間很有可能與滿足第一過濾器標準的呼叫的長度有關(guān)。
文檔編號H04L12/24GK101997716SQ20101025964
公開日2011年3月30日 申請日期2010年8月19日 優(yōu)先權(quán)日2009年8月19日
發(fā)明者史蒂夫·貝克, 庫特·哈瑟洛特 申請人:阿瓦雅公司