Agent Client上大部分通话无法进行录音回放,CMS上录音回放正常

发布时间:  2015-05-06 浏览次数:  201 下载次数:  0
问题描述

某局点,客户整个系统掉电重启后发现CMS录音回放正常,但是座席出现大部分通话没有"录音开始时间"和"录音结束时间",且录音下载、录音回复按钮是灰色。如下图:
Agent Client:

处理过程

分析过程
首先,需要了解CMS和Agent Client查看录音信息的原理:
CMS,直接查询trecordinfo表;
Agent Client,需要关联查询tbilllog和trecordinfo表。

此问题中,CMS查询录音记录正常且能进行录音回放,说明两件事情:
1、trecordinfo表是正常的;
2、录音文件是存在的。

而Agent Client查询通话记录存在问题,说明和tbilllog表有关。
此时又需要了解tbilllog表和trecordinfo表的入库原理:
1、trecordinfo表是在通话结束时,CCS直接通过aplogic调用存储过程写库,即trecordinfo表是CCS实时入库;
2、tbilllog表是通话结束后,CTIServer按照WAS上设置“话单长度”和“话单缓存时间”条件的往原始话单文件里写记录,然后通过的Datastation中入库任务产生。
所以,trecordinfo表和tbilllog表的产生源是不一样的。

这里可以看出两个事情:
1、tbilllog表是CTIServer产生,涉及到CTIServer、Datastation以及入库任务;而trecordinfo表是CCS产生,只涉及到CCS;
2、tbilllog中话单记录的时间,取自于主CTIServer服务器上的系统时间;trecordinfo中时间,取自于主CCS服务器上的系统时间。

通过现场获取tbilllog和trecordinfo表,确认两个表的通话记录都是存在的,且通话时长都是20秒,但是存在如下差异:tbilllog中座席服务时的CALLBEGAIN和CALLEND时间和trecordinfo中的BEGAINTIME和ENDTIME的时间相差1分30秒。

根因

为什么tbilllog表和trecordinfo表的通话开始和通话结束时间存在时间差?
再结合上述讲解的两张表的产生原理,猜测该局点此时主CCS和主CTIServer分别在不同的服务器上,且两台服务器存在1分30秒的时间差。
现场检查CTI服务运行状态,
服务器1:

服务器2:

检查两台服务器的操作系统日志/var/log/Messages,确认两台服务器都没有按照产品文档要求开启NTP时间同步。

1. CTI的两台服务器上没有进行时间同步,存在时间差;且此时主的CCS和主的CTISerer不再同一台服务器上,导致tbilllog和trecordinfo表中的时间不一致,进而影响到Agent Client的通话记录查询结果。

解决方案
步骤 1 向客户申请操作窗口,停止主备CTI所有服务(包括icdcomm进程);
步骤 2 按照产品文档要求配置NTP进行时间同步;
步骤 3 重新拉起CTI相关服务。
----结束

END