当线索进入数据库以后,一般都是根据业务的实际情况进行分配。可以按组或者人员轮分以及比例随机。
当根据在线客服状况进行分配时需要维护一个客服在线状态。最直接的方法是程序直接访问数据库,生成一个最后一个在线时间类似http的轮训访问。一般200左右的在线量是没有问题的,当人数进一步增加时对数据访问的开销是比较大的。这时候需要一个缓存池,客户端通过缓存池来隔离客户端和数据的客服列表。
当线索少的时候为了提高转化,一般会限制新人的对话量。需要在程序里进一步判断在线客服的对话条件。基本上中小公司完全够用。
以下是C#的代码
var isNotExists = string.IsNullOrEmpty(_lastKefu) || !kfOnline.Any(_ => _.Account.IsEqual(_lastKefu));
sbLogInfo.Append("【平均分配】上一条客服:").Append(_lastKefu).Append(" || 不存在=").Append(isNotExists).AppendLine().Append("在线客服数=").Append(kfOnline.Count).AppendLine();
foreach (T_AccountPersonal p in kfOnline)
{
sbLogInfo.Append(" ").Append(p.Account).Append(",").Append(p.UserName).AppendLine();
}
kfOnline1 = isNotExists ? kfOnline[FDL.Library.Numeric.RandomNumber.Between(0, kfOnline.Count - 1)] : GetListNextValue(kfOnline, _ => kfOnline[_].Account, _lastKefu);
页面更新:2024-04-16
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号