APP下载

Web Services技术在呼叫中心系统中的应用研究

2012-10-12潘鲁萍冯良清

制造业自动化 2012年9期
关键词:服务提供者调用客户端

潘 山,潘鲁萍,冯良清

PAN Shan1,PAN Lu-ping 2,FENG Liang-qing3

(1.江西冶金职业技术学院 ,新余 338028;2.华南理工大学 设计学院 , 广州 510640;3.南昌航空大学 经济管理学院 ,南昌 330063 )

0 引言

伴随着网络的发展,我们所面临的环境己经从传统的孤立的向开放的互连的一体化网络转变,大量信息涌入使得传统呼叫中心已经无法满足用户日益增长的高效服务的需求。客观上要求呼叫中心提高数据资源的整合力度,加快与Web技术融合的步伐,为用户提供更加方便快捷的服务[1],同时保持原有系统结构功能不变以避免重复开发。因此利用通信和分布式计算技术实现上述目标显得非常必要,业界常用的技术如DCOM、CORBA等因其自身通信协议依赖性强而难以实现异构系统之间的数据整合。

Web Services(Web服务)在网络上采用标准化的XML消息传递数据请求,具有跨平台、与开发语言无关、穿越防火墙、集成能力高等特性,代表了目前分布式计算技术的发展趋势。这些特性使得Web Services在异构环境下进行低成本的数据通信与整合成为可能[2]。本文结合江西省农村信息化项目中的呼叫中心系统建设,对在呼叫中心系统开发中引入Web Services技术进行设计研究。

1 呼叫中心系统概述

呼叫中心又称客服中心,是一种基于计算机电信集成(Computer Telecommunication Integration,CTI)技术、充分利用通信和计算机网络的多项功能集成的完整综合信息服务系统[3]。以农民需求为中心建立能提供多种服务方式的呼叫中心系统,可以推进农村信息化工作进程,更好的为农民服务。

呼叫中心系统的基本服务流程是:当用户发起呼叫时,若系统空闲则接通,PBX将用户数据转至CTI服务器,同时启动IVR系统为用户播放欢迎词提示用户选择服务项目,IVR系统实时识别用户按键,根据按键不同调用相关数据库,或调用ACD模块将用户呼叫转移给人工座席,座席代表可以通过座席管理系统实现与用户实时交流,为用户提供帮助。

2 Web Services概述

2.1 Web Services体系架构

Web Services体系结构遵循SOA规范体系,其结构如图1所示。

图1 Web Services体系结构

该体系结构基于服务提供者、服务注册中心和服务请求者三种角色之间的交互,交互包括发布(publish)、查找( find)和绑定(bind)三个基本操作[4]。它们的工作原理叙述如下:1)服务提供者(Service Provider):也即服务发布者,它将服务用WSDL语言描述并发布到服务注册中心,同时对服务请求进行响应。2)服务注册中心(Service Register):服务提供者在此发布服务描述,中心对其分类,提供搜索服务。这里其实是服务信息检索中心。3)服务请求者(Service Requester):根据服务注册中心的服务列表,查找所需服务信息,然后调用该服务,这时通信是在服务请求者和服务提供者之间直接进行的。静态绑定的服务请求者也可以直接从服务提供者处获取服务描述。

2.2 Web Services关键技术

Web Services之所以能够适用操作异构平台下的数据通信,与它使用的一系列相关技术是分不开的。如使用WSDL(Web service description language)来描述服务;使用UDDI(universal descri ption,discovery,integration)来发布、查找服务;而SOAP(simple object access protocol)被用来执行服务调用。SOAP是一种基于XML的消息传输规范,采用HTTP、SMTP、FTP等应用层协议进行数据传输。它描述了数据类型的消息格式以及一整套串行化规则,是Web服务体系中服务交互的基本架构。SOAP是一个用于分布式环境下数据交换的相对简单和轻量级的协议。

WSDL作为Web服务的开放标准,以XML格式来描述Web服务,包括它的位置、服务方法、参数、数据类型等信息,以便为分布式系统中各类用户提供能够识别的调用接口。WSDL文档将Web服务定义为一组端点(endpoints/ports)的集合[5],这组端点会处理包含面向文档或面向过程(RPC)消息格式的消息。它由服务、端口、绑定、端口类型、消息和类型元素组成。WSDL允许使用多种网络传输协议和消息格式,分离了抽象定义层和具体部署层。

3 融合Web Services的呼叫中心系统架构

由于农业信息数据量较大、种类繁多,信息共享、资源整合难,制约了农村信息化建设的进程[6];同时,农村地域广阔,不利于创建相对集中模式的应用系统,而且前期部分已投入运营的系统使用的平台环境及开发语言不尽相同,导致系统之间无法进行数据通信和整合。

为了解决上述问题,首先可以通过查阅资料与权威专家指导相结合的办法,将各种农业知识整合起来,统一建立农业信息数据库;其次,要保持现有应用系统的原状,考虑将Web Services技术融合到呼叫中心系统开发上来,解决分布在不同地域间异构系统之间的数据交换问题[7]。图2是该融合系统的架构图,系统分为四层。

图2 融合Web Services的呼叫中心架构

1) 客户层是基于不同平台和开发语言的呼叫中心应用系统,位于各地市级农业中心。作为人机交互界面,负责信息输入、结果显示,它相当于服务请求者。

2) Web服务层实现对SOAP请求/响应消息的处理[8],业务层的各种功能封装成Web Services并暴露出来,为客户端提供WSDL定位信息[9],相当于服务提供者和服务注册中心。

3) 应用业务层主要根据农业呼叫中心的业务需求,实现各种业务功能。

4) 数据层主要实现各种数据的存储、组织和管理。

Web服务及其业务逻辑都是在省级的农业信息化中心统一实现和管理,并为地市级呼叫中心提供调用接口,地市级可以保持原有系统运行不变。两者之间通过Internet建立连接。

4 应用实例

本文针对农业生产中常见的问题[10],结合呼叫中心工作流程,以病虫害问题咨询服务为例,介绍了利用Web Services实现异构平台下数据通信的实现方法。

4.1 服务端的创建

若座席代表在本地数据库中无法找到农户有关病虫害问题的解决方法时,可以通过调用省级中心的Web服务寻求帮助。

AXIS2是一个以Java为基础实现Web Services客户端和用户端功能的Soap处理机[11],它能处理客户端发来的SOAP请求,以及返回服务端的SOAP响应。本文用Java语言创建实现Web服务的类并打包,然后将其发布到AXIS2引擎中,AXIS2会自动根据这个包生成XML格式的WSDL文件。

Web服务创建的主要步骤是首先实现服务端的业务逻辑接口类GetDisList,根据问题关键字调用实现类中的getList(para1,para2)方法查找有关病虫害防治信息,若找到则将结果返回至客户端,否则座席代表记录问题留待解决;其次将这些类打包后用WSDL语言描述;最后将该WSDL文件部署到AXIS2引擎中,供用户调用时使用。具体Web服务定义描述语言如下:

4.2 客户端的创建

地市级呼叫中心作为Web服务客户端可以选择不同的开发环境,本文以VB客户端为例,描述其创建过程。

要想实现VB客户端调用远程Web服务,必须将它的请求转换为基于XML格式的Soap消息并通过HTTP等协议传输。Microsoft Soap Toolkit 3.0软件包提供了一套完整的Web Services应用程序开发和部署解决方案[12]。该软件包由三个组件构成,其中客户端组件提供的SoapClient30对象能处理客户端数据流,用户应用程序通过发送一个消息给该对象以请求执行操作。图3是该对象处理客户端数据流的一个实例过程。

图3 SoapClient30处理Soap数据流过程

在实例化该对象之前,必须对它初始化,初始化过程实际就是将WSDL文件中port元素描述的方法绑定到SoapClient30对象上。该对象初始化的代码如下:

在AXIS2服务列表页面中单击相应服务得到其对应的WSDL文件地址,服务名和端口信息可以省略。初始化之后的SoapClient30对象就可以直接通过Web服务实现类的方法名,输入适当参数,像调用本地方法一样调用Web服务了,本例中查询病虫害信息的方法有两个参数。客户端调用Web服务查询方法的代码如下:

发出查询请求之后,若查找成功,则服务端将结果传送回客户端,客户端可以根据需要对其进行处理。

5 结束语

随着Web Services技术不断发展和完善,优势不断显现出来。在呼叫中心系统开发中融合Web Services技术,实现了异构平台的数据通信,达到了整合相关的数据资源的目的。不但方便了系统扩展,也降低了建设成本。系统中任何组件的改变,要做的只是将其重新发布成Web服务,而在此过程中整个系统仍然正常工作。本文研究的融合Web Services的呼叫中心系统不仅可以进一步推进农村信息化工作、不断提高为农民服务效率,也为其他行业建设信息化集成系统提供了很好的参考价值。

[1]宋俊德.我国CTI、呼叫中心和CRM技术的发展和应用[J].电信科学学报,2001,10:23-26.

[2]谭显东,李存斌,等.基于Web Service的电力营销管理信息系统架构研究[J].计算机工程与设计,2008,29(7):1820-1823.

[3]Rob Walters.计算机电话集成技术(第二版)(宋俊德译)[M].北京:人民邮电出版社,2000.

[4]岳昆,王晓玲,周傲英.Web服务核心支撑技术:研究综述[J].软件学报,2004,15(3):428-434.

[5]Erik Christensen,Francisco Curbera,etc.Web Services Description Language (WSDL) 1.1.http://www.w3.org/TR/wsdl#_wsdl[EB/OL],2001-03-15.

[6]李念庆,龙梅.国内外常用农业信息数据库[J].农业图书情报学刊,2005,6(13):136-139.

[7]董小雷,路春光,等.Web Service技术及其在虚拟企业管理信息系统中的应用[J].工程图形学报,2007,3:156-162.

[8]陈静,等. 基于Web Services的网络数据传输[J].郑州轻工业学院学报(自然科学版),2005,20(3):99-101.

[9]韩耀坤.基于WebService的客户服务系统研究[J].机电产品开发与创新,2010,23(2):111-113.

[10]唐良招,等.基于WebService的农业经济信息交换共享系统[J].计算机应用与软件,2010,27(11): 188-190,198.

[11]Apache Software Foundation.Apache Axis2 User's Guide[EB/OL].http://ws.apache.org/axis2/1_4_1/userguide.html#whatis,2008-08-24.

[12]Microsoft Corporation.SOAP Toolkit 3.0手册[R].2002

猜你喜欢

服务提供者调用客户端
网络服务提供者的侵权责任研究
网络服务提供者的侵权责任研究
论网络服务提供者连带责任的理论困境
网络服务提供者“应知规则”的再厘定及适用探讨
核电项目物项调用管理的应用研究
如何看待传统媒体新闻客户端的“断舍离”?
系统虚拟化环境下客户机系统调用信息捕获与分析①
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
大枢纽 云平台 客户端——中央人民广播电台的探索之路