Introduction
本文描述ECE 11.6聊天的API使用事例。
Prerequisites
Requirements
Cisco 建议您了解以下主题:
Components Used
本文档中的信息基于以下软件和硬件版本:
The information in this document was created from the devices in a specific lab environment.All of the devices used in this document started with a cleared (default) configuration.如果您的网络实际,请保证您了解所有命令的潜在影响。
背景信息
eGain介绍面对能使用显示或隐藏在cutomer的网站的聊天按钮的API的用户。
聊天API可以用于以下目的:
1. 显示基于的聊天:
- 座席可用性
- 聊天的代理程序容量
- 队列深度和等待时间
- 队列深度和座席可用性
- 队列深度、等待时间和进入点状态
2. 提交自定义聊天调查。
有可以认识到与API的一些个使用案件:
- 聊天按钮可以启用或禁用的根据API回应
- 获得用户必须等待的时间,在代理程序是可用聊天前
- 查找用户的位置在队列估计用户多久必须等待,在代理程序是可用聊天前
- 写新的自定义调查为了聊天会话能捕获其它数据
座席可用性API
座席可用性API检查是否有采取任何的可用座席从特定的进入点的聊天。媒体路由域(MRD)限制适用座席可用性。推荐通过MRD配置的最佳实践部分反射正确的结果。
请求
方法 |
URL |
GET |
/chat/entrypoint/agentAvailability/id |
Note:为了寻址此API您必须使用以下格式:http://hostname/system/egain/chat/entrypoint/agentAvilability/1000
URL参数
名字 |
说明 |
类型 |
必需 |
DEFAULT值为可选参数 |
ID |
您要检查座席可用性进入点的ID |
长期 |
是 |
|
成功代码
200 :座席可用性状态返回。一种真的回应意味着代理程序是可用的。一种错误回应意味着代理程序不是可用的。
错误代码
500 :无法检索座席可用性信息。
回应正文
HTTP/1.1 200 OK
<?xml version="1.0" encoding="UTF-8" standalone="yes"/>
<agentAvailability available="true" xmlns:ns2="http://bindIngs.egain.com/chat"
xmlns:ns4="urn:ietf:params:xml:ns:xmpp-stanzas" xmlna:ns3="jabber:client"
xmlns:ns5="http://jabber.org/protocol/httpbind"/>
代理程序容量API
此API拿来所有代理程序能力研究在队列的新的聊天活动被映射对特定进入点。它返回区别在所有代理程序能采取和所有代理程序当前负载在进入点的队列的最大载荷(CTL)之间。
请求
方法 |
URL |
GET |
/chat/entrypoint/capacity/id |
Note:为了寻址此API您必须使用以下格式: http://hostname/system/egain/chat/entrypoint/capacity/1000
URL参数
名字 |
说明 |
类型 |
必需 |
DEFAULT值为可选参数 |
ID |
您要检查代理程序容量进入点的ID |
长期 |
是 |
|
成功代码
200 :代理程序剩余容量进入点的返回。正数反射剩余容量。零意味着或者没有在系统的可用座席,或者所有代理程序工作对他们的最大载荷。
错误代码
500 :无法检索代理程序容量信息。
回应正文
HTTP/1.1 200 OK
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<availableSlots xmlns:ns2="http://bindings.egain.com/chat"
xmlns:ns4="urn:letf:params:xmlms:xmpp-smanzas"
xmlns:ns5="http://jabber.org/protocol/httbind">
<ns2:count>4</ns2:count>
</availableSlots>
队列深度和等待时间API
此API用于得到聊天的数量的详细资料等待在队列的分配和在队列的估计的等待时间。
请求
方法 |
URL |
GET |
/chat/entrypoint/liveSessionStatus/id |
Note:为了寻址此API您必须使用以下格式:http://hostname/system/egain/chat/entrypoint/liveSessionStatus/1000
URL参数
名字 |
说明 |
类型 |
必需 |
DEFAULT值为可选参数 |
ID |
您要检查队列深度和等待时间进入点的ID |
长期 |
是 |
|
成功代码
200 :队列深度和等待时间返回
错误代码
500 :无法检索队列深度和等待时间。
回应正文
HTTP/1.1 200 OK
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<sessionStatus xmlns:ns2="http://bindings.egain.com/chat"
xmlns:ns4="urn:letf:params:xmlms:xmpp-smanzas"
xmlns:ns5="http://jabber.org/protocol/httbind">
<ns2:waitTime>3.0</ns2:waitTime>
<ns2:queueDepth>1</ns2: queueDepth >
</sessionStatus>
队列深度和可用性API
此API检查聊天进入点的适用性处理根据以下条件的新的聊天活动:
- 如果有工作的任何可用座席在新请聊天活动
- 如果与该进入点产生关联的队列到达了其配置的最大值深度队列被处理的聊天即总数与队列能处理在任何特定时刻聊天的最大数量是相等的
请求
方法 |
URL |
GET |
/chat/entrypoint/checkEligibility/id |
Note:为了寻址此API您必须使用以下格式:http://hostname/system/egain/chat/entrypoint/checkEligibility/1000
URL参数
名字 |
说明 |
类型 |
必需 |
DEFAULT值为可选参数 |
ID |
您要检查适用性进入点的ID |
长期 |
是 |
|
成功代码
200 :进入点适用性返回。responseType属性能有任何一个以下值:
- 0 :与此进入点产生关联的队列能处理新的聊天
- 1 :代理程序不是可用在新的聊天工作
- 2 :最大队列深度为与特定进入点产生关联的队列被到达了,并且新的聊天不会被处理
错误代码
500 :无法检索队列深度和等待时间。
回应正文
HTTP/1.1 200 OK
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<checkEligibility xmlns:ns2="http://bindings.egain.com/chat"
xmlns:ns4="urn:letf:params:xmlms:xmpp-smanzas" xmlns:ns3="jabber:client"
xmlns:ns5="http://jabber.org/protocol/httbind" responseType=0 />
队列深度、可用性和进入点状态API
此API检查新的聊天是否可以由根据以下条件的特定聊天进入点处理:
- 聊天进入点是活跃的
- 如果有工作的任何可用座席在新请聊天活动
- 如果与该进入点产生关联的队列到达了其配置的最大值深度队列被处理的聊天即总数与队列能处理在任何特定时刻聊天的最大数量是相等的
请求
方法 |
URL |
GET |
/chat/entrypoint/chatAllowed/id |
Note:为了寻址此API您必须使用以下格式:http://hostname/system/egain/chat/entrypoint/chatAllowed/1000
URL参数
名字 |
说明 |
类型 |
必需 |
DEFAULT值为可选参数 |
ID |
您要检查进入点的ID聊天是否允许 |
长期 |
是 |
|
成功代码
200 :如果新的聊天可以由进入点处理此代码返回。这由允许的属性的值确定。此属性能有错误的值真或。如果值是错误的,属性原因能有识别前不可用的原因的其中一下面的值:
- queue_depth_reached :Maximm队列深度为与被测量的进入点产生关联的队列到达了,并且新的聊天不会被处理
- agent_not_available :代理程序不是可用在新的聊天工作
- service_not_running :代理程序分配服务不运行
- invalid_entry_point :在请求通过的进入点无效
- entry_point_inactive :在请求通过的进入点不是活跃的
- 其他:此进入点不能处理新的聊天由于其他原因
错误代码
500 :无法检索此进入点是否能处理新的聊天。
回应正文
HTTP/1.1 200 OK
<?xml version="1.0. encoding="UTF-8" standalone="yes"?>
<chatAllowed xmlns:ns2="http://bindings.egain.com/chat"
xmlns:ns4="urn:ietf:params:xml:ns:xmpp-stanzas" xmlns”ns3="jabber:client"
xmlns:ns5=:http://jabber.org/protocol/httpbind" allowed="true"/>
或者
HTTP/1.1 200 OK
<?xml version="1.0. encoding="UTF-8" standalone="yes"?>
<chatAllowed xmlns:ns2="http://bindings.egain.com/chat"
xmlns:ns4="urn:ietf:params:xml:ns:xmpp-stanzas" xmlns”ns3="jabber:client"
xmlns:ns5=:http://jabber.org/protocol/httpbind" allowed="false"
reason="entry_point_inactive"/>
自定义聊天调查API
此API可以用于提交自定义调查表显示在聊天会话结束时。
请求
方法 |
URL |
POST |
/chat/entrypoint/survey |
请求正文
名字 |
说明 |
类型 |
必需 |
问题 |
是调查的一部分显示给用户的问题 |
字符串 |
是 |
答案 |
对回答对应的问题 |
字符串 |
是 |
示例请求正文
<egainSurvey sid="1000">
<survey><question>Question 1</question> <answer>Answer 1</answer></survey>
<survey><question>Question 2</question> <answer>Answer 2</answer></survey>
<survey><question>Question 3</question> <answer>Answer 3</answer></survey>
<survey><question>Question 4</question> <answer>Answer 4</answer></survey>
</egainSurvey>
成功代码
204 :调查顺利地被提交。