官网友情链接: wechatapi.net

微信智能客服进入多人协作以后,经常会出现一个问题:

在这里插入图片描述

同一个客户问题,两个客服同时看到。

客服A点击接管。

客服B几乎同时也点击。

如果系统没有并发控制,两个人都进入“处理中”。

A发一句。

B也发一句。

客户收到两个不同答案。

这比机器人重复回复更加尴尬。

所以微信二次开发中的人工接管不能只是:

handoff = true。

还需要“接管锁”。

WechatApi 可以作为个人微信API接入层,把客户消息、群聊和会话送入业务系统,本地客服系统负责接管锁、负责人、超时和转移。

一、接管锁解决什么问题

确保同一个会话同一时间只有一个主处理人。

其他客服可以:

查看;
协助。

但不能同时拥有主回复权。

二、一个具体例子

客户C发:

“登录一直失败。”

任务进入公共客服池。

A和B都打开。

A在10:00:01点击接管。

B在10:00:01.2也点击。

数据库使用原子更新:

owner is null → A。

A成功。

B收到:

“该会话已由A接管。”

这就是锁。

三、不能只在前端按钮变灰

两个浏览器并发时,前端控制不可靠。

必须由服务端原子操作。

例如数据库条件更新或分布式锁。

四、锁要有lease

客服A接管后电脑断网。

如果永久锁住,客户没人处理。

所以锁可以有:

lease_until。

客服工作台持续续租。

长时间没有活动:

锁自动释放或进入异常。

五、人工回复可以续租

A每次查看或发送消息:

延长lease。

表示仍然在处理。

六、锁超时不能直接随机分配

超时后:

先通知A;
再进入公共池;
或者分配备用负责人。

具体按业务配置。

七、WechatApi 在这里的位置

WechatApi 负责:

微信消息;
会话;
客户。

客服系统负责:

接管锁;
人工负责人;
超时;
转移。

八、群聊接管粒度要更细

不要锁整个群。

可以锁:

群 + 客户 + 问题会话。

否则A处理一个客户,会阻止其他客服处理群里另一个问题。

九、机器人也要尊重人工锁

存在有效人工接管锁:

普通自动回复暂停。

但后台风险识别继续运行。

十、主管可以强制转移

A临时离开。

主管把会话转给B。

记录:

原负责人;
新负责人;
原因。

十一、协助人和主负责人分开

技术人员可以作为协助人查看和给内部建议。

但客户可见回复仍由主负责人控制。

十二、锁冲突日志

谁尝试接管;
谁成功;
谁失败;
什么时候。

后续可以分析客服协作。

十三、锁和工单负责人不一定相同

微信会话客服A。

技术工单负责人C。

两者独立。

不要强制同步。

十四、接管完成要主动释放

问题关闭。

释放锁。

会话恢复自动化或关闭。

不要一直等超时。

十五、异常

锁超过2小时但无任何回复。

进入异常中心。

主管检查。

十六、权限

普通客服接管自己队列。

主管强制转移。

管理员配置lease时间。

十七、数据看板

平均接管时间;
锁超时;
转移次数;
并发冲突;
人工处理时长。

十八、总结

微信二次开发进入多人客服场景以后,“转人工”并不意味着问题自动解决。

WechatApi 可以把客户会话稳定送入系统。

本地客服层还要通过:

接管锁;
lease;
续租;
超时;
强制转移;
机器人静默;

保证一个客户问题在同一时间由明确负责人处理。

没有接管锁,多客服系统很容易从“协作”变成“抢话”。

只有人工责任边界清晰,微信智能客服才能真正实现机器人和人工、多个人工之间的稳定协作。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐