Wintels2中间件JS接口说明资料.docx
《Wintels2中间件JS接口说明资料.docx》由会员分享,可在线阅读,更多相关《Wintels2中间件JS接口说明资料.docx(10页珍藏版)》请在冰豆网上搜索。
![Wintels2中间件JS接口说明资料.docx](https://file1.bdocx.com/fileroot1/2023-1/4/0ed8e6bc-377a-4a35-bfa1-9c141ef86009/0ed8e6bc-377a-4a35-bfa1-9c141ef860091.gif)
Wintels2中间件JS接口说明资料
目录
1文件说明2
2方法说明2
2.1对象初始化2
2.2坐席状态操作3
2.2.1登陆wincall.fn_login(ip,vccCode,agentNum,agentPass,agentphone,queState)3
2.2.2注销wincall.fn_logout()3
2.2.3示闲wincall.fn_unbusy()3
2.2.4示忙wincall.fn_busy()4
2.3电话操作4
2.3.1应答wincall.fn_answer()4
2.3.2挂断wincall.fn_hangup()4
2.3.3保持wincall.fn_hold()4
2.3.4恢复wincall.fn_unhold()5
2.3.5呼叫坐席wincall.fn_dialinner(agentID,callerID)5
2.3.6呼叫外线wincall.fn_dialouter(called,callerID,groupID)5
2.3.7咨询坐席wincall.fn_consultinner(agentID,callerID)5
2.3.8咨询外线wincall.fn_dialouter(called,callerID)6
2.3.9咨询接回wincall.fn_consultback()6
2.3.10转接wincall.fn_transfer()6
2.3.11三方wincall.fn_3way()6
2.3.12三方接回wincall.fn_3wayback()6
2.3.13发送DTMFwincall.fn_dtmf(dtmf)7
2.3.14监听wincall.fn_chanspy(agentID)7
2.3.15拦截wincall.fn_intercept()7
2.3.16强插wincall.fn_breakin()7
2.3.17转评价wincall.fn_evaluate()7
2.3.18取得能用的队列wincall.fn_get_que()8
2.3.19取得能用的队列wincall.fn_get_caller()8
2.3.20获取变量wincall.fn_getParam(name)8
3事件说明8
3.1返回消息callProcess(response)8
3.2分机状态改变callSeatState(response)9
3.3队列状态改变callQueueState(responce)10
4其他说明10
4.1关于状态的说明10
4.2关于编程的说明10
1
文件说明
客户端包含如下文件
Wincall400.swf
jquery.wincall.jsjquery-1.7.1.min.js
linephone.exe
index.html
wincall400.swf为flash文件,用于与服务器之间的socket通信,使用flash的好处是在BS架构下不同的浏览器都可以实现与服务器之间的socket连接,ocx控件只适用于IE浏览器。
jquery.js为基本的js类,供jquery.wincall.js使用,方便js的开发。
jquery.wincall.js为与swf交流的脚本,客户编写的程序只需要与jquery.wincall.js交互即可,不必直接调用flash文件。
linephone.exe为客户端的软电话,如果客户端使用硬件的电话可不必安装。
网页加载时系统会自动判断是否已安装此软电话,如果没有安装则自动下载。
注意js需要能够访问注册表和控制此软电话的功能,是通过调用的系统的WshShell控件来实现,调用此控件需要浏览器的权限。
一般情况下将此站点加入系统可信任站点,IE下可能还需要将可信任站点的级别调低。
index.html为测试网页,注意此网页只是提供了各个方法的调用示例,仅供编程人员参考。
2方法说明
2.1对象初始化
参数:
•reconnect:
是否重登陆
•reconnect_limit:
最大陆次数
•phonetype:
分机类型(teltphone,softphone)
例如:
wincall=$.wincall({
reconnect:
true,
reconnect_limit:
2,
phonetype:
‘softphone’
});
2.2坐席状态操作
系统提供的方法主要包括对坐席状态的操作和对电话的控制,注意除了fn_getParam方法,其他的方法都没有返回值,结果通过事件返回,为异步操作,详细说明如下:
2.2.1登陆wincall.fn_login(ip,vccCode,agentNum,agentPass,agentphone,queState)
参数:
•ip:
服务器IP
•vccCode:
公司账号
•agentNum:
坐席的工号
•agentPass:
坐席的密码
•agentPhone:
坐席的分机号
•queueState:
队列的初始登陆状态
功能:
坐席登陆。
2.2.2注销wincall.fn_logout()
参数:
•无
功能:
坐席注销。
注:
与服务器的Socket断开后系统会自动注销。
2.2.3示闲wincall.fn_unbusy()
参数:
•无
功能:
坐席示闲。
注:
坐席只有在空闲状态下才能接听队列电话
2.2.4示忙wincall.fn_busy()
参数:
•无
功能:
坐席示忙。
注:
示忙后队列不会再分配电话到该坐席,但是直接呼叫仍然可以呼通。
2.3电话操作
2.3.1应答wincall.fn_answer()
参数:
•无
功能:
接听电话。
2.3.2挂断wincall.fn_hangup()
参数:
•无
功能:
挂断电话。
2.3.3保持wincall.fn_hold()
参数:
•无
功能:
保持电话。
2.3.4恢复wincall.fn_unhold()
参数:
•无
功能:
恢复电话。
2.3.5呼叫坐席wincall.fn_dialinner(agentID,callerID)
参数:
•agentID:
呼叫坐席的id
•callerID:
主叫号码
功能:
呼叫电话。
2.3.6呼叫外线wincall.fn_dialouter(called,callerID,groupID)
参数:
•called:
外线号码
•agentID:
呼叫坐席的id
•groupID:
外呼队列id(从wincall.fn_get_que()可取得)
功能:
呼叫电话。
2.3.7咨询坐席wincall.fn_consultinner(agentID,callerID)
参数:
•agentID:
呼叫坐席的id
•callerID:
主叫号码(从wincall.fn_get_caller()可取得)
功能:
咨询坐席,原来通话中的客户听音乐。
注:
此功能只能在通话状态下使用。
2.3.8咨询外线wincall.fn_dialouter(called,callerID)
参数:
•called:
外线号码
•agentID:
呼叫坐席的id
功能:
咨询外线,原来通话中的客户听音乐。
注:
此功能只能在通话状态下使用。
2.3.9咨询接回wincall.fn_consultback()
参数:
•无
功能:
将咨询的电话挂断,重新和原来通话的客户接通。
注:
此功能只有在咨询外线或者坐席以后才能使用。
2.3.10转接wincall.fn_transfer()
参数:
•无
功能:
转接电话。
注:
只有咨询以后才能使用转接的功能。
2.3.11三方wincall.fn_3way()
参数:
•无
功能:
实现三方通话。
注:
只有咨询以后才能使用三方的功能。
2.3.12三方接回wincall.fn_3wayback()
功能:
实现三方通话接回。
(将第三方挂断)
注:
只有三方以后才能使用接回的功能。
2.3.13发送DTMFwincall.fn_dtmf(dtmf)
参数:
•dtmf:
要发送的dtmf码
功能:
发送dtmf按键。
注:
如果要发送1则参数直接为1,不能设置为1的ASCII码。
2.3.14监听wincall.fn_chanspy(agentID)
参数:
•agentID:
要监听的坐席的id
功能:
监听某一坐席的通话。
2.3.15拦截wincall.fn_intercept()
参数:
•无
功能:
实现拦截功能。
注:
监听以后才能拦截。
2.3.16强插wincall.fn_breakin()
参数:
•无
功能:
实现强插功能。
注:
监听以后才能强插。
2.3.17转评价wincall.fn_evaluate()
参数:
•无
功能:
实现评价功能。
注:
转评价以后通话立即结束。
2.3.18取得能用的队列wincall.fn_get_que()
参数:
•无
功能:
返回当前坐席能用的队列。
注:
在坐席签入以后才能使用,返回坐席能使用的队列的id。
2.3.19取得能用的队列wincall.fn_get_caller()
参数:
•无
功能:
返回当前坐席能用的主叫号码。
注:
在坐席签入以后才能使用,返回坐席能使用的主叫号码。
2.3.20获取变量wincall.fn_getParam(name)
参数:
•name:
参数名称
功能:
获取某一变量的值。
注:
name常用值为Caller:
主叫,Called:
被叫,Callid:
呼叫ID,比如可以在振铃到通话结束的时候调用此方法获取需要的变量,存入业务中,即可以实现业务记录与通话记录的关联。
3事件说明
客户端会收到服务器端发送过来的事件,实现方法是调用某个固定函数,经过js封装后有三个系统事件。
3.1返回消息callProcess(response)
当系统有返回消息时会自动调用此方法,response可能的值有:
●连接成功
●初始化成功
●此分机已初始化
●本Socket已初始化
●分机号不存在
●分机已有使用
●队列不存在
●反初始化成功
●尚未初始化
●电话注册成功
●电话注册失败
●签入成功
●尚未初始化
●签出成功
●尚未登录
●尚未签入
●示闲成功
●已处于示闲状态
●示忙成功
●已处于示忙状态
●尚未签入
●发送数据错误
●与服务器断开
●无法连接到服务器
●系统重登录
●来电
●呼叫中
●对方振铃
●通话中
●通话完成
●握手信号
●强插
●三方
●监听
●系统示闲
●系统示忙
●占用
●事后处理
●系统报工号
●队列占用
更详细的返回消息参见index.html
返回消息可能是系统调用了某一函数后的返回消息,比如签入成功等,也可能是系统主动发来的消息,比如系统示忙,与服务器断开等等。
3.2分机状态改变callSeatState(response)
分机状态改变时系统会自动调用此函数,response可能的值有:
●振铃
●呼叫中
●对方振铃
●通话中
●通话完成
●强插
●三方
●监听
●报工号
3.3队列状态改变callQueueState(responce)
队列状态改变时系统会自动调用此函数,response可能的值有:
●示闲
●示忙
●占用
●事后处理
4其他说明
4.1关于状态的说明
空闲(示闲)状态标识坐席空闲,此时队列中有来电会分配到处于空闲状态的坐席。
两种情况下坐席会转入示忙状态,一是坐席手动示忙,二是队列分配给坐席电话后坐席拒接或其他原因没有接起电话,系统会自动将坐席置为示忙状态。
占用状态时坐席正在工作,比如振铃通话时都会自动转换为占用状态。
事后处理状态是自动切换的,每次通话完成后会自动转为事后处理状态,避免一挂机就立马接到下一个来电。
事后处理状态下,如果坐席不手动切换到示闲或示忙,30秒后系统会自动将坐席转换为空闲状态。
4.2关于编程的说明
建议编码格式为utf-8否则会出现乱码,调用失败,返值状态乱码。
先后引入js文件jquery.js和jquery.wincall.js,一定要先引入jquery.js。