Built motion from commit (unavailable).|2.5.21
[motion2.git] / server / services / ami / report / voiceCallReport.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x1a0b=['newchannel','syncNewChannel','newstate','syncVarSet','hangup','syncHangup','newcallerid','syncNewCallerId','attendedtransfer','syncAttendedTransfer','blindtransfer','musiconholdstart','musiconholdstop','syncMusicOnHoldStop','[voiceCallReport][coreshowchannels]\x20started','actionCoreShowChannels','[voiceCallReport][coreshowchannels]','prototype','isNotNull','emit','info','uniqueid','calleridname','calleridnum','debug','[%s][voiceCallReport][newcallerid]\x20event:','pick','keys','error','[%s][voiceCallReport][newcallerid]','inspect','[%s][voiceCallReport][newchannel]\x20event:','linkedid','OutgoingSpoolFailed','isUndefined','exten','starttime','format','YYYY-MM-DD\x20HH:mm:ss','disposition','toNumber','channelstate','merge','context','from-sip','channel','split','destconnectedlinenum','[%s][voiceCallReport][newchannel]\x20sending\x20user:agentconnect\x20event:','user:%s','user:agentconnect','accountcode','[%s][voiceCallReport][newchannel]','application','toLowerCase','appdata','[%s][voiceCallReport][newexten]\x20application:%s\x20appdata:%s','duration','subtract','seconds','lastapplication','applicationdata','startsWith','cdr(','[%s][voiceCallReport][newexten]','syncNewState','[%s][voiceCallReport][newstate]\x20linkedid:%s\x20calleridname:%s\x20calleridnum:%s','[%s][voiceCallReport][newstate]\x20event:','answered','answertime','diff','connectedlinenum','connectedlinename','destinationchannel','UserId','membername','name','[%s][voiceCallReport][newstate]','[%s][voiceCallReport][mixMonitorFilename]\x20monitorFilename:%s','monitor','endsWith','.wav49','replace','.WAV','find','isNil','monitors','push','[%s][voiceCallReport][mixMonitorFilename]','variable','mixmonitor_filename','[%s][voiceCallReport][varset]\x20variable:mixmonitor_filename\x20value:%s','syncMixMonitorFilename','value','xmd-phone','[%s][voiceCallReport][varset]\x20variable:xmd-phone\x20value:%s','xmd-callerid','[%s][voiceCallReport][varset]\x20variable:xmd-callerid\x20value:%s','callerid','xmd-cdrtype','[%s][voiceCallReport][varset]\x20variable:xmd-cdrtype\x20value:%s','xmd-queue','[%s][voiceCallReport][varset]\x20variable:xmd-queue\x20value:%s','xmd-originatecalleridnum','originatecalleridnum','[%s][voiceCallReport][varset]\x20variable:xmd-destination\x20value:%s','xmd-callerid-preview','[%s][voiceCallReport][varset]\x20variable:xmd-callerid-preview\x20value:%s','calleridpreview','xmcs-queue','sipcallid','[%s][voiceCallReport][varset]\x20variable:sipcallid\x20value:%s','sipcalluniqueid','sipcalllinkedid','[%s][voiceCallReport][varset]','[%s][voiceCallReport][hangup]\x20event:','[%s][voiceCallReport][hangup]\x20reason:%s','cause-txt','endtime','billableseconds','holdtime','omit','[%s][voiceCallReport][hangup]\x20sending\x20user:agentcomplete\x20event:','user:agentcomplete','BlindTransfer','type','outbound','[%s][voiceCallReport][hangup]\x20sending\x20hangup\x20event:','custom:voiceCallReport','[%s][voiceCallReport][hangup]','[%s][voiceCallReport][attendedtransfer]\x20transfercalleridnum:%s\x20transferconnectedlinenum:%s','origtransferercalleridnum','transfertargetcalleridnum','[%s][voiceCallReport][attendedtransfer]\x20event:','transfereeuniqueid','transferconnectedlinenum','secondtransfereruniqueid','transfertargetuniqueid','transfercalleridnum','origtransfereruniqueid','syncBlindTransfer','[%s][voiceCallReport][blindtransfer]\x20transfercalleridnum:%s\x20transferconnectedlinenum:%s','transfereecalleridnum','[%s][voiceCallReport][blindtransfer]\x20event:','extension','transfererchannel','[%s][voiceCallReport][blindtransfer]','syncMusicOnHoldStart','[%s][voiceCallReport][musiconholdstart]\x20event:','mohstarttime','[%s][voiceCallReport][musiconholdstart]\x20mohstarttime:%s','[%s][voiceCallReport][musiconholdstart]','[%s][voiceCallReport][musiconholdstop]\x20event:','milliseconds','[%s][voiceCallReport][musiconholdstop]\x20mohtime:%s','mohtime','[%s][voiceCallReport][musiconholdstop]','exports','bluebird','moment','util','path','ioredis','../../../config/logger','../model/channel','not_inuse','inuse','busy','invalid','unavailable','ringing','ringinuse','onhold','set','queue','agi','dial','playback','voicemail','NO\x20ANSWER','FAILED','ANSWERED','defaults','redis','localhost','socket.io-emitter','channels','agents','blindTransfers','syncNewExten','bind'];(function(_0x40538a,_0x3c0b0d){var _0x384c37=function(_0x272560){while(--_0x272560){_0x40538a['push'](_0x40538a['shift']());}};_0x384c37(++_0x3c0b0d);}(_0x1a0b,0x15d));var _0xb1a0=function(_0xd166f6,_0x10e605){_0xd166f6=_0xd166f6-0x0;var _0x34f1ed=_0x1a0b[_0xd166f6];return _0x34f1ed;};'use strict';var BPromise=require(_0xb1a0('0x0'));var _=require('lodash');var moment=require(_0xb1a0('0x1'));var util=require(_0xb1a0('0x2'));var path=require(_0xb1a0('0x3'));var Redis=require(_0xb1a0('0x4'));var config=require('../../../config/environment');var logger=require(_0xb1a0('0x5'))('ami');var ami=require('../ami');var Channel=require(_0xb1a0('0x6'));var statusDesc=['unknown',_0xb1a0('0x7'),_0xb1a0('0x8'),_0xb1a0('0x9'),_0xb1a0('0xa'),_0xb1a0('0xb'),_0xb1a0('0xc'),_0xb1a0('0xd'),_0xb1a0('0xe')];var applications=[_0xb1a0('0xf'),_0xb1a0('0x10'),_0xb1a0('0x11'),_0xb1a0('0x12'),_0xb1a0('0x13'),_0xb1a0('0x14')];var dispositions=[_0xb1a0('0x15'),_0xb1a0('0x16'),_0xb1a0('0x16'),_0xb1a0('0x15'),_0xb1a0('0x15'),_0xb1a0('0x15'),_0xb1a0('0x17'),'BUSY','FAILED',_0xb1a0('0x16'),_0xb1a0('0x16')];var actions={};config['redis']=_[_0xb1a0('0x18')](config[_0xb1a0('0x19')],{'host':_0xb1a0('0x1a'),'port':0x18eb});var io=require(_0xb1a0('0x1b'))(new Redis(config[_0xb1a0('0x19')]));function VoiceCallReport(_0x150050){this['channels']=_0x150050[_0xb1a0('0x1c')];this[_0xb1a0('0x1d')]=_0x150050[_0xb1a0('0x1d')];this[_0xb1a0('0x1e')]={};ami['on']('coreshowchannel',this[_0xb1a0('0x1f')]['bind'](this));ami['on']('newexten',this['syncNewExten'][_0xb1a0('0x20')](this));ami['on'](_0xb1a0('0x21'),this[_0xb1a0('0x22')][_0xb1a0('0x20')](this));ami['on'](_0xb1a0('0x23'),this['syncNewState'][_0xb1a0('0x20')](this));ami['on']('varset',this[_0xb1a0('0x24')][_0xb1a0('0x20')](this));ami['on'](_0xb1a0('0x25'),this[_0xb1a0('0x26')]['bind'](this));ami['on'](_0xb1a0('0x27'),this[_0xb1a0('0x28')][_0xb1a0('0x20')](this));ami['on'](_0xb1a0('0x29'),this[_0xb1a0('0x2a')][_0xb1a0('0x20')](this));ami['on'](_0xb1a0('0x2b'),this['syncBlindTransfer'][_0xb1a0('0x20')](this));ami['on'](_0xb1a0('0x2c'),this['syncMusicOnHoldStart'][_0xb1a0('0x20')](this));ami['on'](_0xb1a0('0x2d'),this[_0xb1a0('0x2e')][_0xb1a0('0x20')](this));try{logger['info'](_0xb1a0('0x2f'));ami[_0xb1a0('0x30')]();}catch(_0x474e4e){logger['error'](_0xb1a0('0x31'),util['inspect'](_0x474e4e,{'showHidden':![],'depth':null}));}}VoiceCallReport[_0xb1a0('0x32')][_0xb1a0('0x33')]=function(_0x170553){return _0x170553!==null&&!_['isUndefined'](_0x170553);};VoiceCallReport['prototype']['emit']=function(_0x1f454b,_0x4568de,_0x392c57){io['to'](_0x1f454b)[_0xb1a0('0x34')](_0x4568de,_0x392c57);};VoiceCallReport[_0xb1a0('0x32')][_0xb1a0('0x28')]=function(_0x12639d){try{if(this[_0xb1a0('0x33')](_0x12639d)){logger[_0xb1a0('0x35')]('[%s][voiceCallReport][newcallerid]\x20calleridname:%s\x20calleridnum:%s',_0x12639d[_0xb1a0('0x36')],_0x12639d[_0xb1a0('0x37')],_0x12639d[_0xb1a0('0x38')]);logger[_0xb1a0('0x39')](_0xb1a0('0x3a'),_0x12639d[_0xb1a0('0x36')],util['inspect'](_0x12639d,{'showHidden':![],'depth':null}));if(_0x12639d[_0xb1a0('0x36')]===_0x12639d['linkedid']){if(!_['isUndefined'](this[_0xb1a0('0x1c')][_0x12639d[_0xb1a0('0x36')]])){_['merge'](this[_0xb1a0('0x1c')][_0x12639d['uniqueid']],_[_0xb1a0('0x3b')](_0x12639d,_[_0xb1a0('0x3c')](this[_0xb1a0('0x1c')][_0x12639d[_0xb1a0('0x36')]])));}}}}catch(_0x35b531){logger[_0xb1a0('0x3d')](_0xb1a0('0x3e'),_0x12639d[_0xb1a0('0x36')],util[_0xb1a0('0x3f')](_0x35b531,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0xb1a0('0x32')][_0xb1a0('0x22')]=function(_0x218f1b){try{if(this[_0xb1a0('0x33')](_0x218f1b)){logger['debug'](_0xb1a0('0x40'),_0x218f1b[_0xb1a0('0x36')],util[_0xb1a0('0x3f')](_0x218f1b,{'showHidden':![],'depth':null}));if(_0x218f1b['uniqueid']===_0x218f1b[_0xb1a0('0x41')]&&_0x218f1b['channel']!=_0xb1a0('0x42')){if(_[_0xb1a0('0x43')](this[_0xb1a0('0x1c')][_0x218f1b[_0xb1a0('0x36')]])){logger['info']('[%s][voiceCallReport][newchannel]\x20context:%s\x20exten:%s',_0x218f1b[_0xb1a0('0x36')],_0x218f1b['context'],_0x218f1b[_0xb1a0('0x44')]);this[_0xb1a0('0x1c')][_0x218f1b['uniqueid']]=new Channel();this['channels'][_0x218f1b['uniqueid']][_0xb1a0('0x45')]=moment()[_0xb1a0('0x46')](_0xb1a0('0x47'));this[_0xb1a0('0x1c')][_0x218f1b['uniqueid']][_0xb1a0('0x48')]=dispositions[_[_0xb1a0('0x49')](_0x218f1b[_0xb1a0('0x4a')])];_[_0xb1a0('0x4b')](this[_0xb1a0('0x1c')][_0x218f1b[_0xb1a0('0x36')]],_[_0xb1a0('0x3b')](_0x218f1b,_['keys'](this[_0xb1a0('0x1c')][_0x218f1b['uniqueid']])));if(_0x218f1b[_0xb1a0('0x4c')]===_0xb1a0('0x4d')){if(this[_0xb1a0('0x1d')][_0x218f1b[_0xb1a0('0x4e')][_0xb1a0('0x4f')]('-')[0x0]]){this[_0xb1a0('0x1d')][_0x218f1b['channel'][_0xb1a0('0x4f')]('-')[0x0]][_0xb1a0('0x50')]=_0x218f1b[_0xb1a0('0x44')];logger[_0xb1a0('0x39')](_0xb1a0('0x51'),_0x218f1b[_0xb1a0('0x36')],util[_0xb1a0('0x3f')]({'destaccountcode':this['agents'][_0x218f1b[_0xb1a0('0x4e')][_0xb1a0('0x4f')]('-')[0x0]]['accountcode'],'destconnectedlinenum':_0x218f1b[_0xb1a0('0x44')]},{'showHidden':![],'depth':null}));this['emit'](util[_0xb1a0('0x46')](_0xb1a0('0x52'),this[_0xb1a0('0x1d')][_0x218f1b[_0xb1a0('0x4e')][_0xb1a0('0x4f')]('-')[0x0]]['name']),_0xb1a0('0x53'),{'destaccountcode':this[_0xb1a0('0x1d')][_0x218f1b[_0xb1a0('0x4e')][_0xb1a0('0x4f')]('-')[0x0]][_0xb1a0('0x54')],'destconnectedlinenum':_0x218f1b[_0xb1a0('0x44')]});}}}}}}catch(_0x5a5ae1){logger[_0xb1a0('0x3d')](_0xb1a0('0x55'),_0x218f1b[_0xb1a0('0x36')],util['inspect'](_0x5a5ae1,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0xb1a0('0x32')]['syncNewExten']=function(_0x56d641){try{if(this['isNotNull'](_0x56d641)){logger[_0xb1a0('0x39')]('[%s][voiceCallReport][newexten]\x20event:',_0x56d641[_0xb1a0('0x36')],util[_0xb1a0('0x3f')](_0x56d641,{'showHidden':![],'depth':null}));if(_0x56d641[_0xb1a0('0x36')]===_0x56d641[_0xb1a0('0x41')]&&_0x56d641[_0xb1a0('0x44')]!='h'&&_0x56d641[_0xb1a0('0x4e')]!=_0xb1a0('0x42')){_0x56d641[_0xb1a0('0x56')]=_0x56d641['application'][_0xb1a0('0x57')]();_0x56d641['applicationdata']=(_0x56d641[_0xb1a0('0x58')]||_0x56d641['applicationdata'])[_0xb1a0('0x57')]();logger[_0xb1a0('0x35')](_0xb1a0('0x59'),_0x56d641['uniqueid'],_0x56d641[_0xb1a0('0x56')],_0x56d641['applicationdata']);if(_['isUndefined'](this['channels'][_0x56d641[_0xb1a0('0x36')]])){this[_0xb1a0('0x1c')][_0x56d641[_0xb1a0('0x36')]]=new Channel();this[_0xb1a0('0x1c')][_0x56d641[_0xb1a0('0x36')]][_0xb1a0('0x45')]=_0x56d641[_0xb1a0('0x5a')]?moment()[_0xb1a0('0x5b')](moment[_0xb1a0('0x5a')](_0x56d641[_0xb1a0('0x5a')])[_0xb1a0('0x5c')](),_0xb1a0('0x5c'))[_0xb1a0('0x46')](_0xb1a0('0x47')):moment()[_0xb1a0('0x46')](_0xb1a0('0x47'));this[_0xb1a0('0x1c')][_0x56d641['uniqueid']][_0xb1a0('0x48')]=_0xb1a0('0x15');}_['merge'](this[_0xb1a0('0x1c')][_0x56d641[_0xb1a0('0x36')]],_[_0xb1a0('0x3b')](_0x56d641,_[_0xb1a0('0x3c')](this[_0xb1a0('0x1c')][_0x56d641[_0xb1a0('0x36')]])));if(_['includes'](applications,_0x56d641[_0xb1a0('0x56')])){this['channels'][_0x56d641['uniqueid']][_0xb1a0('0x5d')]=_0x56d641[_0xb1a0('0x56')];this[_0xb1a0('0x1c')][_0x56d641[_0xb1a0('0x36')]]['lastdata']=_0x56d641[_0xb1a0('0x5e')];if(_0x56d641[_0xb1a0('0x56')]===_0xb1a0('0xf')&&_[_0xb1a0('0x5f')](_0x56d641[_0xb1a0('0x5e')],_0xb1a0('0x60'))){var _0x5fe89d=_0x56d641[_0xb1a0('0x5e')][_0xb1a0('0x4f')]('=');var _0x3b8e17=_0x5fe89d[0x0]['match'](/cdr\((.*)\)/);if(_0x3b8e17){this[_0xb1a0('0x1c')][_0x56d641[_0xb1a0('0x36')]][_0x3b8e17[0x1]]=_0x5fe89d[0x1];}}else if(_0x56d641['application']===_0xb1a0('0x10')){this[_0xb1a0('0x1c')][_0x56d641['uniqueid']]['queue']=_0x56d641[_0xb1a0('0x5e')][_0xb1a0('0x4f')](',')[0x0];}}}}}catch(_0x45c43c){logger[_0xb1a0('0x3d')](_0xb1a0('0x61'),_0x56d641[_0xb1a0('0x36')],util[_0xb1a0('0x3f')](_0x45c43c,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0xb1a0('0x32')][_0xb1a0('0x62')]=function(_0x30db37){try{if(this[_0xb1a0('0x33')](_0x30db37)){logger['info'](_0xb1a0('0x63'),_0x30db37[_0xb1a0('0x36')],_0x30db37[_0xb1a0('0x41')],_0x30db37[_0xb1a0('0x37')],_0x30db37['calleridnum']);logger[_0xb1a0('0x39')](_0xb1a0('0x64'),_0x30db37['uniqueid'],util[_0xb1a0('0x3f')](_0x30db37,{'showHidden':![],'depth':null}));if(_0x30db37[_0xb1a0('0x36')]!==_0x30db37[_0xb1a0('0x41')]){if(this[_0xb1a0('0x1c')][_0x30db37[_0xb1a0('0x41')]]){if(_0x30db37[_0xb1a0('0x4a')]==='6'){if(!this['channels'][_0x30db37[_0xb1a0('0x41')]]['answered']){var _0x4d9780=moment();this['channels'][_0x30db37[_0xb1a0('0x41')]][_0xb1a0('0x65')]=!![];this[_0xb1a0('0x1c')][_0x30db37[_0xb1a0('0x41')]][_0xb1a0('0x66')]=_0x4d9780[_0xb1a0('0x46')](_0xb1a0('0x47'));if(this[_0xb1a0('0x1c')][_0x30db37[_0xb1a0('0x41')]][_0xb1a0('0x45')]){this['channels'][_0x30db37[_0xb1a0('0x41')]]['holdtime']=_0x4d9780[_0xb1a0('0x67')](this[_0xb1a0('0x1c')][_0x30db37['linkedid']][_0xb1a0('0x45')],_0xb1a0('0x5c'));}}this[_0xb1a0('0x1c')][_0x30db37[_0xb1a0('0x41')]][_0xb1a0('0x41')]=_0x30db37[_0xb1a0('0x36')];if(_0x30db37['calleridnum']!=='xcally-motion-preview'){this['channels'][_0x30db37['linkedid']][_0xb1a0('0x68')]=_0x30db37[_0xb1a0('0x38')];}this['channels'][_0x30db37['linkedid']][_0xb1a0('0x69')]=_0x30db37[_0xb1a0('0x37')];this[_0xb1a0('0x1c')][_0x30db37[_0xb1a0('0x41')]][_0xb1a0('0x6a')]=_0x30db37['channel'];this[_0xb1a0('0x1c')][_0x30db37['linkedid']][_0xb1a0('0x48')]=dispositions[_['toNumber'](_0x30db37['channelstate'])];if(this[_0xb1a0('0x1d')][_0x30db37[_0xb1a0('0x4e')][_0xb1a0('0x4f')]('-')[0x0]]){this[_0xb1a0('0x1c')][_0x30db37[_0xb1a0('0x41')]][_0xb1a0('0x6b')]=this[_0xb1a0('0x1d')][_0x30db37['channel'][_0xb1a0('0x4f')]('-')[0x0]]['id'];this[_0xb1a0('0x1c')][_0x30db37[_0xb1a0('0x41')]][_0xb1a0('0x6c')]=this['agents'][_0x30db37[_0xb1a0('0x4e')]['split']('-')[0x0]][_0xb1a0('0x6d')];}}}}else{if(this[_0xb1a0('0x1c')][_0x30db37[_0xb1a0('0x36')]]){if(_0x30db37[_0xb1a0('0x4a')]==='6'){if(this[_0xb1a0('0x1d')][_0x30db37[_0xb1a0('0x4e')]['split']('-')[0x0]]){this['channels'][_0x30db37[_0xb1a0('0x36')]][_0xb1a0('0x6b')]=this[_0xb1a0('0x1d')][_0x30db37['channel']['split']('-')[0x0]]['id'];this['channels'][_0x30db37['uniqueid']][_0xb1a0('0x6c')]=this['agents'][_0x30db37[_0xb1a0('0x4e')][_0xb1a0('0x4f')]('-')[0x0]][_0xb1a0('0x6d')];}}}}}}catch(_0x545b88){logger[_0xb1a0('0x3d')](_0xb1a0('0x6e'),_0x30db37[_0xb1a0('0x36')],util[_0xb1a0('0x3f')](_0x545b88,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0xb1a0('0x32')]['syncMixMonitorFilename']=function(_0x8dbf6,_0x2b8413){try{if(this[_0xb1a0('0x1c')][_0x8dbf6]){logger['info'](_0xb1a0('0x6f'),_0x8dbf6,_0x2b8413);this['channels'][_0x8dbf6][_0xb1a0('0x70')]=!![];if(_[_0xb1a0('0x71')](_0x2b8413,_0xb1a0('0x72'))){_0x2b8413=_0x2b8413[_0xb1a0('0x73')](_0xb1a0('0x72'),_0xb1a0('0x74'));}this[_0xb1a0('0x1c')][_0x8dbf6]['monitorFilename']=_0x2b8413;var _0x49b0df=_[_0xb1a0('0x75')](this[_0xb1a0('0x1c')][_0x8dbf6]['monitors'],{'filename':_0x2b8413});if(_[_0xb1a0('0x76')](_0x49b0df)){this[_0xb1a0('0x1c')][_0x8dbf6][_0xb1a0('0x77')][_0xb1a0('0x78')]({'filename':_0x2b8413,'createdAt':moment()[_0xb1a0('0x46')]('YYYY-MM-DD\x20HH:mm:ss'),'mixmonitorid':'','status':'rec'});}}}catch(_0x20dd2f){logger['error'](_0xb1a0('0x79'),_0x8dbf6,util[_0xb1a0('0x3f')](_0x20dd2f,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0xb1a0('0x32')][_0xb1a0('0x24')]=function(_0x429833){try{if(this['isNotNull'](_0x429833)){logger[_0xb1a0('0x39')]('[%s][voiceCallReport][varset]\x20event:',_0x429833['uniqueid'],util[_0xb1a0('0x3f')](_0x429833,{'showHidden':![],'depth':null}));if(this[_0xb1a0('0x1c')][_0x429833[_0xb1a0('0x36')]]&&_0x429833[_0xb1a0('0x4e')]!='OutgoingSpoolFailed'){if(this[_0xb1a0('0x33')](_0x429833[_0xb1a0('0x7a')])){if(this[_0xb1a0('0x33')](_0x429833[_0xb1a0('0x7a')][_0xb1a0('0x7b')])){logger['info'](_0xb1a0('0x7c'),_0x429833[_0xb1a0('0x36')],_0x429833['value']);this[_0xb1a0('0x7d')](_0x429833[_0xb1a0('0x36')],_0x429833[_0xb1a0('0x7e')]);}else if(this[_0xb1a0('0x33')](_0x429833['variable'][_0xb1a0('0x7f')])){logger[_0xb1a0('0x35')](_0xb1a0('0x80'),_0x429833[_0xb1a0('0x36')],_0x429833[_0xb1a0('0x7e')]);this[_0xb1a0('0x1c')][_0x429833[_0xb1a0('0x36')]]['calleridnum']=_0x429833[_0xb1a0('0x7e')];}else if(this['isNotNull'](_0x429833[_0xb1a0('0x7a')][_0xb1a0('0x81')])){logger[_0xb1a0('0x35')](_0xb1a0('0x82'),_0x429833[_0xb1a0('0x36')],_0x429833[_0xb1a0('0x7e')]);this[_0xb1a0('0x1c')][_0x429833[_0xb1a0('0x36')]][_0xb1a0('0x83')]=_0x429833[_0xb1a0('0x7e')];}else if(this[_0xb1a0('0x33')](_0x429833[_0xb1a0('0x7a')][_0xb1a0('0x84')])){logger['info'](_0xb1a0('0x85'),_0x429833['uniqueid'],_0x429833[_0xb1a0('0x7e')]);this[_0xb1a0('0x1c')][_0x429833[_0xb1a0('0x36')]]['type']=_0x429833['value'];}else if(this[_0xb1a0('0x33')](_0x429833['variable'][_0xb1a0('0x86')])){logger[_0xb1a0('0x35')](_0xb1a0('0x87'),_0x429833[_0xb1a0('0x36')],_0x429833[_0xb1a0('0x7e')][_0xb1a0('0x4f')](',')[0x0]);this[_0xb1a0('0x1c')][_0x429833[_0xb1a0('0x36')]][_0xb1a0('0x10')]=_0x429833[_0xb1a0('0x7e')][_0xb1a0('0x4f')](',')[0x0];}else if(this[_0xb1a0('0x33')](_0x429833[_0xb1a0('0x7a')][_0xb1a0('0x88')])){logger[_0xb1a0('0x35')]('[%s][voiceCallReport][varset]\x20variable:xmd-originatecalleridnum\x20value:%s',_0x429833['uniqueid'],_0x429833[_0xb1a0('0x7e')]);this[_0xb1a0('0x1c')][_0x429833['uniqueid']][_0xb1a0('0x89')]=_0x429833[_0xb1a0('0x7e')];}else if(this[_0xb1a0('0x33')](_0x429833[_0xb1a0('0x7a')]['xmd-destination'])){logger[_0xb1a0('0x35')](_0xb1a0('0x8a'),_0x429833[_0xb1a0('0x36')],_0x429833[_0xb1a0('0x7e')]);this[_0xb1a0('0x1c')][_0x429833[_0xb1a0('0x36')]]['destination']=_0x429833[_0xb1a0('0x7e')];}else if(this['isNotNull'](_0x429833[_0xb1a0('0x7a')][_0xb1a0('0x8b')])){logger[_0xb1a0('0x35')](_0xb1a0('0x8c'),_0x429833[_0xb1a0('0x36')],_0x429833[_0xb1a0('0x7e')]);this['channels'][_0x429833[_0xb1a0('0x36')]][_0xb1a0('0x8d')]=_0x429833['value'];}else if(this[_0xb1a0('0x33')](_0x429833[_0xb1a0('0x7a')][_0xb1a0('0x8e')])){logger['info']('[%s][voiceCallReport][varset]\x20variable:xmcs-queue\x20value:%s',_0x429833[_0xb1a0('0x36')],_0x429833[_0xb1a0('0x7e')]);this[_0xb1a0('0x1c')][_0x429833[_0xb1a0('0x36')]]['queue']=_0x429833[_0xb1a0('0x7e')];}else if(this['isNotNull'](_0x429833['variable'][_0xb1a0('0x8f')])){logger[_0xb1a0('0x35')](_0xb1a0('0x90'),_0x429833[_0xb1a0('0x36')],_0x429833[_0xb1a0('0x7e')]);this[_0xb1a0('0x1c')][_0x429833[_0xb1a0('0x36')]][_0xb1a0('0x91')]=_0x429833[_0xb1a0('0x7e')];}}}else if(this[_0xb1a0('0x33')](_0x429833['variable']['mixmonitor_filename'])){if(_0x429833[_0xb1a0('0x7e')]){var _0x433aeb=path['parse'](_0x429833[_0xb1a0('0x7e')])[_0xb1a0('0x6d')];logger[_0xb1a0('0x35')](_0xb1a0('0x7c'),_0x433aeb,_0x429833['value']);this[_0xb1a0('0x7d')](_0x433aeb,_0x429833[_0xb1a0('0x7e')]);}}else if(this[_0xb1a0('0x1c')][_0x429833['linkedid']]){if(this['isNotNull'](_0x429833[_0xb1a0('0x7a')])){if(this[_0xb1a0('0x33')](_0x429833[_0xb1a0('0x7a')][_0xb1a0('0x8f')])){logger[_0xb1a0('0x35')](_0xb1a0('0x90'),_0x429833[_0xb1a0('0x41')],_0x429833[_0xb1a0('0x7e')]);this[_0xb1a0('0x1c')][_0x429833[_0xb1a0('0x41')]][_0xb1a0('0x92')]=_0x429833['value'];}}}}}catch(_0x4ad2b3){logger[_0xb1a0('0x3d')](_0xb1a0('0x93'),_0x429833[_0xb1a0('0x36')],util[_0xb1a0('0x3f')](_0x4ad2b3,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0xb1a0('0x32')][_0xb1a0('0x26')]=function(_0x19e7c8){try{if(this[_0xb1a0('0x33')](_0x19e7c8)){logger[_0xb1a0('0x39')](_0xb1a0('0x94'),_0x19e7c8['uniqueid'],util[_0xb1a0('0x3f')](_0x19e7c8,{'showHidden':![],'depth':null}));if(this['channels'][_0x19e7c8[_0xb1a0('0x36')]]){logger[_0xb1a0('0x35')](_0xb1a0('0x95'),_0x19e7c8[_0xb1a0('0x36')],_0x19e7c8[_0xb1a0('0x96')]);var _0x54bfba=moment();this[_0xb1a0('0x1c')][_0x19e7c8[_0xb1a0('0x36')]][_0xb1a0('0x97')]=_0x54bfba[_0xb1a0('0x46')](_0xb1a0('0x47'));this[_0xb1a0('0x1c')][_0x19e7c8[_0xb1a0('0x36')]][_0xb1a0('0x5a')]=_0x54bfba[_0xb1a0('0x67')](this[_0xb1a0('0x1c')][_0x19e7c8['uniqueid']][_0xb1a0('0x45')],'seconds');if(this[_0xb1a0('0x1c')][_0x19e7c8[_0xb1a0('0x36')]][_0xb1a0('0x65')]){this[_0xb1a0('0x1c')][_0x19e7c8['uniqueid']][_0xb1a0('0x98')]=_0x54bfba[_0xb1a0('0x67')](this[_0xb1a0('0x1c')][_0x19e7c8['uniqueid']][_0xb1a0('0x66')],'seconds');this['channels'][_0x19e7c8[_0xb1a0('0x36')]][_0xb1a0('0x99')]=this[_0xb1a0('0x1c')][_0x19e7c8[_0xb1a0('0x36')]][_0xb1a0('0x5a')]-this[_0xb1a0('0x1c')][_0x19e7c8[_0xb1a0('0x36')]][_0xb1a0('0x98')];}if(_0x19e7c8['context']==='from-sip'){if(this['agents'][_0x19e7c8[_0xb1a0('0x4e')][_0xb1a0('0x4f')]('-')[0x0]]){this[_0xb1a0('0x1d')][_0x19e7c8[_0xb1a0('0x4e')]['split']('-')[0x0]]=_[_0xb1a0('0x9a')](this[_0xb1a0('0x1d')][_0x19e7c8[_0xb1a0('0x4e')][_0xb1a0('0x4f')]('-')[0x0]],['destconnectedlinenum']);logger['debug'](_0xb1a0('0x9b'),_0x19e7c8[_0xb1a0('0x36')],util['inspect']({'destaccountcode':this['agents'][_0x19e7c8[_0xb1a0('0x4e')]['split']('-')[0x0]][_0xb1a0('0x54')]},{'showHidden':![],'depth':null}));this['emit'](util[_0xb1a0('0x46')]('user:%s',this[_0xb1a0('0x1d')][_0x19e7c8['channel'][_0xb1a0('0x4f')]('-')[0x0]][_0xb1a0('0x6d')]),_0xb1a0('0x9c'),{'destaccountcode':this['agents'][_0x19e7c8[_0xb1a0('0x4e')][_0xb1a0('0x4f')]('-')[0x0]][_0xb1a0('0x54')]});}}if(_0x19e7c8['event']===_0xb1a0('0x9d')){this[_0xb1a0('0x1e')][_0x19e7c8['uniqueid']]=this['channels'][_0x19e7c8['uniqueid']];}else{if(this['channels'][_0x19e7c8[_0xb1a0('0x36')]][_0xb1a0('0x9e')]===_0xb1a0('0x9f')&&this[_0xb1a0('0x1e')][_0x19e7c8[_0xb1a0('0x36')]]){this[_0xb1a0('0x1c')][_0x19e7c8['uniqueid']][_0xb1a0('0x36')]=[this[_0xb1a0('0x1c')][_0x19e7c8[_0xb1a0('0x36')]]['linkedid'],this['channels'][_0x19e7c8[_0xb1a0('0x36')]]['linkedid']=this[_0xb1a0('0x1c')][_0x19e7c8['uniqueid']]['uniqueid']][0x0];delete this['blindTransfers'][_0x19e7c8[_0xb1a0('0x36')]];}}logger[_0xb1a0('0x39')](_0xb1a0('0xa0'),_0x19e7c8['uniqueid'],util['inspect'](this[_0xb1a0('0x1c')][_0x19e7c8[_0xb1a0('0x36')]],{'showHidden':![],'depth':null}));ami[_0xb1a0('0x34')](_0xb1a0('0xa1'),this['channels'][_0x19e7c8[_0xb1a0('0x36')]]);delete this[_0xb1a0('0x1c')][_0x19e7c8[_0xb1a0('0x36')]];}}}catch(_0x3bf127){logger[_0xb1a0('0x3d')](_0xb1a0('0xa2'),_0x19e7c8[_0xb1a0('0x36')],util[_0xb1a0('0x3f')](_0x3bf127,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0xb1a0('0x32')]['syncAttendedTransfer']=function(_0x20257b){try{if(this[_0xb1a0('0x33')](_0x20257b)){logger['info'](_0xb1a0('0xa3'),_0x20257b['uniqueid'],_0x20257b[_0xb1a0('0xa4')],_0x20257b[_0xb1a0('0xa5')]);logger[_0xb1a0('0x39')](_0xb1a0('0xa6'),_0x20257b[_0xb1a0('0x36')],util[_0xb1a0('0x3f')](_0x20257b,{'showHidden':![],'depth':null}));if(this['channels'][_0x20257b[_0xb1a0('0xa7')]]){this[_0xb1a0('0x1c')][_0x20257b['transfereeuniqueid']]['transfercalleridnum']=_0x20257b[_0xb1a0('0xa4')];this[_0xb1a0('0x1c')][_0x20257b[_0xb1a0('0xa7')]][_0xb1a0('0xa8')]=_0x20257b[_0xb1a0('0xa5')];if(this['channels'][_0x20257b[_0xb1a0('0xa9')]]){var _0x4b7cd8=this[_0xb1a0('0x1c')][_0x20257b[_0xb1a0('0xa9')]];this['channels'][_0x20257b[_0xb1a0('0xa9')]]=this[_0xb1a0('0x1c')][_0x20257b[_0xb1a0('0xa7')]];this[_0xb1a0('0x1c')][_0x20257b[_0xb1a0('0xa7')]]=_0x4b7cd8;}}else if(this[_0xb1a0('0x1c')][_0x20257b[_0xb1a0('0xaa')]]){this[_0xb1a0('0x1c')][_0x20257b[_0xb1a0('0xaa')]][_0xb1a0('0xab')]=_0x20257b[_0xb1a0('0xa4')];this[_0xb1a0('0x1c')][_0x20257b[_0xb1a0('0xaa')]][_0xb1a0('0xa8')]=_0x20257b['transfertargetcalleridnum'];if(this[_0xb1a0('0x1c')][_0x20257b['origtransfereruniqueid']]){var _0x4b7cd8=this['channels'][_0x20257b['origtransfereruniqueid']];this[_0xb1a0('0x1c')][_0x20257b[_0xb1a0('0xac')]]=this[_0xb1a0('0x1c')][_0x20257b[_0xb1a0('0xaa')]];this[_0xb1a0('0x1c')][_0x20257b[_0xb1a0('0xaa')]]=_0x4b7cd8;}}}}catch(_0x37c4ee){logger['error']('[%s][voiceCallReport][attendedtransfer]',_0x20257b['uniqueid'],util[_0xb1a0('0x3f')](_0x37c4ee,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0xb1a0('0x32')][_0xb1a0('0xad')]=function(_0x1c20ec){try{if(this[_0xb1a0('0x33')](_0x1c20ec)){logger['info'](_0xb1a0('0xae'),_0x1c20ec[_0xb1a0('0x36')],_0x1c20ec[_0xb1a0('0xaf')],_0x1c20ec['extension']);logger[_0xb1a0('0x39')](_0xb1a0('0xb0'),_0x1c20ec['uniqueid'],util[_0xb1a0('0x3f')](_0x1c20ec,{'showHidden':![],'depth':null}));if(this[_0xb1a0('0x1c')][_0x1c20ec[_0xb1a0('0xa7')]]){this[_0xb1a0('0x1c')][_0x1c20ec['transfereeuniqueid']]['transfercalleridnum']=_0x1c20ec['transfereecalleridnum'];this[_0xb1a0('0x1c')][_0x1c20ec[_0xb1a0('0xa7')]][_0xb1a0('0xa8')]=_0x1c20ec[_0xb1a0('0xb1')];this[_0xb1a0('0x26')]({'event':'BlindTransfer','uniqueid':_0x1c20ec[_0xb1a0('0xa7')],'context':_0x1c20ec[_0xb1a0('0x4c')],'channel':_0x1c20ec[_0xb1a0('0xb2')]});}}}catch(_0x5347e0){logger[_0xb1a0('0x3d')](_0xb1a0('0xb3'),_0x1c20ec[_0xb1a0('0x36')],util[_0xb1a0('0x3f')](_0x5347e0,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0xb1a0('0x32')][_0xb1a0('0xb4')]=function(_0x3ba32b){try{if(this[_0xb1a0('0x33')](_0x3ba32b)){logger['debug'](_0xb1a0('0xb5'),_0x3ba32b[_0xb1a0('0x36')],util['inspect'](_0x3ba32b,{'showHidden':![],'depth':null}));if(this[_0xb1a0('0x1c')][_0x3ba32b[_0xb1a0('0x36')]]){if(!_['isNil'](this[_0xb1a0('0x1c')][_0x3ba32b[_0xb1a0('0x36')]]['answertime'])){this[_0xb1a0('0x1c')][_0x3ba32b[_0xb1a0('0x36')]][_0xb1a0('0xb6')]=moment()['format'](_0xb1a0('0x47'));logger[_0xb1a0('0x35')](_0xb1a0('0xb7'),_0x3ba32b[_0xb1a0('0x36')],this[_0xb1a0('0x1c')][_0x3ba32b[_0xb1a0('0x36')]][_0xb1a0('0xb6')]);}}}}catch(_0x55cadd){logger['error'](_0xb1a0('0xb8'),_0x3ba32b['uniqueid'],util[_0xb1a0('0x3f')](_0x55cadd,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0xb1a0('0x32')]['syncMusicOnHoldStop']=function(_0x42e2bf){try{if(this['isNotNull'](_0x42e2bf)){logger['debug'](_0xb1a0('0xb9'),_0x42e2bf['uniqueid'],util['inspect'](_0x42e2bf,{'showHidden':![],'depth':null}));if(this[_0xb1a0('0x1c')][_0x42e2bf[_0xb1a0('0x36')]]){if(!_['isNil'](this[_0xb1a0('0x1c')][_0x42e2bf['uniqueid']][_0xb1a0('0xb6')])){this[_0xb1a0('0x1c')][_0x42e2bf[_0xb1a0('0x36')]]['mohtime']+=moment()[_0xb1a0('0xba')](0x0)[_0xb1a0('0x67')](this[_0xb1a0('0x1c')][_0x42e2bf[_0xb1a0('0x36')]][_0xb1a0('0xb6')],_0xb1a0('0x5c'));logger[_0xb1a0('0x35')](_0xb1a0('0xbb'),_0x42e2bf[_0xb1a0('0x36')],this[_0xb1a0('0x1c')][_0x42e2bf[_0xb1a0('0x36')]][_0xb1a0('0xbc')]);delete this[_0xb1a0('0x1c')][_0x42e2bf[_0xb1a0('0x36')]][_0xb1a0('0xb6')];}}}}catch(_0x25d609){logger[_0xb1a0('0x3d')](_0xb1a0('0xbd'),_0x42e2bf[_0xb1a0('0x36')],util[_0xb1a0('0x3f')](_0x25d609,{'showHidden':![],'depth':null}));}};module[_0xb1a0('0xbe')]=VoiceCallReport;