CN101321158B - 一种限制业务资源订阅的方法、系统及装置 - Google Patents
一种限制业务资源订阅的方法、系统及装置 Download PDFInfo
- Publication number
- CN101321158B CN101321158B CN 200710110438 CN200710110438A CN101321158B CN 101321158 B CN101321158 B CN 101321158B CN 200710110438 CN200710110438 CN 200710110438 CN 200710110438 A CN200710110438 A CN 200710110438A CN 101321158 B CN101321158 B CN 101321158B
- Authority
- CN
- China
- Prior art keywords
- subscription
- subscriber
- information
- service resources
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/16—Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
Landscapes
- Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种限制业务资源订阅的方法、系统及装置,其中,该方法包括:接收对业务资源的订阅消息;判断对所述业务资源的订阅是否满足设定的订阅限制条件,如果不满足,拒绝对所述的业务资源订阅。因此,本发明实施例提供的方法、系统及装置可以限制业务资源的订阅,可以通过限制部分订阅者订阅某一业务的业务资源或限制部分订阅者订阅某一业务的业务资源次数,在提供业务的SIP系统有限的无线带宽资源中,体现不同业务的业务资源订阅占用的无线带宽资源的公平性。
Description
技术领域
本发明涉及在系统中订阅业务的技术,特别涉及一种在会话初始化协议(SIP,Session Initiation Protocol)系统中限制业务资源订阅的方法、系统及装置。
背景技术
SIP是一个应用层的信令控制协议,用于创建、修改和释放一个或多个参与者的会话,这些会话可以是因特网(Internet)多媒体会议、因特网协议(IP,Internet Protocol)电话或多媒体分发。会话的参与者可以通过组播(multicast)、网状单播(unicast)、或组播和网状单播两者的混合体进行通信。
在SIP系统中,SIP用户可以订阅SIP系统中的各种业务资源,例如订阅呈现业务的呈现信息等。以下对SIP用户如何订阅呈现业务的呈现信息进行具体说明。
基于SIP信令,互联网工程任务组(IETF,Internet Engineering TaskForce)提出了实现呈现业务(Presence Service)的一系列规范,其基本思想是设置支持SIP信令的呈现服务器,呈现体使用基于SIP的发布(PUBLISH)信令将自身的呈现信息,如在线、忙和离线等呈现信息传输给呈现服务器;观察者使用基于SIP的订阅(SUBSCRIBE)信令向呈现服务器订阅呈现体的呈现信息,呈现服务器接收到SUBSCRIBE信令后,根据呈现体设置的策略判断是否批准观察者的订阅,如果是,则将呈现体发布的呈现信息通过基于SIP的通报(NOTIFY)信令发送给观察者;如果否,则拒绝向观察者通报呈现体发布的呈现信息。
图1为现有技术中提供呈现业务的SIP系统架构示意图,如图所示,该系统包括文档管理客户端(XDMS Client)、集合代理(Aggregation Proxy)、呈现文档管理服务器(Presence XDMS)、呈现服务器(Presence Server)、呈现资源(Presence Source)以及观察者(Watcher)等,其中,
XDMS Client将呈现信息通过Aggregation Proxy发送给PresenceXDMS,将授权策略通过Aggregation Proxy发送给Presence Server,当Watcher通过SIP/IP核心(Core)向Presence Server订阅XDMS Client的呈现信息时,Presence Serve根据授权策略判断是否接受Watcher的订阅,如果是,从Presence XDMS获取到呈现体的呈现信息,通过SIP/IP Core发送给Watcher。
在该系统中,还包括有共用列表文档管理(Shared List XDMS)、资源列表服务器(Resource List Server)、内容服务(Content Server)以及基于SIP/IP Core的远程呈现网络(Remote Presence Network)等,这里不再累述。
在呈现业务中,观察者向呈现服务器订阅业务资源,即呈现体的呈现信息,会在呈现服务器保存观察者信息(Watcher Information),观察者信息指呈现体的每个观察者的订阅状态信息,在IETF中定义了观察者信息事件包,以及基于SIP的观察者信息订阅和通知的处理流程。呈现服务器允许呈现体订阅自己的观察者信息,当观察者信息中的订阅状态发生变化时,呈现服务器向订阅观察者信息的实体发送通知,该实体一般为呈现体,该通知的内容举例如下:
其中,该通知的内容指出观察者“Sip:Aexample.com”对呈现体“sip:Bexample.com”的订阅状态(Status)为“pending”,即挂起状态,也就是呈现服务器暂时不能将呈现体的呈现信息通过NOTIFY信令发送给观察者,直到观察者针对呈现体的观察者信息变化为激活状态为止。
为了保存针对呈现体的观察者信息,呈现服务器维护了一个图2所示的订阅状态机,当呈现服务器接收到一个对呈现体的呈现信息订阅时,根据预先设置的该呈现体对应的授权策略确定是否接受该订阅,如果对发起订阅的观察者的授权策略为拒绝,则该订阅进入终止状态;如果对发起订阅的观察者的授权策略为接受,则该订阅进入激活状态;如果对发起订阅的观察者的授权策略没有预先设置,则该订阅进入挂起状态。
从订阅状态机中可以看出,一个挂起状态的订阅如果得到呈现体的批准则进入激活状态,如果得到呈现体的放弃或拒绝,或者无资源时则进入终止状态,如果超时则进入等待状态;一个等待状态的订阅在无资源、呈现体拒绝或超时的时候进入终止状态;一个激活状态的订阅在无资源、呈现体拒绝或超时的时候进入终止状态。
详细的观察者信息的状态转移过程可参考IETF的RFC3857标准,当订阅状态发生变化时,呈现服务器就会将变化的订阅状态,即变换的观察者信息通知给观察者信息订阅者,该观察者信息订阅者通常为呈现体。
从上述叙述的呈现业务的实现可以看出,相对于另一个基于SIP信令的业务-短消息业务(SMS,Short Message Service)不同,基于SIP信令的呈现业务,在呈现服务器接收到的呈现信息需要实时刷新,并频繁响应观察者的订阅,同时众多的呈现信息对呈现服务器的发布也是一个很重的负担。因此,对呈现业务的优化是势在必行的。对呈现业务的优化方法包括:对承载呈现信息的SIP信令中进行压缩;将呈现信息承载在SIP信令中时用标签标识,以减轻SIP信令的流量;实施部分呈现信息的通报和发布,以减轻每个SIP信令的长度等。
但是,上述对呈现业务的优化方法是远远不够的,目前还没有一种可以限制呈现体的呈现信息被订阅的方法,以及进一步将这种限制情况通知该呈现体的技术。由于提供呈现业务的SIP系统无线带宽资源是有限的,因此,限制呈现信息被订阅的方法是十分必要的。该方法可以通过限制部分观察者订阅某一呈现体的呈现信息,从而在提供呈现业务的SIP系统有限的无线带宽资源中,体现不同呈现体的呈现信息的订阅占用的无线带宽资源的公平性。例如:由于没有对呈现信息被订阅的限制,而导致呈现体A只有两个好友处于“挂起”或“激活”状态,而呈现体B拥有1000个好友处于“挂起”或“激活”状态的情况,呈现体B占用的无线带宽资源是呈现体A占用的无线带宽资源的500倍,如果没有一种方法对呈现体B的呈现信息订阅的限制,则对呈现体A是不公平的。
更进一步地,如何限制提供其他业务的SIP系统的其他业务资源被订阅也是一个亟待解决的问题。
发明内容
本发明实施例提供了一种限制业务资源订阅的方法,该方法能够限制业务资源的订阅。
本发明实施例提供了一种限制业务资源订阅的系统,该系统能够限制业务资源的订阅。
本发明实施例提供了一种限制业务资源订阅的装置,该装置能够限制业务资源的订阅。
根据上述目的,本发明实施例的技术方案是这样实现的:
一种限制业务资源订阅的方法,该方法包括:
接收对业务资源的订阅消息;
判断当前正在对所述业务资源进行订阅的订阅者数目是否超出了预先设定的上限,如果超出,拒绝对所述的业务资源订阅;
在所述拒绝对业务资源订阅之后,该方法还包括:
将发送该订阅消息的订阅者的订阅信息存储在设置的拒绝队列中,所述业务资源的订阅情况变化后,或设置的订阅限制条件变化后,判断出当前订阅满足所述业务资源的订阅限制条件,根据拒绝队列中的订阅信息确定订阅者,向订阅者发送指示消息,使订阅者再次发起针对所述业务资源的订阅消息。
一种限制业务资源订阅的系统,包括:服务器、订阅者、提供者和业务XML文档管理服务器,其中,
业务XML文档管理服务器,用于存储业务资源订阅限制条件和提供者设置的策略,所述的订阅限制条件为对所述业务资源允许同时进行订阅的订阅者数目上限;
订阅者,用于向服务器发送业务资源订阅消息,接收服务器发送的业务资源或者接收服务器发送的拒绝消息;
提供者,用于将业务资源信息发送给服务器,在业务XML文档管理服务器中设置策略;
服务器,用于接收订阅者发送的所述订阅消息,判断对所述业务资源进行订阅的订阅者数目是否超出了预先设定的上限,如果超出,向所述订阅者发送拒绝订阅消息,或者根据从业务XML文档管理服务器获取的提供者设置的策略授权所述订阅者,在设定次数内将所述业务资源信息发送给订阅者;
所述服务器包括拒绝队列,用于存储被拒绝订阅的订阅者信息;
所述服务器,还用于业务资源的订阅情况变化后,或设置的订阅限制条件变化后,判断出当前订阅满足所述业务资源的订阅限制条件,根据拒绝队列中的订阅信息确定订阅者,向订阅者发送通知;
所述订阅者,用于接收到服务器发送的通知后,发送业务资源订阅消息。
一种限制业务资源订阅的装置,包括:消息传输处理模块、订阅状态统计处理模块和订阅状态记录模块,其中,
消息传输处理模块,用于将接收的业务资源订阅消息转发给订阅状态统计处理模块,根据订阅状态统计处理模块的指示发送所述业务资源信息或拒绝消息;
订阅状态统计处理模块,用于从消息传输处理模块接收所述订阅消息,判断从订阅状态记录模块获取的对所述业务资源进行订阅的订阅者数目是否超出预先设定的上限,如果超出,指示消息传输处理模块发送拒绝订阅消息,或者根据获取的提供者设置的策略授权所述订阅者,指示消息传输处理模块在设定次数内发送所述业务资源信息;
订阅状态记录模块,用于存储所述业务资源的订阅;
所述订阅状态记录模块还包括拒绝队列模块,用于存储被拒绝订阅的订阅者信息;
所述订阅状态统计处理模块,还用于当从订阅状态记录模块获取的业务资源的订阅情况变化后,或获取的订阅限制条件变化后,判断出当前订阅满足所述业务资源的订阅限制条件,根据拒绝队列中的订阅信息确定订阅者,指示消息传输处理模块向确定订阅者发送再次订阅通知。
从上述方案可以看出,本发明实施例在SIP系统的网络侧针对同一业务的业务资源设置订阅限制条件,判断出当前订阅该业务的业务资源总订阅信息不满足该业务的业务资源订阅限制条件时,则无论根据设置的策略是否授权该订阅者,拒绝该订阅,或者根据设置的策略授权该订阅者后,接受设定次数该订阅,给订阅者发送设定次数的包含该业务资源的通知消息后,一般是一次通知之后,以后就不再维护该订阅。因此,本发明实施例提供的方法、系统及装置可以限制业务资源的订阅,可以通过限制部分订阅者订阅某一业务的业务资源或限制部分订阅者订阅某一业务的业务资源次数,在提供业务的SIP系统有限的无线带宽资源中,体现不同业务的业务资源订阅占用的无线带宽资源的公平性。
附图说明
图1为现有技术中提供呈现业务的SIP系统架构示意图;
图2为现有技术呈现服务器维护的订阅状态机工作示意图;
图3为本发明实施例在SIP中限制订阅呈现业务的呈现信息的系统示意图;
图4为本发明实施例呈现服务器的结构示意图;
图5为本发明实施例提供的限制业务资源订阅的方法流程图;
图6为本发明较佳实施例提供的限制业务订阅的方法一流程图;
图7为本发明较佳实施例提供的限制业务订阅的方法二流程图;
图8为本发明实施例向呈现体通知观察者信息的方法流程图;
图9为本发明实施例呈现服务器维护的订阅状态机工作示意图;
图10为本发明实施例呈现服务器指示观察者订阅呈现信息的方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明实施例作进一步的详细描述。
为了限制业务资源的订阅,本发明实施例在SIP系统的网络侧针对同一业务的业务资源设置订阅限制条件,如最大订阅数目,即订阅数目上限或最大负荷值,当网络侧接收到对该业务的业务资源订阅消息后,判断当前订阅该业务的业务资源总订阅信息是否满足该业务的业务资源订阅限制条件,如果不满足,则无论根据设置的策略是否授权该订阅者,拒绝该订阅,或者根据设置的策略授权该订阅者后,接受设定次数该订阅,给订阅者发送设定次数的包含该业务资源的通知消息后,一般是一次通知之后,以后不再维护该订阅,即当网络侧再次接收到具有该业务的实体发布的业务资源后,不再给该订阅者发送具有该业务的实体发布的业务资源。
这样,就可以通过限制部分订阅者订阅某一业务的业务资源或限制部分订阅者订阅某一业务的业务资源次数,在提供业务的SIP系统有限的无线带宽资源中,体现不同业务的业务资源订阅占用的无线带宽资源的公平性。
在本实施例中,当判断当前订阅该业务的业务资源总订阅信息不满足该业务的业务资源订阅限制条件后,还可以将该订阅者的订阅信息存储在网络侧预先设置的拒绝队列中,在订阅该业务的业务资源总订阅信息有变化或该业务的业务资源订阅限制条件有变化后,再次判断出当前订阅该业务的业务资源总订阅信息满足该业务的业务资源订阅限制条件时,根据拒绝队列中的订阅信息确定订阅者,向订阅者发送通知,使订阅者再次发起针对该业务的业务资源的订阅。
以下用在SIP系统中限制订阅呈现业务的呈现信息的过程进行举例说明。
图3为本发明实施例在SIP中限制订阅呈现业务的呈现信息的系统示意图,该系统包括:呈现服务器、观察者、呈现体以及呈现业务XML文档管理服务器,其中,
呈现业务XML文档管理服务器,用于存储订阅限制条件,如对呈现体的最大活跃订阅数等,存储呈现体设置的策略。
呈现服务器,用于接收观察者发送的SUBSCRIBE信令,判断当前订阅呈现体的总订阅信息是否满足从呈现业务XML文档管理服务器获取的订阅限制条件,如果是,根据从呈现业务XML文档管理服务器获取的呈现体设置的策略确定批准观察者的订阅,将呈现体发布的呈现信息承载在NOTIFY信令中发送给观察者;如果否,向观察者发送拒绝的SIP信令,或者根据从呈现业务XML文档管理服务器获取的呈现体设置的策略确定批准观察者的订阅,在设定的订阅次数内将呈现体发布的呈现信息承载在NOTIFY信令中发送给观察者。
观察者,用于向呈现服务器发送SUBSCRIBE信令,接收呈现服务器发送的承载呈现信息的NOTIFY信令或接收呈现服务器发送的拒绝SIP信令。
呈现体,用于将呈现信息承载在PUBLISH信令中发布给呈现服务器,以及在呈现业务XML文档管理服务器设置策略。
在本发明实施例中,呈现服务器还用于维护观察者的订阅状态,即维护呈现体的观察者信息,在呈现体向呈现服务器发送订阅观察者信息的SUBSCRIBE信令时,将维护的观察者信息承载在NOTIFY信令中发送给呈现体。
在本发明实施例中,当判断订阅呈现体的总订阅信息不满足从呈现业务XML文档管理服务器获取的订阅限制条件时,还可以在呈现服务器中设置拒绝队列,存储被拒绝订阅的观察者信息,在订阅该呈现体的情况有变化(如订阅的总数目变化了)或该呈现体的订阅限制条件有变化后,再次判断出订阅呈现体的总订阅信息满足从呈现业务XML文档管理服务器获取的订阅限制条件时,根据拒绝队列中的观察者信息确定观察者,向观察者发送通知,使观察者再次发起针对该呈现体的呈现信息的订阅。
在本发明实施例中,呈现服务器包括SIP信令传输处理模块、订阅状态统计处理模块以及订阅状态记录模块,如图4所示,其中,
SIP信令传输模块,用于接收来自观察者或呈现体发送的SIP信令,包括观察者订阅呈现体的呈现信息的SUBSCRIBE信令或呈现体订阅观察者信息的SUBSCRIBE信令,根据订阅状态统计处理模块的指示发送NOTIFY信令响应观察者订阅呈现体的呈现信息的SUBSCRIBE信令或呈现体订阅观察者信息的SUBSCRIBE信令,当拒绝对呈现体的呈现信息的订阅时,也可以根据订阅状态统计处理模块的指示发送拒绝SIP信令。
订阅状态统计处理模块,用于与SIP信令传输模块和订阅状态记录模块分别进行信息交互,从订阅状态记录模块获取当前订阅呈现体的呈现信息总订阅信息,判断当前订阅呈现体的总订阅信息是否满足从呈现业务XML文档管理服务器获取的订阅限制条件,如果是,根据从呈现业务XML文档管理服务器获取的呈现体设置的策略确定批准观察者的订阅,指示SIP信令传输模块,将呈现体的呈现信息承载在NOTIFY信令中发送给发送SIP信令的观察者;如果否,指示SIP信令传输模块,向观察者发送拒绝的SIP信令,或者根据从呈现业务XML文档管理服务器获取的呈现体设置的策略确定批准观察者的订阅,指示SIP信令传输模块,在设定的订阅次数内将呈现体发布的呈现信息承载在NOTIFY信令中发送给观察者。
该订阅状态统计处理模块,还用于从订阅状态记录模块获取发送SIP信令的呈现体要获取的观察者信息,发送给SIP信令传输模块,指示SIP信令传输模块将该观察者信息承载在NOTIFY信令中发送给该呈现体。
订阅状态记录模块,用于存储观察者信息,如观察者的标识和被拒呈现信息观察者的标识、还用于存储当前订阅呈现体的总订阅信息,如观察者的总数量以及观察者的总数量,该当前订阅呈现体的总订阅信息随着订阅呈现体的观察者信息实时变化。
在本实施例中,在订阅状态记录模块还可以包括拒绝队列模块,将拒绝订阅呈现体的观察者信息存储在拒绝队列模块中,当订阅状态统计处理模块在订阅该呈现体的总订阅信息有变化或该呈现体的订阅限制条件有变化后,再次判断出订阅呈现体的总订阅信息满足从呈现业务XML文档管理服务器获取的订阅限制条件时,根据拒绝队列中的观察者信息确定观察者,向观察者发送通知,使观察者再次发起针对该呈现体的呈现信息的订阅。
图5为本发明实施例提供的限制业务资源订阅的方法流程图,该方法采用限制订阅呈现体的呈现信息举例进行说明,其具体步骤为:
步骤501、呈现服务器接收到观察者发送的SUBSCRIBE信令,该信令请求订阅呈现体的呈现信息。
在该SUBSCRIBE信令中,携带有呈现体标识,用于标识观察者要求订阅哪个呈现体的呈现信息,还携带有观察者信息,用于根据该观察者信息,针对呈现体设置的策略判断是否批准该观察者订阅该呈现体的呈现信息。
步骤502、呈现服务器接收到该SUBSCRIBE信令后,呈现服务器判断当前针对该呈现体的总订阅信息是否满足设置的订阅限制条件,如果是,执行步骤503;如果否,执行步骤504。
在判断时,设置的订阅限制条件可以设置为活跃订阅(包括激活状态和挂起状态的订阅该呈现体的呈现信息的观察者)数目上限,判断订阅该呈现体的呈现信息的当前处于活跃订阅状态的观察者的数目是否超过设置的最大活跃订阅数目,如果是,执行步骤504;如果否,执行步骤503。
呈现服务器还将SUBSCRIBE信令携带的观察者信息进行存储,以便在后续呈现体向呈现服务器发起SUBSCRIBE信令后,将该呈现体的所有观察者信息承载在NOTIFY信令中发送给呈现服务器。
呈现服务器还可以对该呈现体的所有观察者信息进行统计,得到该呈现体的总订阅信息,总订阅信息可以包括订阅该呈现体的呈现信息的各个观察者标识、各个观察者当前的订阅状态以及当前各个订阅状态的观察者的数量、被拒观察者的标识以及被拒绝观察者的总数量。
步骤503、呈现服务器将该SUBSCRIBE信令请求订阅的呈现体的呈现信息承载在NOTIFY信令中,发送给观察者。
在步骤503之前,呈现服务器还可以先给观察者发送200OK消息,该消息也为SIP消息,然后再执行步骤503。
步骤504、呈现服务器拒绝该SUBSCRIBE信令请求订阅的呈现体的呈现信息发送给观察者,或者在设定的订阅次数内,呈现体的呈现信息承载在NOTIFY信令中,发送给观察者。
步骤504中设定的订阅次数一般为一次,但是也可以为二次或三次等,这样可以减少该观察者订阅呈现体的呈现信息后,给该观察者发送呈现体的呈现信息所占用的SIP系统的无线带宽资源。
在步骤503以及步骤504的在设定的订阅次数内,呈现体的呈现信息承载在NOTIFY信令中,发送给观察者之前,该方法还包括:呈现服务器根据呈现体设置的策略对发送SUBSCRIBE信令的观察者的订阅进行审核,判断是否批准通过,如果是,再执行步骤503以及步骤504的在设定的订阅次数内,呈现体的呈现信息承载在NOTIFY通知信令中,发送给观察者;如果否,则呈现服务器拒绝该SUBSCRIBE信令请求订阅的呈现体的呈现信息发送给观察者。
在步骤504中,记述了当前针对该呈现体的总订阅信息不满足设置的订阅限制条件时的两种处理的方式,以下对这两种处理方式分别进行详细说明。
图6为本发明较佳实施例提供的限制业务订阅的方法一流程图,假设观察者为观察者A,呈现体为呈现体B,其具体步骤为:
步骤601、观察者A向呈现服务器发送SUBSCRIBE信令,即观察者A向呈现服务器订阅呈现体B的呈现信息。
该SUBSCRIBE信令发送给呈现服务器的SIP信令传输处理模块。
步骤602、呈现服务器的SIP信令传输处理模块接收到观察者A的SUBSCRIBE信令后,将SUBSCRIBE信令携带的观察者A的观察者信息以及呈现体标识提交给呈现服务器的订阅状态统计处理模块,呈现服务器的订阅状态统计处理模块统计当前的呈现体B的总订阅信息,该总订阅信息包括当前的呈现体B的活跃订阅数目,判断出当前的呈现体B的活跃订阅数目大于设置的呈现体B的最大活跃订阅数目后,无论观察者A的订阅是否被批准,将拒绝信息和相关原因承载在SIP信令中传输给呈现服务器的SIP信令传输处理模块。
可选地,呈现服务器的订阅状态统计处理模块还可以根据统计的当前呈现体B的总订阅信息确定可以被接受订阅的下次订阅时间,将确定的下次订阅时间也可以携带在SIP响应信令中。
步骤603、呈现服务器的SIP信令传输模块将该SIP错误响应信令发送给观察者A。
发送给观察者A的SIP错误响应信令为:
SIP/2.0 480 Temporarily Unavailable
Retry-After:500(Too many subscription)
其中,该SIP响应消息使用已有的480临时不可用的错误响应,并在该响应的重试头字段Retry-After中指示在多长时间(如500秒)后可以重试订阅,并可以标明需要重试的原因如太多订阅(Too many subscription)。或者直接返回一个新的4XX类别的错误响应,直接明确指示资源的订阅太多,或者订阅超负荷了,如:
SIP/2.0 418 Too Many Subscription
或者,SIP/2.0418 Resource Subscription Overload
图7为本发明较佳实施例提供的限制业务订阅的方法二流程图,假设观察者为观察者A,呈现体为呈现体B,其具体步骤为:
步骤701、观察者A向呈现服务器发送SUBSCRIBE信令,即观察者A向呈现服务器订阅呈现体B的呈现信息。
该SUBSCRIBE信令发送给呈现服务器的SIP信令传输处理模块。
步骤702、呈现服务器的SIP信令传输处理模块接收到观察者A的SUBSCRIBE信令后,将SUBSCRIBE信令携带的观察者A的观察者信息以及呈现体标识提交给呈现服务器的订阅状态统计处理模块,呈现服务器的订阅状态统计处理模块统计当前的呈现体B的总订阅信息,该总订阅信息包括当前的呈现体B的活跃订阅数目,判断出当前的呈现体B的活跃订阅数目大于设置的呈现体B的最大活跃订阅数目,且观察者A被授权,呈现服务器的订阅状态统计处理模块将200 OK信令发送给呈现服务器的SIP信令传输处理模块。
步骤703、呈现服务器的SIP信令传输模块接收到200 OK信令后,发送通知信令给观察者A,通知观察者A订阅呈现体B的呈现信息成功。
步骤704、呈现服务器的订阅状态统计处理模块通过SIP信令传输模块发出NOTIFY信令给观察者A,通知其所请求订阅的呈现信息,且携带本次订阅的订阅状态为已经终结,可选地,可以在NOTIFY信令中携带本次订阅终结的原因。
具体的NOTIFY通知信令举例如下:
其中,观察者A的地址和标识为sip:userexample.com;tag=xfg9,呈现体B的地址和标识为resourceexample.com;tag=ffd2,事件为呈现信息presence,订阅状态为终结(terminated),原因为订阅呈现体B的数目太多了如“toomanysubscription”。
在本发明实施例中,无论是图6还是图7所述的方法,进一步包括,当呈现服务器由于当前的呈现体B的活跃订阅数目大于设置的呈现体B的最大活跃订阅数目,而拒绝观察者A的订阅或给观察者A只发送一次订阅的呈现信息时,呈现服务器就可以记录观察者A的观察者信息,包括被拒绝观察者的标识以及被拒绝观察者的总数量等,将该记录存储到订阅状态记录模块,且实时或非实时的发送给呈现体B。
图8为本发明实施例向呈现体通知观察者信息的方法流程图,该方法涉及观察者A、呈现体B以及呈现服务器,其具体步骤为:
步骤801、呈现体B向呈现服务器发送SUBSCRIBE信令,即呈现体B向呈现服务器订阅观察者信息。
步骤802、呈现服务器接收到SUBSCRIBE信令后,向呈现体B发送200OK信令。
步骤803、呈现服务器将当前记录的呈现体B的观察者信息承载在NOTIFY信令中发送给呈现体B。
步骤804、观察者A向呈现服务器B发送SUBSCRIBE信令,该SUBSCRIBE信令携带呈现体标识以及观察者A的观察者信息,即观察者A向呈现服务器订阅呈现体B的呈现信息。
步骤805、呈现服务器接收到观察者A的SUBSCRIBE信令后,统计当前的呈现体B的总订阅信息,该总订阅信息包括当前的呈现体B的活跃订阅数目,判断出当前的呈现体B的活跃订阅数目大于设置的呈现体B的最大活跃订阅数目。
步骤806、呈现服务器向观察者A返回携带错误信息的SIP消息。
步骤807、呈现服务器将当前观察者A的观察者信息携带在NOTIFY信令中发送给呈现体B。
其中,NOTIFY信令举例如下:
为了保存针对呈现体的观察者信息,呈现服务器维护了一个图9所示的订阅状态机,该状态机可以设置在呈现服务器中的订阅状态统计处理模块中。
在本发明实施例中,使用观察者信息机制通知呈现体由于到达最大订阅数目而被拒绝的观察者,就必须扩展图2所示状态机的条件,以使与被呈现体拒绝的观察者分开,即从初始状态到达终止状态的条件中,当前订阅呈现体的呈现信息的订阅数目超过了设置的最大订阅数目。
在本发明实施例中,当呈现体通过订阅观察者信息或者通过现有的portal(这是一种通过门户网站访问的方式)等方式得知当前订阅自己的呈现信息的观察者数目已经达到最大订阅数目时,则可以通过修改呈现体设置的策略,主动终结一个或多个存在的订阅,以使新的观察者有机会再次订阅。在修改时,可以由呈现体直接访问呈现业务XML文档服务器,修改其存储的呈现体设置的策略。
无论采用图6或图7所述的方法,呈现服务器可以通过订阅状态记录模块对呈现信息的订阅者进行排队,当将观察者的订阅拒绝时,自动将观察者信息加到拒绝队列中,并当呈现体的呈现信息可再次订阅时通知拒绝队列中观察者信息对应的观察者,如用提交(REFER)或通知(MESSAGE)的方式使该观察者发起订阅,REFER信令举例如下:
这个具体的流程如图10所示,该流程涉及观察者A、呈现体B以及呈现服务器,其具体步骤为:
步骤1001、观察者A向呈现服务器发送携带呈现体A标识和观察者A信息的SUBSCRIBE信令,即观察者A向呈现服务器订阅呈现体B的呈现信息。
步骤1002、呈现服务器接收到观察者A的SUBSCRIBE信令后,统计当前的呈现体B的总订阅信息,该总订阅信息包括当前的呈现体B的活跃订阅数目,判断出当前的呈现体B的活跃订阅数目大于设置的呈现体B的最大活跃订阅数目。
步骤1003、呈现服务器向观察者A返回携带错误信息的SIP消息。
步骤1004、呈现服务器将观察者A加进设置的拒绝队列中。
步骤1005、呈现服务器实时统计当前的呈现体B的总订阅信息,该总订阅信息包括当前的呈现体B的活跃订阅数目,当判断出当前的呈现体B的活跃订阅数目不大于设置的呈现体B的最大活跃订阅数目时,从设置的拒绝队列中获知观察者A被拒绝过订阅呈现体B的呈现信息,向观察者A发送可以再次订阅的SIP信令。
步骤1006、观察者A向呈现服务器再次订阅呈现体B的呈现信息,进入呈现信息正常订阅通知流程。
在图10所示的流程中,步骤1003和步骤1004可以进行互换。
本发明实施例设置的拒绝队列可以按照订阅时间顺序排列被拒绝订阅呈现信息的观察者的观察者信息,当可以订阅后,再根据该顺序依次通知观察者,发起再次订阅。
在本发明实施例中,设置的限制订阅条件,如呈现体最大观察者数目可以存储在呈现业务XML文档管理服务器中,也可以使用XML文档管理精确控制机制使该字段只为运营商可写,该XML文档管理精确机制可以参考申请号为CN200610033602.2、名称为“一种XML文档管理方法及系统”的专利申请,这里不再累述。
从上述的系统、装置和方法可以看出,本发明实施例实现了限制呈现体的呈现信息订阅,进一步实现了将限制订阅的观察者信息通知呈现体的过程。采用本发明实施例,SIP系统的运营商可以控制SIP系统的无线带宽资源不被同一呈现体的呈现信息过多占用,有效保护运营商的投资,同时可以将限制订阅的观察者信息通知呈现体,与计费结合的时候,可以使呈现体扩大限制订阅条件,从而为运营商提供进一步收入来源。
本发明实施例只是采用限制订阅呈现体的呈现信息进行举例说明,在具体实现时,对基于SIP的系统中的其他业务的业务资源订阅,如会议业务的会议资源状态,具体可参见相关的规范RFC4575(Conference Package),也可以采用本发明实施例提供的系统、装置和方法,只不过针对的不是呈现业务,而是其他业务。
以上是对本发明具体实施例的说明,在具体的实施过程中可对本发明的方法进行适当的改进,以适应具体情况的具体需要。因此可以理解,根据本发明的具体实施方式只是起示范作用,并不用以限制本发明的保护范围。
Claims (12)
1.一种限制业务资源订阅的方法,其特征在于,该方法包括:
接收对业务资源的订阅消息;
判断当前正在对所述业务资源进行订阅的订阅者数目是否超出了预先设定的上限,如果超出,拒绝对所述的业务资源订阅;
在所述拒绝对业务资源订阅之后,该方法还包括:
将发送该订阅消息的订阅者的订阅信息存储在设置的拒绝队列中,所述业务资源的订阅情况变化后,或设置的订阅限制条件变化后,判断出当前订阅满足所述业务资源的订阅限制条件,根据拒绝队列中的订阅信息确定订阅者,向订阅者发送指示消息,使订阅者再次发起针对所述业务资源的订阅消息。
2.如权利要求1所述的方法,其特征在于,所述拒绝对所述的业务资源订阅为:
向发送该订阅消息的订阅者发送错误响应消息。
3.如权利要求2所述的方法,其特征在于,所述向发送该订阅消息的订阅者发送错误响应消息中包括出错原因,所述的原因指明对所述业务资源的订阅不满足所述的订阅限制条件。
4.如权利要求1所述的方法,其特征在于,所述拒绝对所述的业务资源订阅为:
根据设置的策略确定对发送该订阅消息的订阅者进行鉴权通过后,向所述订阅者发送一个包含所述业务资源信息的通知消息,同时终止该订阅。
5.如权利要求4所述的方法,其特征在于,还在终止该订阅的通知消息中包含终止订阅的原因,所述的原因指明对所述业务资源的订阅不满足所述的订阅限制条件。
6.如权利要求1所述的方法,其特征在于,在接收对所述的业务资源订阅消息之前,接受所述业务资源的观察者信息的订阅;
拒绝对所述的业务资源订阅之后,该方法还包括:向提供者发送包含所述观察者信息的通知消息,所述观察者信息中包含被拒绝订阅所述业务资源的订阅者信息。
7.如权利要求1~6所述的任意一种方法,其特征在于,所述的业务资源为呈现业务的呈现信息、或会议业务的会议状态。
8.一种限制业务资源订阅的系统,其特征在于,包括:服务器、订阅者、提供者和业务XML文档管理服务器,其中,
业务XML文档管理服务器,用于存储业务资源订阅限制条件和提供者设置的策略,所述的订阅限制条件为对所述业务资源允许同时进行订阅的订阅者数目上限;
订阅者,用于向服务器发送业务资源订阅消息,接收服务器发送的业务资源或者接收服务器发送的拒绝消息;
提供者,用于将业务资源信息发送给服务器,在业务XML文档管理服务器中设置策略;
服务器,用于接收订阅者发送的所述订阅消息,判断对所述业务资源进行订阅的订阅者数目是否超出了预先设定的上限,如果超出,向所述订阅者发送拒绝订阅消息,或者根据从业务XML文档管理服务器获取的提供者设置的策略授权所述订阅者,在设定次数内将所述业务资源信息发送给订阅者;
所述服务器包括拒绝队列,用于存储被拒绝订阅的订阅者信息;
所述服务器,还用于业务资源的订阅情况变化后,或设置的订阅限制条件变化后,判断出当前订阅满足所述业务资源的订阅限制条件,根据拒绝队列中的订阅信息确定订阅者,向订阅者发送通知;
所述订阅者,用于接收到服务器发送的通知后,发送业务资源订阅消息。
9.如权利要求8所述的系统,其特征在于,所述服务器,还用于接收提供者发送的订阅订阅者信息消息,将订阅者信息发送给提供者;
所述提供者,还用于向服务器发送订阅订阅者信息消息,接收服务器发送的订阅者信息。
10.如权利要求8~9所述的任意一项所述的系统,其特征在于,所述服务器为呈现服务器、所述订阅者为观察者和所述提供者为呈现体。
11.一种限制业务资源订阅的装置,其特征在于,包括:消息传输处理模块、订阅状态统计处理模块和订阅状态记录模块,其中,
消息传输处理模块,用于将接收的业务资源订阅消息转发给订阅状态统计处理模块,根据订阅状态统计处理模块的指示发送所述业务资源信息或拒绝消息;
订阅状态统计处理模块,用于从消息传输处理模块接收所述订阅消息,判断从订阅状态记录模块获取的对所述业务资源进行订阅的订阅者数目是否超出预先设定的上限,如果超出,指示消息传输处理模块发送拒绝订阅消息,或者根据获取的提供者设置的策略授权订阅者,指示消息传输处理模块在设定次数内发送所述业务资源信息;
订阅状态记录模块,用于存储所述业务资源的订阅;
所述订阅状态记录模块还包括拒绝队列模块,用于存储被拒绝订阅的订阅者信息;
所述订阅状态统计处理模块,还用于当从订阅状态记录模块获取的业务资源的订阅情况变化后,或获取的订阅限制条件变化后,判断出当前订阅满足所述业务资源的订阅限制条件,根据拒绝队列中的订阅信息确定订阅者,指示消息传输处理模块向确定订阅者发送再次订阅通知。
12.如权利要求11所述的装置,其特征在于,所述订阅状态统计处理模块,还用于从订阅状态记录模块获取订阅者信息,向消息传输模块发送,指示消息传输模块发送订阅者信息;
所述订阅状态记录模块,还用于存储订阅者信息;
所述消息传输处理模块,还用于在订阅状态统计处理模块的指示下,发送订阅者信息。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710110438 CN101321158B (zh) | 2007-06-05 | 2007-06-05 | 一种限制业务资源订阅的方法、系统及装置 |
PCT/CN2008/071073 WO2008148336A1 (fr) | 2007-06-05 | 2008-05-23 | Procédé, système et appareil pour limiter l'abonnement à des ressources de service |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710110438 CN101321158B (zh) | 2007-06-05 | 2007-06-05 | 一种限制业务资源订阅的方法、系统及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101321158A CN101321158A (zh) | 2008-12-10 |
CN101321158B true CN101321158B (zh) | 2013-04-17 |
Family
ID=40093185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710110438 Active CN101321158B (zh) | 2007-06-05 | 2007-06-05 | 一种限制业务资源订阅的方法、系统及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101321158B (zh) |
WO (1) | WO2008148336A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102083052B (zh) * | 2009-12-01 | 2014-02-19 | 华为技术有限公司 | 一种成员呈现信息订阅控制方法、系统及装置 |
CN104468142B (zh) * | 2014-10-30 | 2018-03-20 | 海尔优家智能科技(北京)有限公司 | 一种订阅通知的方法和装置 |
CN104899247B (zh) * | 2015-04-20 | 2018-09-25 | 广州华多网络科技有限公司 | 一种信息订制方法和系统 |
CN113259223B (zh) * | 2021-04-30 | 2022-09-27 | 南京苏宁软件技术有限公司 | 服务号的订阅管理方法、装置、计算机设备和存储介质 |
CN114884758A (zh) * | 2021-11-26 | 2022-08-09 | 北京京东方技术开发有限公司 | 通信方法、装置、电子设备和计算机可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005002181A1 (en) * | 2003-06-27 | 2005-01-06 | Hewlett-Packard Development Company, L.L.P. | Method and apparatus for automatically determining a presence status |
CN1885834A (zh) * | 2005-06-20 | 2006-12-27 | 华为技术有限公司 | 一种订阅存在信息的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1753199B1 (en) * | 2005-08-11 | 2015-10-28 | Swisscom AG | Method and system for subscribing a user to a service |
-
2007
- 2007-06-05 CN CN 200710110438 patent/CN101321158B/zh active Active
-
2008
- 2008-05-23 WO PCT/CN2008/071073 patent/WO2008148336A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005002181A1 (en) * | 2003-06-27 | 2005-01-06 | Hewlett-Packard Development Company, L.L.P. | Method and apparatus for automatically determining a presence status |
CN1885834A (zh) * | 2005-06-20 | 2006-12-27 | 华为技术有限公司 | 一种订阅存在信息的方法 |
Non-Patent Citations (2)
Title |
---|
Cisco.Configuring Presence Service.《Cisco Documentation》.2007, * |
RFC.Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence.《RFC:3921》.2004, * |
Also Published As
Publication number | Publication date |
---|---|
WO2008148336A1 (fr) | 2008-12-11 |
CN101321158A (zh) | 2008-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9571291B2 (en) | Method for automatically setting up and/or controlling a telecommunication conference | |
CN101257395B (zh) | 支持多媒体会议预约的系统及方法 | |
US8589547B2 (en) | Side channel for membership management within conference control | |
EP2076998B1 (en) | Method and apparatus for establishing multicast groups | |
US7991848B2 (en) | Method and apparatus for sending instant message disposition notification request and response in a converged-IP messaging service and system thereof | |
EP2009936B1 (en) | METHOD, SYSTEM AND DEVICE FOR REALIZING GROUP TALK QoE | |
JP4856185B2 (ja) | プッシュツートーク型サービスのための方法および装置 | |
US7747270B2 (en) | Method for allocating a communication right, communication conference session server and communication conference session server arrangement | |
US9426108B2 (en) | Method for storing conversation upon user's request in CPM system, and system thereof | |
CN102388631B (zh) | 用于在满足特定条件时建立会话的系统和方法 | |
CN101467418A (zh) | 信令承载传输的损失 | |
CN101237336A (zh) | 进行多方通信的方法、系统及装置和发布事件状态的方法 | |
CN101321158B (zh) | 一种限制业务资源订阅的方法、系统及装置 | |
CN101946531A (zh) | 重新激活的组通信 | |
CN103281195B (zh) | 提供服务授权的方法和网关设备 | |
CN100481770C (zh) | 服务系统、信息控制设备、以及信息控制方法 | |
US20060234745A1 (en) | Method and system for collecting opinions of push-to-talk over cellular participants in push-to-talk over cellular network | |
EP2161910A1 (en) | A method for controlling user number displayed in the conference service noticing information | |
CN101448201B (zh) | 建立广播或组播承载的方法、设备和系统 | |
CN101686440A (zh) | 一种会话控制的方法、装置及系统 | |
CN101026812A (zh) | 在多方通信系统中获得会话参与用户会话能力的方法 | |
CN101026814A (zh) | 一种会话建立话权分配方法及系统 | |
US20130083733A1 (en) | Method and system for transmitting and receiving media according to importance of media burst | |
CN101394365A (zh) | 一种消息关联方法及用户终端以及服务器 | |
CN101305623B (zh) | 用于确定具有控制功能的pt服务器的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |