开发指南
更新时间:2023-07-28
开发指南
1)开发者集成SDK,需要先引入SDK。即在您的页面中引入如下代码:`
<script src="js/socket.io.min.js"></script>
<script src="js/web-agent.min.js"></script>``
2)新建坐席服务对象
var agentClient = new webAgent();
3) 初始化参数
//初始化
agentClient.initialize({
entId: 'BD',// 企业编号
agentId: '1001', // 坐席工号
agentDn: '1001', // 分机号
agentName: '1001', // 坐席名
agentType: '5', // 坐席类型(2:外置IP电话3:手机及固化5:内置IP电话)
acdAgentPassword: 'xxxxx', // 坐席密码 MD5加密 $.md5(password).toUpperCase()
agentDnPwd: '1234', // 分机密码
autoRTCAnswer: false, // RTC是否自动应答
proxyUrl: '',//代理服务地址
wsUrl: '',//webSocket 服务地址
udpUrl: '',// SIP 服务地址
stunServers: ''// ICE 服务地址
})
4)设置客户端事件处理函数
this.exportCallBackData = function(){};
getBarEvent.call(this,agentClient );
var sessionId = '';//通话标识
function getBarEvent(client){
var that = this;
agentClient.onEvent = function(event) {
if(event.EventType === 'AgentStatus_Connecting' && event.CallDetailEvent === 'CA_CALL_EVENT_OUTBOUND_ALERTING_OP'){
sessionId = event.SessionID.split(":")[0];
}
// 处理弹屏事件 内呼
if(event.EventType === 'AgentStatus_Alerting' && event.CallDetailEvent ==='CA_CALL_EVENT_ALERTING'){
sessionId = event.SessionID.split(":")[0];
}
// 咨询振铃弹屏处理
if(event.EventType === 'AgentStatus_Alerting' && event.CallDetailEvent ==='CA_CALL_EVENT_CONSULT_ALERTING_TP') {
sessionId = event.SessionID.split(":")[0];
}
//挂断后sessionID 清空
if(event.EventType === 'AgentStatus_Disconnected' && event.CallDetailEvent ==='CA_CALL_EVENT_TP_DISCONNECT') {
sessionId = '';
}
//退出停止服务
if(event.EventType === 'AgentStatus_Logout') {
sessionId = '';
agentClient.stop();
}
that.exportCallBackData(event);
}
};
5)启动坐席端服务
//启动客户端
agentClient.start();
6)停止坐席端服务
//停止客户端
agentClient.stop();