读书-思考-总结  
我的菜园

针对CallCenter二次开发,也已经做了4个项目了。针对自己所做这些开发,想写一个自己的开发的心得和体会,来总结归纳下其中的要点。如有不足或者错误的地方,请大家指教。

一 CallCenter的基本定义组成和用途

CallCenter定义
CallCenter,中文名称 呼叫中心。主要作用是对外公布一个公开的号码,例如800 ,400 等免费电话。
客户可以拨打该号码,但是可以有N个人可以为客户提供服务。CallCenter基本介绍就到此为止,如果还有不明白的,可以到网上搜索一下,基本的就可以明了。或者体验下,拨打移动联通的免费电话,感觉下CallCenter。

CallCenter的组成
CallCenter一般有如下几个部分组成:交换机 CTI服务器 IVR服务器 座席客户端(可选)业务系统
交换机的主要用途是电信运营服务商,将电话线路连接到交换机上
CTI服务器 处理电话,将从交换机的接收到的电话转移到IVR服务器
IVR服务器 主要负责将电话转接。里面可以增加自己的业务流程,比如按1查询,按2 转人工服务等。
座席客户端(可选) 专门负责电话接听,挂断,转接等操作。之所有为可选,是可以把这部分实现在自己的业务系统中, 在控制业务流程的同时,也可以控制电话的基本操作
业务系统 一个企业在采用CallCenter系统时,一般都有自己成熟的业务系统。
针对CallCenter的二次开发,一般在两个层面上展开,一个是在IVR服务器中,另一个就是在业务系统中。

CallCenter用途
目前在企业中,CallCenter的用途有两个,一个为售后服务,一个为销售。例如移动联通和银行等,一般都是做为售后服务的,但是也有一些企业采用CallCenter作为电话营销的有力武器。
一般根据业务的侧重点,能决定座席客户端的有无。假如都是已接电话为主的服务性质,电话控制比较重要,所以一般都安装有客户端。如果很侧重业务,不是特别注重电话流程,有可能就是在原有的业务系统中,加入电话处理的流程。但是一般情况下,基本都是含有客户端的。

二 CallCenter的二次开发

上面说了那么多的废话,只是想让大家了解一下CallCenter的基本组成和用途。
从这里开始,我们讨论下CallCenter二次开发。

CallCenter的二次开发意义
CallCenter的二次开发主要的目的是什么呢?有了CallCenter,有原来的业务系统,二次开发的目的就是要将CallCenter系统和我们的业务系统结合起来。相当于一个粘合剂,将这两个无关的系统结合到一起,更好的为用户提供服务。

CallCenter系统如何为我们提供开发接口
其实一般的CallCenter系统能提供的接口都是很多种的,比较常见的的是ocx控件,URL参数激发等方式。
具体采用什么方式来做二次开发,其实是由业务需求来决定的。
比如我做的第一个callCenter的开发,是采用ocx内嵌到WinForm中做的。
因为业务系统是WinForm的,所以不能采用CallCenter提供的坐席客户端,只能是在原来的业务系统中,增加对电话的控制部分。
第二个系统,业务系统是asp的,可以采用坐席客户端,里面有WebBrowser,可以采用URL传递参数的方式来结合原有的业务系统,同时也不用去控制电话的流程。
还有一种方式,在原有的Web系统中,调用OCX控件,实现业务和电话流程,不过这种方式还没有做过。

CallCenter系统能为我们提供什么?
CallCenter系统能为我们提供的资源其实比较有限,最经常用到的资源无非几个。
主叫号码,被叫号码,呼叫状态,客服工号。
以上这四个参数,是我们做系统二次开发的时候最经常用的几个参数,请大家牢记。除了这几个参数,当然还有其他的重要参数,但是这个和我们对业务系统结合,其实不起什么作用。其他的参数一般用在电话控制方面,比如接听电话,挂断电话,转接等。

如何进行二次开发
我们抛开电话流程控制部分。单纯的讨论如何和业务系统来结合做二次开发。
第一:获取资源
根据CallCenter提供的接口,我们要知道,如何从一次呼叫中,取到上面我们列出的四个资源。
主叫号码,被叫号码,呼叫状态,客服工号。
我们历经千辛万苦(真的不是夸张,在取到这些资源之前,你要明白一个呼叫包含了什么,同时要看懂CallCenter系统集成商给你提供的文档),取到这些参数。
第二:取到客户电话
获取到了这些参数,但是这几个参数有什么用处呢?根据如上几个参数,我们可以取到客户的电话号码。
例如:
假如此次呼叫,是客户打我们的电话,那么主叫号码是客户的号码,被叫号码是我们的对外公布的电话。
假如此次呼叫,是客服人员给客户主动打电话的,那么被叫号码是客户号码,主叫号码是对外公布的电话。
如何判断呼叫是从内部发起还是客户呼入的呢?根据CallCenter中取到的呼叫状态来判断的。
客服工号,用来判断此次呼叫是谁在为客户服务的。
如上,经过上面的步骤,我们取到了客户的电话,有什么用处呢?
第三:获取客户
得到了客户的电话,怎么样才能得到我们的客户呢?
这里面非常重要的一张表登场--电话联系表(Contact)
专门用来存储电话-客户的对应关系,当然还有一些其他的扩展信息。
根据这张表,可以从电话号码对应到客户。
已经对应到了客户,那么接下来的业务流程,我们就知道怎么走了。
还不知道?原来没有业务系统吧??

OK,一个最基本的CallCenter系统的二次开发的一个功能,也是最重要的一个功能:弹屏  实现完毕。



总结
基本几个步骤,获取参数,得到客户电话,对应到唯一客户。 一个基本的功能实现完毕。

好像忘了一些东西,Contact从哪来?结构是什么?
Contact的结构 

字段名

类型

含义

ContactID

Int

主键

UserID

Varchar(2o)

用户ID

Phone

Varchar(20)

电话号码

From

Int

电话来源

Rank

Int

等级


这个表的来源,以及我们需要注意的一些细节问题,下节补充。

posted on 2008-01-27 18:52  思考-总结  阅读(1242)  评论(4编辑  收藏  举报