轮询方式获取单座席事件
前置条件
- 座席已签入成功,如果座席已签出,则停止调用该接口
- 针对获取在某个CC-gateway上已登录的座席的相关事件。采用HTTPS方式进行长轮询获取
- 此方式能够提供单座席短连接的事件获取
- 座席签入时不携带serviceToken或callBackUri
场景描述
轮询方式获取单座席事件。
座席没有事件时,这个接口需要10s才会有返回,如果有事件,则立即返回。请参考配置agentgateway/WEB-INF/config/basic.properties。
AGENT_POLL_WAIT_FLAG = ON //是否等待事件,ON表示启动,没有事件时,10s后,服务端返回响应
AGENT_POLL_WAIT_TIMES = 100 // 没有事件时,最大等待100次
AGENT_POLL_WAIT_INTERVAL = 100 //每次等待时间,单位毫秒
注:业务在调用该接口时,等待请求响应后,间隔200ms~500ms,再次调用该接口获取事件。
接口方法
设置成“GET”。该接口仅支持GET方法,不支持PUT、POST和DELETE等方法。
接口URI
https://ip:port/agentgateway/resource/agentevent/{agentid}?calldata=XXX
其中,ip为CC-Gateway服务器地址,port为CC-Gateway服务器的HTTPS端口号。
序号 |
名称 |
参数类型 |
是否必选 |
说明 |
---|---|---|---|---|
1 |
agentid |
string |
True |
签入的座席工号。 |
2 |
calldata |
string |
False |
呼叫数据,接续条刷新场景下使用。 |
日志中的方法名
getAgentEvent
请求说明
- 消息头
表1 请求头参数说明 序号
名称
参数类型
是否必选
说明
1
Content-Type
string
True
消息主体编码方式,缺省值:application/json; charset=UTF-8
2
Guid
string
True
静态鉴权(AUTHMODE = 1)签入接口返回的Guid;动态鉴权(AUTHMODE = 2)轮询事件接口返回的Guid。
- 消息体
无
响应说明
序号 |
名称 |
参数类型 |
说明 |
---|---|---|---|
1 |
message |
string |
描述 |
2 |
retcode |
string |
错误码。取值如下: 0:成功 非0:失败 |
3 |
event |
object |
座席事件对象 该对象的参数说明请参见表3。 |
序号 |
名称 |
参数类型 |
说明 |
---|---|---|---|
3.1 |
eventType |
string |
事件类型,参考事件 |
3.2 |
workNo |
string |
座席工号 |
3.3 |
content |
object |
事件内容对象,根据不同的事件,其相关的定义也不同 |
触发事件
- 无
错误结果码
- 000-001
- 000-003
- 100-006
注:出现如上的失败原因码,需要将座席签出(或设置为签出态),停止轮询事件获取;直到再进行签入。
另外,在HTTPS的响应说明中,如果Status Code出现非“200 OK”的原因码,则轮询时间间隔需要间隔1秒以上,避免死循环出现,对中间网络设备产生影响,或是被拦截。
报文样例
- 消息头
Content-Type:application/json; charset=UTF-8 Guid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.AgentGateway1
- 请求参数
无
- 响应参数
{ "message": "", "retcode": "0", "event": { "eventType": "AgentOther_InService", "workNo": "291", "content": null } }