CN101562578B - 一种用户数据订阅通知方法及装置 - Google Patents

一种用户数据订阅通知方法及装置 Download PDF

Info

Publication number
CN101562578B
CN101562578B CN2008100274650A CN200810027465A CN101562578B CN 101562578 B CN101562578 B CN 101562578B CN 2008100274650 A CN2008100274650 A CN 2008100274650A CN 200810027465 A CN200810027465 A CN 200810027465A CN 101562578 B CN101562578 B CN 101562578B
Authority
CN
China
Prior art keywords
notification receiver
expression formula
subscription
user
data
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
CN2008100274650A
Other languages
English (en)
Other versions
CN101562578A (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 CN2008100274650A priority Critical patent/CN101562578B/zh
Priority to PCT/CN2009/071044 priority patent/WO2009127136A1/zh
Publication of CN101562578A publication Critical patent/CN101562578A/zh
Application granted granted Critical
Publication of CN101562578B publication Critical patent/CN101562578B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
    • H04W8/20Transfer of user or subscriber data

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例提供一种用户数据订阅通知方法,包括以下步骤:数据存储装置接收对用户数据进行订阅的订阅消息,所述订阅消息包含所要订阅的内容以及通知接收者表达式,所述通知接收者表达式表示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体;当对所述订阅进行通知的触发条件达到时,根据所述表达式确定通知接收者;向所述通知接收者通知所述订阅消息中所要订阅的内容。本发明实施例还提供一种用户数据订阅通知装置。本发明实施例通过接收到采用表达式来表达通知接收者的订阅消息,在不改变订阅的前提下,由于随着系统变化所述表达式的值也发生变化,实现了通知时通知接收者的改变。

Description

一种用户数据订阅通知方法及装置
技术领域
本发明涉及通信领域,尤其涉及一种用户数据订阅通知方法及装置。
背景技术
融合数据库是网络演进发展过程中出现的使用较为普遍的一种数据存储装置。融合数据库提供一个存储平台,将不同网络、不同网元的数据集中存储。
在引入融合数据库后,网络内的用户数据集中存储,原网络中的存储用户数据的网元需进行业务和数据分离改造,用户数据集中存储在融合数据库内,原用户数据网元仅处理其业务逻辑。
如图1所示的融合数据库组网图中,原HLR(Home Location Register,归属位置寄存器)、HSS(Home Subscriber Server,归属用户服务器)等数据网元的实现了数据和业务的分离,多个HLR和多个HSS的数据都集中存储在融合数据库中,HLRAPP(dataless HLR,HLR应用实体)和HSSAPP(dataless HSS,HSS应用实体)仅处理其业务逻辑,PGW(Provision GateWay,用户接口网关)提供用户数据配置接口。
在实现数据网元的业务和数据分离后,允许多个应用实体共享同一数据,应用实体可以对其关心的数据改变进行订阅,在数据发生改变时,需要通知为用户提供服务的应用实体此数据的改变。例如,如图2所示,对于数据Data1,应用实体A对数据Data1具有修改权限,应用实体B对数据Data1具有读权限,应用实体B对数据Data1进行了订阅,当所进行的订阅被触发时,即数据Data1被应用实体A修改后,需要通知应用实体B数据Data1的改变。在用户数据进行了集中存储后,可以选择同类应用实体中的任意一个应用实体(例如HLRAPP或HSSAPP)为用户提供服务,为用户提供服务的应用实体可能随着系统变化发生变化。当此用户的数据发生改变,融合数据库需要通知当前正在为此用户提供服务的应用实体用户的数据发生改变。例如对于HLRAPP,当数据集中存储后,用户按照就近原则选择HLRAPP,当前用户就近接入的HLRAPP同用户接入网络时所就近接入的HLRAPP可能并不一样,当用户的数据发生改变,需要通知当前用户就近接入的HLRAPP该数据已改变。
需要说明的是,本实施例中的应用实体指提供数据服务或业务逻辑的应用实体,其中提供数据服务的应用实体仅提供数据的访问逻辑,实体本地不存储数据,所述的应用实体并不仅限于指物理实体,也可包含逻辑实体。所述应用实体包括但不限于HLRAPP(指dataless HLR),HSSAPP(指dataless HSS),AS(Application Server,应用服务器)。所述应用实体提供的服务包括但不限于:数据访问控制逻辑、电信业务控制逻辑,增值应用控制逻辑等。
现有的订阅通知机制主要有两种:
一、在IMS域内HSS和AS的Sh接口支持订阅通知机制,AS作为为用户提供服务的应用实体可以对其关心的数据进行订阅。当被订阅的数据发生改变时,HSS通知AS改变后的数据。
该现有技术一中,Sh接口上的订阅通知机制的缺点在于:订阅者就是通知接收者,不支持第三方订阅。
二、基于XML(Extensible Markup Language,可扩展标记语言)的订阅通知机制,为用户提供服务的应用实体可以对关心的XML数据进行订阅,在订阅时可以指定通知接收者。当被订阅数据发生改变时,通知者通知订阅时指定的具体通知接收者改变后的数据。
该现有技术二中,订阅通知机制的缺点在于:虽然支持第三方订阅,但是通知接收者必须为订阅时指定的,当订阅时指定的通知接收者并不一定是当前为用户提供服务的应用实体时,此种情况下,不能实现将用户数据通知到当前正为用户提供服务的应用实体。
发明内容
本发明实施例要解决的技术问题在于,提供一种用户数据订阅通知方法及装置,以实现将用户数据通知到当前为用户提供服务的应用实体。
为解决上述技术问题,本发明实施例提供一种用户数据订阅通知方法,包括以下步骤:
数据存储装置接收对用户数据进行订阅的订阅消息,所述订阅消息包含所要订阅的内容以及通知接收者表达式,所述通知接收者表达式表示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体,所述通知接收者表达式包括变量或算法,或者,所述通知接收者表达式包括包含变量或算法的表达式之间的运算;
当对所述订阅进行通知的触发条件达到时,根据所述表达式确定通知接收者;
向所述通知接收者通知所述订阅消息中所要订阅的内容。
本发明实施例还提供一种用户数据订阅通知装置,所述装置包括:
接收单元,用于接收对用户数据进行订阅的订阅消息,所述订阅消息包含所要订阅的内容以及通知接收者表达式,所述通知接收者表达式表示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体,所述通知接收者表达式包括变量或算法,或者,所述通知接收者表达式包括包含变量或算法的表达式之间的运算;
确定单元,用于当对所述订阅进行通知的触发条件达到时时,根据所述表达式确定通知接收者;
通知单元,用于向所述确定单元确定的通知接收者通知所述订阅消息中所要订阅的内容。
本发明实施例还提供一种用户数据订阅装置,所述装置包括:
通知接收者生成单元,用于生成通知接收者表达式,所述通知接收者表达式表示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体,所述通知接收者表达式包括变量或算法,或者,所述通知接收者表达式包括包含变量或算法的表达式之间的运算;
订阅消息发送单元,用于发送对用户数据进行订阅的订阅消息,所述订阅消息包含所要订阅的内容以及所述通知接收者表达式。
本发明实施例还提供一种用户数据订阅通知系统,所述系统包括:用户数据订阅装置和用户数据订阅通知装置;
所述用户数据订阅装置包括:
通知接收者生成单元,用于生成通知接收者表达式,所述通知接收者表达式表示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体,所述通知接收者表达式包括变量或算法,或者,所述通知接收者表达式包括包含变量或算法的表达式之间的运算;
订阅消息发送单元,用于发送对用户数据进行订阅的订阅消息,所述订阅消息包含所要订阅的内容以及所述通知接收者表达式;
所述用户数据订阅通知装置包括:
接收单元,用于接收对用户数据进行订阅的订阅消息;
确定单元,用于当对所述订阅进行通知的触发条件达到时,根据所述表达式确定通知接收者;
通知单元,用于向所述确定单元确定的通知接收者通知所述订阅消息中所要订阅的内容。
本发明实施例具有以下有益的效果:通过接收到采用表达式来表达通知接收者的订阅消息,所述表达式指示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体,在不改变订阅的前提下,由于随着系统变化所述表达式的值也发生变化,实现了通知时通知接收者的正确性和灵活性。
附图说明
图1是现有技术中融合数据库组网示意图。
图2是现有技术中数据改变通知的示意图。
图3是本发明实施例用户数据通知方法的流程示意图。
图4是本发明实施例一中可变通知接收者的示意图。
图5是本发明实施例二中HLR和融合数据库组网示意图。
图6是本发明实施例二中HLR用户的部分数据示意图。
图7是本发明实施例三中XML文件的数据的树结构示意图。
图8是本发明实施例四AS和HSS交互的示意图。
图9a是本发明实施例五中通知接收者不关联的示意图。
图9b是本发明实施例五中通知接收者关联的示意图。
图10是本发明实施例六用户数据通知装置的结构示意图。
具体实施方式
以下结合附图对本发明实施例进行详细描述。请参照图3所示,本发明实施例一提供一种用户数据订阅通知方法,包括以下步骤:
步骤11:数据存储装置接收对用户数据进行订阅的订阅消息,所述订阅消息包含所要订阅的内容、对所述订阅进行通知的触发条件以及通知接收者表达式,所述通知接收者表达式表示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体;所述订阅消息也可不包含对所述订阅进行通知的触发条件,由数据存储装置预先的配置决定触发条件。
步骤12:当所述触发条件达到时,数据存储装置根据所述表达式确定通知接收者,即对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体;
步骤13:数据存储装置向所确定的通知接收者通知所述订阅消息所要订阅的内容。
本发明实施例一中,所述数据存储装置可以是融合数据库。
下面对本发明实施例一进行详细的介绍:
(1)通知接收者表达式
通知接收者表达式可以包含变量或算法,也可以是包含变量或算法的表达式之间的运算。
变量:具有名称,变量的值为具体通知接收者的集合。通过变量的名称可以对变量进行操作,在变量的生命期内,变量的值可能发生改变。
算法:指获取具体通知接收者集合的原子方法,通过此算法可以获取具体通知接收者的集合。此算法不能再分解为常量、变量和算法。
运算符为集合运算符,包括但不限于交、并、补和括号运算符。运算符的运算规则和集合的运算规则相同。
(2)通知接收者的确定
所述订阅消息包含的通知接收者表达式在订阅的生命期内不发生改变,但是表达式中变量的值和算法的值可能发生改变,导致通知接收者表达式的值可能会发生改变,因此,所述表达式所指示的通知接收者也是变化的。确定通知接收者首先需要确定对所述订阅进行通知的触发条件达到时变量的值,或者确定对所述订阅进行通知的触发条件达到时影响算法的因素,例如此算法采用哈希算法时,不同的哈希参数会导致相同的哈希算法产生的通知接收者不同;其次需要根据变量的值或影响算法的因素对所述表达式进行求值,确定所述触发条件达到时的通知接收者。需要说明的是,所述通知接收者表达式的值可以为一个集合,即根据所述表达式确定的是通知接收者的集合,也即对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体可以为一个,也可以为多个。
(3)对所述订阅进行通知的模式
若所确定的通知接收者集合为空,则不发起任何通知请求;若所确定的通知接收者集合不为空,则根据通知模式发起通知请求,所述通知模式可以携带在订阅消息中发送给数据存储装置,也可以在数据存储装置内部预先进行配置。
本发明实施例提供的通知模式主要有下面三种方式,但不限于这些:
轮选方式:每一次对所述订阅进行通知被触发时,在所确定的通知接收者集合中选择一个或多个具体通知接收者进行通知,通知之后,记录历史的通知接收者,下一次通知时,根据记录优先选择没有发起过通知的通知接收者。
随机方式:每一次对所述订阅进行通知被触发时,在所确定的通知接收者集合中随机选择一个或多个具体通知接收者发起通知。
广播方式:每一次对所述订阅进行通知被触发时,对所确定的通知接收者集合中的所有具体通知接收者发起通知。
例如图4所示,用户的数据(Data1)存储在融合数据库中,应用实体1和应用实体2属于同一类应用实体,它们都可以为用户提供服务。如果对用户数据Data1进行订阅,当Data1发生改变时通知的接收者是当前正在为此用户提供服务的应用。当应用实体1为用户提供服务时,此时Data1的改变会通知给应用实体1;当为用户提供服务的应用实体从应用实体1改变为应用实体2后,修改为此用户服务的应用实体为应用实体2,此时若Data1发生改变,则根据表达式确定当前正在为用户提供服务的应用实体为应用实体2,Data1的改变会通知给应用实体2。
本发明实施例二:
请参照图5所示,在数据与业务分离后,HLR应用实体的用户签约数据集中存储在融合数据库内;HLR应用实体仅处理业务逻辑,HLR应用实体中没有任何数据,通过A地的HLR-A和B地的HLR-B允许访问的用户数据相同或者不同。
HLR和融合数据库之间的接口可以采用多种协议,本发明实施例二以HLR和融合数据库之间的接口采用轻量目录访问协议LDAP(Lightweight DirectoryAccess Protocol)为例对呼出限制的订阅和通知流程的具体实现进行说明。
在LDAP中,数据以目录树的形式组织,目录中树的每个节点称为条目(Entry),每个条目都存在一个名称(DN)。条目由属性的集合组成,一个属性由属性类型和一个或多个属性值组成。
在LDAP中,在对LDAP数据订阅时,用于指示通知接收者的表达式中的变量可以是条目的某个属性,变量的值为属性的值所组成的集合。当对订阅进行通知被触发时,首先获取属性的值,然后计算用于指示通知接收者的表达式的值,即通知接收者的集合,向所确定的通知接收者发起通知请求。
例如HLR用户的部分数据如图6所示:
图中IMSI为卡号条目,此条目中包含当前为用户提供服务的HLR应用实体的编号属性(HLRNumber);MSISDN为移动ISDN号码;Auc为卡的鉴权条目,SSData为补充业务条目,CBData为呼叫控制条目,CBData条目中包含呼入限制(BAIC)和呼出限制(BAOC)属性,BAIC和BAOC的属性值表示是否呼入限制和呼出限制。
当通过业务运营支撑系统BOSS(Bussiness Operation Support System)对用户的呼出限制数据进行修改时,融合数据库需要通知当前为此用户提供服务的HLR呼出限制数据的改变。
本发明实施例二的流程描述如下:
步骤S21:融合数据库接收订阅消息,所述订阅消息所要订阅的内容是用户的呼出限制数据,对所述订阅进行通知的触发条件是用户的呼出限制数据发生改变,通知接收者表达式所指示的通知接收者是用户的呼出限制数据发生改变时为用户提供服务的HLR应用实体;发起订阅的方式可以是HLR自己向融合数据库发起订阅请求,也可以是外部管理系统或其他实体向融合数据库发起第三方订阅完成对HLR数据的订阅,也可以是由融合数据库本身配置完成对HLR数据的订阅,这种情况下,也会形成订阅请求。
若所述订阅消息采用实例订阅的方式,即对一个用户的呼出限制数据进行订阅时,例如:对IMSI号码为46000000000000,MSISDN号码为13572423346的用户的呼出限制数据进行订阅;
所要订阅的内容:
条目DN:
DC=CBData,DC=SSData,MSISDN=13572423346,IMSI=46000000000000
属性类型:BAOC
通知接收者表达式:
条目DN:IMSI=46000000000000
属性类型:HLR Number
此时通知接收者表达式由一个变量组成,变量名称为条目IMSI=46000000000000的HLRNumber属性,此变量的值为条目IMSI=46000000000000的HLRNumber属性的值组成的集合。
若所述订阅消息采用模型订阅的方式,即一次对所有用户的呼出限制数据进行订阅时,例如:对所有用户的呼出限制数据进行订阅;
所要订阅的内容:
模型路径:DC=CBData,DC=SSData,DC=MSISDN,DC=IMSI
属性类型:BAOC
通知接收者表达式:
模型路径:DC=IMSI
属性类型:HLRNumber
此时表达式也由一个变量组成,变量名称为IMSI节点的HLRNumber属性,此变量的值为发生改变的条目对应的IMSI条目的HLRNumber属性的值组成的集合。
通知接收者的模型路径为订阅内容模型路径的一部分。
步骤S22:当对所述订阅进行通知的触发条件达到时,确定通知接收者的流程;当通过BOSS修改了融合数据库中的所订阅的用户呼出限制数据时,对所述订阅进行通知被触发,所述融合数据库计算通知接收者表达式的值,确定通知接收者。
首先,确定表达式中的变量的值,即确定HLRNumber属性的值;在位置更新过程中,当前为用户提供服务的HLR应用实体返回用户数据时,由该HLR应用实体通过LDAP的修改命令修改IMSI=46000000000000条目的HLRNumber属性为该HLR应用实体的HLR编号。例如,设A地为用户的归属地,用户从A地移动到B地,在位置更新过程中,若MSC从归属地(A地)HLR应用实体获取用户数据,则由A地的HLR应用实体修改IMSI=46000000000000条目的HLRNumber属性为A地HLR应用实体的编号;若就近从拜访地(B地)HLR应用实体获取用户数据,则由B地的HLR应用实体修改IMSI=46000000000000条目的HLRNumber属性为B地HLR应用实体的编号。本实施例二中,对于订阅时采用实例订阅的方式,通过查询获取条目IMSI=46000000000000的HLRNumber属性的值,属性值组成的集合即为变量的值,根据变量的值确定当前所要通知的通知接收者。而对于订阅时采用模型订阅的方式,则先根据修改呼出限制数据时修改的条目的DN,融合数据库计算出此条目的IMSI条目的DN(IMSI=4600000000000),再通过查询获取条目IMSI=46000000000000的HLRNumber属性的值,属性值组成的集合即为变量的值,根据变量的值确定当前所要通知的通知接收者。
步骤S23:向所确定的通知接收者,即向对所述订阅进行通知的触发条件达到时为用户提供服务的HLR应用实体通知修改后的用户呼出限制数据。
本发明实施例三:
在数据与业务分离后,HSS应用实体的数据集中存储在融合数据库内;HSS应用实体仅处理业务逻辑,HSS应用实体中没有任何用户数据。HSS应用实体在融合用户数据中的订阅流程和通知流程与实施例二中HLR应用实体的订阅通知流程相同。
HSS和融合数据库之间的接口可以采用多种协议,本发明实施例三以HSS应用实体和融合数据库之间的接口采用简单对象访问协议Soap为例对隐式注册集的订阅通知流程进行说明。XML(Extensible Markup Language,可扩展标识语言)是基于标记描述文档中的结构化数据,数据以元素的层次形式组织。XML的路径语言(XPath)定义了用户寻址XML文档各部分的语法,依据文档的逻辑树型结构求XPath表达式的值,可以指定节点的集合。
在对XML的数据订阅时,通知接收者表达式中的变量可以是XPath(XPath是一种查询表达式语言)表达式。当对订阅进行通知被触发时,首先对Xpath表达式求值获取变量的值,然后计算通知接收者表达式的值,即通知接收者的集合,向所确定的通知接收者发起通知请求。
例如HSS用户的部分数据如下所示:
Figure GDA0000095727600000111
将XML文件的数据表示为树结构如图7所示Subscription表示一个签约节点,属性SubscriptionID表示签约标识,属性HSSNumber表示当前为此用户提供服务的HSS;IMPU表示用户的一个公共用户标识节点,属性PU为公共标识号码;IMPI表示用户的一个私有用户标识节点,属性PI为私有标识号码;IRS表示隐式注册集节点,属性IRSID表示隐式注册集的标识;IMPUNumber表示隐式注册集中用户公共标识号码节点。
当融合数据中用户的隐式注册集节点中的IMPUNumber被修改,融合数据库需要通知当前为用户提供服务的HSS应用实体隐式注册集的改变。
本发明实施例三的流程描述如下:
步骤S31:融合数据库接收订阅消息的流程;所述订阅消息所订阅的内容是用户的隐式注册集节点,对所述订阅进行通知的触发条件是用户的隐式注册集节点发生改变,通知接收者的表达式所指示的通知接收者是用户的隐式注册集节点发生改变时为用户提供服务的HSS应用实体;发起订阅的方式可以是HSS自己向融合数据库发起订阅请求,也可以是外部管理系统或其他实体向融合数据库发起第三方订阅完成对HSS数据的订阅,也可以是由融合数据库本身配置完成对HSS数据的订阅,这种情况下,也会形成订阅请求。
例如订阅的内容为xiaomingprivate.com的隐式注册集节点,通知的接收者是当前为xiaomingprivate.com提供服务的HSS。XPath表达式用来定位XML文件中的数据,通过对XPath求值可以获取一个值或者一个集合。XPath表达式由采用“/”分割的部分组成,除了最后一个部分,其他部分由Element的名称组成,在[]内可以添加条件,表示满足此条件的Element,最后一个部分可以为Element也可以为属性。一个名称前面无前缀表示一个Element,若采用前缀””表示为属性。
所要订阅的内容:
/Subscription[SubscriptionID=”sid001”]/IMPI[PI=”xiaomingprivate.com”]/IRS[IRSID=”IRS001”]
由于一个XML文件中可能具有多个具体相同名称的Element节点,此处的XPath对数据的定位包括以下步骤:
(1)SubscriptionID属性为sid001的Subscription节点;
(2)在第(1)步定位的Subscription节点的子Element中定位属性PI为xiaomingPrivate.com的IMPI节点;
(3)在第(2)步定位的IMPI节点的子Element中定位属性IRSID为IRS001的IRS节点。
通知接收者表达式:
/Subscription[SubscriptionID=”sid001”]/HSSNumber
XML数据定位包括以下步骤:
(1)SubscriptionID属性为sid001的Subscription节点;
(2)第(1)步定位的Subscription节点的HSSNumber属性。
步骤S32:确定通知接收者的流程;在用户进行注册过程中,当S-CSCF从HSS应用实体获取用户数据时,对所述订阅进行通知被触发,所述融合数据库计算通知接收者表达式的值,确定通知接收者。
首先,确定表达式中的变量的值,即确定HSSNumber属性的值;在注册过程中,HSS应用实体需要从融合数据库获取用户数据,HSS应用实体通过修改命令,修改SubscriptionID=sid001的Subscription节点的HSSNumber属性值为该HSS应用实体编号。然后计算表达式/Subscription[SubscriptionID=”sid001”]/HSSNumber的值,即具体通知接收者集合,从而确定当前所要通知的通知接收者。
步骤S33:向所确定的通知接收者,即向用户的隐式注册集节点发生改变时为用户提供服务的HSS应用实体通知修改后的隐式注册集节点。
本发明实施例四:
在数据与业务分离后,HSS的数据在融合数据库内集中存储,HSS仅处理业务逻辑,HSS中没有任何用户数据。根据应用服务器AS(Application Server)和HSS之间的关系,AS的订阅通知方式有AS和HSS交互、AS和HSS不交互两种方式。本发明实施例四以AS和HSS交互为例对AS关心的数据的订阅和通知流程的具体实现进行说明。
本实施例中,AS和HSS交互如图8所示,AS和HSS之间的接口和传统的IMS域内AS和HSS之间的接口相同。
本发明实施例四的流程描述如下:
步骤S41:融合数据库接收订阅消息的流程;AS向HSS发起对其关心的用户数据的订阅,HSS接收到AS的订阅请求后,由HSS向融合数据库发起对AS关心的用户数据的订阅,订阅的内容为AS关心的用户数据,通知接收者表达式指向为AS提供服务的HSS。
步骤S42:确定通知接收者的流程;当AS关心的数据发生变化时,融合数据库计算通知接收者表达式的值,即获取当前可以为AS提供服务的HSS;
步骤S43:向所确定的通知接收者,即向当前可以为AS提供服务的HSS发起通知请求;若可以为AS提供服务的HSS存在多个,则根据通知模式向HSS发起通知请求。HSS接收到融合数据库的通知请求后,向AS发起数据改变通知请求。
上述流程的具体实现中,如果在AS和HSS之间的接口采用LDAP,则其具体实现方式与实施例二相同;如果在AS和HSS之间的接口采用Soap,则其具体实现方式与实施例三相同,本实施例不再详述。
本发明实施例五:
本发明实施例五以AS和HSS不交互为例对AS关心的数据的订阅和通知流程的具体实现进行说明。本实施例中,如图9a所示,AS和HSS不进行交互,AS直接和融合数据库进行交互。
根据订阅的通知接收者之间的关联性,本实施例将分通知接收者不关联和关联两种情况来进行说明。
(一)通知接收者不关联
此方式中,AS数据订阅的通知接收者之间没有关联,下面以对单个数据的订阅为例进行说明。
步骤S51:融合数据库接收AS发送的订阅消息的流程;
在融合数据库中对AS的关心的数据改变进行了订阅,订阅内容包括AS透明数据等信息,通知的接收者表达式为用变量表示的当前关心此数据的AS。发起订阅的方式可以是AS自己向融合数据库发起订阅请求,也可以是外部管理系统或其他实体向融合数据库发起第三方订阅完成对AS数据的订阅,也可以是由融合数据库本身配置完成对AS数据的订阅,这种情况下,也会形成订阅请求。
步骤S52:确定通知接收者的流程;
首先确定通知接收者表达式的值,即关心用户数据的AS(所述关心用户数据的AS也为为用户提供服务的AS);关心用户数据的AS作为用户数据的一部分,此数据对AS可见,并且AS可以操作这些数据。若AS需要关心某用户数据的改变,可以修改此用户数据的AS数据,即在此用户数据的AS数据中增加此AS的信息。当数据发生改变时,通知接收者表达式的值(通知接收者集合)中会包含此AS,会向此AS发起数据改变通知。若AS不需要关心某用户数据的改变,AS可以修改关心用户数据的AS数据,即在此用户数据的AS数据中删除此AS的信息。当数据发生改变时,通知接收者表达式的值(通知接收者集合)中不包含此AS,则不会向此AS发起数据改变通知。
然后融合数据库计算通知接收者表达式的值,即获取关心此数据改变的AS集合,确定当前所要通知的通知接收者。
步骤S53:向所确定的通知接收者,即向AS集合中的AS发起数据改变通知。
上述流程的具体实现中,如果在AS和HSS之间的接口采用LDAP,则其实现方式与实施例二相同;如果在AS和HSS之间的接口采用Soap,则其实现方式与实施例三相同,本实施例不再详述。
(二)通知接收者关联
如图9b所示,此方式中,AS数据订阅的通知接收者之间相互关联,下面以对多个数据的订阅为例进行说明。
步骤S61:融合数据库接收订阅消息的流程;
假设在融合数据库中AS关心的数据data(1),data(2),...,data(n)的订阅已经存在,订阅时指定的通知接收者表达式分别为关心此数据改变的AS,关心数据改变的AS也为用户数据的一部分。假设关心数据data(n)改变的AS为数据a(n),订阅时指定的通知接收者表达式为a(n)。现在需要对AS的数据data(n+1)进行订阅,通知接收者和关心data(1)、data(2)...data(n)变化的AS具有一定的关系,因此可以指定此订阅的通知接收者为a(1),a(2)...a(n)之间的表达式,这里采用a(n+1)=f(a(1),a(2),...,a(n))表示,即通知接收者表达式为变量与变量之间的运算。
步骤S62:确定通知接收者的流程;
确定通知接收者表达式的值:若数据a(1),a(2),...,a(n)中的一个或多个数据发生了改变,则导致表达式f(a(1),a(2),...,a(n))的值发生改变,因此data(n+1)的通知接收者a(n+1)的值发生改变,而订阅没有发生改变。
首先获取表达式中变量a(1),a(2),...a(n)的值,假设为集合A(1),A(2),...A(2),将表达式a(n+1)=f(a(1),a(2),...,a(n))运算转换为集合A(1),A(2),...,A(n)的并、交、补或括号运算,表达式的值即data(n+1)的具体通知接收者集合。
例如:数据data1和data2已经被订阅,订阅的通知接收者为表达式a1,a2(a1,a2为AS中的数据),分别表示关心data1的AS和关心data2的AS。若需要对data3进行订阅,通知的接收者为a1和a2的交运算,表示当数据data3发生改变时,需要通知同时关心data1和data2改变的AS数据data3的改变。当data3的数据发生改变时,首先获得a1的值(假设为{AS1,AS2})和a2的值(假设为{AS2,AS3}),则触发订阅的具体通知接收者为集合{AS1,AS2}和集合{AS2,AS3}的交集{AS2}。本实施例在LDAP中的实现:
在LDAP中,变量为LDAP中条目的属性,因此通知接收者表达式为条目属性之间的交、并、补和括号运算,即变量与变量之间的运算。
在对订阅进行通知被触发为确定通知接收者进行表达式求值时,首先获取每个变量的值,即获取条目属性值组成的集合,然后将变量之间的运算转化为集合之间的交、并、补和括号运算,最后通过集合运算得到具体通知接收者集合。
本实施例在Soap中的实现:
在Soap中,变量为XPath表达式,因此通知接收者表达式为XPath表达式的之间交、并、补和括号运算。
在对订阅进行通知被触发为确定通知接收者进行表达式求值时,首先获取每个变量的值,即XPath表达式的值组成的集合,然后将变量之间的运算转化为集合之间的交、并、补运算,最后通过集合运算得到具体通知接收者集合。
步骤S63:向所确定的通知接收者通知已改变的AS关心的数据。
请参照图10所示,本发明实施例六一种用户数据订阅通知装置,包括:
接收单元101,用于接收对用户数据进行订阅的订阅消息,所述订阅消息包含所要订阅的内容以及通知接收者表达式,所述通知接收者表达式表示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体;
确定单元102,用于当对所述订阅进行通知的触发条件达到时时,根据所述表达式确定通知接收者;;
通知单元103,用于向所述确定单元确定的通知接收者通知所述订阅消息中所要订阅的内容。
通知接收者表达式包括:变量、算法或表达式之间的运算。
变量具有名称,变量的值为具体通知接收者的集合;算法指获取具体通知接收者集合的原子方法;表达式之间的运算所采用的运算符为集合运算符,运算规则与集合的运算规则相同。
确定单元确定所述通知接收者具体包括:确定变量的值,或者确定影响算法的因素;根据所述确定的变量的值或影响算法的因素对所述表达式进行求值,确定所述触发条件达到时的通知接收者。
通知单元通知所述具体通知接收者的方式包括:轮选方式、随机方式或广播方式,所述轮选方式是指每次订阅被触发而通知时在具体通知接收者集合中选择一个或多个具体通知接收者通知,在通知后记录历史的通知接收者,下次通知选择通知接收者时优先选择没有发起过通知的通知接收者;所述随机方式是指每次订阅被触发而通知时在具体通知接收者集合中随机选择一个或多个具体通知接收者发起通知;所述广播方式是指对具体通知接收者集合中的每一个具体通知接收者发起通知请求。
所述确定单元包括:
获取模块,用于当所述对所述订阅进行通知的触发条件达到时,获取变量的值,或者获取影响算法的因素;
求值模块,用于根据所述获取的变量的值或影响算法的因素对所述表达式进行求值。
本发明实施例中所述用户数据通知装置为融合数据库。
本发明实施例还提供一种用户数据订阅装置,所述装置包括:
通知接收者生成单元,用于生成通知接收者表达式,所述通知接收者表达式表示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体;
订阅消息发送单元,用于发送对用户数据进行订阅的订阅消息,所述订阅消息包含所要订阅的内容以及所述通知接收者表达式。
本发明实施例中所述用户数据订阅装置包括:归属位置寄存器HLR应用实体、归属用户服务器HSS应用实体、应用服务器AS或者融合数据库。
本发明实施例还提供一种用户数据订阅通知系统,所述系统包括:
用户数据订阅装置,用于发送对用户数据进行订阅的订阅消息,所述订阅消息包含所要订阅的内容以及通知接收者表达式,所述通知接收者表达式表示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体;
用户数据订阅通知装置,用于接收所述对用户数据进行订阅的订阅消息,当对所述订阅进行通知的触发条件达到时,根据所述表达式确定通知接收者,并向所述通知接收者通知所述订阅消息中所要订阅的内容。
本发明实施例通过接收到采用表达式来表达通知接收者的订阅消息,该表达式表示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体,在不改变订阅的前提下,由于随着系统变化所述表达式的值也发生变化,实现了通知时通知接收者的改变并指示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体,或者指示关心所订阅的内容的应用实体,实现了通知的灵活和正确性。采用表达式来表示通知接收者,将通知接收者与数据关联,这样业务(订阅)不需要发生改变,可以通过数据的改变来改变通知接收者。通知的接收者随着当前系统状态的变化而变化,在数据融合的情况下,容易开展新的业务。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如:ROM/RAM、磁碟、光盘等。
以上对本发明实施例进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (15)

1.一种用户数据订阅通知方法,包括以下步骤:
数据存储装置接收对用户数据进行订阅的订阅消息,所述订阅消息包含所要订阅的内容以及通知接收者表达式,所述通知接收者表达式表示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体,所述通知接收者表达式包括变量或算法,或者,所述通知接收者表达式包括包含变量或算法的表达式之间的运算,所述表达式之间的运算所采用的运算符为集合运算符,运算规则与集合的运算规则相同;
当对所述订阅进行通知的触发条件达到时,根据所述表达式确定通知接收者;
向所述通知接收者通知所述订阅消息中所要订阅的内容。
2.根据权利要求1所述的方法,其特征在于:所述确定通知接收者具体包括:
当所述对所述订阅进行通知的触发条件达到时,获取变量的值,或者获取影响算法的因素;
根据所述获取的变量的值或影响算法的因素对所述表达式进行求值。
3.根据权利要求2所述的方法,其特征在于:当所述通知接收者表达式为变量之间的运算时,则对所述表达式进行求值具体包括:
获取每个变量的值;
将所述变量之间的运算转化为集合之间的运算;
通过集合运算得到具体通知接收者集合。
4.根据权利要求1所述的方法,其特征在于:所述数据存储装置与通知接收者之间的接口采用轻量目录访问协议LDAP协议,则所述通知接收者表达式由变量组成,所述变量为LDAP条目中为用户提供服务的应用实体的编号属性。
5.根据权利要求4所述的方法,其特征在于:所述数据存储装置为融合数据库,所述所要订阅的内容为所述融合数据库存储的用户签约数据,对所述订阅进行通知的触发条件为所述用户签约数据发生改变,所述通知接收者为所述用户签约数据发生改变时为用户提供服务的归属位置寄存器HLR应用实体,所述HLR和融合数据库之间的接口采用轻量目录访问协议LDAP协议,则所述通知接收者表达式由变量组成,所述变量为LDAP条目中为用户提供服务的HLR应用实体的编号属性HLRNumber,所述HLRNumber属性值组成的集合即为所述变量的值。
6.根据权利要求1所述的方法,其特征在于:所述数据存储装置与通知接收者之间的接口采用简单对象访问协议Soap协议,所述通知接收者表达式由变量组成,所述变量为可扩展标识语言XML的路径语言XPath表达式。
7.根据权利要求6所述的方法,其特征在于:所述数据存储装置为融合数据库,所述所要订阅的内容为所述融合数据库存储的用户签约数据,对所述订阅进行通知的触发条件为所述用户签约数据发生改变,所述通知接收者为所述用户签约数据发生改变时为用户提供服务的归属用户服务器HSS应用实体,所述HSS和融合数据库之间的接口采用简单对象访问协议Soap协议,所述通知接收者表达式由变量组成,所述变量为可扩展标识语言XML的路径语言XPath表达式。
8.根据权利要求4或6所述的方法,其特征在于:所述数据存储装置为融合数据库,所述所要订阅的内容为所述融合数据库存储的用户签约数据,对所述订阅进行通知的触发条件为所述用户签约数据发生改变,所述通知接收者为所述用户签约数据发生改变时为用户提供服务的应用服务器AS应用实体,当所述为用户提供服务的AS应用实体相关联时,所述通知接收者表达式为条目属性之间的交、并、补和括号运算,或者所述通知接收者表达式为XPath表达式的之间交、并、补和括号运算。
9.根据权利要求1所述的方法,其特征在于:向所述通知接收者通知所述订阅消息中所要订阅的内容的方式包括:轮选方式、随机方式或广播方式;
所述轮选方式是指每次订阅被触发而通知时在所述通知接收者集合中选择一个或多个通知接收者通知,在通知后记录历史的通知接收者,下次通知选择通知接收者时优先选择没有发起过通知的通知接收者;
所述随机方式是指每次订阅被触发而通知时在所述通知接收者集合中随机选择一个或多个通知接收者发起通知;
所述广播方式是指对所述通知接收者集合中的每一个通知接收者发起通知请求。
10.一种用户数据订阅通知装置,其特征在于:所述装置包括:
接收单元,用于接收对用户数据进行订阅的订阅消息,所述订阅消息包含所要订阅的内容以及通知接收者表达式,所述通知接收者表达式表示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体,所述通知接收者表达式包括变量或算法,或者,所述通知接收者表达式包括包含变量或算法的表达式之间的运算,所述表达式之间的运算所采用的运算符为集合运算符,运算规则与集合的运算规则相同;
确定单元,用于当对所述订阅进行通知的触发条件达到时,根据所述表达式确定通知接收者;
通知单元,用于向所述确定单元确定的通知接收者通知所述订阅消息中所要订阅的内容。
11.根据权利要求10所述的装置,其特征在于:所述确定单元包括:
获取模块,用于当所述对所述订阅进行通知的触发条件达到时,获取变量的值,或者获取影响算法的因素;
求值模块,用于根据所述获取的变量的值或影响算法的因素对所述表达式进行求值。
12.根据权利要求10或11所述的装置,其特征在于:所述装置为融合数据库。
13.一种用户数据订阅装置,其特征在于:所述装置包括:
通知接收者生成单元,用于生成通知接收者表达式,所述通知接收者表达式表示对订阅进行通知的触发条件达到时为用户提供服务的应用实体,所述通知接收者表达式包括变量或算法,或者,所述通知接收者表达式包括包含变量或算法的表达式之间的运算,所述表达式之间的运算所采用的运算符为集合运算符,运算规则与集合的运算规则相同;
订阅消息发送单元,用于发送对用户数据进行订阅的订阅消息,所述订阅消息包含所要订阅的内容以及所述通知接收者表达式。
14.根据权利要求13所述的装置,其特征在于:所述装置为:归属位置寄存器HLR应用实体、归属用户服务器HSS应用实体或者应用服务器AS。
15.一种用户数据订阅通知系统,其特征在于,所述系统包括:用户数据订阅装置和用户数据订阅通知装置;
所述用户数据订阅装置包括:
通知接收者生成单元,用于生成通知接收者表达式,所述通知接收者表达式表示对所述订阅进行通知的触发条件达到时为用户提供服务的应用实体,所述通知接收者表达式包括变量或算法,或者,所述通知接收者表达式包括包含变量或算法的表达式之间的运算,所述表达式之间的运算所采用的运算符为集合运算符,运算规则与集合的运算规则相同;
订阅消息发送单元,用于发送对用户数据进行订阅的订阅消息,所述订阅消息包含所要订阅的内容以及所述通知接收者表达式;
所述用户数据订阅通知装置包括:
接收单元,用于接收对用户数据进行订阅的订阅消息;
确定单元,用于当对所述订阅进行通知的触发条件达到时,根据所述表达式确定通知接收者;
通知单元,用于向所述确定单元确定的通知接收者通知所述订阅消息中所要订阅的内容。
CN2008100274650A 2008-04-16 2008-04-16 一种用户数据订阅通知方法及装置 Expired - Fee Related CN101562578B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2008100274650A CN101562578B (zh) 2008-04-16 2008-04-16 一种用户数据订阅通知方法及装置
PCT/CN2009/071044 WO2009127136A1 (zh) 2008-04-16 2009-03-27 一种用户数据订阅通知方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008100274650A CN101562578B (zh) 2008-04-16 2008-04-16 一种用户数据订阅通知方法及装置

Publications (2)

Publication Number Publication Date
CN101562578A CN101562578A (zh) 2009-10-21
CN101562578B true CN101562578B (zh) 2012-02-01

Family

ID=41198778

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100274650A Expired - Fee Related CN101562578B (zh) 2008-04-16 2008-04-16 一种用户数据订阅通知方法及装置

Country Status (2)

Country Link
CN (1) CN101562578B (zh)
WO (1) WO2009127136A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101925047B (zh) * 2009-06-11 2014-09-10 中兴通讯股份有限公司 用户数据融合网络系统及订阅通知的实现方法
CN102118735B (zh) * 2010-01-05 2015-04-01 中兴通讯股份有限公司 基于轻量级目录访问协议实现数据订阅通知的方法
CN101977357A (zh) * 2010-10-21 2011-02-16 中兴通讯股份有限公司 一种基于轻量级目录访问协议消息的数据订阅方法及系统
CN102891827A (zh) * 2011-07-18 2013-01-23 中兴通讯股份有限公司 多个应用服务器共享业务指示的方法及系统
CN105740305A (zh) * 2015-11-16 2016-07-06 天津南大通用数据技术股份有限公司 集群数据库的数据加载方法及装置
CN112188444B (zh) 2018-04-09 2021-08-03 华为技术有限公司 一种订阅服务的方法及装置
CN110399573A (zh) * 2018-04-16 2019-11-01 中国移动通信有限公司研究院 一种信息处理方法、装置、设备及计算机可读存储介质
US10674349B2 (en) 2018-05-11 2020-06-02 Huawei Technologies Co., Ltd. Subscription update method, device, and system
CN109936843B (zh) * 2018-05-11 2020-02-14 华为技术有限公司 订阅更新方法、设备及系统
CN110196874A (zh) * 2019-05-31 2019-09-03 新华三大数据技术有限公司 数据订阅方法、装置及服务器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1866833A (zh) * 2005-12-22 2006-11-22 华为技术有限公司 分布式数据管理系统及其动态订阅数据的方法
CN101047691A (zh) * 2006-04-29 2007-10-03 华为技术有限公司 一种对订阅进行集中控制的方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101110822B (zh) * 2007-07-06 2011-11-02 华为技术有限公司 基于网络配置协议的事件通知发送方法、系统及设备
CN101159711B (zh) * 2007-11-27 2010-06-02 航天东方红卫星有限公司 自适应的实时消息订阅与发布系统及方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1866833A (zh) * 2005-12-22 2006-11-22 华为技术有限公司 分布式数据管理系统及其动态订阅数据的方法
CN101047691A (zh) * 2006-04-29 2007-10-03 华为技术有限公司 一种对订阅进行集中控制的方法

Also Published As

Publication number Publication date
WO2009127136A1 (zh) 2009-10-22
CN101562578A (zh) 2009-10-21

Similar Documents

Publication Publication Date Title
CN101562578B (zh) 一种用户数据订阅通知方法及装置
RU2739495C1 (ru) Регистрация и обнаружение услуги в сети связи
US9363314B2 (en) Systems and methods for event notification framework in a machine-to-machine (M2M) context
KR101880456B1 (ko) 자원 시멘틱의 인에이블링
CN101925047B (zh) 用户数据融合网络系统及订阅通知的实现方法
US7583655B2 (en) Synchronizing call feature data between an IMS network and a legacy network
KR101264819B1 (ko) 표적 동작 객체를 찾아내기 위한 장치 관리 서버, 클라이언트 및 방법
CN102461125B (zh) 用于发布基于结构化元数据的发现的插件模型的方法和装置
EP3017386A1 (en) Mechanisms for semantics publishing and discovery
CN102668642A (zh) 网络选择机制
KR20110083485A (ko) 관리트리의 관리객체 어드레싱 방법 및 그 장치관리 시스템
CN107656981A (zh) 一种基于标识技术的数据共享和管理方法及系统
KR20110052356A (ko) 휴대용 단말기의 주소록 통합 서비스 제공 방법
CN101682648A (zh) 在多实体标识情况中管理实体数据
CN107026882A (zh) 一种资源获取的方法及相关设备
CN103119911A (zh) 用于同步社交网络的用户配置文件和用户的个人联系卡(pcc)的方法和系统
CN104091228A (zh) 物联网资源管理、注册、查询和语义库管理系统
CN115795539A (zh) 一种权限管理方法、装置、设备及存储介质
CN102694824A (zh) 一种用户数据存储系统及其数据访问方法
EP2847931B1 (en) Method and apparatus for updating personal information in communication system
CN103460681B (zh) 融合地址薄能力的管理方法
CN101640701B (zh) 用于电话号码映射域名服务器Enumdns查询的方法
KR100696824B1 (ko) 이동통신 시스템에서의 주소록 통합 자동 싱크 방법
CN101316399A (zh) 一种通信终端外观的更新方法、系统及其装置
WO2011032470A1 (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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120201

CF01 Termination of patent right due to non-payment of annual fee