iCall是完善的产品化呼叫中心系统,同时也是一个开放的智能通讯平台,iCall提供开发接口,可以方便地进行二次开发,快速实现与业务系统无缝集成。
(iCall呼叫中心系统以及业务集成网络架构)
iCall呼叫中心平台二次开发接口提供多种集成整合模式,即可在联傲B/S架构的CAMS座席系统框架中自行定制开发用户业务系统,也可通过联傲座席控件(OCX)集成到用户原有业务系统,实现完整的呼叫中心通讯功能。
(iCall呼叫中心系统以及业务集成逻辑架构)
iCall业务集成分为座席端业务集成(前台集成)和在IVR中与业务交互(后台集成)。
例如实现来电弹屏、点击呼叫等。
iCall所有种类座席的开发接口都是相同的,iCall座席提供两种方式的开发接口:
<1>iCallAgent.ocx控件接口
适用于C/S以及B/S架构应用整合。
响应控件的OnRing事件就可以实现来电弹屏;调用控件的呼出方法就可以实现点击呼叫。
<2>JS对象接口
CAMS(联傲座席管理系统)提供iCallAgent.js(Javascript对象)开发接口,可以将定制业务嵌入CAMS框架,实现定制业务与联傲座席框架的无缝集成。
业务开发商只需要将业务逻辑或业务数据封装成WebService服务就可以很方便实现诸如来电自动验证会员身份、自动查询运单状态、自助查询余额等应用。
本节只介绍iCall座席控件的基本概念和常用的应用开发场景,有关详细文档或更高级应用集成请咨询联傲电讯。
iCallAgent.ocx座席控件支持iCall所有种类座席(标准座席、CSAP软座席、SIP座席),全面封装了iCall座席的功能,业务层可通过控件的事件、方法、属性实现对座席的通讯操作、响应来电消息等。
座席应用开发的一般步骤是:
functionLogin(outAgentID:Integer;outIsAdmin:WordBool):WordBool;
参数:AgentID:话务员工号
procedureSetLoginInfo(AgentID:Integer;IsAdmin:WordBool);
IsAdmin:是否系统管理员。有些APP只有系统管理员才有权使用。
functionOpenApp(1,0):Integer;
功能:启动或连接座席。
返回:1标准座席
2CSAP软座席
3SIP座席
座席启动成功后,可以通过属性SliceNo取得自己座席序号。
示范代码:
//AgengX是iCallAgent.ocx对象实例
//------------------------------------------------------------
functionInit:Boolean;
begin
Result:=False;
IfAgentX.Login(AgentID,IsAdmin)then
Result:=AgentX.OpenApp(1,0)in[1..3];
IfResultthen
MySliceNo:=AgentX.SliceNo;
end;
iCall座席控件事件封装了来电、通话、按键、呼叫进展、座席状态变化、实时消息等所有的消息通知。
OnRing(SliceNo,iParam:Integer;sParam:WideString)
功能:来电通知事件,座席振铃时触发。
SliceNo:发生事件的座席序号
iParam:来电类型,0:内线,1:外线
sParam:标记字符串,传递到座席的信息。
标记字符串格式为:标记名:标记值|标记名:标记值……
系统定义了以下标记名:
例如来电号码为83366857对座席振铃,则OnRing事件中标记字符串(sParam)内容为:CALLERID:83366857|TTYPE:2.
//-----------------------功能:来电弹屏-------------------------
procedureTForm1.AgentXRing(ASender:TObject;SliceNo,iParam:Integer;constsParam:WideString);
var
Str:TStringList;
star,I:integer;
CallerID:String;
ifSliceNo<>AgentX.SliceNothen
exit;//不是本座席的来电事件
ifiParam=0then
ShowMessage(‘座席来电’)//座席来电一般不弹屏
Elsebegin
//以下代码从标记字符串取来电号码
str:=TStringList.Create;
str.Delimiter:='|';
str.DelimitedText:=sParam;
fori:=0tostr.Count-1do
star:=pos('CALLERID:',str[i]);
ifstar>0then
CallerID:=copy(str[i],Length('CALLERID:')+1,Length(str[I]));
//---ShowMessage(‘来电号码:’+CallerID);---
//在此根据来电号码查询客户信息、交易记录等,实现来电弹屏
//……
Str.Free;
可在流程插件中自定义标记名,向座席端传递任意需要的信息。例如在会员认证插件中定义MemberID,将会员号传递到座席端。
functionDoAction(ActID:Integer;iParam:Integer;sParam:String):Integer;
功能:执行一般通讯操作。
参数:ActID:通讯操作代码,包括:接听/应答、保持/恢复/转移通话、呼出、转自动、会议、传
真、状态设置、以及即时消息等。
iParam,sParam:
functionDoControl(TargetSliceNo,ControlType:Integer):Integer;
功能:对目标坐席进行通讯控制操作
参数:TargetSliceNo:目标坐席序号
ControlType:控制操作功能代码,包括:监听、拦截、强插……
functionShowAgentPanel(FormType:Integer;Showing:Boolean):Integer;
功能:显示/隐藏座席操作台、控制台界面
参数:FormType:1坐席操作台
2坐席控制台
3等候来电与会议窗口
Showing:True/False显示/隐藏
DoAction呼叫外线的参数定义描述如下:
AgentX.DoAction(7,3,TelNo)
(CAMS界面示例)
iCallAgentX是CAMS内部封装的座席对象,该对象可接收iCall服务器消息以及向服务器下发操作指令,同时该对象还提供语音、短信、传真等融合通讯的操作和管理功能。
(CAMS与定制业务关系图)
以下是一段JavaScript代码示范如何访问座席对象,如何绑定事件和进行通讯操作。
varJs_Demo={
iCallAgent:null,
init:function(){
this.iCallAgent=window.top.iCallAgentX;//取得坐席对象
//绑定OnRing事件
this.iCallAgent.bind(this.iCallAgent.Constant.Event.Ring,this.event.onRing,this);
},
uninit:function(){
//解除OnRing事件的绑定
this.iCallAgent.unbind(this.iCallAgent.Constant.Event.Ring,this.event.onRing);
event:{
onRing:function(e,sliceNo,iParam,sParam){
Alert(‘座席来电,标记字符串:’+sParam);
}
call:function(){
//按钮等Click方法可以触发onClick=”Js_Demo.Call();”
//以下操作呼叫外线,号码为83366857。参数详见doAction方法介绍
this.iCallAgentX.doAction(7,3,‘83366857’);
};
根据来电号码自动弹屏。弹屏信息包括:客户资料信息、历史服务信息、交易信息等等,历史记录自动绑定当时的通话录音,方便用户在查阅历史记录的过程中实时回放当时的通话录音;
<1>通过iCallAgentX的onRing事件(此事件有三个参数):
iCall的流程编辑器中设置标记名和标记值,通过正则表达式解析标记字符串获取值,进行二次应用开发。
DEMO演示代码(JsCode):
iCallAgentX:null,
//查找iCallAgentX对象并赋值
this.iCallAgentX=window.top.iCallAgentX;
if(this.iCallAgentX){
//iCallAgentX.bind绑定
this.iCallAgentX.bind(this.iCallAgentX.Constant.Event.Ring,this.event.onRing,this);
}else{
//alert('未绑定事件,无法联动呼叫中心!');
//iCallAgentX.unbind解除绑定
this.iCallAgentX.unbind(this.iCallAgentX.Constant.Event.Ring,this.event.onRing);
//onRing事件
if(this.iCallAgentX.sliceNo()!=sliceNo){
//判断是否是本机号码
return;
//获得来电号码telNo
vartelNo=sParam.match(/[^CALLERID]{0,}CALLERID:(\d{0,})\|/i)[1];
document.getElementById("divTelno").innerText=telNo;
通过iCallAgentX的doAction方法实现内外线呼叫。(此方法有两个参数):
自动外呼、预览外呼、预测外呼等。
this.iCallAgentX.bind(this.iCallAgentX.Constant.Event.AgentState,this.event.onState,this);
this.iCallAgentX.unbind(this.iCallAgentX.Constant.Event.AgentState,this.event.onState);
onState:function(event,sliceNo,State){
//onState事件
varbit=this.iCallAgentX.getActionEnables()
//设置按钮的状态
$("#call").attr("disabled",(bit&128)!=128);
document.getElementById("txtState").value=this.iCallAgentX.Constant.StateMsg[State];
callOut:function(){
//callOut方法
if($('#callOutNum').val()==''){
alert('请输入呼叫号码!');
//进行呼叫,内线呼叫0,外线呼叫3
this.iCallAgentX.doAction(7,document.getElementById('nei').checked==true0:3,$('#callOutNum').val());
iCall提供iCallAgentX.js框架,此框架封装了OCX控件的属性、方法。通过实列化iCallAgentX对象来调用、访问属性和方法从而方便的与坐席端进行互动。业务表单实现录音自动绑定,方便用户在查阅历史记录表单的过程中实时回放当时的通话录音;
//Ring事件和onRing事件进行绑定
this.iCallAgentX.bind(this.iCallAgentX.Constant.Event.Talk,this.event.onTalk,this);
this.event.onTalk();
this.iCallAgentX.unbind(this.iCallAgentX.Constant.Event.Talk,this.event.onTalk);
document.getElementById("txtCallNum").value=telNo;
onTalk:function(e,sliceNo,iParam,sParam){
//todo:这里可以进行“录音绑定”vocId录音ID
varvocId=sParam.match(/[^VOCID]{0,}VOCID:(\d{1,})\|/i)[1];
document.getElementById("txtVocid").value=vocId;
iCall提供面向终端用户的流程编辑器(QFEitor),用户无需编程,可方便快速自行定制呼叫流程。
可任意设置流程层次。支持服务选择、语音查询、人工服务、转接座机或手机、留言、跳转;支持人工服务与自动服务互转;支持传真收发、TTS;支持工作休息或根据主被叫启用不同流程;支持自动外呼流程等。
我们提供大量标准化插件支持各种个性化服务和行业应用,插件通过WebServic或TCP与业务系统交互,业务开发商只需要将业务逻辑或数据写成WebService服务就可以,十分简单和快捷,很容易实现整合,实现诸如:会员认证、订单查询、缴费或积分查询、自动业务申请等任意功能。
业务开发商也可以自行开发插件,如需要自行开发插件,请联系联傲电讯技术支持。本文主要介绍部分常用插件的功能和应用。
可按评分制、评级制进行满意度评价;如果客户不满意可以直接转接人工投诉受理座席。评价结果可生成统计报告,方便对话务员的服务进行监控考核。
(满意度插件的配置)
(满意度插件中使用的提示音,可在线录制编辑)
应用方式:
话务员和客户通话,话务员先挂机,自动引导客户进入服务评价流程。
(通话后进行满意评价的流程实例)
话务员在与客户通话过程中,利用转自动将客户主动引导进入服务评价流程。
自动外呼进行满意度调查回访。
(自动外呼进行满意度评价的流程实例)
满意度调查结果可以分类统计分析:
(满意度评价统计图表)
(满意度评价清单)
根据输入的用户号和密码进行验证,可用于会员身份认证、产品认证、发票防伪认证等。
(插件配置)
可配置用户号属性、是否重播输入的用户号、是否验证密码等。
(WebService服务配置)
流程插件收集到客户输入的用户号、密码后,调用函数CheckUser进行验证。该函数是业务系统开发商实现的一个WebService服务。对于不同的应用UserID可以是会员卡号、产品编码、发票代码等。
functionCheckUser(constUserID,PSW:WideString):Boolean;stdcall;
(认证插件的流程配置实例)
联傲公司提供大量标准应用插件,供用户直接选用。
地址:山东省济南市高新区丁豪广场3号楼1单元1213房呼叫中心24小时咨询热线:156-2456-9876