專利名稱:一種查詢訂閱信息的方法及可實(shí)現(xiàn)訂閱查詢的系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)中的消息查詢技術(shù),特別涉及一種查詢訂閱信息的方法及可實(shí)現(xiàn)訂閱查詢的系統(tǒng)?,F(xiàn)有的會(huì)話初始協(xié)議(SIP)中有一種訂閱/通知(SUBSCRIBE/NOTIFY)的機(jī)制,訂閱端(subscriber)向通知端(notifier)通過SIP SUBSCRIBE消息發(fā)起對某個(gè)事件的訂閱請求,通知端通過SIP NOTIFY消息返回訂閱通知。
比如,用戶A為其終端開通了一個(gè)語音郵箱,他希望能夠在自己有新留言信息時(shí),語音郵箱能夠通知他及時(shí)察看。則用戶A通過終端向語音信箱發(fā)送一個(gè)訂閱消息,訂閱有新留言信息時(shí)得到通知。這樣,當(dāng)有其他用戶B在用戶A的語音郵箱中留了一條新的留言信息時(shí),語音信箱就會(huì)向用戶A終端發(fā)送有新留言的通知消息,通知用戶A及時(shí)察看該留言信息。
具體流程如
圖1所示1、用戶A向語音信箱發(fā)送SIP SUBSCRBE消息,訂閱有新留言這個(gè)事件,以在有新留言時(shí)能夠獲取通知。
2、語音信箱接受該用戶A的訂閱請求,返回SIP 200 OK消息,表示已接受訂閱請求。
3、語音信箱發(fā)送完SIP 200 OK消息后,發(fā)送一個(gè)SIP NOTIFY消息,通知用戶A,當(dāng)前語音信箱內(nèi)是否有新的留言信息。
4、用戶A接收到NOTIFY消息后,回復(fù)SIP 200 OK消息,表示已經(jīng)接收到通知消息。
5、語音信箱內(nèi)有用戶A的新留言信息時(shí),語音信箱發(fā)送SIP NOTIFY消息,告訴用戶A,當(dāng)前語音信箱內(nèi)有新的留言信息。
6、用戶A收到語音信箱發(fā)送的SIP NOTIFY消息后,回復(fù)SIP 200 OK消息,表示已經(jīng)收到通知消息。
現(xiàn)有的SIP SUBSCRIBE消息是利用報(bào)文中的頭域來表示該訂閱消息所攜帶的信息,即用戶訂閱的是什么事件。但是現(xiàn)有的技術(shù)中,沒有為用戶提供查詢機(jī)制,當(dāng)用戶忘記自己曾訂閱過哪些信息時(shí),無法在通知端那里查詢訂閱了哪些事件。同時(shí),對于Presence這種在線狀態(tài)服務(wù)業(yè)務(wù),訂閱端可以通過Event頭域?yàn)閜resence的SIP SUBSCRIBE消息向在線狀態(tài)服務(wù)器訂閱自己或自己關(guān)心的其它用戶的在線狀態(tài)。作為被訂閱在線狀態(tài)的用戶,可以通過Event頭域?yàn)閜resence.winfo的SIP SUBSCRIBE消息向在線狀態(tài)服務(wù)器訂閱都有哪些用戶訂閱了自己的在線狀態(tài)。但是用戶還不可以查詢已被哪些用戶訂閱除了在線狀態(tài)以外的用戶信息。即現(xiàn)有SIP SUBSCRIBE報(bào)文中沒有可以標(biāo)識(shí)出該SIP SUBSCRIBE報(bào)文是查詢訂閱報(bào)文的字段,即不能給訂閱端提供查詢機(jī)制。本發(fā)明的目的在于提供一種可自由查詢所訂閱事件的查詢訂閱信息的方法及可實(shí)現(xiàn)訂閱查詢的系統(tǒng)。
本發(fā)明的技術(shù)方案是一種查詢訂閱信息的方法,包括步驟101,訂閱端向通知端發(fā)送包含查詢訂閱請求信息的報(bào)文;102,通知端向訂閱端返回包含所述訂閱端所查詢的訂閱信息的報(bào)文。
進(jìn)一步的,步驟101中,所述報(bào)文采用會(huì)話初始協(xié)議SIP中的訂閱SUBSCRIBE報(bào)文,所述查詢訂閱請求信息包含在SUBSCRIBE報(bào)文的頭域中。
作為另一種實(shí)施方式,步驟101中,所述報(bào)文采用SIP中的SUBSCRIBE報(bào)文,所述查詢訂閱請求信息包含在SUBSCRIBE報(bào)文中一個(gè)新增加的頭域中。
進(jìn)一步的,步驟102中,所述報(bào)文采用SIP中的通知NOTIFY報(bào)文。
作為另一種實(shí)施方式,步驟101中,所述報(bào)文是SIP協(xié)議中專門用于查詢的訂閱查詢請求報(bào)文。
進(jìn)一步的,步驟102中,所述報(bào)文是SIP協(xié)議中專門用于響應(yīng)所述訂閱查詢的訂閱查詢響應(yīng)報(bào)文。
本發(fā)明方法中,步驟101進(jìn)一步包括所述通知端收到所述訂閱端發(fā)送的包含查詢訂閱請求信息的報(bào)文后,對所述訂閱端進(jìn)行鑒權(quán),并根據(jù)鑒權(quán)結(jié)果返回響應(yīng)報(bào)文到所述訂閱端,告知訂閱端其查詢請求是否被接受。
本發(fā)明方法中,步驟102進(jìn)一步包括所述訂閱端收到所述返回的報(bào)文后,對所述報(bào)文進(jìn)行解析,并返回響應(yīng)報(bào)文到所述通知端。
進(jìn)一步的,所述查詢訂閱請求信息中還包括表示查詢條件的信息,步驟102中,所述通知端根據(jù)所述查詢條件向訂閱端返回包含相應(yīng)的訂閱信息的報(bào)文。
本發(fā)明還提供了一種可實(shí)現(xiàn)訂閱查詢的系統(tǒng),包括訂閱端,其用于發(fā)起訂閱請求報(bào)文及查詢請求報(bào)文、對接收到的報(bào)文進(jìn)行處理并返回響應(yīng)報(bào)文;通知端,其用于接收所述訂閱請求報(bào)文及查詢請求報(bào)文,并返回相應(yīng)信息報(bào)文。
進(jìn)一步的,所述訂閱端包括查詢發(fā)起單元,其通過內(nèi)部信令接口與訂閱端信令處理單元相連,用于向所述訂閱端信令處理單元發(fā)出查詢請求命令;訂閱發(fā)起單元,其通過內(nèi)部信令接口與所述訂閱端信令處理單元相連,用于向所述訂閱端信令處理單元發(fā)出訂閱請求命令;通知處理單元,其通過內(nèi)部信令接口與所述訂閱端信令處理單元相連,用于處理來自訂閱端信令處理單元的報(bào)文;和訂閱端信令處理單元,用于接收所述查詢請求命令和訂閱請求命令,根據(jù)上述命令構(gòu)造相應(yīng)訂閱查詢報(bào)文和訂閱請求報(bào)文,并通過對外接口發(fā)送到所述通知端,從所述對外接口接收通知報(bào)文并進(jìn)行解析后發(fā)送到所述通知處理單元。
進(jìn)一步的,所述通知端包括查詢處理單元,其通過內(nèi)部信令接口與訂閱處理單元和通知端信令處理單元相連,接收來自通知端信令處理單元的經(jīng)過解析的訂閱查詢報(bào)文,向訂閱處理單元查詢訂閱情況,并將查詢結(jié)果發(fā)送到通知端信令處理單元;訂閱處理單元,其通過內(nèi)部信令接口與查詢處理單元和通知端信令處理單元相連,接收來自通知端信令處理單元的經(jīng)過解析的訂閱請求報(bào)文,并進(jìn)行相應(yīng)處理;通知發(fā)送處理單元,其通過內(nèi)部信令接口與通知端信令處理單元相連,用于發(fā)送通知命令;和通知端信令處理單元,用于接收所述查詢結(jié)果和通知命令,根據(jù)上述命令構(gòu)造相應(yīng)訂閱查詢響應(yīng)報(bào)文和通知報(bào)文,并通過對外接口發(fā)送到所述訂閱端,接收來自對外接口的報(bào)文并進(jìn)行相應(yīng)處理。
本發(fā)明系統(tǒng)還包括至少一個(gè)代理服務(wù)器,連接在所述訂閱端與通知端之間,用于中轉(zhuǎn)訂閱端與通知端之間的報(bào)文。
本發(fā)明還提供了一種訂閱端,所述訂閱端包括查詢發(fā)起單元,其通過內(nèi)部信令接口與訂閱端信令處理單元相連,用于向所述訂閱端信令處理單元發(fā)出查詢請求命令;訂閱發(fā)起單元,其通過內(nèi)部信令接口與所述訂閱端信令處理單元相連,用于向所述訂閱端信令處理單元發(fā)出訂閱請求命令;通知處理單元,其通過內(nèi)部信令接口與所述訂閱端信令處理單元相連,用于處理來自訂閱端信令處理單元的通知報(bào)文;和訂閱端信令處理單元,用于接收所述查詢請求命令和訂閱請求命令,根據(jù)上述命令構(gòu)造相應(yīng)訂閱查詢報(bào)文和訂閱請求報(bào)文,并通過對外接口發(fā)送到所述通知端,從所述對外接口接收通知報(bào)文并進(jìn)行解析后發(fā)送到所述通知處理單元。
本發(fā)明還提供了一種通知端,所述通知端包括查詢處理單元,其通過內(nèi)部信令接口與訂閱處理單元和通知端信令處理單元相連,接收來自通知端信令處理單元的經(jīng)過解析的訂閱查詢報(bào)文,向訂閱處理單元查詢訂閱情況,并將查詢結(jié)果發(fā)送到通知端信令處理單元;
訂閱處理單元,其通過內(nèi)部信令接口與查詢處理單元和通知端信令處理單元相連,接收來自通知端信令處理單元的經(jīng)過解析的訂閱請求報(bào)文,并進(jìn)行相應(yīng)處理;通知發(fā)送處理單元,其通過內(nèi)部信令接口與通知端信令處理單元相連,用于發(fā)送通知命令;和通知端信令處理單元,用于接收所述查詢結(jié)果和通知命令,根據(jù)上述命令構(gòu)造相應(yīng)訂閱查詢響應(yīng)報(bào)文和通知報(bào)文,并通過對外接口發(fā)送到所述訂閱端,接收來自對外接口的報(bào)文并進(jìn)行相應(yīng)處理。
本發(fā)明通過在現(xiàn)有SIP訂閱信息中利用某一字段攜帶查詢信息,或者采用SIP協(xié)議中專門用于查詢的訂閱查詢請求消息和訂閱查詢響應(yīng)消息,可以實(shí)現(xiàn)訂閱信息查詢功能,使得訂閱端可以從通知端處查詢到自己都已經(jīng)訂閱了哪些事件,以及在通知端那里有哪些用戶訂閱了與自己相關(guān)的哪些事件,給用戶帶來了良好的業(yè)務(wù)體驗(yàn)。完善了現(xiàn)有訂閱機(jī)制。圖1是現(xiàn)有技術(shù)中訂閱/通知事件的實(shí)現(xiàn)流程圖。
圖2是本發(fā)明實(shí)施例一和實(shí)施例二的方法流程圖。
圖3是本發(fā)明實(shí)施例三的方法流程圖。
圖4是本發(fā)明實(shí)施例三的另一種方法流程圖。
圖5是本發(fā)明中訂閱端的功能結(jié)構(gòu)圖。
圖6是本發(fā)明中通知端的功能結(jié)構(gòu)圖。
圖7是本發(fā)明系統(tǒng)結(jié)構(gòu)圖。下面根據(jù)附圖和具體實(shí)施例對本發(fā)明做進(jìn)一步闡述。
實(shí)施例一如圖2所示,本發(fā)明一種查詢訂閱信息的方法,主要包括步驟S10,訂閱端向通知端發(fā)送包含查詢訂閱請求信息的報(bào)文。上述報(bào)文采用的是現(xiàn)有SIP SUBSCRIBE報(bào)文格式,利用SUBSCRIBE消息中現(xiàn)有Event頭域來表示對訂閱事件的查詢,即通過增加Event頭域的一種取值(即查詢訂閱請求信息)以表示該SUBSCRIBE報(bào)文是用于查詢訂閱的報(bào)文。比如Event頭域取值為Query時(shí)表示該SUBSCRIBE報(bào)文是查詢訂閱的報(bào)文EventQuery。同時(shí),在Query后附帶字段信息來表示本次查詢的檢索條件。比如EventQuery self,表示查詢的是訂閱端本身在通知端那里所訂閱的事件的信息通知。
EventQuery other,表示查詢的是在通知端那里,已有哪些用戶訂閱了與該訂閱端相關(guān)的哪些事件信息。
當(dāng)然,還可以通過其他數(shù)字、或字符標(biāo)識(shí)來表示上述查詢的檢索條件,以及其他查詢條件。
S11,通知端接收并解析上述訂閱查詢報(bào)文,對該請求進(jìn)行鑒權(quán),通過后,向訂閱端返回響應(yīng)報(bào)文,如圖中報(bào)文200 OK。其中,所述通知端對訂閱端的鑒權(quán)就是指根據(jù)接受訂閱方上所記錄的策略以及訂閱端的簽約信息,來判斷訂閱端是否有資格來查詢其所要求查詢的已訂閱事件??梢砸罁?jù)訂約消息SUBSCRIBE中的Contact字段內(nèi)容獲取訂閱端的用戶標(biāo)識(shí)。如果通知端無法根據(jù)該字段中的信息獲取用戶的標(biāo)識(shí),則可以通過返回sip 4XX消息來要求訂閱端告知其有效身份標(biāo)識(shí)。如果通知端沒有足夠的能力來鑒權(quán)訂閱端的話,可以通過向網(wǎng)絡(luò)中諸如AAA服務(wù)器(網(wǎng)絡(luò)中的鑒權(quán)中心)請求鑒別訂閱端。如果訂閱端不能通過鑒權(quán),則通知端可以拒絕本次訂閱請求。
S12,通知端向訂閱端返回包含所述訂閱端查詢的訂閱信息的報(bào)文。所述返回的報(bào)文采用的是現(xiàn)有SIP NOTIFY報(bào)文格式,在報(bào)文中以事件列表的形式(也可以是其它形式)將所有符合查詢條件的訂閱的事件信息都表示出來。
S13,訂閱端接收到上述SIP NOTIFY消息后,從中解析出通知端返回的符合訂閱端查詢條件的已訂閱事件信息,并向通知端返回響應(yīng)報(bào)文,如圖中報(bào)文200OK。
S14,作為本發(fā)明的一個(gè)改進(jìn),當(dāng)SUBSCRIBE消息中的Expires頭域取值為0時(shí),表示本次查詢?yōu)閮H對當(dāng)前的訂閱情況的查詢,通知端通過NOTIFY立即返回當(dāng)前的訂閱情況后,本次查詢事件就結(jié)束了。當(dāng)SUBSCRIBE消息中的Expires頭域取值為非0的自然數(shù)N時(shí),則表示本次查詢不僅是對當(dāng)前的訂閱情況的查詢,而且是對未來N秒內(nèi)訂閱情況的查詢,故通知端通過NOTIFY立即返回當(dāng)前的訂閱情況后,只要在N秒內(nèi)符合訂閱端查詢條件的訂閱情況發(fā)生了變化,通知端都會(huì)再次通過NOTIFY消息通知訂閱端目前的訂閱情況。
S15,訂閱端接收到上述SIP NOTIFY消息后,從中解析出通知端返回的符合訂閱端查詢條件的已訂閱事件信息,并向通知端返回響應(yīng)報(bào)文,如圖中報(bào)文200OK。
需要說明的是,本發(fā)明中所作的流程圖示和文字說明僅為突出本發(fā)明的關(guān)鍵技術(shù)所作的解釋,并不表示一個(gè)完整的呼叫和業(yè)務(wù)控制流程,也沒有窮盡所有可能的分支流程。
實(shí)施例二如圖2所示,本實(shí)施例與實(shí)施例一相比主要區(qū)別在于上述步驟S10中,訂閱端向通知端發(fā)送的報(bào)文中,查詢訂閱請求信息包含在SUBSCRIBE報(bào)文中一個(gè)新增加的頭域中。比如增加頭域Query,當(dāng)該頭域取一個(gè)特定值X,比如為1時(shí)表示是查詢訂閱端本身在通知端那里已經(jīng)訂閱了哪些事件通知消息;當(dāng)該頭域取另一個(gè)特定值Y,比如為2時(shí)表示是查詢在通知端那里已有哪些用戶訂閱了與該訂閱端相關(guān)的哪些事件信息;當(dāng)該頭域取值為某個(gè)值Z,比如為0時(shí),來表示不是查詢訂閱消息,而只是一個(gè)普通的訂閱消息;還可以取非前述的X、Y、Z以外的其他取值來表示其他查詢條件。
還可以通過該Query頭域取不同的字符來表示查詢的檢索條件以及是否為查詢訂閱消息。比如Queryself;Queryother;QueryNone與上述取值為X、Y、Z的情況相對應(yīng)。其中,Query的取值定義由服務(wù)商決定,來表示查詢訂閱信息的檢索條件。
實(shí)施例三如圖3所示,本發(fā)明一種查詢訂閱信息的方法,主要包括步驟S20,訂閱端向通知端發(fā)送包含查詢訂閱請求信息的報(bào)文。上述報(bào)文采用的是SIP協(xié)議中新定義的用于訂閱查詢請求的報(bào)文,比如定義為SUB_QUERY_REQUEST。只要通知端接收到此報(bào)文,即可知訂閱端請求查詢已訂閱的事件信息。
并且與實(shí)施例一類似,可以通過SUB_QUERY_REQUEST報(bào)文攜帶不同的參數(shù),表明本次查詢的檢索條件,是查詢訂閱端本身所訂閱的事件通知,還是查詢該訂閱端已被哪些用戶所訂閱,或其他查詢的檢索條件。
S21,通知端接收并解析上述SUB_QUERY_REQUEST報(bào)文,對該訂閱查詢請求進(jìn)行鑒權(quán),通過后,向訂閱端返回響應(yīng)報(bào)文,如圖中報(bào)文202 ACCEPT。
S22,通知端根據(jù)該SUB_QUERY_REQUEST報(bào)文所攜帶的參數(shù)來判斷本次查詢的檢索條件,并發(fā)送SIP協(xié)議中新定義的用于響應(yīng)訂閱查詢的報(bào)文,比如定義為SUB_QUERY_REPONSE,向訂閱端返回包含符合查詢條件的訂閱信息的報(bào)文。在上述報(bào)文中以事件列表的形式(也可以是其它形式)將所有已訂閱的事件信息都表示出來。如果訂閱者所查詢的是在通知者那里有哪些用戶訂閱了與自己相關(guān)的哪些事件時(shí),返回的結(jié)果中不僅包括訂閱事件列表,還應(yīng)包括該事件的訂閱者標(biāo)識(shí),即發(fā)起該訂閱的其他用戶的有效身份標(biāo)識(shí)。
S23,訂閱端接收到上述SUB_QUERY_REPONSE報(bào)文后,從中解析出通知端返回的符合查詢條件的訂閱信息,并向通知端返回報(bào)文200 OK,表示本次SIP交互已經(jīng)結(jié)束。
在本實(shí)施例中,在S21步驟中,可以使用200 OK消息帶回訂閱查詢結(jié)果,而省去后續(xù)的S21和S22步驟。200 OK消息中采用事件列表的形式,返回訂閱查詢的結(jié)果,如圖4所示。
需要說明的是,本發(fā)明中所作的流程圖示和文字說明僅為突出本發(fā)明的關(guān)鍵技術(shù)所作的解釋,并不表示一個(gè)完整的呼叫和業(yè)務(wù)控制流程,也沒有窮盡所有可能的分支流程。
如圖7所示,本發(fā)明一種可實(shí)現(xiàn)訂閱查詢的系統(tǒng)主要包括訂閱端和通知端。訂閱端和通知端通過對外接口直接相連,或通過至少一個(gè)SIP代理服務(wù)器相連。所述SIP代理服務(wù)器用于中轉(zhuǎn)訂閱端與通知端之間的報(bào)文。
訂閱端包括四個(gè)單元查詢發(fā)起單元、訂閱發(fā)起單元、通知處理單元和訂閱端信令處理單元。查詢發(fā)起單元、訂閱發(fā)起單元、通知處理單元分別通過內(nèi)部信令接口與訂閱端信令處理單元相連,訂閱端信令處理單元還通過對外接口與外部網(wǎng)絡(luò)相連,如圖5所示。
其中,查詢發(fā)起單元就是用來發(fā)起訂閱查詢請求,它將查詢請求命令發(fā)送給訂閱端信令處理單元,并由訂閱端信令處理單元構(gòu)造為符合SIP協(xié)議規(guī)范的訂閱查詢請求報(bào)文(比如實(shí)施例一和二中帶查詢訂閱請求信息的SIP SUBSCRIBE報(bào)文、實(shí)施例三中的SUB_QUERY_REQUEST報(bào)文),并通過訂閱端信令處理單元的對外接口發(fā)送給網(wǎng)絡(luò)中的其他節(jié)點(diǎn),比如發(fā)送給通知端,或經(jīng)由SIP代理轉(zhuǎn)發(fā)到通知端。
訂閱發(fā)起單元用于發(fā)起訂閱請求,它將訂閱請求命令發(fā)送給訂閱端信令處理單元,并由訂閱端信令處理單元構(gòu)造為符合SIP協(xié)議規(guī)范的訂閱請求報(bào)文(現(xiàn)有技術(shù)中的SIP SUBSCRIBE報(bào)文),并通過訂閱端信令處理單元的對外接口發(fā)送到網(wǎng)絡(luò)中。
通知處理單元用于處理通知內(nèi)容,訂閱端信令處理單元接收到來自網(wǎng)絡(luò)其他節(jié)點(diǎn)的通知消息(如上述實(shí)施例中的SIP NOTIFY報(bào)文、SUB_QUERY_REPONSE報(bào)文、200 OK報(bào)文或202 ACCEPT報(bào)文)后,按照SIP協(xié)議進(jìn)行解析,然后把通知內(nèi)容發(fā)送給通知處理單元,由通知處理單元做后續(xù)處理。
通知端也包括四個(gè)單元查詢處理單元、訂閱處理單元、通知發(fā)送處理單元和通知端信令處理單元。查詢處理單元、訂閱處理單元和通知發(fā)送處理單元分別通過內(nèi)部信令接口與通知端信令處理單元相連,查詢處理單元和訂閱處理單元之間也通過內(nèi)部信令接口相連。通知端信令處理單元還通過對外接口與外部網(wǎng)絡(luò)相連。如圖6所示。
其中,查詢處理單元就是用來處理訂閱查詢的,它根據(jù)來自通知端信令處理單元的經(jīng)過解析的訂閱查詢請求報(bào)文的內(nèi)容,向訂閱處理單元查詢訂閱情況,并將查詢結(jié)果發(fā)送到通知端信令處理單元。通知端信令處理單元將該查詢結(jié)果構(gòu)造為符合SIP協(xié)議規(guī)范的訂閱查詢響應(yīng)報(bào)文(如上述實(shí)施例中SIP NOTIFY報(bào)文、SUB_QUERY_REPONSE報(bào)文或200 OK報(bào)文),通過其對外接口發(fā)送給網(wǎng)絡(luò)中的其他節(jié)點(diǎn),比如發(fā)送給訂閱端,或經(jīng)過SIP代理轉(zhuǎn)發(fā)到訂閱端。
訂閱處理單元用于實(shí)現(xiàn)接收訂閱端的訂閱請求。通知端信令處理單元接收到來自網(wǎng)絡(luò)其他節(jié)點(diǎn)的訂閱請求報(bào)文后,按照SIP協(xié)議進(jìn)行解析,然后把訂閱請求的內(nèi)容發(fā)送給訂閱處理單元,由訂閱處理單元做后續(xù)處理。所述訂閱處理為現(xiàn)有成熟技術(shù),故不在此處做更詳細(xì)的說明。
通知發(fā)送處理單元用于發(fā)送通知報(bào)文。它將通知內(nèi)容發(fā)送給通知端信令處理單元,并由通知端信令處理單元構(gòu)造為符合SIP協(xié)議規(guī)范的通知報(bào)文(如上述實(shí)施例中的200 OK報(bào)文或202 ACCEPT報(bào)文),并通過通知端信令處理單元的對外接口發(fā)送到網(wǎng)絡(luò)中的訂閱端。
綜上所述,本發(fā)明通過在現(xiàn)有SIP訂閱信息中利用某一字段攜帶查詢信息,或者采用SIP協(xié)議中專門用于查詢的訂閱查詢請求消息和訂閱查詢響應(yīng)消息,可以實(shí)現(xiàn)訂閱信息查詢功能,使得訂閱端可以從通知端處查詢到自己都已經(jīng)訂閱了哪些事件,以及在通知端那里有哪些用戶訂閱了與自己相關(guān)的哪些事件,給用戶帶來了良好的業(yè)務(wù)體驗(yàn),完善了現(xiàn)有訂閱機(jī)制。
權(quán)利要求
1.一種查詢訂閱信息的方法,其特征在于,包括步驟101,訂閱端向通知端發(fā)送包含查詢訂閱請求信息的報(bào)文;102,通知端向訂閱端返回包含所述訂閱端所查詢的訂閱信息的報(bào)文。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于步驟101中,所述報(bào)文采用會(huì)話初始協(xié)議SIP中的訂閱SUBSCRIBE報(bào)文,所述查詢訂閱請求信息包含在SUBSCRIBE報(bào)文的頭域中。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于步驟101中,所述報(bào)文采用SIP中的SUBSCRIBE報(bào)文,所述查詢訂閱請求信息包含在SUBSCRIBE報(bào)文中一個(gè)新增加的頭域中。
4.根據(jù)權(quán)利要求1或2或3所述的方法,其特征在于步驟102中,所述報(bào)文采用SIP中的通知NOTIFY報(bào)文。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于步驟101中,所述報(bào)文是SIP協(xié)議中專用于查詢的訂閱查詢請求報(bào)文。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于步驟102中,所述報(bào)文是SIP協(xié)議中專用于響應(yīng)所述訂閱查詢的訂閱查詢響應(yīng)報(bào)文。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟101進(jìn)一步包括所述通知端收到所述訂閱端發(fā)送的包含查詢訂閱請求信息的報(bào)文后,對所述訂閱端進(jìn)行鑒權(quán),并根據(jù)鑒權(quán)結(jié)果返回響應(yīng)報(bào)文到所述訂閱端,告知訂閱端其查詢請求是否被接受。
8.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟102進(jìn)一步包括所述訂閱端收到所述返回的報(bào)文后,對所述報(bào)文進(jìn)行解析,并返回響應(yīng)報(bào)文到所述通知端。
9.根據(jù)權(quán)利要求1或2或3或5所述的任一方法,其特征在于所述查詢訂閱請求信息中還包括表示查詢條件的信息,步驟102中,所述通知端根據(jù)所述查詢條件向訂閱端返回包含相應(yīng)的訂閱信息的報(bào)文。
10.一種可實(shí)現(xiàn)訂閱查詢的系統(tǒng),其特征在于,包括訂閱端,其用于發(fā)起訂閱請求報(bào)文及查詢請求報(bào)文、對接收到的報(bào)文進(jìn)行處理并返回響應(yīng)報(bào)文;通知端,其用于接收所述訂閱請求報(bào)文及查詢請求報(bào)文,并返回相應(yīng)信息報(bào)文。
11.根據(jù)權(quán)利要求10所述的系統(tǒng),其特征在于,所述訂閱端包括查詢發(fā)起單元,其通過內(nèi)部信令接口與訂閱端信令處理單元相連,用于向所述訂閱端信令處理單元發(fā)出查詢請求命令;訂閱發(fā)起單元,其通過內(nèi)部信令接口與所述訂閱端信令處理單元相連,用于向所述訂閱端信令處理單元發(fā)出訂閱請求命令;通知處理單元,其通過內(nèi)部信令接口與所述訂閱端信令處理單元相連,用于處理來自訂閱端信令處理單元的通知報(bào)文;和訂閱端信令處理單元,用于接收所述查詢請求命令和訂閱請求命令,根據(jù)上述命令構(gòu)造相應(yīng)訂閱查詢報(bào)文和訂閱請求報(bào)文,并通過對外接口發(fā)送到所述通知端,從所述對外接口接收通知報(bào)文并進(jìn)行解析后發(fā)送到所述通知處理單元。
12.根據(jù)權(quán)利要求10所述的系統(tǒng),其特征在于,所述通知端包括查詢處理單元,其通過內(nèi)部信令接口與訂閱處理單元和通知端信令處理單元相連,接收來自通知端信令處理單元的經(jīng)過解析的訂閱查詢報(bào)文,向訂閱處理單元查詢訂閱情況,并將查詢結(jié)果發(fā)送到通知端信令處理單元;訂閱處理單元,其通過內(nèi)部信令接口與查詢處理單元和通知端信令處理單元相連,接收來自通知端信令處理單元的經(jīng)過解析的訂閱請求報(bào)文,并進(jìn)行相應(yīng)處理;通知發(fā)送處理單元,其通過內(nèi)部信令接口與通知端信令處理單元相連,用于發(fā)送通知命令;和通知端信令處理單元,用于接收所述查詢結(jié)果和通知命令,根據(jù)上述命令構(gòu)造相應(yīng)訂閱查詢響應(yīng)報(bào)文和通知報(bào)文,并通過對外接口發(fā)送到所述訂閱端,接收來自對外接口的報(bào)文并進(jìn)行相應(yīng)處理。
13.根據(jù)權(quán)利要求10所述的系統(tǒng),其特征在于還包括至少一個(gè)代理服務(wù)器,連接在所述訂閱端與通知端之間,用于中轉(zhuǎn)訂閱端與通知端之間的報(bào)文。
14.一種訂閱端,其特征在于,所述訂閱端包括查詢發(fā)起單元,其通過內(nèi)部信令接口與訂閱端信令處理單元相連,用于向所述訂閱端信令處理單元發(fā)出查詢請求命令;訂閱發(fā)起單元,其通過內(nèi)部信令接口與所述訂閱端信令處理單元相連,用于向所述訂閱端信令處理單元發(fā)出訂閱請求命令;通知處理單元,其通過內(nèi)部信令接口與所述訂閱端信令處理單元相連,用于處理來自訂閱端信令處理單元的通知報(bào)文;和訂閱端信令處理單元,用于接收所述查詢請求命令和訂閱請求命令,根據(jù)上述命令構(gòu)造相應(yīng)訂閱查詢報(bào)文和訂閱請求報(bào)文,并通過對外接口發(fā)送到所述通知端,從所述對外接口接收通知報(bào)文并進(jìn)行解析后發(fā)送到所述通知處理單元。
15.一種通知端,其特征在于,所述通知端包括查詢處理單元,其通過內(nèi)部信令接口與訂閱處理單元和通知端信令處理單元相連,接收來自通知端信令處理單元的經(jīng)過解析的訂閱查詢報(bào)文,向訂閱處理單元查詢訂閱情況,并將查詢結(jié)果發(fā)送到通知端信令處理單元;訂閱處理單元,其通過內(nèi)部信令接口與查詢處理單元和通知端信令處理單元相連,接收來自通知端信令處理單元的經(jīng)過解析的訂閱請求報(bào)文,并進(jìn)行相應(yīng)處理;通知發(fā)送處理單元,其通過內(nèi)部信令接口與通知端信令處理單元相連,用于發(fā)送通知命令;和通知端信令處理單元,用于接收所述查詢結(jié)果和通知命令,根據(jù)上述命令構(gòu)造相應(yīng)訂閱查詢響應(yīng)報(bào)文和通知報(bào)文,并通過對外接口發(fā)送到所述訂閱端,接收來自對外接口的報(bào)文并進(jìn)行相應(yīng)處理。
全文摘要
本發(fā)明涉及通信技術(shù)中的消息查詢技術(shù),特別涉及一種查詢訂閱信息的方法及可實(shí)現(xiàn)訂閱查詢的系統(tǒng)。一種查詢訂閱信息的方法,包括步驟101,訂閱端向通知端發(fā)送包含查詢訂閱查詢請求信息的報(bào)文;102,通知端向訂閱端返回包含所述訂閱端所查詢的訂閱信息的報(bào)文。本發(fā)明通過在現(xiàn)有SIP訂閱信息中利用某一字段攜帶查詢信息,或者采用SIP協(xié)議中專門用于查詢的訂閱查詢請求消息和訂閱查詢響應(yīng)消息,可以實(shí)現(xiàn)訂閱信息查詢功能,使得訂閱端可以從通知端處查詢到自己都已經(jīng)訂閱了哪些事件,以及在通知端那里有哪些用戶訂閱了與自己相關(guān)的哪些事件,給用戶帶來了良好的業(yè)務(wù)體驗(yàn)。完善了現(xiàn)有訂閱機(jī)制。
文檔編號H04L29/06GK1874350SQ200610033389
公開日2006年12月6日 申請日期2006年1月24日 優(yōu)先權(quán)日2006年1月24日
發(fā)明者魏華 申請人:華為技術(shù)有限公司