一种电信业务开发的处理方法及相关装置的制作方法

文档序号:7803583阅读:172来源:国知局
专利名称:一种电信业务开发的处理方法及相关装置的制作方法
技术领域
本发明涉及电信业务开发技术领域,尤其涉及一种电信业务开发的处理方法及相
关装置。
背景技术
在电信业务开发技术领域中,电信业务的开发人员通常只关心业务逻辑的流程编排,而对于底层的实现细节以及具体通信协议相关的概念并不关心,因此通常会借助集成开发环境(Integrated Development Environment, IDE)来减小业务开发的难度,提升业务开发效率。IDE通常会重点关注以下方面1、开发概念IDE提供的概念越是简单,业务开发人员越是容易上手,越有利于业务的开发,出问题的概率越小;2、开发效率IDE需要尽可能的让业务开发人员开发业务的过程变得简单,将复杂的概念和实现细节屏蔽起来,让业务开发人员的精力能够集中在业务流程上。为了实现以上所关注的两点,目前很多IDE都采取了事件驱动的图形化开发方式来达到上述要求。其中,事件驱动电信业务一般都是对协议消息的处理流程的实现,主要描述对于各种消息,采取何种处理流程去处理,事件驱动就是把这些消息内容封装成事件, 业务开发就是对每一个发生事件的响应、处理,通过这种抽象,能够有效地屏蔽底层对于通信协议的实现细节,能够让业务开发人员只关心每个事件包含的具体内容,能够降低业务开发难度,提升开发效率;图形化开发IDE提供图形化的开发界面,例如提供图、图元、图元面板等元素,业务开发人员只需要在图上拖拽一些图元,连接一些迁移线,配置相关图元的属性信息,就可以完成相关的业务开发,甚至无需手工编写代码。这样能够让业务开发人员聚焦在业务处理流程上,把他们从代码及协议的实现细节中解放出来,大大提升开发效率。目前,IDE中,一般是将其支持的通信协议的协议信息封装成相关的事件模型,事件是对通信协议消息的封装,同时提供图形化界面,供开发人员进行开发,一般开发流程 1、导入协议相关文件;2、转换模型,生成相关的事件模型;3、拖拽图元,编排业务逻辑。但是,上述技术只能支持一种通信协议,一旦支持某种通信协议的IDE被开发出来,无法对其它通信协议的开发流程进行支持。如果需要进行支持其它通信协议的电信业务开发,只能重新开发对应的IDE,增加了电信业务开发的工作量,降低了开发效率。

发明内容
为了解决上述问题,本发明提供了一种电信业务开发的处理方法及相关装置,用于在同一 IDE中支持多种不同通信协议的电信业务开发。使得IDE开发人员无须针对不同的通信协议开发对应的IDE,从而减少了开发IDE的工作量,同时也提高业务开发人员的开发效率。一种电信业务开发的处理方法,包括接收第一协议消息;
获取所述第一协议消息对应的通信协议类型;根据所述通信协议类型在事件库EL集合中查询对应的事件库EL,其中,事件库EL 用于封装对应通信协议的协议信息;根据所述事件库EL将所述第一协议消息转换成第一协议事件。一种电信业务开发的处理方法,包括接收第二协议事件;获取所述第二协议事件对应的通信协议类型;根据所述通信协议类型在事件库EL集合中查询对应的事件库EL,其中,事件库EL 用于封装对应通信协议的协议信息;根据所述事件库EL将所述第二协议事件转换成第二协议消息。一种电信业务开发的处理装置,包括第一接收模块,用于接收第一协议消息;第一获取模块,用于获取所述第一协议消息对应的通信协议类型;第一查询模块,用于根据所述通信协议类型在事件库EL集合中查询对应的事件库EL,其中,事件库EL用于封装对应通信协议的协议信息;第一转换模块,用于根据所述事件库EL将所述第一协议消息转换成第一协议事件。一种电信业务开发的处理装置,包括第二接收模块,用于接收第二协议事件;第二获取模块,用于获取所述第二协议事件对应的通信协议类型;第二查询模块,用于根据所述通信协议类型在事件库EL集合中查询对应的事件库EL,其中,事件库EL用于封装对应通信协议的协议信息;第二转换模块,用于根据所述事件库EL将所述第二协议事件转换成第二协议消肩、ο从以上技术方案可以看出,本发明实施例具有以下优点本发明方案所提供的IDE支持多种不同通信协议的电信业务开发,IDE根据接收到的协议消息从事件库EL中查询该协议消息的通信协议类型对应的事件库EL,再根据该事件库EL将该协议消息转换成对应的协议事件,因此,该协议消息的对应通信协议的细节就被屏蔽起来,使得IDE开发人员能够在同一 IDE中进行支持多种不同通信协议的电信业务开发,提高了业务开发人员的开发效率。


图1为本发明第一实施例的电信业务开发的处理方法流程图;图2为本发明第二实施例的电信业务开发的处理方法流程图;图3为本发明第三实施例的电信业务开发的处理方法流程图;图4为本发明第四实施例的电信业务开发的处理方法流程图;图5为本发明第五实施例的电信业务开发的处理装置结构图;图6为本发明第六实施例的电信业务开发的处理装置结构图;图7为本发明第七实施例的电信业务开发的处理装置结构图8为本发明第八实施例的电信业务开发的处理装置结构图;图9_a为本发明第九实施例的电信业务开发的处理系统结构图;图9_b为本发明电信业务开发的流程图;图10-a为本发明第十实施例IDE的图形化开发应用示意图;图10-b为本发明第十实施例IDE的图形化开发应用示意图;图10-c为本发明第十实施例IDE的图形化开发应用示意图;图10-d为本发明第十实施例IDE的图形化开发应用示意图。
具体实施例方式本发明提供了一种电信业务开发的处理方法,用于在同一 IDE中支持多种不同通信协议的电信业务开发,使得IDE开发人员无须针对不同的通信协议开发对应的IDE,从而减少了开发IDE的工作量,同时也提高业务开发人员的开发效率。另外,本发明还提供了实施本发明方法的相关装置,以下将分别进行详细说明。本发明第一实施例将对一种电信业务开发的处理方法进行详细说明,本方法的具体流程请参见图1,包括101、IDE接收第一协议消息。在本发明背景技术中已经提到,电信业务一般都是对通信协议消息的处理流程的实现,事件驱动就是把这些消息内容封装成事件,业务处理就是对一个的发生事件的响应、 处理。本实施例将接收到的通信协议消息称为第一协议消息,本实施例方法将第一协议消息进行事件驱动处理,把第一协议消息转换成第一协议事件,供业务开发人员进行电信业务开发。102、IDE获取第一协议消息对应的通信协议类型。任何协议消息都是基于其对应的通信协议的,此处不限定第一协议消息对应的通信协议类型,但为了说明需要,默认第一协议消息对应的通信协议类型能够为本实施例方法所支持。103、IDE根据所述通信协议类型在事件库EL集合中查询对应的事件库EL。本实施例方法所描述的集成开发环境IDE包括事件库(Event Library, EL)集合, 在本步骤中,IDE根据第一协议消息的通信协议类型从EL集合中查询对应通信协议的EL, 以实现对第一协议消息的后续开发支持。其中,EL用于封装所述通信协议的协议信息,以对各通信协议进行归一化处理。EL 对IDE中对通信协议进行支持的,EL封装具体通信协议的细节,呈现给业务开发人员,使得业务开发人员可以更加关注业务流程而不是通信协议细节。EL可以被单独开发,一旦有实际需要,IDE开发人员可以随时开发其它通信协议所对应的EL,并将新的EL导入到IDE中, 使该IDE获得对其它通信协议的支持,大大减少了重新开发IDE的工作量。104、IDE根据所述事件库EL将所述第一协议消息转换成第一协议事件。步骤103中已经查询到第一协议消息所对应通信协议的EL,IDE可根据该查询到的第一协议消息所对应通信协议的EL将第一协议消息转换成第一协议事件,供业务开发人员进行业务处理。因此业务开发人员对第一协议事件进行业务处理时就只需要面对已经被屏蔽了通信协议细节的协议事件而不是原始的协议消息,而且本实施例的IDE还能够通过导入EL实现支持多种通信协议。在本实施例中,IDE支持多种不同通信协议的电信业务开发,IDE根据接收到的协议消息查询该协议消息对应通信协议的事件库EL,再根据该协议消息对应通信协议的事件库EL将该协议消息转换成对应的协议事件,因此,该协议消息的对应通信协议的细节就被屏蔽起来,使得IDE开发人员能够在同一 IDE中进行支持多种不同通信协议的电信业务开发,提高了业务开发人员的开发效率。本发明第二实施例将对第一实施例所述的电信业务开发的处理方法进行补充说明,第二实施例发明方法具体流程请参见图2,包括201、IDE接收第一协议消息。在本发明背景技术中已经提到,电信业务一般都是对通信协议消息的处理流程的实现,事件驱动就是把这些消息内容封装成事件,业务处理就是对一个的发生事件的响应、 处理。本实施例将接收到的通信协议消息称为第一协议消息,本实施例方法将第一协议消息进行事件驱动处理,把第一协议消息转换成第一协议事件,供业务开发人员进行电信业务开发。202、IDE获取第一协议消息对应的通信协议类型。任何协议消息都是基于其对应的通信协议的,此处不限定第一协议消息对应的通信协议类型,但为了说明需要,默认第一协议消息对应的通信协议类型能够为本实施例方法所支持。203、IDE根据所述通信协议类型在事件库EL集合中查询对应的事件库EL。本实施例方法所描述的集成开发环境IDE包括事件库(Event Library, EL)集合, 在本步骤中,IDE根据第一协议消息的通信协议类型从EL集合中查询对应通信协议的EL, 以实现对第一协议消息的后续开发支持。其中,EL用于封装所述通信协议的协议信息,以对各通信协议进行归一化处理。EL 对IDE中对通信协议进行支持的,EL封装具体通信协议的细节,呈现给业务开发人员,使得业务开发人员可以更加关注业务流程而不是通信协议细节。EL可以被单独开发,一旦有实际需要,IDE开发人员可以随时开发其它通信协议所对应的EL,并将新的EL导入到IDE中, 使该IDE获得对其它通信协议的支持,大大减少了重新开发IDE的工作量。204、IDE根据所述事件库EL将所述第一协议消息转换成第一协议事件。步骤203中已经查询到第一协议消息所对应通信协议的EL,IDE可根据该查询到的第一协议消息所对应通信协议的EL将第一协议消息转换成第一协议事件,供业务开发人员进行业务处理。205、IDE输出所述第一协议事件。在步骤204中已经得到转换后的第一协议事件,在本步骤中IDE面向业务开发人员输出第一协议事件,以便进行业务开发。业务开发人员对第一协议事件进行业务处理时只需要面对已经被屏蔽了通信协议细节的协议事件而不是原始的协议消息。另外,在任何时刻,一旦有实际需要,IDE开发人员都可以向事件库EL集合中导入其它事件库EL,使得IDE支持该新类型的通信协议,由于默认IDE中已经导入不少于两个事件库EL,因此导入新EL能够使得IDE支持更多种通信协议。在本实施例中,IDE支持多种不同通信协议的电信业务开发,IDE根据接收到的协
7议消息获取对应的通信协议类型,并查询该通信协议对应的EL,再根据该协议消息对应通信协议的事件库EL将该协议消息转换成对应的协议事件,最后输出协议事件,因此,该协议消息的对应通信协议的细节就被屏蔽起来,使得IDE开发人员能够在同一 IDE中进行支持多种不同通信协议的电信业务开发,提高了业务开发人员的开发效率。本发明第三实施例将对另一种电信业务开发的处理方法进行详细说明,本实施例所述的方法具体流程请参见图3,包括301、IDE接收第二协议事件。在本发明背景技术中已经提到,电信业务一般都是对通信协议消息的处理流程的实现,事件驱动就是把这些消息内容封装成事件,业务处理就是对一个的发生事件的响应、 处理。本实施例将接收到的通信协议事件称为第二协议事件,本实施例方法的第二协议事件是业务开发人员基于某一事件进行业务开发后所产生的协议事件,本发明实施例把第二协议事件转换成第二协议消息,本实施例所述的业务流程可以看作是第一实施例所述方法流程的逆过程,结合第一实施例和本实施例的方法流程可以构成一套完整的IDE收发协议消息方案。302、IDE获取第二协议事件对应的通信协议类型。任何协议事件都是基于其对应的通信协议的,此处不限定第二协议事件对应的通信协议类型,但为了说明需要,默认第二协议事件对应的通信协议类型能够为本实施例方法所支持。303、IDE根据所述通信协议类型在事件库EL集合中查询对应的事件库EL。本实施例方法所描述的集成开发环境IDE包括事件库(Event Library, EL)集合, 在本步骤中,IDE根据第二协议事件从EL集合中查询对应通信协议的EL,以实现对第二协议事件的后续支持。其中,EL用于封装所述通信协议的协议信息,以对各通信协议进行归一化处理。EL 对IDE中对通信协议进行支持的,EL封装具体通信协议的细节,呈现给业务开发人员,使得业务开发人员可以更加关注业务流程而不是通信协议细节。EL可以被单独开发,一旦有实际需要,IDE开发人员可以随时开发其它通信协议所对应的EL,并将新的EL导入到IDE中, 使该IDE获得对其它通信协议的支持,大大减少了重新开发IDE的工作量。304、IDE根据所述事件库EL将所述第二协议事件转换成第二协议消息。步骤303中已经查询到第二协议事件所对应通信协议的EL,IDE可根据该查询到的第二协议事件所对应通信协议的EL将第二协议事件转换成第二协议消息,以完成协议消息的发送流程。本实施例的IDE还能够通过导入EL实现支持多种通信协议。在本实施例中,IDE支持多种不同通信协议的电信业务开发,IDE根据接收到的协议事件查询该协议事件对应通信协议的事件库EL,再根据该协议事件对应通信协议的事件库EL将该协议事件转换成对应的协议消息,因此,该协议事件的对应通信协议的细节就被还原出来,以继续后续流程,使得IDE开发人员能够在同一 IDE中进行支持多种不同通信协议的电信业务开发,提高了业务开发人员的开发效率。本发明第四实施例将对第三实施例所述的电信业务开发的处理方法进行补充说明,本实施例所述的方法具体流程请参见图4,包括401、IDE接收第二协议事件。
在本发明背景技术中已经提到,电信业务一般都是对通信协议消息的处理流程的实现,事件驱动就是把这些消息内容封装成事件,业务处理就是对一个的发生事件的响应、 处理。本实施例将接收到的通信协议事件称为第二协议事件,本实施例方法的第二协议事件是业务开发人员基于某一事件进行业务开发后所产生的协议事件,本发明实施例把第二协议事件转换成第二协议消息,本实施例所述的业务流程可以看作是第一实施例所述方法流程的逆过程,结合第一实施例和本实施例的方法流程可以构成一套完整的IDE收发协议消息方案。402、IDE获取第二协议事件对应的通信协议类型。任何协议事件都是基于其对应的通信协议的,此处不限定第二协议事件对应的通信协议类型,但为了说明需要,默认第二协议事件对应的通信协议类型能够为本实施例方法所支持。403、IDE根据所述通信协议类型在事件库EL集合中查询对应的事件库EL。本实施例方法所描述的集成开发环境IDE包括事件库(Event Library, EL)集合, 在本步骤中,IDE根据第二协议事件从EL集合中查询对应通信协议的EL,以实现对第二协议事件的后续支持。其中,EL用于封装所述通信协议的协议信息,以对各通信协议进行归一化处理。EL 对IDE中对通信协议进行支持的,EL封装具体通信协议的细节,呈现给业务开发人员,使得业务开发人员可以更加关注业务流程而不是通信协议细节。EL可以被单独开发,一旦有实际需要,IDE开发人员可以随时开发其它通信协议所对应的EL,并将新的EL导入到IDE中, 使该IDE获得对其它通信协议的支持,大大减少了重新开发IDE的工作量。404、IDE根据所述事件库EL将所述第二协议事件转换成第二协议消息。步骤403中已经查询到第二协议事件所对应通信协议的EL,IDE可根据该查询到的第二协议事件所对应通信协议的EL将第二协议事件转换成第二协议消息,以完成协议消息的发送流程。本实施例的IDE还能够通过导入EL实现支持多种通信协议。在任何时刻,一旦有实际需要,IDE开发人员都可以向IDE中导入新的事件库EL, 使得IDE支持该新类型的通信协议,由于默认IDE中已经导入不少于两个事件库EL,因此导入新EL能够使得IDE支持更多种通信协议。405、IDE输出第二协议消息。在步骤404中已经得到转换后的第二协议消息,在本步骤中IDE输出第二协议消息,以便完成业务开发。业务开发人员对第二协议事件进行业务处理时只需要面对已经被屏蔽了通信协议细节的协议事件而不是原始的协议消息。可选地,IDE开发人员可以向事件库EL集合中导入其它事件库EL,使得IDE支持该新类型的通信协议,由于默认IDE中已经导入不少于两个事件库EL,因此导入新EL能够使得IDE支持更多种通信协议。在本实施例中,IDE支持多种不同通信协议的电信业务开发,IDE根据接收到的协议事件查询该协议事件对应通信协议的事件库EL,再根据该协议事件对应通信协议的事件库EL将该协议事件转换成对应的协议消息,因此,该协议事件的对应通信协议的细节就被还原出来,以继续后续业务流程,使得IDE开发人员能够在同一 IDE中进行支持多种不同通信协议的电信业务开发,提高了业务开发人员的开发效率。
本发明第五实施例将对一种电信业务开发的处理装置进行详细说明,本实施例所述的处理装置结构请参见图5,包括第一接收模块501,用于接收第一协议消息。在本发明背景技术中已经提到,电信业务一般都是对通信协议消息的处理流程的实现,事件驱动就是把这些消息内容封装成事件,业务处理就是对一个的发生事件的响应、处理。本实施例将第一接收模块501接收到的通信协议消息称为第一协议消息,对应于本发明第一实施例,本实施例的第一转换模块504 将第一协议消息转换成第一协议事件,供业务开发人员进行电信业务开发。第一获取模块502,用于获取第一协议消息对应的通信协议类型。任何协议消息都是基于其对应的通信协议的,此处不限定第一协议消息对应的通信协议类型,但为了说明需要,默认第一协议消息对应的通信协议类型能够为本实施例方法所支持。第一查询模块503,用于根据所述通信协议类型在事件库EL集合中查询对应的事件库EL。其中,事件库EL用于封装对应通信协议的协议信息,以对各通信协议进行归一化处理。本实施例发明方案所描述的集成开发环境IDE包括事件库(Event Library, EL)集合,IDE的第一查询模块503根据第一协议消息从EL集合中查询对应通信协议的EL,以实现对第一协议消息的后续开发支持。EL对IDE中对通信协议进行支持的,EL封装具体通信协议的细节,呈现给业务开发人员,使得业务开发人员可以更加关注业务流程而不是通信协议细节。EL可以被单独开发,一旦有实际需要,IDE开发人员可以随时开发其它通信协议所对应的EL,并将新的EL导入到IDE中,使该IDE获得对其它通信协议的支持,大大减少了重新开发IDE的工作量。第一转换模块504,用于根据所述事件库EL将所述第一协议消息转换成第一协议事件。查询模块503已经查询到第一协议消息所对应通信协议的EL,IDE的第一转换模块 504可根据该查询到的第一协议消息所对应通信协议的EL将第一协议消息转换成第一协议事件,供业务开发人员进行业务处理。因此业务开发人员对第一协议事件进行业务处理时就只需要面对已经被屏蔽了通信协议细节的协议事件而不是原始的协议消息,而且本实施例的IDE还能够通过导入EL实现支持多种通信协议。在本实施例中,IDE支持多种不同通信协议的电信业务开发,IDE的第一查询模块 503根据第一接收模块501接收到的协议消息查询该协议消息对应通信协议的事件库EL, 第一转换模块503再根据该协议消息对应通信协议的事件库EL将该协议消息转换成对应的协议事件,因此,该协议消息的对应通信协议的细节就被屏蔽起来,使得IDE开发人员能够在同一 IDE中进行支持多种不同通信协议的电信业务开发,提高了业务开发人员的开发效率。本发明第六实施例将对第五实施例所述的电信业务开发的处理装置进行补充说明,本实施例的处理装置结构请参见图6,包括第一接收模块601,用于接收第一协议消息。在本发明背景技术中已经提到,电信业务一般都是对通信协议消息的处理流程的实现,事件驱动就是把这些消息内容封装成事件,业务处理就是对一个的发生事件的响应、处理。本实施例将第一接收模块601接收到的通信协议消息称为第一协议消息,对就于本发明第一实施例,本实施例的第一转换模块604 将第一协议消息转换成第一协议事件,供业务开发人员进行电信业务开发。
第一获取模块602,用于获取所述第一协议消息对应的通信协议类型。任何协议消息都是基于其对应的通信协议的,此处不限定第一协议消息对应的通信协议类型,但为了说明需要,默认第一协议消息对应的通信协议类型能够为本实施例方法所支持。第一查询模块603,用于根据所述通信协议类型在事件库EL集合中查询对应的事件库EL。本实施例发明方案所描述的集成开发环境IDE包括事件库(Event Library, EL) 集合,IDE的第一获取模块602获取第一协议消息的对应通信协议类型,第一查询单元603 根据所述通信协议类型从EL集合中查询对应通信协议的EL,以实现对第一协议消息的后续开发支持。其中,事件库EL用于封装对应通信协议的协议信息,以对各通信协议进行归一化处理。EL对IDE中对通信协议进行支持的,EL封装具体通信协议的细节,呈现给业务开发人员,使得业务开发人员可以更加关注业务流程而不是通信协议细节。EL可以被单独开发,一旦有实际需要,IDE开发人员可以随时开发其它通信协议所对应的EL,并将新的EL 导入到IDE中,使该IDE获得对其它通信协议的支持,大大减少了重新开发IDE的工作量。第一转换模块604,用于根据所述事件库EL将所述第一协议消息转换成第一协议事件。查询模块603已经查询到第一协议消息所对应通信协议的EL,IDE的第一转换模块 604可根据该查询到的第一协议消息所对应通信协议的EL将第一协议消息转换成第一协议事件,供业务开发人员进行业务处理。第一输出模块605,用于输出第一协议事件。第一转换模块604已经生成第一协议事件,IDE的第一输出模块605输出第一协议事件,以便进行业务开发。业务开发人员对第一协议事件进行业务处理时只需要面对已经被屏蔽了通信协议细节的协议事件而不是原始的协议消息。导入模块606,用于向事件库EL集合中导入其它事件库EL。在任何时刻,一旦有实际需要,IDE开发人员都可以通过导入模块606向事件库EL集合中导入其它事件库EL, 使得IDE支持该新类型的通信协议,由于默认IDE中已经导入不少于两个事件库EL,因此导入新EL能够使得IDE支持更多种通信协议。在本实施例中,IDE支持多种不同通信协议的电信业务开发,第一获取模块602 根据第一接收模块601接收到的协议消息获取对应的通信协议类型,并通过第一查询模块 603查询该通信协议对应的EL,第一转换模块604再根据该协议消息对应通信协议的事件库EL将该协议消息转换成对应的协议事件,最后第一输出模块605输出协议事件,因此,该协议消息的对应通信协议的细节就被屏蔽起来,使得IDE开发人员能够在同一 IDE中进行支持多种不同通信协议的电信业务开发,提高了业务开发人员的开发效率。另外,导入模块 606支持IDE开发人员通过导入模块606向事件库EL集合中导入其它事件库EL,使得IDE 支持该新类型的通信协议。本发明第七实施例将对另一种电信业务开发的处理装置进行详细说明,本实施例所述的处理装置结构请参见图7,包括第二接收模块701,用于接收第二协议事件。在本发明背景技术中已经提到,电信业务一般都是对通信协议消息的处理流程的实现,事件驱动就是把这些消息内容封装成事件,业务处理就是对一个的发生事件的响应、处理。本实施例将第二接收模块701接收到的通信协议事件称为第二协议事件,本实施例的第二协议事件是业务开发人员基于某一事件进行业务开发后所产生的协议事件,本发明实施例的第二转换模块704把第二协议事件转
11换成第二协议消息。第二获取模块702,用于获取所述第二协议事件对应的通信协议类型。任何协议事件都是基于其对应的通信协议的,此处不限定第二协议事件对应的通信协议类型,但为了说明需要,默认第二协议事件对应的通信协议类型能够为本实施例方法所支持。第二查询模块703,用于根据所述通信协议类型在事件库EL集合中查询对应的事件库EL,其中,事件库EL用于封装对应通信协议的协议信息,以对各通信协议进行归一化处理。本实施例方法所描述的集成开发环境IDE包括事件库(Event Library, EL)集合, IDE的第二查询模块703根据第二协议事件从EL集合中查询对应通信协议的EL,以实现对第二协议事件的后续支持。以对各通信协议进行归一化处理。EL对IDE中对通信协议进行支持的,EL封装具体通信协议的细节,呈现给业务开发人员,使得业务开发人员可以更加关注业务流程而不是通信协议细节。EL可以被单独开发,一旦有实际需要,IDE开发人员可以随时开发其它通信协议所对应的EL,并将新的EL导入到IDE中,使该IDE获得对其它通信协议的支持,大大减少了重新开发IDE的工作量。第二转换模块704,用于根据所述事件库EL将所述第二协议事件转换成第二协议消息。第二查询模块703已经查询到第二协议事件所对应通信协议的EL,IDE的第二转换模块704可根据该查询到的第二协议事件所对应通信协议的EL将第二协议事件转换成第二协议消息,以完成协议消息的发送流程。本实施例的IDE还能够通过导入EL实现支持多种通信协议。在本实施例中,IDE支持多种不同通信协议的电信业务开发,IDE的第二查询模块703根据第二接收模块701接收到的协议事件查询该协议事件对应通信协议的事件库 EL,第二转换模块704再根据该协议事件对应通信协议的事件库EL将该协议事件转换成对应的协议消息,因此,该协议事件的对应通信协议的细节就被还原出来,以继续后续业务流程,使得IDE开发人员能够在同一 IDE中进行支持多种不同通信协议的电信业务开发,提高了业务开发人员的开发效率。本发明第八实施例将对第七例所述的电信业务开发的处理装置进行补充说明,本实施例所述的消息处理装置结构请参见图8,包括第二接收模块801,用于接收第二协议事件。在本发明背景技术中已经提到,电信业务一般都是对通信协议消息的处理流程的实现,事件驱动就是把这些消息内容封装成事件,业务处理就是对一个的发生事件的响应、处理。本实施例将第二接收模块801接收到的通信协议事件称为第二协议事件,本实施例方法的第二协议事件是业务开发人员基于某一事件进行业务开发后所产生的协议事件,本发明实施例的第二转换模块804把第二协议事件转换成第二协议消息。第二获取模块802,用于获取所述第二协议事件对应的通信协议类型。任何协议事件都是基于其对应的通信协议的,此处不限定第二协议事件对应的通信协议类型,但为了说明需要,默认第二协议事件对应的通信协议类型能够为本实施例方法所支持。第二查询模块803,用于根据所述通信协议类型在事件库EL集合中查询对应的事件库EL,其中,事件库EL用于封装对应通信协议的协议信息,以对各通信协议进行归一化处理。本实施例方法所描述的集成开发环境IDE包括事件库(Event Library,EL)集合, IDE的第二获取模块802获取第二协议事件对应的通信协议类型,第二查询模块803根据所述协议消息类型从EL集合中查询对应通信协议的EL,以实现对第二协议事件的后续支持。 EL对IDE中对通信协议进行支持的,EL封装具体通信协议的细节,呈现给业务开发人员,使得业务开发人员可以更加关注业务流程而不是通信协议细节。EL可以被单独开发,一旦有实际需要,IDE开发人员可以随时开发其它通信协议所对应的EL,并将新的EL导入到IDE 中,使该IDE获得对其它通信协议的支持,减少了重新开发IDE的工作量。第二转换模块804,用于根据所述事件库EL将所述第二协议事件转换成第二协议消息。第二查询模块803已经查询到第二协议事所对应通信协议的EL,IDE的第二转换模块803可根据该查询到的第二协议事件所对应通信协议的EL将第二协议事件转换成第二协议消息,以完成协议消息的发送流程。本实施例的IDE还能够通过导入EL实现支持多种通信协议。第二输出模块805,用于输出所述第二协议消息,以便完成业务开发。第二转换模块804已经生成第二协议消息,IDE的第二输出模块805输出第二协议消息,使得业务开发人员对第二协议事件进行业务处理时只需要面对已经被屏蔽了通信协议细节的协议事件而不是原始的协议消息。可选地,本实施例所述的集成开发环境可进一步包括导入模块,用于向事件库EL 集合中导入其它事件库EL。在任何时刻,一旦有实际需要,IDE开发人员都可以通过导入模块向IDE中导入新的事件库EL,使得IDE支持该新类型的通信协议,由于默认IDE中已经导入不少于两个事件库EL,因此导入新EL能够使得IDE支持更多种通信协议。在本实施例中,IDE支持多种不同通信协议的电信业务开发,IDE的第二查询模块803根据第二接收模块801接收到的协议事件查询该协议事件对应通信协议的事件库 EL,第二转换模块804再根据该协议事件对应通信协议的事件库EL将该协议事件转换成对应的协议消息,因此,该协议事件的对应通信协议的细节就被还原出来,以继续后续业务流程,使得IDE开发人员能够在同一 IDE中进行支持多种不同通信协议的电信业务开发,提高了业务开发人员的开发效率。本发明第九实施例将对一种电信业务开发的处理系统进行详细说明,本实施例所述的消息处理系统结构请参见图9-a,包括第一接收模块9601,用于接收第一协议消息。在本发明背景技术中已经提到,电信业务一般都是对通信协议消息的处理流程的实现,事件驱动就是把这些消息内容封装成事件,业务处理就是对一个的发生事件的响应、处理。本实施例将第一接收模块901接收到的通信协议消息称为第一协议消息,对就于本发明第一实施例,本实施例的第一转换模块904 将第一协议消息转换成第一协议事件,供业务开发人员进行电信业务开发。第一获取模块902,用于获取所述第一协议消息对应的通信协议类型。任何协议消息都是基于其对应的通信协议的,此处不限定第一协议消息对应的通信协议类型,但为了说明需要,默认第一协议消息对应的通信协议类型能够为本实施例方法所支持。第一查询模块903,用于根据所述通信协议类型在事件库EL集合中查询对应的事件库EL。本实施例发明方案所描述的集成开发环境IDE包括事件库(Event Library, EL) 集合,IDE的第一获取模块902获取第一协议消息的对应通信协议类型,第一查询单元903根据所述通信协议类型从事件库EL集合中查询对应通信协议的事件库EL,以实现对第一协议消息的后续开发支持。其中,事件库EL用于封装对应通信协议的协议信息,以对各通信协议进行归一化处理。事件库EL对IDE中对通信协议进行支持的,事件库EL封装具体通信协议的细节,呈现给业务开发人员,使得业务开发人员可以更加关注业务流程而不是通信协议细节。事件库EL可以被单独开发,一旦有实际需要,IDE开发人员可以随时开发其它通信协议所对应的事件库EL,并将新的事件库EL导入到IDE中,使该IDE获得对其它通信协议的支持,大大减少了重新开发IDE的工作量。第一转换模块904,用于根据所述事件库EL将所述第一协议消息转换成第一协议事件。查询模块903已经查询到第一协议消息所对应通信协议的事件库EL,IDE的第一转换模块904可根据该查询到的第一协议消息所对应通信协议的事件库EL将第一协议消息转换成第一协议事件,供业务开发人员进行业务处理。第一输出模块905,用于输出第一协议事件。第一转换模块904已经生成第一协议事件,IDE的第一输出模块905输出第一协议事件,以便进行业务开发。业务开发人员对第一协议事件进行业务处理时只需要面对已经被屏蔽了通信协议细节的协议事件而不是原始的协议消息。导入模块906,用于向事件库EL集合中导入其它事件库EL。在任何时刻,一旦有实际需要,IDE开发人员都可以通过导入模块906向事件库EL集合中导入其它事件库EL, 使得IDE支持该新类型的通信协议,由于默认IDE中已经导入不少于两个事件库EL,因此导入新事件库EL能够使得IDE支持更多种通信协议。第二接收模块907,用于接收第二协议事件。本实施例方法的第二协议事件是业务开发人员基于第一协议事件进行业务开发后所产生的协议事件,本发明实施例的第二转换模块910把第二协议事件转换成第二协议消息。第二获取模块908,用于获取所述第二协议事件对应的通信协议类型。由于第二协议事件是业务开发人员基于第一协议事件进行业务开发后所产生的协议事件,因此第二协议事件和第一协议事件基于相同的通信协议。第二查询模块909,用于根据所述通信协议类型在事件库EL集合中查询对应的事件库EL,其中,事件库EL用于封装对应通信协议的协议信息,以对各通信协议进行归一化处理。本实施例方法所描述的集成开发环境IDE包括事件库(Event Library, EL)集合, IDE的第二获取模块908获取第二协议事件对应的通信协议类型,第二查询模块909根据所述协议消息类型从事件库EL集合中查询对应通信协议的事件库EL,以实现对第二协议事件的后续支持。第二转换模块910,用于根据所述事件库EL将所述第二协议事件转换成第二协议消息。第二查询模块909已经查询到第二协议事所对应通信协议的事件库EL,IDE的第二转换模块910可根据该查询到的第二协议事件所对应通信协议的事件库EL将第二协议事件转换成第二协议消息,以完成协议消息的发送流程。本实施例的IDE还能够通过导入事件库EL实现支持多种通信协议。第二输出模块911,用于输出所述第二协议消息,以便完成业务开发。第二转换模块910已经生成第二协议消息,IDE的第二输出模块911输出第二协议消息,使得业务开发人员对第二协议事件进行业务处理时只需要面对已经被屏蔽了通信协议细节的协议事件而不是原始的协议消息。在本实施例中,IDE支持多种不同通信协议的电信业务开发,图9-b所示为IDE — 个完整的业务开发流程,在本实施例中,IDE的第一查询模块903根据第一接收模块901接收到的第一协议消息查询该第一协议消息对应通信协议的事件库EL,第一转换模块904再根据该第一协议消息对应通信协议的事件库EL将该第一协议消息转换成对应的第一协议事件,因此,该第一协议消息的对应通信协议的细节就被屏蔽起来,使得IDE开发人员能够在同一 IDE中进行支持多种不同通信协议的电信业务开发,业务开发人员对第一协议事件进行电信业务开发处理,得到基于第一协议事件的第二协议事件。IDE的第二查询模块909 根据第二接收模块907接收到的第二协议事件查询该第二协议事件对应通信协议的事件库EL,第二转换模块910再根据该第二协议事件对应通信协议的事件库EL将该第二协议事件转换成对应的第二协议消息,因此,该协议事件的对应通信协议的细节就被还原出来,以继续后续业务流程,使得IDE开发人员能够在同一 IDE中进行支持多种不同通信协议的电信业务开发,提高了业务开发人员的开发效率。本发明第十实施例将对基于本发明所有实施例的IDE的图形化开发应用作详细说明。本实施例IDE包括一、元模型定义。在IDE中,希望以统一的事件概念来支持多种协议的开发,就需要定义出通用的事件模型,用于描述各种协议消息具备的特征。这套模型必须独立于任何通信协议的概念, 并且能够使用于所有的通信协议。本实施例采用XSD文件来定义这套事件模型。该套模型中,主要有以下几个基本概念协议事件,用于表达通信协议中消息的概念,每个中除了有自身的属性,还包括一系列的子节点,可以为属性Property、属性组PropertyGroup或ProeprtyGroupReference 等,其中,Property用于表达简单类型的消息数据;PropertyGroup用于表达复杂类型的消息数据,可以包含Property子节点或PropertyGroupReference子节点; PropertyGroupReference用于引用一个复杂类型消息数据的引用。这套模型用于描述IDE能够支持的所有通信协议的对应的事件概念,例如包含协议消息类型的数量,协议消息类型的名称,协议消息类型的属性,协议消息中所包含的数据字段等,这份模型实际是一种规格,每一种具体协议的描述实际是该模型的一份实例,本实施例IDE采用XML文件来描述,根据上述的元模型,本实施例IDE就可以通过定义XML文件来表达某种具体通信协议的各种特征。下面是一份事件模型的示例
15< xml version=" 1.0" encoding="UTF-8" >
<tns: event-list id="Sip" version=" 1.0.0" sourceType="XML"
description=" Signaling protocol for controling Session in IP network"
xmlns:tns="http://www.huawei.com/sne-event"
xmlns:xsi=Mhttp://www.w3.org/2001/XMLSchema-instanceM
xsi:schemaLocation="http://www.huawei.com/sne-event sne-event_l 0.xsd">
<tns:event direction="both" id="Invite" display-name="INVITE">
<tns:description>Used to establish a media session between user
agents.</tns:description>
<tns: propertyname="method"display-name="Method"
default-value="&quot;INVITE&quot;" visible="false" type="string"/〉
<tns: property-group-referencename=" StatusLine"
ref-name="RequestCommonProperties" multiplicity=" 1" display-name="Request Common Properties"/〉
<tns:property-group-reference name="Attribute" ref-name="Header Value" multiplicity=" 0..1" display-name=" Supported [Extensions Supported]" description="This header indicates the extensions supported by the sip Server." /> </tns:event>
<tns:property-group name="StatusLine" display-name=" Status Line"〉 <tns: property name=" sip Version" type=" string" access="read-only" multiplicity=" 1" display-name=" Sip Version"/〉
<tns: property name="statusCode" type="int" multiplicity=" 1" display-name=" StatusCode"constraint="range: [ 100,699]"
constraint-error-message="The allowed range for Status code is 100-699."/〉
<tns: property name="reasonPhase" type="string" multiplicity="0..1” display-name="Reason Phrase"/〉 </tns:property-group>
<tns:property-group name="Attribute" display-name="Parameter">
<tns: property name="name" type=" string" multiplicity=" 1"
type=" string" multiplicity="。·. 1"
display-name="Parameter Name"/〉
<tns: property name="value" display-name="Parameter Value"/〉 </tns:property-group> </tns:event-list>对于某种通信协议而言,如果希望本实施例IDE对其进行支持,首先需要定义对应的事件描述模型XML文件,这份文件最终会在事件库EL中提供。二、实体模型的生成。假设已有一套事件描述模型,该模型能够描述对应通信协议的事件类型及其结构,例如A协议中包含EventA事件和EventB事件,EventA中包含名为PropertyX和 Pro印rtyY的字段属性等,但是,仅获知这些信息还不能够为业务开发人员提供开业开发支持,IDE中需要的是具体能够操作的事件对象。例如,某个发送事件的图元中,必须获取 EventA的一个对象实例,以及Pro印rtyX,PropertyY对应的实例,即IDE中必须包括能够
17表达EventA及PropertyX等的模型,才能够创建对应的实例,因此本发明实施例采用代码生成技术,根据XML中对应的事件描述模型的内容,生成这些实体模型。这些实体模型,是开发环境对协议支持的基础。例如,下面的类就是对于上面提到的XML中事件节点描述的接口类
public interface Invite extends SipEvent
String getMethod();
void setMethod(String value);
RequestCommonProperties getRequestCommonProperties();
void setRequestCommonProperties(RequestCommonProperties value);
HeaderValue getSupportedQ;
HeaderValue getSupportedQ; }除了这个接口类之外,还需要对应的实现类,此外,因为IDE中,图元编辑某个具体事件对象时,还必须能够动态为其设置属性,或者创建并设置子节点,在实现过程中,都需要必要的模型支持,因此除了这些类之外,还需要有对应的另一套模型用于编辑。IDE的实现中,就是采取生成UML模型的方式实现属性页编辑的。因此,本实施例还需要根据事件描述模型生成对应的实体类模型,以及用于编辑属性页的UML模型。三、协议消息到协议事件相互转换的逻辑封装。对于发送事件图元和接收事件图元而言,图元本身完成的功能如下发送事件图元将某一个事件对象,转换为具体的协议消息,然后通过业务运行的平台发送出去;接收事件图元将平台发送过来的协议消息,转换为事件对象,然后将其呈现给业务开发人员,用于业务逻辑编排。上述两个过程,实际是由协议消息到协议事件之间的一个转换过程,图元本身并不知道如何去实现这种转换,只有具体协议对应的事件库EL的开发者才知道,因此图元的逻辑实际上代理到具体的事件库EL中的实体去完成这个功能。每个事件库EL中提供一个类,用于完成协议消息和协议事件之前的相互转换逻辑。发送事件图元或者接收事件图元, 都是借助事件库EL中的这个类去完成协议消息到协议事件的相互转换。四、通用的用于业务编排的图元。在该IDE中,主要以图形化开发的方式对业务进行编排,IDE提供一系列的图元, 业务开发人员只需要对这些图元进行拖拽,然后对图元信息进行配置即可完成业务的开发,这些图元中,最重要、最复杂的就是与协议操作相关的图元,例如等待事件图元或发送事件图元。这些图元基于导入在IDE中的事件库EL提供的信息,业务开发人员对所操作的各种事件进行属性编辑配置。如图10-a所示,当前IDE中,SendEventO图元展示出对应的属性,供业务开发人员配置。如图10-b所示,IDE中导入了支持三种协议的事件库EL,用户选择事件类型Event Type时,就会有三种对应的类型供选择,分别为HttpServiceDSK、ConfigListener和Sip。 如图10-c所示,业务开发人员配置事件码Event ID时有五种选择,分别为BYE、CANCLE, ErrorResponse、INFO 禾口 INVITE。当用户选择某一种类的Event时,对于该事件的详细属性信息,都可以配置,如图 ΙΟ-d所示,图中的菜单展示的内容都是从事件库EL中动态获取的,选择不同的事件,对应的提示内容都是不同的。这样,整个开发环境就可以做到,无论往后导入多少种事件库EL,IDE的图元及其属性配置都是不需要变化的,这样就实现了支持多种通信协议的IDE的可扩展支持。五、图元属性页的实现。为了支持IDE以统一的模式进行业务逻辑编排,同时能够以可扩展的方式对多种通信协议进行支持,本实施例IDE提供一套图元,来支持业务开发人员对业务逻辑进行图形化的开发,其中以发送事件及接收事件图元最为典型,下面来描述这两种图元的实现。为了对多种通信协议进行支持,图元的实现不能采取固定的逻辑,必须根据事件描述文件动态的展示属性页界面。图元的属性页提供界面供业务开发人员对其进行填值, 他的实现就是查询有多少通信协议支持实体导入到了系统中,然后动态地按照各种通信协议不同的内容进行展示。综上所属,通过上述操作,IDE就具备了对各种通信协议进行支持的实体,也就是事件库EL,我们把这些事件库EL导入到IDE中,IDE的各个部分便可以根据这些信息来动态的支持各种协议。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。以上对本发明所提供的一种电信业务开发的处理方法及相关装置进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种电信业务开发的处理方法,其特征在于,包括 接收第一协议消息;获取所述第一协议消息对应的通信协议类型;根据所述通信协议类型在事件库EL集合中查询对应的事件库EL,其中,事件库EL用于封装对应通信协议的协议信息;根据所述事件库EL将所述第一协议消息转换成第一协议事件。
2.根据权利要求1所述的方法,其特征在于,所述根据所述事件库EL将所述第一协议消息转换成第一协议事件之后进一步包括输出所述第一协议事件,以便进行业务开发。
3.根据权利要求1或2所述的方法,其特征在于,所述电信业务开发的处理方法进一步包括向事件库EL集合中导入其它事件库EL。
4.一种电信业务开发的处理方法,其特征在于,包括 接收第二协议事件;获取所述第二协议事件对应的通信协议类型;根据所述通信协议类型在事件库EL集合中查询对应的事件库EL,其中,事件库EL用于封装对应通信协议的协议信息;根据所述事件库EL将所述第二协议事件转换成第二协议消息。
5.根据权利要求4所述的方法,其特征在于,所述根据所述事件库EL将所述第二协议事件转换成第二协议消息之后进一步包括输出所述第二协议消息,以便完成业务开发。
6.一种电信业务开发的处理装置,其特征在于,包括 第一接收模块,用于接收第一协议消息;第一获取模块,用于获取所述第一协议消息对应的通信协议类型; 第一查询模块,用于根据所述通信协议类型在事件库EL集合中查询对应的事件库EL, 其中,事件库EL用于封装对应通信协议的协议信息;第一转换模块,用于根据所述事件库EL将所述第一协议消息转换成第一协议事件。
7.根据权利要求6所述的装置,其特征在于,所述电信业务开发的处理装置进一步包括第一输出模块,用于输出所述第一协议事件,以便进行业务开发。
8.根据权利要求6或7所述的装置,其特征在于,所述消息处理装置进一步包括 导入模块,用于向事件库EL集合中导入其它事件库EL。
9.一种电信业务开发的处理装置,其特征在于,包括 第二接收模块,用于接收第二协议事件;第二获取模块,用于获取所述第二协议事件对应的通信协议类型; 第二查询模块,用于根据所述通信协议类型在事件库EL集合中查询对应的事件库EL, 其中,事件库EL用于封装对应通信协议的协议信息;第二转换模块,用于根据所述事件库EL将所述第二协议事件转换成第二协议消息。
10.根据权利要求9所述的装置,其特征在于,所述电信业务开发的处理装置进一步包括第二输出模块,用于输出所述第二协议消息,以便完成业务开发。
全文摘要
本发明实施例公开了一种电信业务开发的处理方法及相关装置,用于在同一IDE中支持多种不同通信协议的电信业务开发。本发明实施例方法包括接收第一协议消息;获取所述第一协议消息对应的通信协议类型;根据所述通信协议类型在事件库EL集合中查询对应的事件库EL,其中,事件库EL用于封装对应通信协议的协议信息;根据所述事件库EL将所述第一协议消息转换成第一协议事件。通过实施本发明方案,能够使得IDE开发人员无须针对不同的通信协议开发对应的IDE,从而减少了开发IDE的工作量,同时也提高业务开发人员的开发效率。
文档编号H04L29/06GK102438021SQ201110447538
公开日2012年5月2日 申请日期2011年12月28日 优先权日2011年12月28日
发明者吴昇 申请人:华为软件技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1