本文档介绍了 CCAI Platform 中使用的通话和聊天原因代码和状态。
入住状态
| 可用时间 | 客服人员处于空闲状态且准备好处理互动的时间总和。 |
| 登录时间 | 客服人员登录的总时长。 |
| 收尾时间 | 客服人员在结束互动后处于收尾状态的总时长。 |
| 休息时间 | 客服人员处于“休息”状态的总时长。 |
| 空闲时间 | 客服人员处于“空闲”状态的总时长。 |
| 通话时间 | 客服人员处理通话的总时长。 |
| 聊天时长 | 客服人员处理对话的总时长。 |
| 用餐时间 | 客服人员处于“用餐”状态的总时长。 |
| 未接电话时间 | 客服人员处于“未接电话”状态的总时长。 |
| Missed Chat Time | 客服人员处于“漏接聊天”状态的总时长。 |
| 离线时间 | 客服人员处于退出状态的总时长。 |
| 特殊任务时间 | 客服人员处于“特殊任务”状态的总时长。 |
| 不可用时间 | 客服人员处于“不可用”状态的总时长。 |
| 无响应时间 | 客服人员处于“无响应”状态的总时长。 |
查看并识别失败原因代码
此页面可帮助您确定:
您可以查看以下失败原因代码:
通话失败原因
| 代码 | 指标名称 | 说明 |
|---|---|---|
| nothing: 0 | 无错误 - 通话 | 未失败的调用总数。 |
| 未知:10001 | 未知 - 通话 | 因未知原因而失败的通话总数。 |
| expired: 11001 | 已过期 - 通话 | 因连接超时而失败的调用总数。 |
| transfer_expired: 11002 | 转移已过期 | 因转移连接超时而失败的调用总数。 |
| eu_canceled: 20001 | 已取消 | 最终用户在连接到代理时挂断的通话总数。 |
| eu_rejected: 20002 | 已遭拒 | 最终用户拒绝的外拨电话总数。 |
| eu_abandoned: 20003 | 已弃用 | 最终用户在排队等待期间放弃的通话总数。 |
| eu_in_menu_abandoned: 20004 | 在菜单中放弃 | 最终用户在 IVR 菜单中放弃的通话总数。 |
| eu_repeated_voicemail: 20005 | 重复的语音信息 |
因最终用户已留下语音留言等待回复而失败的通话总数。 如需详细了解语音信息设置,请参阅非工作时间来电和聊天转移。 |
| eu_repeated_callback: 20006 | 重复回调 | 因最终用户已请求回拨而失败的通话总数。 |
| eu_busy: 21001 | 忙碌 | 最终用户处于忙碌状态时接到的外拨电话总数。 |
| eu_wrong_number: 21002 | Wrong Number | 拨打无效手机号码的外拨手机总数。 |
| eu_no_answer: 21003 | No Answer | 最终用户未接听的外拨电话总数。 |
| eu_noti_failed: 22001 | 通知失败 | 因客服人员未启用浏览器通知而未转接给客服人员的来电总数。 |
| ag_canceled: 30001 | 智能体已取消 | 在连接到客服人员时失败的通话总数。可能的原因包括客服人员关闭了浏览器或出现网络连接错误。 |
| ag_hung_up_to_callback: 30002 | 通话状态 | 人工客服因音频质量差或网络问题而挂断电话,并打算回拨。 |
| ag_ignored: 30002 | 已忽略代理 | 客服人员未接听的来电总数。 |
| ag_mic_no_device: 31001 | Agent No Mic | 因客服人员没有麦克风而失败的通话总数。 |
| ag_mic_denied: 31002 | 代理麦克风权限被拒 | 因客服人员未启用麦克风访问权限而失败的通话总数。 |
| ag_called_blocked_num 32002 | 代理拨打了屏蔽的号码 | 消费者正在屏蔽该通话。 |
| 无法接通所拨打的手机号码 32003 | 代理连接超时 | 因客服人员的设备失去网络连接或未能向服务器注册而导致连接失败的通话总数。 |
| voip_twilio_error: 41001 | VOIP 错误 | 因语音服务提供商问题而失败的通话总数。 |
| voip_tokbox_error: 42001 | VOIP 错误 | 因 Tokbox 语音提供商问题而失败的通话总数。 |
| voip_invalid_token: 43001 | VOIP 令牌无效 | 因语音提供商提供的令牌无效而失败的通话总数。 |
| voip_conn_general: 44001 | VOIP 常规 | 因一般语音服务提供商问题而失败的通话总数。 |
| voip_conn_timeout: 44002 | VOIP 超时 | 因语音服务提供商连接超时而失败的通话总数。 |
| voip_conn_signal: 44003 | VOIP 信号 | 因与语音服务提供商的连接不佳而失败的通话总数。 |
| voip_nexmo_error: 45001 | VOIP 错误 | 因 Nexmo 语音提供商出现问题而失败的通话总数。 |
| stuck_due_to_api_error: 50001 | 因 API 而卡住 | 因 API 问题而失败的调用总数。 |
| group_deleted_no_substitute: 50002 | 群组已删除 - 通话 | 因级联组被删除且没有可用的替代方案而失败的通话总数。 |
| menu_deleted: 50003 | 菜单已删除 | 在最终用户进入队列后,因队列被删除而失败的通话总数。 |
| direct_pstn_call_to_fallback_number: 60001 | 定向到后备广告 | 转接到备用号码的来电总数。 |
Chat 失败原因
| 代码 | 指标名称 | 说明 |
| nothing: 0 | 无错误 - Chat | 未失败的对话总数。 |
| 未知:1 | 未知 -Chat | 因未知原因而失败的对话总数。 |
| no_response: 2 | 无回复 | 因最终用户未回复而结束的对话总数。 |
| 已过期:3 | 已过期 - Chat | 因连接超时而失败的对话总数。 |
| after_hours: 4 | 会后活动 | 在营业时间以外进入队列的聊天总数。 |
| expired_menu_selection: 31 | 已过期的菜单 | 最终用户选择了已不存在的队列的聊天总数。 |
| end_user_opt_out: 41 | 已停用 | 最终用户选择不录制的对话总数。 |
| over_cap_email: 50001 | Overcapacity Email | 因队列处于超负荷状态而导致最终用户发送电子邮件的聊天总数。 |
| group_deleted_no_substitute: 60001 | 群组已删除 -Chat | 因级联群组被删除且没有可用的替代群组而失败的聊天总数。 |
数据字典 - 示例 API 和计算脚本
以下是示例 API 和计算脚本。
示例 API 和计算脚本
这是一个示例脚本,可以运行该脚本来试用管理员门户信息中心内存在的几个 CCAI Platform 指标。 它举例说明了如何检索和计算任何指标。
该示例详细介绍了如何定义变量、函数和计算脚本,以计算总通话量和服务水平。
变量
通话数组:添加一个设置为变量 callsArray 的通话数组。
Call types:CCAI Platform 中存在的所有通话类型的数组。
//您可以从此数组中移除元素,以便仅测试特定类型调用的指标;例如:
Total hours:总小时数变量。根据请求中的参数计算小时差。
SLA:使用管理员门户中配置的阈值计算。将变量更改为配置的金额。此示例显示了 60 秒的 SLA;例如:
函数
通话记录函数://checkCallRecord 旨在验证通话记录是否处于正确状态、是否未以某种方式失败,以及在某些情况下,连接是否为 null;
总通话量函数:getTotalVolumeOfCalls 旨在返回总通话量,例如:
服务等级函数:getServiceLevel 旨在返回来电类型的服务等级,例如:
计算脚本
计算脚本示例。
对于总成交量:
// TOTAL VOLUME SECTION
for(var i = 0; i\<call_type.length;i++){
var vol = getTotalVolumeOfCalls(callsArray,call_type\[i\]);
if(vol \> 0){
var volPerHour = Math.round(vol/total_hours\*10)/10
var stringToPrint = \"the per hour volume of \"+call_type\[i\]+\" is \"+
volPerHour.toString()
console.log(stringToPrint);
};
}
对于 SLA:
// SLA SECTION
for(var i = 0;i\<call_type.length;i++){
var SLACalc =
(getServiceLevel(callsArray,call_type\[i\])/getTotalVolumeOfCalls(callsArray,call_type\[i\],false,\['eu_in_menu_abandoned'\]));
if (isNaN(SLACalc) == false){
var stringToPrint = \"the SLA of \"+call_type\[i\]+\" is \"+
SLACalc.toString();
console.log(stringToPrint);
} else {
var stringToPrint = \"the SLA of \"+call_type\[i\]+\" cannot be
calculated due to lack of volume\";
console.log(stringToPrint);
}
};
Chat 状态定义
常见聊天状态
| Chat 状态 | 说明 |
| 已加入队列 | Chat 正在排队,等待客服人员 |
| 已分配 | Chat 已分配给客服人员 |
| 正在进行 | 客服人员和最终用户正在进行 Chat |
| 已完成 | Chat 已成功结束(结束原因如下所列) |
| 已弃用 | 最终用户在聊天分配给客服人员之前取消了 Chat |
| 折射 | Chat 已取消,并转到“超出容量”电子邮件 |
| 失败 | Chat 失败(失败原因已列出) |
Chat 结束状态
| 已完成的聊天状态 | 说明 |
|---|---|
| 已完成 | Chat 已成功结束,没有其他信息 |
| 已结束:由客服人员断开连接 | Chat 已结束,客服人员已断开连接 |
| 已完成:由最终用户断开连接 | Chat 已结束,由最终用户断开连接 |
| 已完成:无消息 | Chat 已结束,未收到回复 |
| 已完成:没有被代理断开连接的消息 | Chat 已结束,没有收到回复,客服人员已断开连接 |
| 已完成:没有消息被最终用户断开连接 | Chat 已结束,没有收到回复,最终用户已断开连接 |
| 超时:智能体超时,未发送消息 | 聊天超时,且客服人员在处理聊天时从未发送过消息。对于从虚拟客服升级而来的聊天,系统只会统计人工客服的消息。 |
| 超时:最终用户超时,未发送任何消息 | 聊天超时,且最终用户在聊天期间(包括在转接给人工客服之前与虚拟客服对话时)从未发送过任何消息。如果最终用户在对话早期至少发送了一条消息,然后不再回复,则对话会被记录为“超时:最终用户停止响应”。 |
| 超时:智能体停止响应 | 聊天超时,而最近一条未回复的消息来自最终用户;代理之前回复过,但后来停止了。 |
| 超时:最终用户停止响应 | 最终用户停止响应后,聊天超时。最终用户在聊天中至少发送了一条消息(发送给虚拟客服人员或人工客服人员),然后便不再回复。 |
Chat 结束原因值(BigQuery 对话导出)
| 值 | 定义 |
|---|---|
| 0 | 没有具体的完成原因。显示的状态(“已完成”/“已完成:由客服人员断开连接”/“已完成:由最终用户断开连接”)由 disconnected_by 列决定(0 = 未知,1 = 客服人员,2 = 最终用户)。 |
| 1 | 无回复。对应于“Finished: No Messages”状态,并与 disconnected_by 结合使用(如前所述)。 |
| 2 | 超时:智能体超时,未发送消息 |
| 3 | 超时:智能体停止响应 |
| 4 | 超时:智能体停止响应 |
| 5 | 超时:最终用户停止响应 |
| 6 | 最终用户选择停用(例如,通过短信回复“STOP”) |
| 7 | 消费者确认安全超时 |
| 8 | Chat 由 API 编排结束(直接访问点 end_chat 结果) |
Chat 失败原因
| 失败原因 | 定义 |
|---|---|
| 失败 | 由于未知原因,Chat 会话失败 |
| 已过期 | Chat 在队列中过期,未被客服人员接听 |
通话状态定义
通话效果历史记录报告中可能会显示以下通话状态。
| 通话状态 | 说明 |
|---|---|
| 已弃用 | 通话在队列中等待,但在客服人员接听之前被呼叫者挂断。不包括菜单内放弃和短时间放弃。 |
| 繁忙 | 最终用户忙 |
| 已取消 | 最终用户取消了通话 |
| 已完成 | 调用成功完成,未出现任何错误 |
| 错误 | 调用有错误 |
| 失败 | 通话因错误而结束。包含失败原因,以便提供更多背景信息。 |
| No Answer | 最终用户未回答 |
| 已恢复 | 回拨失败的通话。新通话是原始通话的子通话。包括回调是否在没有错误的情况下完成。 |