CN1984127B - 一种订阅机制中实现批量刷新的方法 - Google Patents

一种订阅机制中实现批量刷新的方法 Download PDF

Info

Publication number
CN1984127B
CN1984127B CN200510120883.0A CN200510120883A CN1984127B CN 1984127 B CN1984127 B CN 1984127B CN 200510120883 A CN200510120883 A CN 200510120883A CN 1984127 B CN1984127 B CN 1984127B
Authority
CN
China
Prior art keywords
subscription
subscriber
informant
list information
dialog
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.)
Expired - Fee Related
Application number
CN200510120883.0A
Other languages
English (en)
Other versions
CN1984127A (zh
Inventor
王啸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN200510120883.0A priority Critical patent/CN1984127B/zh
Priority to PCT/CN2006/003365 priority patent/WO2007068194A1/zh
Publication of CN1984127A publication Critical patent/CN1984127A/zh
Application granted granted Critical
Publication of CN1984127B publication Critical patent/CN1984127B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/54Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明公开了订阅机制中实现批量刷新的方法,所述方法包括:通知者接收订阅者发送的第一列表信息;所述通知者根据所述第一列表信息刷新所述通知者本地的订阅实例;所述通知者发送响应消息至所述订阅者,所述响应消息携带第二列表信息,所述第二列表信息用于刷新所述订阅者本地的订阅实例。本发明还公开了订阅机制中实现批量刷新的装置。本发明方法由于采用批量刷新方式,提高了刷新订阅实例的效率,减少了刷新订阅的消息数量,并降低了对网络带宽的消耗。

Description

一种订阅机制中实现批量刷新的方法
技术领域
本发明涉及一种核心网的资源订阅方法,尤其涉及的是,一种在订阅机制中实现批量刷新的方法。
背景技术
现有技术中,SIP(Session Initiation Protocol,会话发起协议,以下简称:SIP)是IETF制定的多媒体通信***框架协议之一,它是一个基于文本的应用层控制协议,独立于底层协议,用于建立、修改和终止IP网上的双方或多方多媒体会话。
SIP实现了订阅/通知框架,并引入了订阅SUBSCRIBE和通知NOTIFY方法。SUBSCRIBE方法用于订阅,而NOTIFY方法用于传递一个事件的任何变化的通知。所谓订阅通知就是,一个用户或资源向其他资源发起订阅,由于后者有前者感兴趣的事件,之后前者会接收到有关该事件的状态和任何变化的通知。简单流程如图1所示,其包括以下步骤:
步骤(1):Subscriber(订阅者)向Notifier(资源的拥有者)发送一个订阅(SUBSCRIBE)消息,请求订阅感兴趣的资源状态;
步骤(2):Notifier允许Subscriber订阅,向Subscriber发送一个200OK响应确认,在Subscriber和Notifier间建立一个订阅的对话dialog,并在Subscriber和Notifier上分别创建订阅实例;
步骤(3):Notifier向Subscriber发送一个NOTIFY(通知)消息,在NOTIFY消息的消息体中携带Subscriber订阅的资源状态;
步骤(4):Subscriber收到NOTIFY消息后,向Notifier发送一个200OK响应,表示成功接收了NOTIFY消息。
现有技术的SIP订阅通知机制是会创建dialog,所谓dialog也就是对话,是通信双方之间的一种SIP关系,它提供了在通信双方之间进行路由和消息排序时所依据的必要的状态信息。并且一个dialog可以关联多个订阅的实例,也就是说,Subscriber向Notifier发起多个订阅请求,分别订阅不同的事件包,而这些不同的订阅请求将分别在Subscriber和Notifier上创建一一对应的订阅实例,所有这些订阅的实例都关联一个dialog。当多个订阅实例关联一个dialog时,每个订阅实例由一个唯一的id值标志,该id是由Subscriber发起每个初始订阅请求时产生的,并通过订阅请求中的Event头域的id参数带给Notifier。
和SIP的注册机制类似,订阅采用软状态,因而需要刷新。订阅的刷新是通过在订阅周期内发送一个SUBSCRIBE请求,并将其Expires头域的值设定为非0的值来实现的。Subscriber需要针对每个订阅的实例发送一个SUBSCRIBE请求来刷新订阅。
显然,当Subscriber上存在多个订阅实例时,为了刷新这些订阅实例会频繁的发送大量的SUBSCRIBE请求,由此占用大量的带宽,特别是当Proxy作为多个Subscriber的代理向同一个Notifier订阅时,这种刷新订阅的请求消息的数量会非常巨大。
因此,现有技术存在缺陷,而有待于改进和发展。
发明内容
本发明的目的在于提供一种订阅机制中实现批量刷新的方法,实现对多个订阅实例进行批量刷新,以解决单独对每个订阅实例进行刷新而带来的低效和带宽浪费之问题。
本发明的技术方案包括一种SIP订阅机制中实现批量刷新的方法,该方法包括:
通知者接收订阅者创建并发送的第一列表信息,所述第一列表信息头域中包括所述订阅者本地关联同一个对话中活动状态订阅实例的标识号;
所述通知者从所述第一列表信息头域中逐一取出订阅实例的标识号,与所述对话中关联的订阅实例标识号比较,若相同,则刷新相同标识号对应的订阅实例;
若不相同,则将从所述第一列表信息头域中取出的该订阅实例标识号加入所述通知者创建的第二列表信息头域中;
所述通知者发送响应消息至所述订阅者,所述响应消息携带第二列表信息头域,使所述订阅者将所述订阅者本地的订阅实例标识号逐一取出与所述第二列表信息头域中订阅实例标识号比较,若相同,则所述订阅者将该标识号对应的所述订阅者本地订阅实例释放,若不相同则所述订阅者刷新该标识号对应的本地订阅实例。
本发明的技术方案还包括另一种SIP订阅机制中实现批量刷新的方法,该方法包括:
通知者接收订阅者创建并发送的第一列表信息,所述第一列表信息包括所述订阅者本地关联多个对话中活动状态订阅实例的呼叫标识号;
所述通知者根据所述呼叫标识号匹配到所述通知者本地的多个对话;
所述通知者刷新所匹配到的多个会话的全部订阅实例,将不能匹配的会话的呼叫标识号加入所述第二列表信息头域中。
本发明的技术方案还包括另一种SIP订阅机制中实现批量刷新的方法,该方法包括:
通知者接收订阅者创建并发送的消息体,所述消息体包括需要批量刷新的订阅实例标识号和其关联的对话的呼叫标识号;
所述通知者根据所述呼叫标识号,匹配所述通知者本地的对话,若能匹配则所述通知者将对应呼叫标识号保存到新建的订阅实例列表;
所述通知者从所述消息体中逐一取出与所述呼叫标识号关联的订阅实例的标识号,与匹配到的所述通知者本地对话所关联的订阅实例标识号比较,若相等则所述通知者刷新该标识号对应的订阅实例,否则所述通知者将该订阅实例标识号保存到所述新建的订阅实例列表。
本发明所提供的一种订阅机制中实现批量刷新的方法,由于采用批量刷新方式,提高了刷新订阅实例的效率,减少了刷新订阅的消息数量,并降低了对网络带宽的消耗。
附图说明
图1为现有技术的订阅及刷新的流程示意图;
图2为本发明方法的批量刷新的流程示意图;
图3为本发明方法的批量刷新的第二实施例的流程示意图。
具体实施方式
以下结合附图,将对本发明的各较佳实施例进行较为详细的说明。
本发明的一种订阅机制中实现批量刷新的方法,实现了一种对多个订阅实例进行批量刷新的机制。
本发明方法新扩展一个头域,用于传递需要刷新的订阅实例的标识号ID或多个对话dialog的呼叫标识号Call-ID的列表,比如命名为Sub_IDList,其格式定义可以但不限于如下:
Sub_IDList    =      (″Sub_IDList″)HCOLON(sub-idparam
                     *(COMMA sub-idparam))
sub-idparam  =  sub-id/sub-idset/callid
sub-id       =  token
sub-idset    =  idmin″|″idmax
idmin        =  1*DIGIT
idmax        =  1*DIGIT
token        =  1*(alphanum/″-″/″.″/″!″/″%″/″*″
                   /″_″/″+″/″`″/″″′/″~″)
在Sub_IDList中定义了多个sub-idparam,每个sub-idparam由逗号分隔,sub-idparam代表一个sub-id或sub-idset,sub-id是一个字符串,同订阅实例的id定义相同,sub-idset表示了一个数字的范围,两个数字间用竖号“|”分隔,且idmin的值必须小于idmax的值,如:6到21,表示为“6|21”。callid表示匹配一个dialog的Call-ID的值,定义同RFC3261标准。本发明方案规定,Sub_IDList中不能同时存在订阅实例的标识号ID和Call-ID,即要么是基于同一对话dialog的标识号ID,要么是基于不同对话dialog的呼叫标识号Call-ID。
为了使订阅者与通知者能协商使用订阅的批量刷新机制,还需要扩展一个SIP的option-tag,比如命名为“sub-batch-update”,用于在订阅者发起的批量刷新消息的Require头域携带,表示订阅者需要通知者支持订阅的批量刷新。
本发明方法并不限定能携带Sub_IDList头域的SIP消息,这样的消息可以是已有的消息,也可以是专为批量刷新订阅所扩展的一个新的消息。对于刷新关联同一dialog的订阅实例,使用该dialog内的消息(也就是关联dialog的消息);对于刷新关联不同diaolog的订阅实例,使用dialog外的消息(也就是不关联任何dialog的消息)。作为描述实施例会用到的消息,对于刷新关联同一dialog的订阅实例,可使用UPDATE消息;对于刷新关联不同diaolog的订阅实例,可使用dialog外的SUBSCRIBE消息。
以下用UPDATE消息作为携带Sub_IDList头域的载体为例,来描述本发明方法对Sub_IDList头域处理过程:
所述Subscriber创建第一列表信息头域,记为Sub_IDList,将该头域加入UPDATE消息中,将本地关联同一个dialog的所有处于活动状态的订阅实例的id加入到Sub_IDList头域中,并将Sub_IDList头域在本地保留一份,记为本地Sub_IDList,对于连续的数字形式的订阅实例id,可以采用范围的表现方式,见Sub_IDList头域的定义。
所述Notifier收到带有Sub_IDList头域的UPDATE消息,根据UPDATE消息匹配到本地一dialog,从Sub_IDList头域中逐一取出订阅实例id与本地匹配dialog中关联的订阅实例id比较,并创建一个新的Sub_IDList头域,即第二列表信息头域,记为Sub_IDList’,将比较后不相同的id加入其中,并刷新比较相同的id对应的订阅实例,对于连续的数字形式的id,可以采用范围的表现方式。
所述Notifier创建UPDATE的响应消息,将上述产生的Sub_IDList’作为新的Sub_IDList头域加入UPDATE的响应消息中;Subscriber接收到UPDATE的响应消息,从Sub_IDList’头域中逐一取出订阅实例id与本地Sub_IDList比较,若相同,则释放id对应的本地订阅实例,并删除本地Sub_IDList中对应的id。处理完响应消息中的Sub_IDList’头域中的id后,逐一将本地Sub_IDList中剩余的id关联的订阅实例刷新。
下面通过一个具体的实施例来说明,新扩展的两个头域在订阅的批量刷新中的用法,以及批量刷新机制的原理,以清楚说明本发明方法的有益效果。
本发明的该实施例中,假设Subscriber向Notifier发送了关联同一个dialog的多个订阅请求,分别在Subscriber和Notifier上产生了相应数量的订阅实例,这些实例的id值有些是纯数字形式的字符串,有些是数字字母的字符串,在Subscriber和Notifier间一一对应。过了一段时间后,由于网络异常等原因,造成了Subscriber和Notifier上的订阅实例id不对应的情况,Subscriber上订阅实例id为{1|50,55,60,68,80|200,a1,wwug,qerr};Notifier上订阅实例id为{20|50,68,80,90|190,a1,qerr}。Subscriber向Notifier发起订阅的批量刷新,使用UPDATE作为批量刷新消息,并分两次刷新完所有的ID。
如图2所示的,本发明方法的基于同一dialog的批量刷新流程包括步骤:
A、所述Subscriber发起订阅的批量刷新,将本地需刷新的部分ID{1|50,55,60,68},放入Sub_IDList头域,并保存一份在本地,记为本地Sub_IDList,由UPDATE消息携带,发送到Notifier;
B、Notifier收到Subscriber发起的订阅的批量刷新请求,从Sub_IDList头域中逐个取出id与本地比较,若相等,则刷新该id对应的订阅实例;不相等,则将该ID保存到一个新的Sub_IDList头域中。在处理完所有id后,得到一个新的Sub_IDList头域为{1|19,55,60},将新的Sub_IDList头域通过200OK传递给Subscriber;Subscriber收到200OK后,从中的Sub_IDList头域逐个取出id与Subscriber中本地Sub_IDList中的id比较,若相等则释放该id对应的订阅实例,并删除本地Sub_IDList中对应的id;最后,逐一将本地Sub_IDList{20|50,68}中剩余的id关联的订阅实例刷新。
C、Subscriber将本地剩余部分需刷新的ID{80|200,a1,wwug,qerr},放入Sub_IDList头域,并保存一份在本地,记为本地Sub_IDList,由UPDATE消息携带,发送到Notifier;
D、Notifier收到Subscriber发起的订阅的批量刷新请求,从Sub_IDList头域中逐个取出id与本地比较,若相等,则刷新该id对应的订阅实例;不相等,则将该id保存到一个新的Sub_IDList头域中.在处理完所有id后,得到一个新的Sub_IDList头域为{81|89,191|200,wwug},将新的Sub_IDList头域通过200OK传递给Subscriber;Subscriber收到200OK后,从中的Sub_IDList头域逐个取出ID与Subscriber中本地Sub_IDList中的id比较,若相等则释放该id对应的订阅实例,并删除本地Sub_IDList中对应的ID;最后,逐一将本地Sub_IDList{80,90|190,a1,qerr}中剩余的id关联的订阅实例刷新.
本发明方法的关键点之一就是通过在请求消息及其响应消息中用一个头域携带基于同一dialog的订阅实例ID或基于不同dialog的Call-ID在Subscriber和Notifier间交互,完成Subscriber和Notifier各自本地订阅实例的刷新。
本发明基于不同dialog的刷新订阅过程如图3所示,其都关联多个dialog,假设Subscriber向Notifier发送了四个订阅请求,每个订阅请求分别关联一个dialog,分别Subscriber和Notifier上产生了四个的订阅实例,关联四个不同的dialog,这四个dialog的Call-ID为{843817637684230@998sdasdh09,wwre42gd30@9943gdh09,84381ffjj5i4230@23drtasdh09,adf54684230@55hdasdre}。Subscriber向Notifier发起订阅的批量刷新,使用不关联任何dialog的SUBSCRIBE作为批量刷新消息。其基本步骤包括:
A2、Subscriber发起订阅的批量刷新,通过一个不关联任何dialog而是关联多个dialog的SUBSCRIBE消息携带第一列表信息Sub_IDList的头域,将本地需刷新的订阅实例对应的dailog的Call-ID{843817637684230@998sdasdh09,wwre42gd30@9943gdh09,84381ffjj5i4230@23drtasdh09,adf54684230@55hdasdre},放入Sub_IDList头域,并保存一份在本地,记为LocalIDList,发送到Notifier;
B2、Notifier收到Subscriber发起的订阅的批量刷新请求,从Sub_IDList头域中逐个取出呼叫标识号Call-ID匹配本地dialog,并刷新匹配到的dialog所关联的全部订阅实例,将不能匹配dialog的Call-ID放入新的Sub_IDList头域,如图3中所示的四个Call-ID都能匹配到本地dialog,新的Sub_IDList头域为空,通过200OK发送给Subscriber;Subscriber取出200OK携带的Sub_IDList头域,发现是空值,因此直接将本地LocalIDList中的Call-ID逐个取出,匹配到本地dialog,并刷新dialog所关联的订阅实例。
由于SIP的请求消息和响应消息的消息体可以用于传递任何数据,因此,另一种存在的技术方案是通过请求消息和响应消息的消息体来携带订阅实例的id或dialog的Call-ID。消息体的编码格式可以采用文本、XML等各种方式,在此不一一举全,关键点是消息体的内容包括了订阅实例标识号id或dialog的Call-ID,如图2(1)至(4)中采用Sub_IDList头域携带的内容,用XML编码格式的消息体,其步骤包括:
A1、订阅者将需要批量刷新的订阅实例ID和这些ID关联的dialog的Call-ID放入一个定义的消息体的格式,在此采用上述的XML的订阅实例ID列表的消息格式,通过一个不关联任何dialog的消息发送给通知者,并将该列表保存一份在本地,记为LocalIDList。
B1、所述通知者先从消息体中逐一取出Call-ID,匹配本地的dialog,若能匹配,则保存Call-ID,再从消息体中逐一取出与该Call-ID关联的订阅实例的ID,将取出的ID与匹配到的dialog所关联的订阅实例ID比较,若相等则刷新ID对应的订阅实例,不相等,则保存该订阅实例ID。
C1、如上重复处理完消息体中的所有Call-ID和订阅实例ID,将处理过程中保存的Call-ID和订阅实例ID取出,构造一个新的订阅实例ID列表,记为RemoteIDList,放入200OK的消息体中,发送给订阅者.
D1、订阅者接收到200OK,先从本地保存的LocalIDList中逐一取出Call-ID,与响应消息消息体携带的RemoteIDList中的Call-ID比较,若相等,则释放Call-ID对应dialog及其关联的订阅实例;若不相等,再逐一从RemoteIDList中取出关联该Call-ID的订阅实例ID,与本地保存的LocalIDList对应的关联该Call-ID的订阅实例ID比较,若相等则释放其对应的订阅实例,并删除LocalIDLis中该订阅实例ID。
E1、处理完RemoteIDList中关联该Call-ID的所有订阅实例ID后,将LocalIDList中关联该Call-ID的剩余的所有订阅实例ID对应的订阅实例刷新。如上重复处理完本地保存的LocalIDList中所有的Call-ID。
本发明方法的采用XML的编码方式定义一个订阅实例ID列表的消息格式,描述如下:
<?xml version=″1.0″encoding=″UTF-8″?>
<Subidlist xmlns=″um:ietf:params:xml:ns:subidlst″
     xmlns:xsi=″http://www.w3.org/2001/XMLSchema-instance″>
    <dialog callid=>
         <id></id>
          …
         <idset start=end=/>
          …
    </dialog>
      …
</Subidlist>
其中,<Subidlist>元素代表根元素,是订阅实例列表的起始点,在根元素下可以包含至少一个<dialog>元素;<dialog>元素代表订阅实例关联的dialog,其有一属性值callid,表示dialog的Call-ID,可以根据该属性匹配到一个dialog,<dialog>元素可以包含至少一个<id>或<idset>,表示与dialog关联的订阅实例的ID;<id>元素代表一个订阅实例的ID;<idset>元素代表订阅实例的ID的区间范围,该区间范围的值要求必须是步长为1的连续的正整数。
以下将对该实施例中的各消息体进行示例说明,如图2,其中,第一个刷新关联一个dialog的订阅实例的消息的消息体示例为:
<?xml version=″1.0″encoding=″UTF-8″?>
<Subidlist xmlns=″urn:ietf:params:xml:ns:subidlst″
     xmlns:xsi=″http://www.w3.org/2001/XMLSchema-instance″>
    <dialog callid=″wwre42gd30@9943gdh09″>
         <id>55</id>
         <id>60</id>
         <id>68</id>
         <idset start=1end=50/>
    </dialog>
</Subidlist>
第一个200OK的消息体为:
<?xml version=″1.0″encoding=″UTF-8″?>
    <Subidlist xmlns=″urn:ietf:params:xml:ns:subidlst″
         xmlns:xsi=″http://www.w3.org/2001/XMLSchema-instance″>
        <dialog callid=″wwre42gd30@9943gdh09″>
             <id>55</id>
             <id>60</id>
          <idset start=1end=19/>
     </dialog>
</Subidlist>
第二个刷新关联一个dialog的订阅实例的消息的消息体示例为:
<?xml version=″1.0″encoding=″UTF-8″?>
<Subidlist xmlns=″urn:ietf:params:xml:ns:subidlst″
     xmlns:xsi=″http://www.w3.org/2001/XMLSchema-instance″>
    <dialog callid=″wwre42gd30@9943gdh09″>
         <id>a1</id>
         <id>wwug</id>
         <id>qerr</id>
         <idset start=80end=200/>
    </dialog>
</Subidlist>
第二个200OK的消息体为:
<?xml vetsion=″1.0″encoding=″UTF-8″?>
   <Subidlist xmlns=″urn:ietf:params:xml:ns:subidlst″
        xmlns:xsi=″http://www.w3.org/2001/XMLSchema-instance″>
       <dialog callid=″wwre42gd30@9943gdh09″>
            <id>wwug</id>
            <idset start=81 end=89/>
            <idset start=191 end=200/>
       </dialog>
</Subidlist>
如图3所示的刷新关联多个dialog订阅实例的消息体示例为:
<?xml version=″1.0″encoding=″UTF-8″?>
<Subidlist xmlns=″urn:ietf:params:xml:ns:subidlst″
     xmlns:xsi=″http://www.w3.org/2001/XMLSchema-instance″>
    <dialog callid=″843817637684230@998sdasdh09″>
         <id>80</id>
    </dialog>
    <dialog callid=″wwre42gd30@9943gdh09″>
         <id>aawe</id>
    </dialog>
    <dialog callid=″84381ffjj5i4230@23drtasdh09″>
         <id>g5623</id>
    </dialog>
    <dialog callid=″adf54684230@55hdasdre″>
         <id>2311</id>
    </dialog>
</Subidlist>
其200OK响应消息的消息体为
<?xml version=″1.0″encoding=″UTF-8″?>
<Subidlist xmlns=″urn:ietf:params:xml:ns:subidlst″
     xmlns:xsi=″http://www.w3.org/2001/XMLSchema-instance″>
    <dialog callid=″843817637684230@998sdasdh09″>
    </dialog>
    <dialog callid=″wwre42gd30@9943gdh09″>
    </dialog>
    <dialog callid=″84381ffjj5i4230@23drtasdh09″>
    </dialog>
    <dialog callid=″adf54684230@55hdasdre″>
    </dialog>
</Subidlist>
在上述流程中,订阅者和通知者的处理流程与前述实施例的区别在于,从列表头域只能获得dialog的Call-ID(由该技术方案决定的),因此只能根据Call-ID将匹配dialog关联的所有订阅实例刷新,而本发明方案中,可以通过消息体携带dialog的Call-ID和订阅实例ID,因此可以选择刷新dialog中的部分订阅实例。
当然,作为一个完整的实施例,还需要为新的消息体格式其定义一个Content-Type的类型。比如,根据SIP的语法要求,可以定义为:application/sub-idlist+xml。
与第一实施例的前述方案不同的是,本发明的该方案通过消息体可同时携带订阅实例id和dialog的Call-ID,可将前方案的两种情况统一起来,并且消息体的大小不受限制,是一种比前述方案更优的方案。
当然,本发明方法中的消息体内容可以只包括订阅实例id,这样所有的订阅实例id关联同一个dialog,可以通过一个关联dialog的消息来传递,如UPDATE,这就与前述方案相同,在此不在赘述。
综上,本发明方法提高了刷新订阅实例的效率,减少了刷新订阅的消息数量,降低了对网络带宽的消耗,显然具有现有技术无法达到的效果。
应当理解的是,上述针对具体实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本发明的专利保护范围应以所附权利要求为准。

Claims (8)

1.一种SIP订阅机制中实现批量刷新的方法,其特征在于,所述方法包括:
通知者接收订阅者创建并发送的第一列表信息,所述第一列表信息头域中包括所述订阅者本地关联同一个对话中活动状态订阅实例的标识号;
所述通知者从所述第一列表信息头域中逐一取出订阅实例的标识号,与所述对话中关联的订阅实例标识号比较,若相同,则刷新相同标识号对应的订阅实例;
若不相同,则将从所述第一列表信息头域中取出的该订阅实例标识号加入所述通知者创建的第二列表信息头域中;
所述通知者发送响应消息至所述订阅者,所述响应消息携带第二列表信息头域,使所述订阅者将所述订阅者本地的订阅实例标识号逐一取出与所述第二列表信息头域中订阅实例标识号比较,若相同,则所述订阅者将该标识号对应的所述订阅者本地订阅实例释放,若不相同则所述订阅者刷新该标识号对应的本地订阅实例。
2.根据权利要求1所述的方法,其特征在于,所述第一列表信息通过批量刷新消息的头域或消息体传输。
3.根据权利要求1所述的方法,其特征在于,所述第二列表信息通过响应消息的头域或消息体传输。
4.一种SIP订阅机制中实现批量刷新的方法,其特征在于,所述方法包括:
通知者接收订阅者创建并发送的第一列表信息,所述第一列表信息包括所述订阅者本地关联多个对话中活动状态订阅实例的呼叫标识号;
所述通知者根据所述呼叫标识号匹配到所述通知者本地的多个对话;
所述通知者刷新所匹配到的多个会话的全部订阅实例,将不能匹配的会话的呼叫标识号加入所述第二列表信息头域中。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
所述订阅者在接收所述响应消息后释放所述第二列表信息的呼叫标识号对应的对话对应的订阅实例;
所述订阅者刷新所述第一列表信息中不等于所述第二列表信息的对话对应的订阅实例。
6.根据权利要求4或5所述的方法,其特征在于,所述第一列表信息通过批量刷新消息的头域或消息体传输。
7.根据权利要求4或5所述的方法,其特征在于,所述第二列表信息通过响应消息的头域或消息体传输。
8.一种SIP订阅机制中实现批量刷新的方法,其特征在于,所述方法包括:
通知者接收订阅者创建并发送的消息体,所述消息体包括需要批量刷新的订阅实例标识号和其关联的对话的呼叫标识号;
所述通知者根据所述呼叫标识号,匹配所述通知者本地的对话,若能匹配则所述通知者将对应呼叫标识号保存到新建的订阅实例列表;
所述通知者从所述消息体中逐一取出与所述呼叫标识号关联的订阅实例的标识号,与匹配到的所述通知者本地对话所关联的订阅实例标识号比较,若相等则所述通知者刷新该标识号对应的订阅实例,否则所述通知者将该订阅实例标识号保存到所述新建的订阅实例列表。
CN200510120883.0A 2005-12-16 2005-12-16 一种订阅机制中实现批量刷新的方法 Expired - Fee Related CN1984127B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN200510120883.0A CN1984127B (zh) 2005-12-16 2005-12-16 一种订阅机制中实现批量刷新的方法
PCT/CN2006/003365 WO2007068194A1 (fr) 2005-12-16 2006-12-11 Procede permettant d'effectuer une actualisation de lots dans un mecanisme d'abonnement, abonne et terminal de notificateur

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200510120883.0A CN1984127B (zh) 2005-12-16 2005-12-16 一种订阅机制中实现批量刷新的方法

Publications (2)

Publication Number Publication Date
CN1984127A CN1984127A (zh) 2007-06-20
CN1984127B true CN1984127B (zh) 2010-05-12

Family

ID=38162562

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200510120883.0A Expired - Fee Related CN1984127B (zh) 2005-12-16 2005-12-16 一种订阅机制中实现批量刷新的方法

Country Status (2)

Country Link
CN (1) CN1984127B (zh)
WO (1) WO2007068194A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101446968B (zh) * 2008-12-10 2013-07-17 上海闻泰电子科技有限公司 解析可扩展标记语言的方法
CN102012895A (zh) * 2010-08-19 2011-04-13 上海酷吧信息技术有限公司 一种解析数据的方法
CN102655462B (zh) * 2012-04-09 2016-02-03 深圳市佳信捷技术股份有限公司 批量升级嵌入式网络设备的方法及装置
CN103699616B (zh) * 2013-12-17 2017-09-29 新浪网技术(中国)有限公司 数据结构创建方法、订阅消息数据发送方法及相关装置
CN110399573A (zh) * 2018-04-16 2019-11-01 ***通信有限公司研究院 一种信息处理方法、装置、设备及计算机可读存储介质
CN113067865A (zh) * 2021-03-18 2021-07-02 中国人民解放军63920部队 航天测控数据实时交互方法和装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1622620A (zh) * 2004-12-31 2005-06-01 北京航空航天大学 一种在互联网上多点视频会议多屏幕显示的方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI112903B (fi) * 2000-12-05 2004-01-30 Nokia Corp Menetelmä, järjestelmä ja jakosolmu sanomien jakamiseksi
CA2387328C (en) * 2002-05-24 2012-01-03 Diversinet Corp. Mobile terminal system
EP1583381A1 (en) * 2004-01-14 2005-10-05 Axalto S.A. Updating of the preferred roaming list (PRL) in a Subscriber Identity Module (SIM) or Removable User identity Module (RUIM)

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1622620A (zh) * 2004-12-31 2005-06-01 北京航空航天大学 一种在互联网上多点视频会议多屏幕显示的方法

Also Published As

Publication number Publication date
CN1984127A (zh) 2007-06-20
WO2007068194A1 (fr) 2007-06-21

Similar Documents

Publication Publication Date Title
CN1984127B (zh) 一种订阅机制中实现批量刷新的方法
CN100411461C (zh) 一种PoC群组会话的实现方法及装置
TWI445433B (zh) 用於裝置間媒體串流傳送之方法、使用者設備和軟體產品
EP1994774A1 (en) Group communication in a communication system
RU2608469C2 (ru) Способ и устройство высокоэффективной доставки уведомлений в реальном времени с малым временем задержки
CN101184082A (zh) 群组用户注册方法、状态更新方法、处理装置、ims网络实体和通信***
CN101175198A (zh) 网络电视的业务控制方法及***、终端和应用处理模块
CN100562186C (zh) 一种共享公共用户标识用户终端业务重定向方法
CN101227457A (zh) 标识通信业务的方法及其***
CN100413354C (zh) 一种群组会话中添加用户的方法及***
CN1901550B (zh) 基于会话发起协议的订阅方法及其***和装置
CN101834730A (zh) 一种多媒体会议控制方法和***
CN101127620A (zh) 一种在会话初始化协议中传送逻辑通道号的方法及其***
CN108400965B (zh) 一种多媒体会议集成通讯***及方法
CN101369906A (zh) 一种会议业务实现方法及设备
CN106332014A (zh) 即按即说业务实现方法与终端
CN101578850A (zh) 标识会议中的参与者
CN1972279B (zh) 一种会话发起协议资源事件包获取方法
CN101997887A (zh) 业务信令发送、接收、传送方法及终端
CN102195959A (zh) Sip信令的xml数据的解析方法及装置
CN101997695B (zh) Parlay X网络服务的实现方法、***以及Parlay X能力***
EP2219330B1 (en) Method for enhancing service, proxy server and communications system
CN101005502A (zh) 业务脚本获取、控制方法及其控制***和媒体资源服务器
CN110113303B (zh) 一种电信网ims中sip协议栈负载均衡***以及负载均衡方法
CN101867590A (zh) 基于会话初始化协议的订阅方法和装置

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100512

Termination date: 20121216