基于Parlay和XML的业务生成与执行系统的研究与实现_第1页
基于Parlay和XML的业务生成与执行系统的研究与实现_第2页
基于Parlay和XML的业务生成与执行系统的研究与实现_第3页
基于Parlay和XML的业务生成与执行系统的研究与实现_第4页
基于Parlay和XML的业务生成与执行系统的研究与实现_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于parlay和xml的业务生成与执行系统的研究与实现 摘要 传统的智能网业务生成环境是基于七号信令的,业务的执行与底层的物理网络密切相关,导致新业务的开发难度较大。下一代网络中的parlay技术和osa的结合使得应用层业务的开发不必依赖底层网络,提供了一种开发业务的通用方式。使用parlay/osa与xml相结合的方法实现这一系统,并给出了一个应用实例。关键词 智能网;业务生成环境;业务逻辑执行环境;parlay/osa;xml一、引言 传统的智能网业务开发模式使用信令消息的交互1,根据业务特性构造信令交互过程,并调用底层网络功能,从而构造出智能网业务。这种方式不但需要开发人员熟悉底层异构

2、网络和复杂的信令,而且还面临着业务的跨平台性问题,下一代网中parlay和osa的结合为解决这些问题提供了可能。二、相关技术简介 使用parlay/osa技术构建业务时网络体系架构如图1。parlay api位于现有网络之上,现有网络的网络单元通过parlay网关与应用服务器进行交互,从而提供第三方业务或综合的业务,parlay网关与应用服务器之间的接口为parlay api。parlay网关与现有网络单元之间的协议采用各个网络的现有协议2。这种网络结构高度抽象了底层网络的能力,采用开放的api编程接口,向第三方业务开发商开放,彻底屏蔽了底层网络的复杂性。 应用程序可以通过调用api编程接口方

3、便地利用承载网络的业务能力,如呼叫控制能力、用户信息查询能力等,而不必了解承载网络信令细节。在osa中,承载网络的业务能力被抽象成一组业务能力特征scf(service capability features ),这些scf由业务能力服务器3 scs (service capability servers ) 提供和支持。图1 parlay api在网络中的位置3 系统的设计与实现3.1总体设计图2 系统总体结构 整个系统分为2大模块:sce和slee。如图2所示sce提供图形化界面,操作员拖拽图元图标,按适当的顺序摆放,并用适当的线条连接这些图元。以直观的图形化方式表示业务逻辑,并且最终生成

4、新业务的xml描述文件,以作为slee模块的输入。slee读取并解析xml文件,生成与业务逻辑一致的java代码并且执行,调用parlay网关的接口函数,支持终端用户使用新业务。考虑到跨平台的功能,这2个模块均使用java语言开发。3.2 sce设计与实现 sce部分主要包括图元、线条和界面操作的设计与实现以及xml标记的定义,限于篇幅界面操作部分在此不予详述。3.2.1图元的设计与实现 图元是组成业务的基本元素,系统对图元的处理分前台界面显示(jbutton的继承类)和后台处理(一个线性存储结构vector的继承类,记为svritemvector)2部分,业务编辑窗口中每创建一个图元的同时把

5、此对象加入到svritemvector中,始终保持界面显示与内存完全同步,以便于对图元进行处理。 本系统设计的部分图元的名称、在编辑业务时可设置的图元属性以及该图元的功能以列表的方式给出,见表1。表1:部分图元属性及功能图元名业务编辑时可设定的属性业务执行时的功能begin设定业务名,最大并发用户数,数据库连接信息,所用到的scf系统初始化,应用和框架之间的互相鉴权,业务选择和业务协议的签订uicard卡业务的通用处理,设置卡号和密码的长度限制和结束符等提示用户按照属性中设定的格式输入卡号和密码,并收集用户的输入息uicall设定号码长度和拨号终止符等提示用户拨被叫号码,接收所拨号码,路由寻径

6、,接续呼叫。uicheck设定可查询的信息类别返回查询结果,如账户余额,有效期uinewpwd设定可修改的信息类别接受修改请求,并更新系统信息。uicollect设定可收集的分支信息的类别、格式及范围收集分支信息,并据此转入相应处理switchloopend无属性设置,仅标示分支或循环的结束终止分支或循环end无属性设置,标示业务的结束完成收尾工作,终止业务执行3.2.2 线条的设计与实现 线条是连接图元构成业务流程的元素。系统对线条设计与实现类似对图元的处理,也分前台显示和后台处理2部分。前台显示的作用是根据用户选定的划线起点与终点(均为图元对象),以及线条的类型,在业务编辑窗口中2个图元之

7、间划1个带箭头的直线,从起始图元指向终止图元。不同类型的线条颜色不同。后台处理是设定一个线性存储结构vector的继承类,记为linevector。业务编辑窗口中每划1个线条的同时,生成1个线条对象(lineitem类对象),并设定此对象的起点图元、终点图元、线条类型等属性,然后把此对象保存到linevector中,始终保持界面显示与内存数据完全同步,以便于对线条进行处理。 根据实际的需要本系统设计了以下5种类型线条。线条的类型、颜色和在编辑业务时可设置的属性以及在生成xml文件时该线条的作用以列表的方式给出,见表2。表2:线条类型及功能说明线条类型线条颜色业务编辑时可设定的属性转化为xml文

8、件时的作用表示正常流程黑色无属性设定顺序排列所连的图元判断为真的分支绿色无属性设定加入<if>标记判断为假的分支红色无属性设定加入<else>标记表示循环的线条黄色设定循环的次数加入<loop>标记表示多分支的线条蓝色设定分支的case值加入<switch><case>标记3.2.3 xml标记的定义及含义 xml标记的定义是根据图元和线条表示的图形化业务生成xml业务描述文件时所应遵循的标准。这些标记分为2大类,它们的名称、描述及转化为java代码时的功能见表3。表3:xml标记的描述及功能xml标记类别名称描述转换成java代码时

9、的功能第一类:与图元严格对应与图元同名,如:<begin>标记中含的属性正是图元中能设置的属性以属性值作为参数调用此图元对应的parlay api第二类:公用标记,主要是流程控制标记<service>业务流程的定界标记在程序中构造业务执行的框架 <if>标示流程中为真的判断加入 if ( expr) 及expr为真时要执行的程序块:if ( ) <else>标示流程中为假的判断加入expr为假时要执行的程序块 else <loop>标示流程中的循环加入循环控制框架,如for (;) <switch>标示流程中的多分支加入s

10、witch () <case>标示流程中的分支值加入case value1: case value2: 3.2.4生成xml文件 业务编辑窗口中显示的图元和线条连成的业务流程图,在内存中有相应的存储数据与它们保持完全对应,即上面提到的存储图元的线性结构svritemvector和存储线条的线性结构linevector。依照图元,线条以及xml标记的对应关系(见表1表3),生成相应的xml元素,并组合这些元素成为xml文件,描述业务流程。对内存中线性存储结构中的每个元素进行处理。依次取出linevector中的每个元素lineitem,根据linetype属性插入用于流程控制的xml

11、标记,根据lineitem的fromitem和toitem属性插入与相应图元对应的xml标记。对线性存储结构中的每个元素循环使用此方法,构建一个xml结构树,然后通过org.jdom.xmloutputter的output()方法向磁盘输出xml文件。3.3 slee的设计与实现 slee模块的功能是把xml文件描述的业务转化成完整的java代码,并编译执行。通过调用parlay网关的接口函数,支持新业务。java代码分为2部分:用于初始化的通用部分(每种业务都需要用到的)和与专门与某个图元对应的部分。3.3.1 通用部分 主要包括业务应用程序和parlay网关之间的鉴权、业务选择以及业务协议

12、签订这些功能。由begin图元对应的代码完成,它组合相应的用于鉴权和业务协议签订的一些parlay api。3.3.2 针对具体图元的代码 通用部分代码生成后,slee读取并解析xml文件,根据读出的标记,插入与具体图元对应的代码。具体业务支持的特定功能由相应图元对应的代码完成。各图元对应的parlay api,主要有以下几个,限于篇幅在这里统一描述:(1) 一般呼叫控制业务管理接口ipcallcontrolmanager的enablecallnotification()方法,完成触发事件标准注册4;(2) 一般呼叫控制业务的回调管理接口ipappcallcontrolmanager的call

13、eventnotify ()方法,业务能力服务器通过它实现通知应用有呼叫产生4; (3) 用户交互呼叫接口ipuicall 的sendinfoandcollectreq()方法和sendinforeq()方法,向业务能力服务器请求信息4; (4) 用户交互呼叫回调接口ipappuicall的sendinfoandcollectres()方法,业务能力服务器通过它实现通知机制4; (5) 呼叫接口类ipcall 的routereq()方法4,完成用户呼叫的接续。3.3.3 编译与执行 slee编译并执行生成的java代码,并调用实际的parlay网关或网络模拟器(如朗讯的模拟器 milife i

14、sg)的parlay api就能够支持新业务的应用了。4 应用实例4.1 200号预付费卡业务的流程: (1) 摘机,听到拨号音后拨“200”并进行语言选择; (2) 按提示音依次输入200卡帐号和密码; (3) 听到“请输入被叫号码”提示音后,输入要拨叫的号码; (4) 通话控制与计费处理。4.2 200业务的生成和执行 (1) 根据200业务的流程和功能在sce中选择几个图元(每个图元的具体功能见表1),并使用约定的线条连接成流程图,如图3。图3 200业务实例sce为此业务生成的xml文件如下(记为200.xml)。<?xml version=1.0 encoding=utf-8?

15、><!doctype service system .t_xml.dtd><service> <begin scf=p_generic_call_control;p_user_interaction; name=*200 maxsize=20 dbdriver=oracledriver connstr=10.10.139.1:1521 username=scott pwd=tiger /> <uicard cardlen=10 cardend=# pwdlen=6 pwdend=# /> <switch> <uicolle

16、ct> <case case=1> <uicall calllen=13 callend=# /> </case> <case case=2> <uicheck /> </case> <case case=3> <uinewpwd /> </case> </uicollect> </switch> <switchloopend /> <end /></service> (2)业务执行环境slee调用业务描述文件200.xml,生成java代码,并编译、执行此代码,连接实际的parlay网关或网络模拟器(如lucent milife isgsim)就能支持200业务,终端用户就能使用此项业务了。参考文献1 杨放春,孙其博.智能网技术及其发展m.北京:北京邮电大学出版社

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论