CN107846435A - 业务实现系统及方法 - Google Patents
业务实现系统及方法 Download PDFInfo
- Publication number
- CN107846435A CN107846435A CN201610835676.1A CN201610835676A CN107846435A CN 107846435 A CN107846435 A CN 107846435A CN 201610835676 A CN201610835676 A CN 201610835676A CN 107846435 A CN107846435 A CN 107846435A
- Authority
- CN
- China
- Prior art keywords
- api
- business
- encapsulation
- atom
- communication network
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Abstract
本发明实施例公开了一种业务实现系统及方法,所述系统包括:通信网络,用于提供通信网络能力;应用编程接口API编排子系统,与所述通信网络通过通信网络能力的原子API连接,用于将一个或多个所述原子API封装成封装后的API;其中,所述原子API,用于提供最基本的通信网络能力且为一次API调用的最小单元;所述封装后的API用于提供满足指定业务的通信网络能力;业务池,与所述API编排子系统连接,用于根据指定业务的业务需求,调用一个或多个所述封装后的API提供通信网络能力,打破了业务平台和通信网络之间的强耦合关系,具有通信网络变化灵活性大及新业务实现效率高的特点。
Description
技术领域
本发明涉及通信领域,尤其涉及一种业务实现系统及方法。
背景技术
图1所示的为现有的业务实现系统架构,包括通信网络及业务平台;通信网络与业务平台之间通过通信协议接口连接。在应用时,业务平台通过通信协议接口与通信网络相连,在通信网络签约用户的业务触发数据;通信网络的网元(如核心网元CSCF或移动交换中心MSC)在收到呼叫信令后,根据用户签约的业务触发数据,将呼叫信令触发到业务平台,业务平台收到呼叫信令后,通过相应的功能和处理逻辑来提供业务。
上述业务实现系统架构存在以下问题:
第一:如图1所示,通信网络和业务平台之间是通过通信协议接口实现的强耦合。当通信网络变化时,业务平台需要增加新的通信协议,或修改通信协议,以适配通信网络的变化,显然这样一方面会局限通信网络的变化,另一方面通信网络一旦变化,业务平台配合变化的难度大,效率低。
第二:不同的业务均基于通信平台形成不同的业务平台。这些平台之间相互孤立,导致多个业务中使用的相同功能无法重复实现,进一步导致新业务添加困难且效率低。
第三:多个业务对应多个业务平台,用户签约多个业务则通信网络需要触发多个业务平台;为满足业务的触发顺序要求,通信网络需进行参数配置,参数配置较复杂且工作量较大,而且业务之间可能产生嵌套和冲突的情况。
发明内容
有鉴于此,本发明实施例期望提供一种业务实现系统及方法,至少解决上述部分问题。
为达到上述目的,本发明的技术方案是这样实现的:
本发明实施例第一方面提供一种业务实现系统,包括:
通信网络,用于提供通信网络能力;
应用编程接口API编排子系统,与所述通信网络通过通信网络能力的原子API连接,用于将一个或多个所述原子API封装成封装后的API;其中,所述原子API,用于提供最基本的通信网络能力且为一次API调用的最小单元;所述封装后的API用于提供满足指定业务的通信网络能力;
业务池,与所述API编排子系统连接,用于根据指定业务的业务需求,调用一个或多个所述封装后的API提供通信网络能力。
基于上述方案,所述API编排子系统,还用于判断两个所述封装后的API是否存在冲突关系,若存在冲突关系,生成冲突标识;
所述业务池,还用于根据所述API编排子系统提供的冲突标识,限制同时调用具有冲突关系的多个封装后的API。
基于上述方案,所述业务池,具体用于根据所述API编排子系统提供的冲突标识,禁止同一个业务调用多个具有冲突关系的封装后的API。
基于上述方案,所述业务池,具体用于根据所述API编排子系统提供的冲突标识,禁止同一个用户账号订购使用了具有冲突关系的多个封装后的API的多个业务。
基于上述方案,所述API编排子系统,具体用于根据单一化业务的业务需求,将一个原子API及对应的业务相关参数共同封装形成所述封装后的API。
基于上述方案,所述API编排子系统,还具体用于根据多元化业务的业务需求,确定多个所述原子API的调用顺序和嵌套依赖关系,进行多个所述原子API的组合;
将组合后的原子API及对应的业务相关参数,封装形成所述封装后的API。
基于上述方案,所述API编排子系统,还具体用于根据特性化业务的业务需求,将一个或多个所述原子API及业务相关参数,以及外部数据交互的调用逻辑,共同封装形成所述封装后的API。
本发明实施例第二方面提供一种业务实现方法,包括:
将通信网络的通信网络能力划分为原子API,其中,所述原子API用于提供最基本的通信网络能力且为一次API调用的最小单元;
根据不同类型的业务需求,将一个或多个所述原子API封装为封装后的API;
调用一个或多个所述封装后的API提供满足指定业务的业务需求的通信网络能力。
基于上述方案,所述方法还包括:
判断两个所述封装后的API是否存在冲突关系;
若存在冲突关系,生成冲突标识;
根据所述冲突标识,限制同时调用具有冲突关系的多个封装后的所述API。
基于上述方案,所述限制同时调用具有冲突关系的多个封装后的所述API,包括:
根据所述冲突标识,禁止同一个业务调用多个具有冲突关系的封装后的API。
基于上述方案,所述根据所述冲突标识,限制同时调用具有冲突关系的多个封装后的所述API,包括:
根据所述冲突标识,禁止同一个用户账号订购使用了具有冲突关系的多个封装后的API的多个业务。
基于上述方案,所述根据不同类型的业务需求,将一个或多个所述原子API封装为封装后的API,包括:
根据单一化业务的业务需求,将一个原子API及对应的业务相关参数共同封装形成所述封装后的API。
基于上述方案,所述根据不同类型的业务需求,将一个或多个所述原子API封装为封装后的API,包括:
根据多元化业务的业务需求,确定多个所述原子API的调用顺序和嵌套依赖关系,进行多个所述原子API的组合;
将组合后的原子API及对应的业务相关参数,并封装形成所述封装后的API。
基于上述方案,所述根据不同类型的业务需求,将一个或多个所述原子API封装为封装后的API,包括:
根据特性化业务的业务需求,将一个或多个所述原子API及业务相关参数,以及外部数据交互的调用逻辑,共同封装形成所述封装后的API。
本发明实施例提供的业务实现系统及方法,在相当于业务平台的业务池与通信网络之间,引入了API编程子系统;通信网络提供原子API,API编排子系统对原子API封装形成封装后的API,业务池基于指定业务需求,调用一个或多个封装后的API实现业务。这样的话,通信网络提供的通信网络能力不减少,例如增加或更新的情况下,对于业务池的业务实现而言都是透明的,不需要根据通信网络的变化发生适配性变化;与此同时,一个新业务的引入,可以根据新业务所需的通信网络能力,快速调用API编排子系统提供的封装后的API即可,不用根据通信协议重新封装,提升了新业务的引入效率;与此同时,不同的业务可以调用同一个封装后的API,故打破现有技术中实现不同业务的业务平台,不能共用其他业务平台的相同功能的问题,再次提升了业务实现效率。且在本实施例中所述业务池同时可以对多个不同的业务或多类不同业务进行实现,而非一个个孤立的仅能够实现一个或一类业务的业务平台。
附图说明
图1为一种业务实现系统的结构示意图;
图2为本发明实施例提供的一种业务实现系统的结构示意图;
图3为本发明实施例提供的一种业务实现方法的流程示意图;
图4为本发明实施例提供的另一种业务实现方法的流程示意图。
具体实施方式
以下结合说明书附图及具体实施例对本发明的技术方案做进一步的详细阐述。
如图2所示,本实施例提供一种业务实现系统,包括:
通信网络110,用于提供通信网络能力;
应用编程接口API编排子系统120,与所述通信网络110通过通信网络能力的原子API连接,用于将一个或多个所述原子API封装成封装后的API;其中,所述原子API,用于提供最基本的通信网络能力且为一次API调用的最小单元;所述封装后的API用于提供满足指定业务的通信网络能力;
业务池130,与所述API编排子系统120连接,用于根据指定业务的业务需求,调用一个或多个所述封装后的API提供通信网络能力。
在本实施例中,所述业务实现系统的通信网络会将其自身可提供的各种通信网络能力,划分为不可再分的调用单元,封装成原子API。例如,通信网络对通信网络功能进行抽象,得到话音、会议、消息、用户数据、认证、服务质量(Quality of Service,QoS)等类别的支持对外界开放的通信网络能力。例如,话音通信网络可以抽象得到呼叫事件通知能力、呼叫控制能力、放音能力、单向外呼能力、两方通话能力、多方通话能力等通信网络能力;消息通信网络可以抽象得到发送短消息(SM)能力、发送多媒体消息(MM)能力、发送即时消息(IM)能力、发送非结构化补充数据业务USSD消息能力等通信网络能力;将这些通信网络能力配置为原子API。
本实施例中还引入了API编排子系统120,API编排子系统120会将这些原子API进行封装,例如根据现有的所有业务类型,封装成包括一个或多个原子API的封装后的API,这些封装后的API的一个或多个可以用于向指定业务提供通信网络能力,且这些封装后的API可以被多个业务进行共用,以满足多个业务的业务需求。
显然本实施例提供了一种业务实现系统,引入了API编排子系统120及业务池130,通信网络向API编排子系统提供的原子API,这样的话,通信网络发生变化,若增加新的通信网络能力,先由API编排子系统,将新的通信网络能力进行处理形成封装后的API再提供给业务使用,显然由于API编排子系统的引入,打破了业务池130与通信网络的这种强耦合关系。在本实施例提供的业务实现系统中,通信网络发生变化,只要其提供的原子API没有发生变化或没有减少原子API或新增了API,对业务池130而言都是透明的,从而解决了强耦合带来的通信网络一旦变化,业务平台就需要发生变化的适配问题。
如图2所示,所述业务池130可以通过封装后的API的调度,对业务1、业务2……业务N进行业务实现,业务池130可以用于任意两个业务的实现,例如,同一个类型的不同业务和/或不同类型业务的实现。
同时,API编排子系统120形成的封装后的API,可以被不同业务共享,显然实现了相同功能的重复调用,打破业务之间的孤立性。当有一个新的业务上线时,只需要通过分析业务需求,需要调用哪些原子API,可以找到对应的封装后的API进行调用即可,具有新业务上行效率高的特点。且在本实施例中所述封装后的API若包括多个原子API时,就都已经确定了原子API之间的调用关系,显然还解决了现有技术中API冲突的问题。
所述API编排子系统120,还用于判断两个所述封装后的API是否存在冲突关系,若存在冲突关系,生成冲突标识。例如,两个封装后的API会对用户造成重复操作,例如,同时调用这两个封装后的API会向用户终端发送两次信息,对用户产生信息干扰,这是一种同向冲突关系。再比如,一个封装后的API提供在满足条件A时截获呼叫的通信网络能力,另一个封装后的API提供的满足条件A时,提供主动呼叫的通信网络能力,显然这两个会产生反向冲突关系。总之,在本实施中所述冲突关系可为通过对封装后的API提供的通信网络能力的分析,若产生有矛盾冲突的地方,就可认为产生了冲突关系。具体的冲突关系也可以参考现有技术中产生的各种冲突,在此就不再一一解释了。在本实施例中任意两个封装后的API之间有冲突关系,就会产生冲突标识。在本实施例中所述冲突标识可包括冲突字段,表示有冲突关系,还包括标识字段;该标识字段可用于记录两个有冲突关系的封装后的API的标识信息。如封装后的API的序列号等。
如图2所示,所述API编排子系统包括API嵌套和冲突处理功能模块,主要用于冲突判断及冲突标识的生成。在具体实现时,所述API编排子系统120还可包括封装模块,用于将原子API封装成所述封装后的API,提供给所述业务池130进行调度。
所述业务池130,还用于根据所述API编排子系统120提供的冲突标识,限制同时调用具有冲突关系的多个封装后的所述API。
在本实施例中所述业务池130,主要用于解决冲突,业务池将根据API编排子系统120提供的冲突标识,在对指定业务进行封装后的API调度的过程中,限制冲突的产生。
例如,在一些实施例中,所述业务池130,具体用于根据所述API编排子系统提供的冲突标识,禁止同一个业务调用多个具有冲突关系的封装后的所述API。例如,业务A所需的通信网络能力可以由第一封装后的API和第二封装后的API实现,但是业务池130根据所述API编排子系统120提供的冲突标识发现,这里的第一封装后的API和第二封装后的API具有冲突关系,为了避免冲突,所述业务池130会选择同样可以满足上述业务需求,且不会产生冲突的其他封装后的API实现,从而解决了API冲突问题。
在一些实施例中,所述业务池130,具体用于根据所述API编排子系统120提供的冲突标识,禁止同一个用户账号订购使用了具有冲突关系的多个封装后的API的多个业务。
当两个业务使用的封装后的API具有冲突时,可认为这两个业务具有冲突,在本实施例中所述业务池130还会根据所述冲突标识,禁止同一个用户账号订购具有冲突的两个业务,以免在业务应用的应用中产生冲突。例如,业务A使用的封装后的API,与业务B使用的封装后的API具有冲突关系,若用户A想同时订购业务A和业务B,业务池120在进行订购响应时,会发出警告禁止这种业务的订购,从而业务订购层面消除API之间的冲突。
所述API编排子系统120,将原子API封装成封装后的API的方式有多种,以下提供几种基于业务类型,进行原子API封装的API编排子系统。
在一些实施例中,所述API编排子系统120,具体用于根据单一化业务的业务需求,将一个原子API及对应的业务相关参数共同封装形成所述封装后的API。这种单一化业务,可能只需要一个原子API就能够满足,在本实施例中所述API编排子系统120就将一个原子API和对应的业务相关参数封装成一个所述封装后的API。这里的业务相关参数可包括执行该业务的操作参数或业务的标识参数等信息。
在另一些实施中,所述API编排子系统120,还具体用于根据多元化业务的业务需求,确定多个所述原子API的调用顺序和嵌套依赖关系,进行多个所述原子API的组合;将组合后的所述原子API及对应的业务相关参数,封装形成所述封装后的API。多元化业务可能需要两个或两个以上的API提供的通信网络能力才能满足。在本实施例中所述API编码子系统120,首先会确定出多个原子API的调用顺序及嵌套依赖关系。这里调用顺序可理解为这些原子API的调用时序。这里的嵌套调用依赖关系可包括确定由哪一个原子API调用哪一个原子API等。根据调用顺序和嵌套依赖关系,进行原子API组合;在组合后的API中添加对应的业务相关参数,再进行封装,就会形成一个包括多个原子API的封装后的API。
在还有一些实施例中,所述API编排子系统120,还具体用于根据特性化业务的业务需求,将一个或多个所述原子API及业务相关参数,以及外部数据交互的调用逻辑,共同封装形成所述封装后的API。
这些特性化业务,可能要求实现业务需求比较独特,通信网络自身没有办法满足,需要外部数据库提供数据支撑。此时,在本实施例中在形成所述封装后的API时,还会引入与外部数据库进行交互的调用逻辑。这样形成的封装后的API是可以满足一些特性需求的。
总之,本实施例提供了一种业务实现系统,打破了现有技术中业务平台和通信网络之间的强耦合连接,利用可以同时容纳多个业务的业务池130代替业务平台,并在业务池130与通信网络110之间引入了API编排子系统120,具有通信网络变化局限小,新业务引入方便,同一个封装后的API可被重复利用的特点。
如图3所示,本实施例提供一种业务实现方法,包括:
步骤S110:将通信网络的通信网络能力划分为原子API,其中,所述原子API用于提供最基本的通信网络能力且为一次API调用的最小单元;
步骤S120:根据不同类型的业务需求,将一个或多个所述原子API封装为封装后的API;
步骤S130:调用一个或多个所述封装后的API提供满足指定业务的业务需求的通信网络能力。
本实施例所述业务实现方法可为应用于前述的业务实现系统中的信息处理方法。在本实施例中首先将通信网络的通信网络能力切割为不可再切割的基本通信网络能力,形成所述原子API。
在步骤S120中,将根据不同类型的业务需求,将一个或多个原子API封装成封装后的API。这些封装后的API可以直接用于满足指定业务的业务需求。
在步骤S130中,直接根据所述指定业务的当前业务需求所需的通信网络能力,调用一个或多个所述封装后的API,从而实现所述指定业务。显然本实施例提供的这种业务实现方法,不再是由业务平台直接通过通信协议接口调用通信网络中的通信网络能力,而是需要封装后的API及原子API调用所述通信网络的通信网络能力,打破了现有技术中的业务平台和通信网之间的强耦合关系,从而使得通信网络的变化更加灵活、新业务的引入更加便捷、同一个封装后的API可以被不同的业务重复调用,从而减少业务实现的操作,提升业务实现的效率。
在一些实施例中,如图4所示,所述方法还包括:
步骤S101:判断两个所述封装后的API是否存在冲突关系;
步骤S102:若存在冲突关系,生成冲突标识;
步骤S103:根据所述冲突标识,限制同时调用具有冲突关系的多个封装后的所述API。
在本实施例中为了避免封装后的两个API之间的冲突,在封装所述API时,会预先判断冲突关系,并生成冲突标识,这样的话,在步骤S130中调用封装后的API时,就可以限制两个具有冲突关系的API的同时使用,从而避免应用过程中的冲突产生。
在一些实施例中,所述步骤S103可包括:根据所述冲突标识,禁止同一个业务调用多个具有冲突关系的封装后的所述API。在另一些实施例中,所述步骤S103可包括:根据所述冲突标识,禁止同一个用户账号订购使用了具有冲突关系的多个封装后的API的多个业务。显然在本实施例中,一方面可以避免业务内的冲突,同时还可以避免业务间的冲突。
所述封装原子API的方式有多种,以下提供几种可实现方式:
可实现方式一:
所述步骤S120可包括:
根据单一化业务的业务需求,将一个原子API及对应的业务相关参数共同封装形成所述封装后的API。
可实现方式二:
所述步骤S120可包括:
根据多元化业务的业务需求,确定多个所述原子API的调用顺序和嵌套依赖关系,进行多个所述原子API的组合;
将组合后的所述API及对应的业务相关参数,封装形成所述封装后的API。
可实现方式三:
所述步骤S120可包括:
根据特性化业务的业务需求,将一个或多个所述原子API及业务相关参数,以及外部数据交互的调用逻辑,共同封装形成所述封装后的API。
在本实施例中,所述可实现方式三实质上可认为是:在所述可实现方式一或可实现方式二的基础上,引入了调用逻辑的封装,从而可以实现业务时,与外部数据库进行数据交互,满足特殊业务需求或个性业务需求。
总之,本实施例提供了一种业务实现方法,在进行业务实现时,不需要根据通信网络平台的变化,频繁进行业务的适配处理,新业务引入速度快,同一个封装后的API可以被不同的业务重复利用,再次提升了业务实现的效率。
以下结合上述实施例提供一个具体示例:
本示例中,首先通过通信网络能力的原子API代替业务平台和通信网络之间的通信协议接口,将业务和通信网络解耦合,对业务封装通信网络功能实现细节,从而屏蔽通信网络变化对业务的影响。
其次,将通信网络的网络能力分解到不可分割的粒度,定义原子API,实现通信网络功能到原子API的映射。当通信网络功能全集确定时原子API全集即确定。
接着,API编排子系统将原子API编排为编排组合封装后的API,面向不同业务进行开放。当业务需要使用新的通信网络能力时,只需要编排新的编排组合封装后的API,或者复用现有的编排组合封装后的API,而通信网络无需重新进行开发。
再次,通信网络只面向API编排子系统开放原子API,实现通信网络能力的单点开放,通信网络不再需要设置业务或通信网络能力API的触发顺序,数据配置简单化。API编排子系统通过对原子API的编排组合处理,面向业务开放编排组合封装后的API,并处理原子API之间的嵌套和冲突,以及编排组合封装后的API的冲突。
本示例中,提出一种基于网络能力API编排组合实现业务的方法及系统。所述系统包括通信网络(开放原子API),API编排子系统(包含嵌套和冲突处理功能模块,编排组合封装及开放API)及业务池。
以下分别对上述各个结构进行分节介绍。
通信网络:
本示例中,通信网络对复杂的网络功能进行抽象得到网络能力,再将网络能力封装为网络能力原子API,并开放给API编排子系统;所述通信网络包括话音网络、消息网络、用户数据网络、认证网络、流量控制网络等。
本示例中,通信网络对网络功能进行抽象,得到话音、会议、消息、用户数据、认证、QoS等类别的支持对外界开放的网络能力。例如,话音通信网络可以抽象得到呼叫事件通知能力、呼叫控制能力、放音能力、单向外呼能力、两方通话能力、多方通话能力等网络能力;消息通信网络可以抽象得到发送短消息(SM)能力、发送多媒体消息(MM)能力、发送即时消息(IM)能力、发送USSD消息能力等网络能力;上述网络能力经过封装处理后均支持对外界开放。
本示例中,通信网络将抽象得到的网络能力封装为不可分割的网络能力原子API(即一次API调用的最小单位),并开放给API编排子系统;由于原子API达到不可分割的粒度,因此利于进行标准化。网络能力到原子API的封装映射可以是一到一的,也可以是一到多的;例如,呼叫控制能力封装为呼叫控制API,呼叫事件通知能力封装为呼叫事件订阅API和呼叫事件通知API。一般地,原子API采用HTTP协议构造,遵循Restful设计风格;原子API也可以采用其他协议构造。原子API可以是上行方向的(通信网络→API编排子系统),也可以是下行方向的(API编排子系统→通信网络)。原子API可以包含一个或多个参数,通过参数实现到通信网络具体操作处理的映射。下面列举一些典型的通信网络封装提供的原子API。
(1)呼叫事件订阅API,由话音通信网络封装提供,下行方向,包括订阅号码列表、呼叫流程(取值:主叫流程、被叫流程、主叫和被叫流程)、呼叫状态(取值:呼叫开始、振铃、被叫应答、发生前转、呼叫结束、呼叫失败(含被叫忙、被叫不可达、被叫无应答)等)、通知模式(取值:通知后接续、通知后等待指示)、时间戳等参数。
(2)呼叫事件通知API,由话音通信网络封装提供,上行方向,包括呼叫标识、主叫号码、被叫号码、呼叫流程(取值:主叫流程、被叫流程)、呼叫状态(取值:呼叫开始、振铃、被叫应答、发生前转、呼叫结束、呼叫失败(含被叫忙、被叫不可达、被叫无应答)等)、通知模式(取值:通知后接续、通知后等待指示)、时间戳等参数。
(3)呼叫控制API,由话音通信网络封装提供,下行方向,包括呼叫操作指示(取值:接续呼叫、释放呼叫)参数。
(4)放音API,由话音通信网络封装提供,下行方向,包括放音号码、放音内容、放音次数等参数。
(5)发送短消息API,由消息通信网络封装提供,下行方向,包括短消息源地址、短消息目的地址、短消息内容、短消息形式(取值:普通短信、闪信)等参数。
本示例中,通信网络将网络功能抽象和封装为标准的网络能力原子API,实现了网络能力的具体化和标准化,从而支持对外界开放。一旦通信网络的功能确定,网络能力即确定,原子API即确定。考虑到通信网络已经长期在现网部署,网络功能相对稳定,因此原子API相对稳定;因此,通信网络封装提供的原子API不需要进行频繁改动;对于完全成熟的通信网络,其封装提供的原子API不需要进行任何改动。可见,通过封装提供标准的原子API,通信网络实现了与业务的解耦合。
API编排子系统:
本示例中,API编排子系统面向接入通信网络开放的原子API,对原子API进行编排组合处理,支持面向业务开放编排组合封装后的API。API编排子系统对原子API的编排组合处理是通过脚本方式或图形化编辑器方式实现的。
本示例中,API编排子系统调用对原子API的编排组合处理,根据是否对原子API进行组合,以及是否增加对外部数据源的查询处理逻辑,可以分为以下三类编排组合方式:
(1)1对1封装方式:该编排组合方式下,API编排子系统将通信网络提供的一个原子API添加业务相关参数后封装为一个API,主要面向网络能力需求标准且单一化的业务进行开放。例如,API编排子系统将通信网络提供的发送短消息API(原子API,“短消息形式”参数明确为“普通短信”)添加“API编排子系统地址”和“应用标识”等业务相关参数后,封装为“发送普通短信API”,面向业务进行开放。
(2)无外部数据源的组合编排后封装方式:该编排组合方式下,API编排子系统将多个原子API进行组合,即定义原子API的调用顺序和嵌套依赖关系,再添加业务相关参数后封装为一个API,主要面向网络能力需求标准且多元化的业务进行开放。例如,API编排子系统将通信网络提供的呼叫事件订阅API(原子API,“呼叫状态”参数明确为“呼叫开始”)、呼叫事件通知API(原子API,“呼叫状态”参数明确为“呼叫开始”)、发送短消息API(原子API,“短消息目的地址”参数明确为被叫用户号码,“短消息形式”参数明确为“闪信”)进行组合,定义上述三个原子API的调用顺序和嵌套依赖关系(先调用呼叫事件订阅API,每次调用一次呼叫事件通知API后立即调用一次发送短消息API),再添加“API编排子系统地址”和“应用标识”等业务相关参数后,封装为“呼叫开始后向被叫发送闪信API”,面向业务进行开放。又例如,API编排子系统将通信网络提供的呼叫事件订阅API(原子API,“呼叫状态”参数明确为“呼叫开始”或“振铃”)、呼叫事件通知API(原子API,“呼叫状态”参数明确为“呼叫开始”或“振铃”)、放音API(原子API,“放音号码”参数明确为主叫用户号码)进行组合,定义上述三个原子API的调用顺序和嵌套依赖关系(先调用呼叫事件订阅API,每次先调用一次呼叫事件通知API(上报“呼叫开始”事件)、再调用一次呼叫事件通知API(上报“振铃”事件)、然后立即调用一次放音API),再添加“API编排子系统地址”和“应用标识”等业务相关参数后,封装为“振铃后向主叫放音API”,面向业务进行开放。
(3)有外部数据源的组合编排后封装方式:该编排组合方式下,API编排子系统基于通信网络提供的一个或多个原子API,在采用“封装方式”或“组合后封装方式”进行处理的基础上,增加与外部数据源交互后的调用逻辑封装为一个API,主要面向网络能力需求个性化的业务进行开放。例如,API编排子系统将通信网络提供的呼叫事件订阅API(原子API,“呼叫状态”参数明确为“呼叫开始”)、呼叫事件通知API(原子API,“呼叫状态”参数明确为“呼叫开始”)、发送短消息API(原子API,“短消息目的地址”参数明确为被叫用户号码,“短消息形式”参数明确为“闪信”)进行组合,定义上述三个原子API的调用顺序和嵌套依赖关系(先调用呼叫事件订阅API,每次调用一次呼叫事件通知API后,根据查询外部骚扰号码数据源的处理结果来确定是否调用一次发送短消息API),若主叫号码在骚扰号码数据库中则调用一次发送短消息API,若主叫号码不在骚扰号码数据库中则结束处理,再添加“API编排子系统地址”和“应用标识”等业务相关参数后,封装为“防骚扰提醒API”,面向业务进行开放。
本示例中,API编排子系统提供API嵌套和冲突处理功能。API编排子系统面向业务提供的各编排组合封装后的API之间可能存在冲突关系;例如,业务不应同时调用上文所述“呼叫开始后向被叫发送闪信API”和“防骚扰提醒API”,否则被叫用户可能同时收到两条闪信,业务体验差。为解决上述问题,API编排子系统的API嵌套和冲突处理功能如下:
对多个编排组合后的API的冲突提示功能:API编排子系统在创建编排组合封装后的API时,根据其封装的原子API保存冲突标识,对于相互之间存在冲突关系的编排组合封装后的API,不允许同一个业务同时调用相互冲突的API;对于不同业务分别调用相互冲突的API,应对相关业务进行冲突提示。
本示例中,API编排子系统支持对网络能力原子API的编排组合,并提供API嵌套和冲突处理功能,面向业务屏蔽了原子API的复杂接口,提供便于业务直接使用的API,同时实现了业务和网络的解耦合,减少了多个功能类似的网络能力平台的部署,有效降低了业务的设计实现难度。此外,当多个业务调用的多个API封装了相同的网络能力原子API时,API编排子系统只需要向通信网络调用一次,有效降低了业务实现对通信网络带来的处理开销。
业务池:
本示例中,业务基于API编排子系统提供的编排组合封装后的API实现业务功能。例如,“发短信业务”调用“发送普通短信API”,实现应用向用户发短信的业务功能。又例如,“被叫彩印业务”调用“呼叫开始后向被叫发送闪信API”,实现呼叫发起后向被叫用户推送主叫用户闪信的业务功能。又例如,“彩铃业务”调用“振铃后向主叫放音API”,实现呼叫发起后主叫用户收听被叫用户的彩铃音的业务功能。又例如,“防骚扰提醒业务”调用“防骚扰提醒API”,实现当主叫用户在API编排子系统内置的骚扰号码数据库中时,向被叫用户发送防骚扰闪信提示的业务功能。
本示例中,如上文所述,业务调用的编排组合封装后的API之间可能存在冲突关系,因此业务之间可能存在冲突关系。因此,本示例中,将所有基于API编排子系统开放的编排组合封装后的API而构建的业务组建为业务池,业务池直接面向终端用户提供业务,提供用户购买业务的界面。业务池根据API编排子系统提供的冲突提示,进行业务冲突管理。对于同一个终端用户,业务池不允许其同时购买多个存在冲突关系的业务,从而保证了终端用户使用业务的体验。
本示例中,业务通过直接使用编排组合封装后的API,实现对网络能力的使用,不再获知网络能力的抽象、封装和开放方式,实现了网络能力生产环节对业务的屏蔽。业务池根据API编排子系统的指示进行业务的冲突管理,不再获知网络能力和API相关信息,重点实现业务面向终端用户的售卖,完成业务销售功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个通信网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理模块中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (14)
1.一种业务实现系统,其特征在于,包括:
通信网络,用于提供通信网络能力;
应用编程接口API编排子系统,与所述通信网络通过通信网络能力的原子API连接,用于将一个或多个所述原子API封装成封装后的API;其中,所述原子API,用于提供最基本的通信网络能力且为一次API调用的最小单元;所述封装后的API用于提供满足指定业务的通信网络能力;
业务池,与所述API编排子系统连接,用于根据指定业务的业务需求,调用一个或多个所述封装后的API提供通信网络能力。
2.根据权利要求1所述的系统,其特征在于,
所述API编排子系统,还用于判断两个所述封装后的API是否存在冲突关系,若存在冲突关系,生成冲突标识;
所述业务池,还用于根据所述API编排子系统提供的冲突标识,限制同时调用具有冲突关系的多个封装后的API。
3.根据权利要求2所述的系统,其特征在于,
所述业务池,具体用于根据所述API编排子系统提供的冲突标识,禁止同一个业务调用多个具有冲突关系的封装后的API。
4.根据权利要求2所述的系统,其特征在于,
所述业务池,具体用于根据所述API编排子系统提供的冲突标识,禁止同一个用户账号订购使用了具有冲突关系的多个封装后的API的多个业务。
5.根据权利要求1至4任一项所述的系统,其特征在于,
所述API编排子系统,具体用于根据单一化业务的业务需求,将一个原子API及对应的业务相关参数共同封装形成所述封装后的API。
6.根据权利要求5所述的系统,其特征在于,
所述API编排子系统,还具体用于根据多元化业务的业务需求,确定多个所述原子API的调用顺序和嵌套依赖关系,进行多个所述原子API的组合;
将组合后的原子API及对应的业务相关参数,封装形成所述封装后的API。
7.根据权利要求5所述的系统,其特征在于,
所述API编排子系统,还具体用于根据特性化业务的业务需求,将一个或多个所述原子API及业务相关参数,以及外部数据交互的调用逻辑,共同封装形成所述封装后的API。
8.一种业务实现方法,其特征在于,包括:
将通信网络的通信网络能力划分为原子应用编程接口API,其中,所述原子API用于提供最基本的通信网络能力且为一次API调用的最小单元;
根据不同类型的业务需求,将一个或多个所述原子API封装为封装后的API;
调用一个或多个所述封装后的API提供满足指定业务的业务需求的通信网络能力。
9.根据权利要求8所述的方法,其特征在于,
所述方法还包括:
判断两个所述封装后的API是否存在冲突关系;
若存在冲突关系,生成冲突标识;
根据所述冲突标识,限制同时调用具有冲突关系的多个封装后的API。
10.根据权利要求9所述的方法,其特征在于,
所述根据所述冲突标识,限制同时调用具有冲突关系的多个封装后的API,包括:
根据所述冲突标识,禁止同一个业务调用多个具有冲突关系的封装后的API。
11.根据权利要求9所述的方法,其特征在于,
所述根据所述冲突标识,限制同时调用具有冲突关系的多个封装后的API,包括:
根据所述冲突标识,禁止同一个用户账号订购使用了具有冲突关系的多个封装后的API的多个业务。
12.根据权利要求8至11所述的方法,其特征在于,
所述根据不同类型的业务需求,将一个或多个所述原子API封装为封装后的API,包括:
根据单一化业务的业务需求,将一个原子API及对应的业务相关参数共同封装形成所述封装后的API。
13.根据权利要求12所述的方法,其特征在于,
所述根据不同类型的业务需求,将一个或多个所述原子API封装为封装后的API,包括:
根据多元化业务的业务需求,确定多个所述原子API的调用顺序和嵌套依赖关系,进行多个所述原子API的组合;
将组合后的原子API及对应的业务相关参数,封装形成所述封装后的API。
14.根据权利要求8至11所述的方法,其特征在于,
所述根据不同类型的业务需求,将一个或多个所述原子API封装为封装后的API,包括:
根据特性化业务的业务需求,将一个或多个所述原子API及业务相关参数,以及外部数据交互的调用逻辑,共同封装形成所述封装后的API。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610835676.1A CN107846435A (zh) | 2016-09-20 | 2016-09-20 | 业务实现系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610835676.1A CN107846435A (zh) | 2016-09-20 | 2016-09-20 | 业务实现系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107846435A true CN107846435A (zh) | 2018-03-27 |
Family
ID=61656936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610835676.1A Pending CN107846435A (zh) | 2016-09-20 | 2016-09-20 | 业务实现系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107846435A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109634712A (zh) * | 2018-10-16 | 2019-04-16 | 平安普惠企业管理有限公司 | Api功能服务方法、装置、设备及可读存储介质 |
CN111367690A (zh) * | 2020-03-03 | 2020-07-03 | 中国工商银行股份有限公司 | 一种支持组合api服务调用方法及装置 |
CN112506498A (zh) * | 2020-11-30 | 2021-03-16 | 广东电网有限责任公司 | 一种智慧型可视化api编排方法、存储介质及电子设备 |
CN112968808A (zh) * | 2021-02-01 | 2021-06-15 | 中科视拓(南京)科技有限公司 | 一种通用的部署深度目标检测网络api的方法 |
CN113037830A (zh) * | 2021-03-04 | 2021-06-25 | 浪潮云信息技术股份公司 | 基于网关的微服务api编排方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040028031A1 (en) * | 2002-08-12 | 2004-02-12 | Steven Valin | Method and system for implementing standard applications on an intelligent network service control point through an open services gateway |
CN101188598A (zh) * | 2006-11-22 | 2008-05-28 | 华为技术有限公司 | 控制业务调用的系统、方法及业务控制点装置 |
CN103503531A (zh) * | 2013-01-31 | 2014-01-08 | 华为技术有限公司 | 定制自定义移动网络的设备、系统和方法 |
CN103581238A (zh) * | 2012-07-27 | 2014-02-12 | 中兴通讯股份有限公司 | 泛在网的统一业务平台及业务实现方法 |
-
2016
- 2016-09-20 CN CN201610835676.1A patent/CN107846435A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040028031A1 (en) * | 2002-08-12 | 2004-02-12 | Steven Valin | Method and system for implementing standard applications on an intelligent network service control point through an open services gateway |
CN101188598A (zh) * | 2006-11-22 | 2008-05-28 | 华为技术有限公司 | 控制业务调用的系统、方法及业务控制点装置 |
CN103581238A (zh) * | 2012-07-27 | 2014-02-12 | 中兴通讯股份有限公司 | 泛在网的统一业务平台及业务实现方法 |
CN103503531A (zh) * | 2013-01-31 | 2014-01-08 | 华为技术有限公司 | 定制自定义移动网络的设备、系统和方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109634712A (zh) * | 2018-10-16 | 2019-04-16 | 平安普惠企业管理有限公司 | Api功能服务方法、装置、设备及可读存储介质 |
CN111367690A (zh) * | 2020-03-03 | 2020-07-03 | 中国工商银行股份有限公司 | 一种支持组合api服务调用方法及装置 |
CN112506498A (zh) * | 2020-11-30 | 2021-03-16 | 广东电网有限责任公司 | 一种智慧型可视化api编排方法、存储介质及电子设备 |
CN112968808A (zh) * | 2021-02-01 | 2021-06-15 | 中科视拓(南京)科技有限公司 | 一种通用的部署深度目标检测网络api的方法 |
CN112968808B (zh) * | 2021-02-01 | 2022-06-21 | 中科视拓(南京)科技有限公司 | 一种通用的部署深度目标检测网络api的方法 |
CN113037830A (zh) * | 2021-03-04 | 2021-06-25 | 浪潮云信息技术股份公司 | 基于网关的微服务api编排方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107846435A (zh) | 业务实现系统及方法 | |
AU759215B2 (en) | Cellular network traffic simulator | |
CN106791233B (zh) | 一种用于提供ivr服务流程的方法及ivr系统 | |
CN111565418A (zh) | 一种o-ran与mec的通信方法及系统 | |
CN107306438A (zh) | 一种无线接入网切片的生成方法、无线接入网及切片管理器 | |
CN101142776B (zh) | 一种根据用户状态呈现信息播放彩铃的系统及方法 | |
CN103517266B (zh) | 移动网络侧激活移动终端的方法和移动网关系统 | |
US7940909B2 (en) | Method and system for rewarding ring back tone, donor platform, and custom ring back tone platform | |
US10015267B2 (en) | Generic multichannel center for network applications and services | |
CN102821211B (zh) | 通信网元自动化测试方法及装置 | |
CN108347336A (zh) | 一种策略控制会话处理方法及其装置 | |
CN106775969A (zh) | 一种应用程序的选择性运行方法及装置 | |
CN109246301A (zh) | 多sim卡管理方法、装置、计算机装置及计算机存储介质 | |
CN110213425A (zh) | 一种控制终端发起呼叫的方法及装置 | |
CN104869262B (zh) | 终端黑名单的拦截方法及装置 | |
CN101848456B (zh) | 一种业务处理方法、通讯系统以及相关设备 | |
CN101110786B (zh) | 一种基于软交换网络实现的统一消息系统 | |
CN102131159A (zh) | 一种基于社交关系的彩铃信息应用方法与系统 | |
CN107659702A (zh) | 固定电话防骚扰方法和系统以及相关设备 | |
CN108282350A (zh) | 网络管理方法和装置 | |
EP2439917A1 (en) | Colorful ring system and colorful ring service realizing method | |
CN106358221A (zh) | 主卡数据的恢复方法和装置 | |
CN109766155A (zh) | 一种弹框生成方法、装置及存储介质 | |
CN106936783A (zh) | 一种数据交互方法、设备及系统 | |
EP3121998B1 (en) | Generic multichannel center for network applications and services |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180327 |
|
RJ01 | Rejection of invention patent application after publication |