專利名稱:一種ip多媒體子系統(tǒng)及其恢復用戶訂閱關系的方法
技術領域:
本發(fā)明涉及通信技術領域,尤其涉及一種IP多媒體子系統(tǒng)及其恢復用戶訂閱關系的方法。
背景技術:
IP多媒體子系統(tǒng)(IMS,IP Multimedia Subsystem)是第三代合作伙伴組織(Third Generation Partnership ftx) ject,簡稱3GPP)定義的下一代網絡的標準,它的顯著特點是采用了會話發(fā)起協(xié)議(Session Initiation Protocol,簡稱SIP)體系,通訊與接入無關,具備多種業(yè)務融合能力,順應了通訊網融合發(fā)展的趨勢。
狀態(tài)呈現(Presence,簡寫為I3RS)是一種業(yè)務能力,它允許用戶發(fā)布自己的 Presence信息,允許用戶查詢另一個用戶的I^resence信息,或者通過成功訂閱另一個用戶的I^resence信息而在另一個用戶的I^resence信息改變后向該用戶通知已訂閱信息的變化。
在目前的實際應用中,客戶端(也稱觀察者Watcher,例如用戶終端)可以根據自己配置的訂閱列表(RLQ來訂閱(Subscribe)I^resence信息,狀態(tài)呈現服務器(I^resence Server)可以針對訂閱事件發(fā)送訂閱通知消息(Notify消息)。但是因為客戶端和狀態(tài)呈現服務之間需要通過多個網元進行通訊,這就存在著丟失Notify或者Notify響應的可能性, 也存在著因異常錯誤而由某個網元返回錯誤的響應的可能性;同時因為訂閱屬于會話類消息,當Notify失敗結束會話后,后繼相關的變化無法通知,將對用戶使用業(yè)務造成很大的影響和非常不好的體驗,比如,自己的好友明明已經上線,但是在自己的客戶端顯示仍然離線等。
因此,IP多媒體子系統(tǒng)的訂閱過程中,服務端向客戶端發(fā)送訂閱通知消息 (Notify)失敗后,如何恢復用戶訂閱關系成為需要解決的技術問題。發(fā)明內容
本發(fā)明所要解決的技術問題在于,提供一種IP多媒體子系統(tǒng)及其恢復用戶訂閱關系的方法,用于解決IP多媒體子系統(tǒng)中用戶訂閱過程中,服務端向客戶端發(fā)送訂閱通知消息失敗后如何恢復訂閱關系的問題。
為了解決上述問題,本發(fā)明提出了一種IP多媒體子系統(tǒng)中恢復用戶訂閱關系的方法,包括
客戶端注冊成功后向服務端發(fā)起訂閱請求,服務端收到所述訂閱請求后向客戶端發(fā)送訂閱通知消息;
服務端在發(fā)送訂閱通知消息后,若獲知下發(fā)的訂閱通知消息發(fā)送失敗,則向客戶端發(fā)送即時消息用以通知所述訂閱通知消息發(fā)送失?。?br>
所述客戶端收到所述即時消息后獲知所述訂閱通知消息發(fā)送失敗,重新向服務端發(fā)送訂閱請求。
所述訂閱請求中的訂閱對象包括但不限于好友狀態(tài)信息、和/或被訂閱信息,和 /或注冊狀態(tài)信息。
所述服務端在發(fā)送訂閱通知消息后若獲知下發(fā)的訂閱通知消息發(fā)送失敗,是指服務端未收到客戶端返回的響應,或者收到了非2XX的響應。
所述服務端配置有發(fā)送即時消息的次數的門限值,如果發(fā)送即時消息的次數達到配置的門限值,則服務端刪除用戶注冊信息,簽退該客戶端,并向管理員進行告警;如果發(fā)送即時消息的次數未達到配置的門限值,則服務端繼續(xù)發(fā)送即時消息用以通知客戶端所述訂閱通知消息發(fā)送失敗。
所述服務端是指在IP多媒體子系統(tǒng)業(yè)務中能夠處理訂閱請求的服務器,包括但不限于狀態(tài)呈現服務器、或群組管理服務器、或即時消息服務器;
所述客戶端是指用戶的終端,包括但不局限于電腦、手機、個人數字助理PDA設備。
本發(fā)明還提供一種IP多媒體子系統(tǒng),包括客戶端,服務端,IMS核心網,所述客戶端通過IMS核心網與服務端交互,其中
客戶端,用于在注冊成功后向服務端發(fā)起訂閱請求;
服務端,用于在收到所述訂閱請求后向客戶端發(fā)送訂閱通知消息,在發(fā)送所述訂閱通知消息后若獲知下發(fā)的所述訂閱通知消息發(fā)送失敗,則向客戶端發(fā)送即時消息用以通知客戶端所述訂閱通知消息發(fā)送失敗;
相應地,所述客戶端進一步用于在收到即時消息獲知所述訂閱通知消息發(fā)送失敗后,重新向所述服務端發(fā)送訂閱請求。
所述訂閱請求中的訂閱對象包括但不限于好友狀態(tài)信息、和/或被訂閱信息,和 /或注冊狀態(tài)信息。
所述服務端在發(fā)送訂閱通知消息后若獲知下發(fā)的訂閱通知消息發(fā)送失敗,是指服務端未收到客戶端返回的響應,或者收到了非2XX的響應。
所述服務端配置有發(fā)送即時消息的次數的門限值,如果發(fā)送即時消息的次數達到配置的門限值,則服務端刪除用戶注冊信息,簽退該客戶端,并向管理員進行告警;如果發(fā)送即時消息的次數未達到配置的門限值,則服務端繼續(xù)發(fā)送即時消息用以通知客戶端所述訂閱通知消息發(fā)送失敗。
所述服務端是指在IP多媒體子系統(tǒng)業(yè)務中能夠處理訂閱請求的服務器,包括但不限于狀態(tài)呈現服務器、或群組管理服務器、或即時消息服務器;
所述客戶端是指用戶的終端,包括但不局限于電腦、手機、個人數字助理PDA設備。
本發(fā)明的IP多媒體子系統(tǒng)及其恢復用戶訂閱關系的方法,可在服務端下發(fā)訂閱通知消息失敗后,通過下發(fā)即時消息(Message)通知客戶端訂閱通知消息發(fā)送失??;客戶端隨后可以重新發(fā)起訂閱請求恢復對相關對象的訂閱,從而提高了用戶的體驗度,增強了用戶的使用效果。
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構成本申請的一部分,本發(fā)5明的示意性實施例及其說明用于解釋本發(fā)明,并不構成對本發(fā)明的不當限定。在附圖中
圖1是現有技術中用戶在IMS業(yè)務中登錄注冊、訂閱、通知的示意圖2是本發(fā)明實施例中用于恢復用戶訂閱的IMS系統(tǒng)及其交互示意圖3是本發(fā)明實施例中用于通知客戶端的訂閱通知消息發(fā)送失敗后恢復訂閱會話的流程圖4是根據本發(fā)明實施例中的一種具體應用場景下狀態(tài)呈現服務器通知用戶終端訂閱通知消息發(fā)送失敗后恢復訂閱會話的信令交互示意圖。
具體實施方式
為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,以下結合附圖對本發(fā)明作進一步地詳細說明。需要注意的是,提供以下的優(yōu)選實施例以提供對本發(fā)明的全面和透徹理解,而不是對本發(fā)明進行任何限制。
本發(fā)明的技術方案中用于恢復訂閱會話的主要思路為
在服務端(例如,狀態(tài)呈現服務器PS)獲知發(fā)送給客戶端的訂閱通知消息發(fā)送失敗,則刪除會話后發(fā)起即時消息(Message消息)發(fā)送至客戶端(也稱觀察者,即用戶終端),通過該即時消息通知客戶端訂閱會話失敗,希望客戶端恢復會話,重新建立訂閱關系。 這就使得用戶在服務端下發(fā)訂閱通知消息(Notify)失敗后,能夠盡快消除客戶端無法獲得訂閱通知(Notify)信息的嚴重后果。
所述服務端是指在IMS業(yè)務中能夠處理訂閱請求的服務器。在IMS業(yè)務中,服務端通常包括狀態(tài)呈現服務器、群組管理服務器、即時消息服務器等等,對于每一個業(yè)務服務器,如果存在某些信息需要給客戶端實時通知,則都會支持訂閱功能,都可以依據本發(fā)明對訂閱請求進行恢復。
所述客戶端是指用戶的終端,包括但不局限于電腦、手機、個人數字助理PDA等設備,這些設備只要能夠接入IMS網絡,能夠通過標準通訊協(xié)議進行通訊的客戶端都可以認為是本發(fā)明的客戶端。所述通信協(xié)議可以是SIP(會話初始協(xié)議,Session Initiation Protocol)協(xié)議或 XCAP (XML 配置訪問協(xié)議,XML Configuration Access Protocol)協(xié)議。
如圖2所示,本發(fā)明的實施例中,提供了一種IP多媒體子系統(tǒng),用于恢復用戶訂閱關系,該IP多媒體子系統(tǒng),包括客戶端,服務端,IMS核心網??蛻舳送ㄟ^IMS核心網與服務端進行通信聯(lián)絡,所述客戶端是即時通訊客戶端,可以是定制終端,可與狀態(tài)呈現服務器或者其他業(yè)務服務器等服務端通過標準協(xié)議進行通訊。
在所述IP多媒體子系統(tǒng)中,客戶端發(fā)起注冊請求,注冊成功后發(fā)起訂閱請求,服務端收到訂閱請求后返回成功響應,同時發(fā)送訂閱通知消息(Notify);
服務端在獲知訂閱通知消息(Notify)發(fā)送失敗后,向客戶端發(fā)送即時消息 (Message)用以通知所述客戶端下發(fā)的訂閱通知消息(Notify)發(fā)送失敗;
進一步地,客戶端在收到即時消息(Message)后,獲知訂閱通知消息(Notify)發(fā)送失敗后,重新發(fā)送新的訂閱請求。
其中,所述訂閱對象包括但不限于好友狀態(tài)信息、被訂閱信息,注冊狀態(tài)信息等。
其中,所述服務端在獲知訂閱通知消息(Notify)發(fā)送失敗,是指服務端發(fā)送訂閱通知消息(Notify)后,未收到客戶端返回的響應,或者收到了非2XX的響應。
進一步地,可以設置下發(fā)即時消息(Message)通知次數的門限值,用于限制發(fā)送的上限次數。如果一個用戶在注冊期間,服務端下發(fā)即時消息(Message)通知次數未達到規(guī)定的門限值時,則可發(fā)送即時消息(Message)消息;否則,若已達到規(guī)定的門限值時,則結束,不再下發(fā)Message消息。
如圖3所示,本發(fā)明本實施例中的一種通知客戶端訂閱通知消息(Notify)發(fā)送失敗的方法,包括以下步驟
步驟Si,客戶端發(fā)起注冊請求,注冊成功后發(fā)起訂閱請求,服務端收到訂閱請求后返回成功響應,同時向客戶端發(fā)送訂閱通知消息(Notify)相關信息;其中,訂閱對象包括: 好友狀態(tài)信息、被訂閱信息,注冊狀態(tài)信息等;
步驟S2,如果發(fā)送訂閱通知消息(Notify)后,服務端獲知訂閱通知消息(Notify) 發(fā)送失敗(即沒有收到客戶端返回的Notify響應,或者收到了非2XX的響應)則刪除會話, 向客戶端發(fā)送即時消息(Message)通知客戶端所述發(fā)送的訂閱通知消息(Notify)發(fā)送失??;客戶端收到Message消息后根據相關信息重新發(fā)送新的訂閱請求;
其中,所述訂閱通知消息(Notify)發(fā)送失敗,有可以能是Notify超時,或者收到 3XX、4XX、5XX等非2XX的響應,需要按照相關的協(xié)議提供的相關錯誤的處理流程說明進行處理,這不是本發(fā)明關注的問題,在此不再贅述;
其中,客戶端重新發(fā)起訂閱后,服務端重新下發(fā)訂閱通知消息(Notify);如果本次下發(fā)訂閱通知消息(Notify)通知成功,則客戶端可以繼續(xù)保持該訂閱會話;如果本次通知仍不成功,需要重新執(zhí)行本步驟直到下發(fā)Message次數達到允許下發(fā)的次數上限。此處下發(fā)Message次數的上限是由業(yè)務側規(guī)定。
步驟S3,如果一個用戶在注冊期間,服務端下發(fā)Message消息通知的次數未達到規(guī)定的上限值時,返回步驟S2,繼續(xù)下發(fā)Message消息;否則結束。
進一步地,如果一個用戶在注冊期間,服務端發(fā)送Message的次數達到規(guī)定的上限值,則放棄對客戶端的通知,刪除用戶注冊信息,簽退客戶端,并向管理員進行告警。
此時,服務端可以選擇禁止用戶登錄,也可以選擇只刪除訂閱會話。如果只刪除訂閱會話,客戶端無法獲得之后的本次訂閱信息的變化通知。所述允許發(fā)送Message通知的次數上限值由IMS中的業(yè)務側決定。
通過上述的關于IMS系統(tǒng)及其恢復訂閱關系的技術方案,在服務端下發(fā)Notify通知失敗后,通過下發(fā)Message消息通知客戶端該Notify通知失敗,客戶端隨后可以重新發(fā)起訂閱請求恢復對相關對象的訂閱,從而提高了用戶的體驗度,增加了用戶的使用效果。
下面以狀態(tài)呈現服務器作為服務端的應用實例進行進一步的說明。
圖4是狀態(tài)呈現服務器作為服務端的IMS系統(tǒng)中,在Notify通知失敗后恢復訂閱會話的流程示意圖。
圖4所示的一種IP多媒體子系統(tǒng),用于恢復用戶訂閱關系,該IP多媒體子系統(tǒng), 包括用戶終端,狀態(tài)呈現服務器,IMS核心網。用戶終端通過IMS核心網與狀態(tài)呈現服務器進行通信聯(lián)絡,所述用戶終端是即時通訊客戶端,可以是定制終端,可與狀態(tài)呈現服務器或者其他業(yè)務服務器通過標準協(xié)議進行通訊。
在所述IP多媒體子系統(tǒng)中,用戶終端(UE)發(fā)起注冊請求,注冊成功后發(fā)起訂閱請求,狀態(tài)呈現服務器收到訂閱請求后返回成功響應,同時發(fā)送訂閱通知消息(Notify)相關信息;
狀態(tài)呈現服務器在獲知訂閱通知消息(Notify)發(fā)送失敗后,向用戶終端發(fā)送 Message消息通知訂閱通知消息(Notify)發(fā)送失敗。
進一步地,用戶終端在收到Message消息后,獲知訂閱通知消息(Notify)發(fā)送失敗后,重新發(fā)送新的訂閱請求。
其中,所述訂閱對象包括但不限于好友狀態(tài)信息、被訂閱信息,注冊狀態(tài)信息等。
其中,所述狀態(tài)呈現服務器在獲知Notify通知發(fā)送失敗,是指發(fā)送Notify通知后,未收到用戶終端返回的響應,或者收到了非2XX的響應。
進一步地,可以設置下發(fā)Message消息通知次數的上限數值,如果一個用戶在注冊期間,服務端下發(fā)Message消息通知次數未達到規(guī)定的上限值時,則可發(fā)送Message消息;否則結束,不再下發(fā)Message消息。
基于圖4所示的IP多媒體子系統(tǒng),狀態(tài)呈現服務器通知用戶終端訂閱通知消息 (Notify)發(fā)送失敗的方法,包括
步驟401,用戶終端UE發(fā)起注冊請求,注冊成功后發(fā)起訂閱請求,狀態(tài)呈現服務器收到訂閱請求后返回成功響應,同時向用戶終端發(fā)送Notify通知相關信息;其中,訂閱對象包括好友狀態(tài)信息、被訂閱信息,注冊狀態(tài)信息等;
步驟402,如果發(fā)送Notify通知后,狀態(tài)呈現服務器獲知Notify通知失敗(沒有收到用戶終端返回的Notify響應,或者收到了非2XX的響應),則刪除會話,向用戶終端發(fā)送Message消息通知用戶終端所述發(fā)送的Notify通知失??;用戶終端收到Message消息后根據相關信息重新發(fā)送新的訂閱請求;
其中,所述Notify通知失敗有可以能是Notify超時,以及收到3XX、4XX、5XX的響應,需要按照相關的協(xié)議提供的相關錯誤的處理流程說明進行處理,這不是本發(fā)明關注的問題,在此不再贅述;
其中,用戶終端重新發(fā)起訂閱后,服務端重新下發(fā)Notify通知消息;如果本次 Notify通知成功,則用戶終端可以繼續(xù)保持該訂閱會話;如果本次通知仍不成功,需要重新執(zhí)行本步驟直到下發(fā)Message次數達到允許下發(fā)的次數上限。這個下發(fā)Message次數的上限是由業(yè)務側規(guī)定。
步驟403,如果一個用戶在注冊期間,狀態(tài)呈現服務器下發(fā)Message消息通知的次數未達到規(guī)定的上限值時,返回步驟402,繼續(xù)下發(fā)Message消息;否則結束。
進一步地,如果一個用戶在注冊期間,狀態(tài)呈現服務器發(fā)送Message的次數達到規(guī)定的上限值,則放棄對用戶終端的通知,刪除用戶注冊信息,簽退客戶端,并向管理員進行告警。此時,狀態(tài)呈現服務器可以選擇禁止用戶登錄,也可以選擇只刪除訂閱會話。如果只刪除訂閱會話,客戶端無法獲得之后的本次訂閱信息的變化通知。所述允許發(fā)送Message 通知的次數上限值由IMS中的業(yè)務側決定。
通過上述的關于IMS系統(tǒng)及其恢復訂閱關系的技術方案,在狀態(tài)呈現服務器下發(fā) Notify失敗后,通過下發(fā)Message消息通知觀察者通知失敗,用戶終端隨后可以重新發(fā)起訂閱請求恢復對相關對象的訂閱,從而提高了用戶的體驗度,增加了用戶的使用效果。
在圖4所示的IMS系統(tǒng)中,用戶終端注冊成功,訂閱成功,但是狀態(tài)呈現服務器下發(fā)Notify失敗后,發(fā)送Message消息通知,用戶終端重新發(fā)起訂閱,狀態(tài)呈現服務器再次發(fā)送Notify的流程。
圖4中的各個詳細信令流程如下
A、步驟1-步驟2,用戶終端完成在IMS核心網上面的注冊,以及核心網完成在狀態(tài)呈現服務端上的第三方注冊;
B、步驟3-步驟6,用戶終端發(fā)送訂閱,狀態(tài)呈現服務器返回訂閱成功的響應;
C、步驟7-步驟8,狀態(tài)呈現服務器下發(fā)Notify消息,但未接收到對應的響應,即發(fā)送Notify通知失??;
D、步驟9-步驟12,狀態(tài)呈現服務器下發(fā)Message請求,通知到用戶終端,用戶終端返回響應;
E、步驟13-步驟16,用戶終端重新發(fā)送訂閱,狀態(tài)呈現服務器返回訂閱成功的響應;
F、步驟17-步驟20,狀態(tài)呈現服務器再次下發(fā)Notify消息,并收到了成功的響應。
以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領域的技術人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。
權利要求
1.一種IP多媒體子系統(tǒng)中恢復用戶訂閱關系的方法,包括客戶端注冊成功后向服務端發(fā)起訂閱請求,服務端收到所述訂閱請求后向客戶端發(fā)送訂閱通知消息;服務端在發(fā)送訂閱通知消息后,若獲知下發(fā)的訂閱通知消息發(fā)送失敗,則向客戶端發(fā)送即時消息用以通知所述訂閱通知消息發(fā)送失敗;所述客戶端收到所述即時消息后獲知所述訂閱通知消息發(fā)送失敗,重新向服務端發(fā)送訂閱請求。
2.如權利要求1所述的方法,其特征在于,所述訂閱請求中的訂閱對象包括但不限于好友狀態(tài)信息、和/或被訂閱信息,和/或注冊狀態(tài)信息。
3.如權利要求1所述的方法,其特征在于,所述服務端在發(fā)送訂閱通知消息后若獲知下發(fā)的訂閱通知消息發(fā)送失敗,是指服務端未收到客戶端返回的響應,或者收到了非2XX的響應。
4.如權利要求1所述的方法,其特征在于,所述服務端配置有發(fā)送即時消息的次數的門限值,如果發(fā)送即時消息的次數達到配置的門限值,則服務端刪除用戶注冊信息,簽退該客戶端,并向管理員進行告警;如果發(fā)送即時消息的次數未達到配置的門限值,則服務端繼續(xù)發(fā)送即時消息用以通知客戶端所述訂閱通知消息發(fā)送失敗。
5.如權利要求1至4中任一項所述的方法,其特征在于, 所述服務端是指在IP多媒體子系統(tǒng)業(yè)務中能夠處理訂閱請求的服務器,包括但不限于狀態(tài)呈現服務器、或群組管理服務器、或即時消息服務器;所述客戶端是指用戶的終端,包括但不局限于電腦、手機、個人數字助理PDA設備。
6.一種IP多媒體子系統(tǒng),包括客戶端,服務端,IMS核心網,所述客戶端通過IMS核心網與服務端交互,其中客戶端,用于在注冊成功后向服務端發(fā)起訂閱請求;服務端,用于在收到所述訂閱請求后向客戶端發(fā)送訂閱通知消息,在發(fā)送所述訂閱通知消息后若獲知下發(fā)的所述訂閱通知消息發(fā)送失敗,則向客戶端發(fā)送即時消息用以通知客戶端所述訂閱通知消息發(fā)送失敗;相應地,所述客戶端進一步用于在收到即時消息獲知所述訂閱通知消息發(fā)送失敗后, 重新向所述服務端發(fā)送訂閱請求。
7.如權利要求6所述IP多媒體子系統(tǒng),其特征在于,所述訂閱請求中的訂閱對象包括但不限于好友狀態(tài)信息、和/或被訂閱信息,和/或注冊狀態(tài)信息。
8.如權利要求6所述IP多媒體子系統(tǒng),其特征在于,所述服務端在發(fā)送訂閱通知消息后若獲知下發(fā)的訂閱通知消息發(fā)送失敗,是指服務端未收到客戶端返回的響應,或者收到了非2XX的響應。
9.如權利要求6所述IP多媒體子系統(tǒng),其特征在于,所述服務端配置有發(fā)送即時消息的次數的門限值,如果發(fā)送即時消息的次數達到配置的門限值,則服務端刪除用戶注冊信息,簽退該客戶端,并向管理員進行告警;如果發(fā)送即時消息的次數未達到配置的門限值,則服務端繼續(xù)發(fā)送即時消息用以通知客戶端所述訂閱通知消息發(fā)送失敗。
10.如權利要求6至9中任一項所述IP多媒體子系統(tǒng),其特征在于, 所述服務端是指在IP多媒體子系統(tǒng)業(yè)務中能夠處理訂閱請求的服務器,包括但不限于狀態(tài)呈現服務器、或群組管理服務器、或即時消息服務器;所述客戶端是指用戶的終端,包括但不局限于電腦、手機、個人數字助理PDA設備。
全文摘要
本發(fā)明涉及通信技術領域,公開了一種IP多媒體子系統(tǒng)及其中恢復用戶訂閱關系的方法,IP多媒體子系統(tǒng)包括客戶端、服務端、IMS核心網,其中客戶端注冊成功后向服務端發(fā)起訂閱請求,服務端收到所述訂閱請求后向客戶端發(fā)送訂閱通知消息;服務端在發(fā)送訂閱通知消息后,若獲知下發(fā)的訂閱通知消息發(fā)送失敗,則向客戶端發(fā)送即時消息用以通知所述訂閱通知消息發(fā)送失?。凰隹蛻舳耸盏剿黾磿r消息后獲知所述訂閱通知消息發(fā)送失敗,重新向服務端發(fā)送訂閱請求。應用本發(fā)明可在服務端下發(fā)訂閱通知消息失敗后,通過下發(fā)即時消息通知客戶端訂閱通知消息發(fā)送失??;客戶端隨后可重新發(fā)起訂閱請求恢復對相關對象的訂閱,提高了用戶體驗度。
文檔編號H04L29/06GK102546554SQ20101060771
公開日2012年7月4日 申請日期2010年12月27日 優(yōu)先權日2010年12月27日
發(fā)明者崔丕鎖, 梁斌, 陸劍峰 申請人:中興通訊股份有限公司