Built motion from commit (unavailable).|2.5.13
[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 _0x58c2=['dial','playback','voicemail','FAILED','NO\x20ANSWER','ANSWERED','BUSY','redis','defaults','localhost','socket.io-emitter','channels','blindTransfers','coreshowchannel','syncNewExten','bind','newexten','newchannel','syncNewState','syncVarSet','newcallerid','syncNewCallerId','attendedtransfer','syncAttendedTransfer','blindtransfer','syncBlindTransfer','syncMusicOnHoldStart','musiconholdstop','syncMusicOnHoldStop','actionCoreShowChannels','[voiceCallReport][coreshowchannels]','inspect','isNotNull','prototype','emit','info','[%s][voiceCallReport][newcallerid]\x20calleridname:%s\x20calleridnum:%s','calleridname','calleridnum','debug','linkedid','isUndefined','uniqueid','merge','pick','error','[%s][voiceCallReport][newcallerid]','syncNewChannel','[%s][voiceCallReport][newchannel]\x20event:','channel','OutgoingSpoolFailed','[%s][voiceCallReport][newchannel]\x20context:%s\x20exten:%s','context','starttime','format','YYYY-MM-DD\x20HH:mm:ss','disposition','toNumber','channelstate','keys','from-sip','agents','split','accountcode','name','exten','[%s][voiceCallReport][newchannel]','[%s][voiceCallReport][newexten]\x20event:','application','applicationdata','appdata','toLowerCase','duration','seconds','includes','lastapplication','lastdata','startsWith','cdr(','match','[%s][voiceCallReport][newexten]','[%s][voiceCallReport][newstate]\x20linkedid:%s\x20calleridname:%s\x20calleridnum:%s','[%s][voiceCallReport][newstate]\x20event:','answered','answertime','holdtime','connectedlinenum','connectedlinename','destinationchannel','UserId','membername','[%s][voiceCallReport][newstate]','[%s][voiceCallReport][mixMonitorFilename]\x20monitorFilename:%s','endsWith','.wav49','replace','.WAV','monitorFilename','find','monitors','isNil','push','[%s][voiceCallReport][mixMonitorFilename]','[%s][voiceCallReport][varset]\x20event:','variable','mixmonitor_filename','[%s][voiceCallReport][varset]\x20variable:mixmonitor_filename\x20value:%s','value','syncMixMonitorFilename','xmd-phone','[%s][voiceCallReport][varset]\x20variable:xmd-phone\x20value:%s','[%s][voiceCallReport][varset]\x20variable:xmd-callerid\x20value:%s','callerid','[%s][voiceCallReport][varset]\x20variable:xmd-cdrtype\x20value:%s','type','[%s][voiceCallReport][varset]\x20variable:xmd-queue\x20value:%s','xmd-originatecalleridnum','[%s][voiceCallReport][varset]\x20variable:xmd-originatecalleridnum\x20value:%s','originatecalleridnum','xmd-destination','[%s][voiceCallReport][varset]\x20variable:xmd-destination\x20value:%s','destination','xmd-callerid-preview','[%s][voiceCallReport][varset]\x20variable:xmd-callerid-preview\x20value:%s','calleridpreview','xmcs-queue','[%s][voiceCallReport][varset]\x20variable:xmcs-queue\x20value:%s','sipcallid','[%s][voiceCallReport][varset]\x20variable:sipcallid\x20value:%s','sipcalllinkedid','[%s][voiceCallReport][varset]','syncHangup','[%s][voiceCallReport][hangup]\x20event:','cause-txt','diff','billableseconds','destconnectedlinenum','user:%s','event','custom:voiceCallReport','[%s][voiceCallReport][attendedtransfer]\x20transfercalleridnum:%s\x20transferconnectedlinenum:%s','transfertargetcalleridnum','[%s][voiceCallReport][attendedtransfer]\x20event:','transfereeuniqueid','transfercalleridnum','origtransferercalleridnum','transferconnectedlinenum','secondtransfereruniqueid','transfertargetuniqueid','origtransfereruniqueid','[%s][voiceCallReport][attendedtransfer]','[%s][voiceCallReport][blindtransfer]\x20transfercalleridnum:%s\x20transferconnectedlinenum:%s','transfereecalleridnum','extension','transfererchannel','[%s][voiceCallReport][blindtransfer]','mohstarttime','[%s][voiceCallReport][musiconholdstart]\x20mohstarttime:%s','[%s][voiceCallReport][musiconholdstart]','[%s][voiceCallReport][musiconholdstop]\x20event:','mohtime','milliseconds','[%s][voiceCallReport][musiconholdstop]\x20mohtime:%s','[%s][voiceCallReport][musiconholdstop]','exports','bluebird','moment','util','path','ioredis','../../../config/environment','../../../config/logger','ami','../ami','../model/channel','unknown','not_inuse','busy','invalid','unavailable','ringing','ringinuse','set','queue'];(function(_0x26725c,_0x4c5b1e){var _0x37e0f3=function(_0x600ab1){while(--_0x600ab1){_0x26725c['push'](_0x26725c['shift']());}};_0x37e0f3(++_0x4c5b1e);}(_0x58c2,0xa5));var _0x258c=function(_0x1e02a7,_0x4d8558){_0x1e02a7=_0x1e02a7-0x0;var _0x5db9f6=_0x58c2[_0x1e02a7];return _0x5db9f6;};'use strict';var BPromise=require(_0x258c('0x0'));var _=require('lodash');var moment=require(_0x258c('0x1'));var util=require(_0x258c('0x2'));var path=require(_0x258c('0x3'));var Redis=require(_0x258c('0x4'));var config=require(_0x258c('0x5'));var logger=require(_0x258c('0x6'))(_0x258c('0x7'));var ami=require(_0x258c('0x8'));var Channel=require(_0x258c('0x9'));var statusDesc=[_0x258c('0xa'),_0x258c('0xb'),'inuse',_0x258c('0xc'),_0x258c('0xd'),_0x258c('0xe'),_0x258c('0xf'),_0x258c('0x10'),'onhold'];var applications=[_0x258c('0x11'),_0x258c('0x12'),'agi',_0x258c('0x13'),_0x258c('0x14'),_0x258c('0x15')];var dispositions=['NO\x20ANSWER',_0x258c('0x16'),'FAILED',_0x258c('0x17'),_0x258c('0x17'),_0x258c('0x17'),_0x258c('0x18'),_0x258c('0x19'),'FAILED',_0x258c('0x16'),'FAILED'];var actions={};config[_0x258c('0x1a')]=_[_0x258c('0x1b')](config[_0x258c('0x1a')],{'host':_0x258c('0x1c'),'port':0x18eb});var io=require(_0x258c('0x1d'))(new Redis(config[_0x258c('0x1a')]));function VoiceCallReport(_0x30d137){this[_0x258c('0x1e')]=_0x30d137[_0x258c('0x1e')];this['agents']=_0x30d137['agents'];this[_0x258c('0x1f')]={};ami['on'](_0x258c('0x20'),this[_0x258c('0x21')][_0x258c('0x22')](this));ami['on'](_0x258c('0x23'),this[_0x258c('0x21')]['bind'](this));ami['on'](_0x258c('0x24'),this['syncNewChannel'][_0x258c('0x22')](this));ami['on']('newstate',this[_0x258c('0x25')]['bind'](this));ami['on']('varset',this[_0x258c('0x26')]['bind'](this));ami['on']('hangup',this['syncHangup']['bind'](this));ami['on'](_0x258c('0x27'),this[_0x258c('0x28')][_0x258c('0x22')](this));ami['on'](_0x258c('0x29'),this[_0x258c('0x2a')][_0x258c('0x22')](this));ami['on'](_0x258c('0x2b'),this[_0x258c('0x2c')][_0x258c('0x22')](this));ami['on']('musiconholdstart',this[_0x258c('0x2d')][_0x258c('0x22')](this));ami['on'](_0x258c('0x2e'),this[_0x258c('0x2f')]['bind'](this));try{logger['info']('[voiceCallReport][coreshowchannels]\x20started');ami[_0x258c('0x30')]();}catch(_0x3b90d2){logger['error'](_0x258c('0x31'),util[_0x258c('0x32')](_0x3b90d2,{'showHidden':![],'depth':null}));}}VoiceCallReport['prototype'][_0x258c('0x33')]=function(_0x22bc38){return _0x22bc38!==null&&!_['isUndefined'](_0x22bc38);};VoiceCallReport[_0x258c('0x34')][_0x258c('0x35')]=function(_0x187093,_0x29b228,_0x1c863e){io['to'](_0x187093)[_0x258c('0x35')](_0x29b228,_0x1c863e);};VoiceCallReport[_0x258c('0x34')][_0x258c('0x28')]=function(_0x20c96a){try{if(this[_0x258c('0x33')](_0x20c96a)){logger[_0x258c('0x36')](_0x258c('0x37'),_0x20c96a['uniqueid'],_0x20c96a[_0x258c('0x38')],_0x20c96a[_0x258c('0x39')]);logger[_0x258c('0x3a')]('[%s][voiceCallReport][newcallerid]\x20event:',_0x20c96a['uniqueid'],util[_0x258c('0x32')](_0x20c96a,{'showHidden':![],'depth':null}));if(_0x20c96a['uniqueid']===_0x20c96a[_0x258c('0x3b')]){if(!_[_0x258c('0x3c')](this['channels'][_0x20c96a[_0x258c('0x3d')]])){_[_0x258c('0x3e')](this[_0x258c('0x1e')][_0x20c96a[_0x258c('0x3d')]],_[_0x258c('0x3f')](_0x20c96a,_['keys'](this[_0x258c('0x1e')][_0x20c96a[_0x258c('0x3d')]])));}}}}catch(_0x2f99e9){logger[_0x258c('0x40')](_0x258c('0x41'),_0x20c96a[_0x258c('0x3d')],util[_0x258c('0x32')](_0x2f99e9,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0x258c('0x34')][_0x258c('0x42')]=function(_0x5b05a5){try{if(this['isNotNull'](_0x5b05a5)){logger[_0x258c('0x3a')](_0x258c('0x43'),_0x5b05a5[_0x258c('0x3d')],util[_0x258c('0x32')](_0x5b05a5,{'showHidden':![],'depth':null}));if(_0x5b05a5[_0x258c('0x3d')]===_0x5b05a5['linkedid']&&_0x5b05a5[_0x258c('0x44')]!=_0x258c('0x45')){if(_[_0x258c('0x3c')](this['channels'][_0x5b05a5[_0x258c('0x3d')]])){logger['info'](_0x258c('0x46'),_0x5b05a5[_0x258c('0x3d')],_0x5b05a5[_0x258c('0x47')],_0x5b05a5['exten']);this['channels'][_0x5b05a5[_0x258c('0x3d')]]=new Channel();this['channels'][_0x5b05a5['uniqueid']][_0x258c('0x48')]=moment()[_0x258c('0x49')](_0x258c('0x4a'));this[_0x258c('0x1e')][_0x5b05a5['uniqueid']][_0x258c('0x4b')]=dispositions[_[_0x258c('0x4c')](_0x5b05a5[_0x258c('0x4d')])];_[_0x258c('0x3e')](this['channels'][_0x5b05a5['uniqueid']],_[_0x258c('0x3f')](_0x5b05a5,_[_0x258c('0x4e')](this[_0x258c('0x1e')][_0x5b05a5['uniqueid']])));if(_0x5b05a5[_0x258c('0x47')]===_0x258c('0x4f')){if(this[_0x258c('0x50')][_0x5b05a5[_0x258c('0x44')][_0x258c('0x51')]('-')[0x0]]){this[_0x258c('0x50')][_0x5b05a5[_0x258c('0x44')][_0x258c('0x51')]('-')[0x0]]['destconnectedlinenum']=_0x5b05a5['exten'];logger[_0x258c('0x3a')]('[%s][voiceCallReport][newchannel]\x20sending\x20user:agentconnect\x20event:',_0x5b05a5[_0x258c('0x3d')],util[_0x258c('0x32')]({'destaccountcode':this['agents'][_0x5b05a5['channel'][_0x258c('0x51')]('-')[0x0]][_0x258c('0x52')],'destconnectedlinenum':_0x5b05a5['exten']},{'showHidden':![],'depth':null}));this['emit'](util['format']('user:%s',this['agents'][_0x5b05a5['channel'][_0x258c('0x51')]('-')[0x0]][_0x258c('0x53')]),'user:agentconnect',{'destaccountcode':this[_0x258c('0x50')][_0x5b05a5[_0x258c('0x44')][_0x258c('0x51')]('-')[0x0]][_0x258c('0x52')],'destconnectedlinenum':_0x5b05a5[_0x258c('0x54')]});}}}}}}catch(_0x41bfec){logger[_0x258c('0x40')](_0x258c('0x55'),_0x5b05a5['uniqueid'],util[_0x258c('0x32')](_0x41bfec,{'showHidden':![],'depth':null}));}};VoiceCallReport['prototype'][_0x258c('0x21')]=function(_0x2e472b){try{if(this[_0x258c('0x33')](_0x2e472b)){logger[_0x258c('0x3a')](_0x258c('0x56'),_0x2e472b[_0x258c('0x3d')],util[_0x258c('0x32')](_0x2e472b,{'showHidden':![],'depth':null}));if(_0x2e472b['uniqueid']===_0x2e472b[_0x258c('0x3b')]&&_0x2e472b[_0x258c('0x54')]!='h'&&_0x2e472b['channel']!=_0x258c('0x45')){_0x2e472b[_0x258c('0x57')]=_0x2e472b[_0x258c('0x57')]['toLowerCase']();_0x2e472b[_0x258c('0x58')]=(_0x2e472b[_0x258c('0x59')]||_0x2e472b[_0x258c('0x58')])[_0x258c('0x5a')]();logger[_0x258c('0x36')]('[%s][voiceCallReport][newexten]\x20application:%s\x20appdata:%s',_0x2e472b[_0x258c('0x3d')],_0x2e472b[_0x258c('0x57')],_0x2e472b[_0x258c('0x58')]);if(_[_0x258c('0x3c')](this[_0x258c('0x1e')][_0x2e472b[_0x258c('0x3d')]])){this[_0x258c('0x1e')][_0x2e472b['uniqueid']]=new Channel();this[_0x258c('0x1e')][_0x2e472b[_0x258c('0x3d')]][_0x258c('0x48')]=_0x2e472b[_0x258c('0x5b')]?moment()['subtract'](moment['duration'](_0x2e472b[_0x258c('0x5b')])[_0x258c('0x5c')](),_0x258c('0x5c'))[_0x258c('0x49')](_0x258c('0x4a')):moment()[_0x258c('0x49')](_0x258c('0x4a'));this['channels'][_0x2e472b['uniqueid']][_0x258c('0x4b')]=_0x258c('0x17');}_[_0x258c('0x3e')](this['channels'][_0x2e472b[_0x258c('0x3d')]],_[_0x258c('0x3f')](_0x2e472b,_[_0x258c('0x4e')](this[_0x258c('0x1e')][_0x2e472b[_0x258c('0x3d')]])));if(_[_0x258c('0x5d')](applications,_0x2e472b[_0x258c('0x57')])){this[_0x258c('0x1e')][_0x2e472b['uniqueid']][_0x258c('0x5e')]=_0x2e472b[_0x258c('0x57')];this[_0x258c('0x1e')][_0x2e472b[_0x258c('0x3d')]][_0x258c('0x5f')]=_0x2e472b['applicationdata'];if(_0x2e472b[_0x258c('0x57')]==='set'&&_[_0x258c('0x60')](_0x2e472b[_0x258c('0x58')],_0x258c('0x61'))){var _0x5934ee=_0x2e472b[_0x258c('0x58')]['split']('=');var _0x39ecf9=_0x5934ee[0x0][_0x258c('0x62')](/cdr\((.*)\)/);if(_0x39ecf9){this[_0x258c('0x1e')][_0x2e472b[_0x258c('0x3d')]][_0x39ecf9[0x1]]=_0x5934ee[0x1];}}else if(_0x2e472b[_0x258c('0x57')]===_0x258c('0x12')){this[_0x258c('0x1e')][_0x2e472b['uniqueid']]['queue']=_0x2e472b['applicationdata'][_0x258c('0x51')](',')[0x0];}}}}}catch(_0x575a24){logger[_0x258c('0x40')](_0x258c('0x63'),_0x2e472b[_0x258c('0x3d')],util[_0x258c('0x32')](_0x575a24,{'showHidden':![],'depth':null}));}};VoiceCallReport['prototype']['syncNewState']=function(_0x259df5){try{if(this[_0x258c('0x33')](_0x259df5)){logger[_0x258c('0x36')](_0x258c('0x64'),_0x259df5[_0x258c('0x3d')],_0x259df5[_0x258c('0x3b')],_0x259df5['calleridname'],_0x259df5['calleridnum']);logger[_0x258c('0x3a')](_0x258c('0x65'),_0x259df5[_0x258c('0x3d')],util[_0x258c('0x32')](_0x259df5,{'showHidden':![],'depth':null}));if(_0x259df5[_0x258c('0x3d')]!==_0x259df5[_0x258c('0x3b')]){if(this[_0x258c('0x1e')][_0x259df5[_0x258c('0x3b')]]){if(_0x259df5[_0x258c('0x4d')]==='6'){if(!this['channels'][_0x259df5['linkedid']]['answered']){var _0x201536=moment();this['channels'][_0x259df5['linkedid']][_0x258c('0x66')]=!![];this[_0x258c('0x1e')][_0x259df5['linkedid']][_0x258c('0x67')]=_0x201536['format'](_0x258c('0x4a'));if(this['channels'][_0x259df5[_0x258c('0x3b')]]['starttime']){this['channels'][_0x259df5[_0x258c('0x3b')]][_0x258c('0x68')]=_0x201536['diff'](this[_0x258c('0x1e')][_0x259df5['linkedid']][_0x258c('0x48')],_0x258c('0x5c'));}}this[_0x258c('0x1e')][_0x259df5[_0x258c('0x3b')]]['linkedid']=_0x259df5[_0x258c('0x3d')];if(_0x259df5[_0x258c('0x39')]!=='xcally-motion-preview'){this[_0x258c('0x1e')][_0x259df5[_0x258c('0x3b')]][_0x258c('0x69')]=_0x259df5[_0x258c('0x39')];}this[_0x258c('0x1e')][_0x259df5[_0x258c('0x3b')]][_0x258c('0x6a')]=_0x259df5['calleridname'];this[_0x258c('0x1e')][_0x259df5[_0x258c('0x3b')]][_0x258c('0x6b')]=_0x259df5[_0x258c('0x44')];this[_0x258c('0x1e')][_0x259df5['linkedid']][_0x258c('0x4b')]=dispositions[_[_0x258c('0x4c')](_0x259df5[_0x258c('0x4d')])];if(this[_0x258c('0x50')][_0x259df5['channel'][_0x258c('0x51')]('-')[0x0]]){this[_0x258c('0x1e')][_0x259df5[_0x258c('0x3b')]][_0x258c('0x6c')]=this[_0x258c('0x50')][_0x259df5[_0x258c('0x44')][_0x258c('0x51')]('-')[0x0]]['id'];this[_0x258c('0x1e')][_0x259df5[_0x258c('0x3b')]][_0x258c('0x6d')]=this[_0x258c('0x50')][_0x259df5[_0x258c('0x44')][_0x258c('0x51')]('-')[0x0]][_0x258c('0x53')];}}}}else{if(this[_0x258c('0x1e')][_0x259df5[_0x258c('0x3d')]]){if(_0x259df5['channelstate']==='6'){if(this[_0x258c('0x50')][_0x259df5[_0x258c('0x44')][_0x258c('0x51')]('-')[0x0]]){this[_0x258c('0x1e')][_0x259df5[_0x258c('0x3d')]][_0x258c('0x6c')]=this['agents'][_0x259df5[_0x258c('0x44')][_0x258c('0x51')]('-')[0x0]]['id'];this[_0x258c('0x1e')][_0x259df5[_0x258c('0x3d')]][_0x258c('0x6d')]=this[_0x258c('0x50')][_0x259df5[_0x258c('0x44')]['split']('-')[0x0]][_0x258c('0x53')];}}}}}}catch(_0x3dce49){logger[_0x258c('0x40')](_0x258c('0x6e'),_0x259df5['uniqueid'],util[_0x258c('0x32')](_0x3dce49,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0x258c('0x34')]['syncMixMonitorFilename']=function(_0x70279e,_0x3a13c0){try{if(this[_0x258c('0x1e')][_0x70279e]){logger[_0x258c('0x36')](_0x258c('0x6f'),_0x70279e,_0x3a13c0);this[_0x258c('0x1e')][_0x70279e]['monitor']=!![];if(_[_0x258c('0x70')](_0x3a13c0,_0x258c('0x71'))){_0x3a13c0=_0x3a13c0[_0x258c('0x72')](_0x258c('0x71'),_0x258c('0x73'));}this['channels'][_0x70279e][_0x258c('0x74')]=_0x3a13c0;var _0x527307=_[_0x258c('0x75')](this[_0x258c('0x1e')][_0x70279e][_0x258c('0x76')],{'filename':_0x3a13c0});if(_[_0x258c('0x77')](_0x527307)){this[_0x258c('0x1e')][_0x70279e][_0x258c('0x76')][_0x258c('0x78')]({'filename':_0x3a13c0,'createdAt':moment()[_0x258c('0x49')](_0x258c('0x4a')),'mixmonitorid':'','status':'rec'});}}}catch(_0x527cf0){logger[_0x258c('0x40')](_0x258c('0x79'),_0x70279e,util[_0x258c('0x32')](_0x527cf0,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0x258c('0x34')][_0x258c('0x26')]=function(_0x5b05b0){try{if(this['isNotNull'](_0x5b05b0)){logger[_0x258c('0x3a')](_0x258c('0x7a'),_0x5b05b0[_0x258c('0x3d')],util[_0x258c('0x32')](_0x5b05b0,{'showHidden':![],'depth':null}));if(this[_0x258c('0x1e')][_0x5b05b0[_0x258c('0x3d')]]&&_0x5b05b0[_0x258c('0x44')]!=_0x258c('0x45')){if(this['isNotNull'](_0x5b05b0[_0x258c('0x7b')])){if(this[_0x258c('0x33')](_0x5b05b0[_0x258c('0x7b')][_0x258c('0x7c')])){logger['info'](_0x258c('0x7d'),_0x5b05b0[_0x258c('0x3d')],_0x5b05b0[_0x258c('0x7e')]);this[_0x258c('0x7f')](_0x5b05b0[_0x258c('0x3d')],_0x5b05b0['value']);}else if(this[_0x258c('0x33')](_0x5b05b0[_0x258c('0x7b')][_0x258c('0x80')])){logger[_0x258c('0x36')](_0x258c('0x81'),_0x5b05b0['uniqueid'],_0x5b05b0[_0x258c('0x7e')]);this['channels'][_0x5b05b0[_0x258c('0x3d')]][_0x258c('0x39')]=_0x5b05b0['value'];}else if(this[_0x258c('0x33')](_0x5b05b0[_0x258c('0x7b')]['xmd-callerid'])){logger['info'](_0x258c('0x82'),_0x5b05b0['uniqueid'],_0x5b05b0[_0x258c('0x7e')]);this[_0x258c('0x1e')][_0x5b05b0[_0x258c('0x3d')]][_0x258c('0x83')]=_0x5b05b0[_0x258c('0x7e')];}else if(this['isNotNull'](_0x5b05b0['variable']['xmd-cdrtype'])){logger[_0x258c('0x36')](_0x258c('0x84'),_0x5b05b0['uniqueid'],_0x5b05b0[_0x258c('0x7e')]);this['channels'][_0x5b05b0['uniqueid']][_0x258c('0x85')]=_0x5b05b0[_0x258c('0x7e')];}else if(this[_0x258c('0x33')](_0x5b05b0[_0x258c('0x7b')]['xmd-queue'])){logger[_0x258c('0x36')](_0x258c('0x86'),_0x5b05b0[_0x258c('0x3d')],_0x5b05b0['value'][_0x258c('0x51')](',')[0x0]);this[_0x258c('0x1e')][_0x5b05b0[_0x258c('0x3d')]]['queue']=_0x5b05b0[_0x258c('0x7e')][_0x258c('0x51')](',')[0x0];}else if(this[_0x258c('0x33')](_0x5b05b0[_0x258c('0x7b')][_0x258c('0x87')])){logger['info'](_0x258c('0x88'),_0x5b05b0[_0x258c('0x3d')],_0x5b05b0[_0x258c('0x7e')]);this[_0x258c('0x1e')][_0x5b05b0[_0x258c('0x3d')]][_0x258c('0x89')]=_0x5b05b0[_0x258c('0x7e')];}else if(this[_0x258c('0x33')](_0x5b05b0[_0x258c('0x7b')][_0x258c('0x8a')])){logger[_0x258c('0x36')](_0x258c('0x8b'),_0x5b05b0[_0x258c('0x3d')],_0x5b05b0[_0x258c('0x7e')]);this[_0x258c('0x1e')][_0x5b05b0[_0x258c('0x3d')]][_0x258c('0x8c')]=_0x5b05b0[_0x258c('0x7e')];}else if(this[_0x258c('0x33')](_0x5b05b0[_0x258c('0x7b')][_0x258c('0x8d')])){logger[_0x258c('0x36')](_0x258c('0x8e'),_0x5b05b0[_0x258c('0x3d')],_0x5b05b0[_0x258c('0x7e')]);this[_0x258c('0x1e')][_0x5b05b0[_0x258c('0x3d')]][_0x258c('0x8f')]=_0x5b05b0[_0x258c('0x7e')];}else if(this[_0x258c('0x33')](_0x5b05b0['variable'][_0x258c('0x90')])){logger[_0x258c('0x36')](_0x258c('0x91'),_0x5b05b0['uniqueid'],_0x5b05b0[_0x258c('0x7e')]);this[_0x258c('0x1e')][_0x5b05b0[_0x258c('0x3d')]]['queue']=_0x5b05b0[_0x258c('0x7e')];}else if(this[_0x258c('0x33')](_0x5b05b0[_0x258c('0x7b')][_0x258c('0x92')])){logger['info'](_0x258c('0x93'),_0x5b05b0[_0x258c('0x3d')],_0x5b05b0['value']);this[_0x258c('0x1e')][_0x5b05b0[_0x258c('0x3d')]]['sipcalluniqueid']=_0x5b05b0['value'];}}}else if(this[_0x258c('0x33')](_0x5b05b0['variable'][_0x258c('0x7c')])){if(_0x5b05b0[_0x258c('0x7e')]){var _0x3d00b0=path['parse'](_0x5b05b0[_0x258c('0x7e')])[_0x258c('0x53')];logger[_0x258c('0x36')](_0x258c('0x7d'),_0x3d00b0,_0x5b05b0['value']);this['syncMixMonitorFilename'](_0x3d00b0,_0x5b05b0[_0x258c('0x7e')]);}}else if(this[_0x258c('0x1e')][_0x5b05b0['linkedid']]){if(this[_0x258c('0x33')](_0x5b05b0[_0x258c('0x7b')])){if(this['isNotNull'](_0x5b05b0[_0x258c('0x7b')][_0x258c('0x92')])){logger['info'](_0x258c('0x93'),_0x5b05b0[_0x258c('0x3b')],_0x5b05b0[_0x258c('0x7e')]);this['channels'][_0x5b05b0['linkedid']][_0x258c('0x94')]=_0x5b05b0[_0x258c('0x7e')];}}}}}catch(_0x37e096){logger[_0x258c('0x40')](_0x258c('0x95'),_0x5b05b0[_0x258c('0x3d')],util[_0x258c('0x32')](_0x37e096,{'showHidden':![],'depth':null}));}};VoiceCallReport['prototype'][_0x258c('0x96')]=function(_0x3ba6c7){try{if(this['isNotNull'](_0x3ba6c7)){logger['debug'](_0x258c('0x97'),_0x3ba6c7[_0x258c('0x3d')],util['inspect'](_0x3ba6c7,{'showHidden':![],'depth':null}));if(this[_0x258c('0x1e')][_0x3ba6c7[_0x258c('0x3d')]]){logger[_0x258c('0x36')]('[%s][voiceCallReport][hangup]\x20reason:%s',_0x3ba6c7[_0x258c('0x3d')],_0x3ba6c7[_0x258c('0x98')]);var _0x2bdd16=moment();this[_0x258c('0x1e')][_0x3ba6c7['uniqueid']]['endtime']=_0x2bdd16[_0x258c('0x49')](_0x258c('0x4a'));this['channels'][_0x3ba6c7['uniqueid']][_0x258c('0x5b')]=_0x2bdd16[_0x258c('0x99')](this['channels'][_0x3ba6c7[_0x258c('0x3d')]]['starttime'],_0x258c('0x5c'));if(this[_0x258c('0x1e')][_0x3ba6c7[_0x258c('0x3d')]][_0x258c('0x66')]){this[_0x258c('0x1e')][_0x3ba6c7[_0x258c('0x3d')]]['billableseconds']=_0x2bdd16[_0x258c('0x99')](this[_0x258c('0x1e')][_0x3ba6c7[_0x258c('0x3d')]][_0x258c('0x67')],_0x258c('0x5c'));this[_0x258c('0x1e')][_0x3ba6c7['uniqueid']][_0x258c('0x68')]=this['channels'][_0x3ba6c7[_0x258c('0x3d')]][_0x258c('0x5b')]-this['channels'][_0x3ba6c7[_0x258c('0x3d')]][_0x258c('0x9a')];}if(_0x3ba6c7[_0x258c('0x47')]===_0x258c('0x4f')){if(this[_0x258c('0x50')][_0x3ba6c7[_0x258c('0x44')][_0x258c('0x51')]('-')[0x0]]){this[_0x258c('0x50')][_0x3ba6c7[_0x258c('0x44')][_0x258c('0x51')]('-')[0x0]]=_['omit'](this[_0x258c('0x50')][_0x3ba6c7['channel'][_0x258c('0x51')]('-')[0x0]],[_0x258c('0x9b')]);logger[_0x258c('0x3a')]('[%s][voiceCallReport][hangup]\x20sending\x20user:agentcomplete\x20event:',_0x3ba6c7['uniqueid'],util[_0x258c('0x32')]({'destaccountcode':this['agents'][_0x3ba6c7[_0x258c('0x44')]['split']('-')[0x0]][_0x258c('0x52')]},{'showHidden':![],'depth':null}));this[_0x258c('0x35')](util[_0x258c('0x49')](_0x258c('0x9c'),this['agents'][_0x3ba6c7[_0x258c('0x44')][_0x258c('0x51')]('-')[0x0]]['name']),'user:agentcomplete',{'destaccountcode':this[_0x258c('0x50')][_0x3ba6c7[_0x258c('0x44')][_0x258c('0x51')]('-')[0x0]][_0x258c('0x52')]});}}if(_0x3ba6c7[_0x258c('0x9d')]==='BlindTransfer'){this[_0x258c('0x1f')][_0x3ba6c7[_0x258c('0x3d')]]=this[_0x258c('0x1e')][_0x3ba6c7[_0x258c('0x3d')]];}else{if(this['channels'][_0x3ba6c7[_0x258c('0x3d')]][_0x258c('0x85')]==='outbound'&&this['blindTransfers'][_0x3ba6c7[_0x258c('0x3d')]]){this[_0x258c('0x1e')][_0x3ba6c7['uniqueid']]['uniqueid']=[this['channels'][_0x3ba6c7[_0x258c('0x3d')]][_0x258c('0x3b')],this[_0x258c('0x1e')][_0x3ba6c7['uniqueid']]['linkedid']=this[_0x258c('0x1e')][_0x3ba6c7[_0x258c('0x3d')]][_0x258c('0x3d')]][0x0];delete this[_0x258c('0x1f')][_0x3ba6c7['uniqueid']];}}logger[_0x258c('0x3a')]('[%s][voiceCallReport][hangup]\x20sending\x20hangup\x20event:',_0x3ba6c7[_0x258c('0x3d')],util[_0x258c('0x32')](this[_0x258c('0x1e')][_0x3ba6c7[_0x258c('0x3d')]],{'showHidden':![],'depth':null}));ami[_0x258c('0x35')](_0x258c('0x9e'),this[_0x258c('0x1e')][_0x3ba6c7[_0x258c('0x3d')]]);delete this['channels'][_0x3ba6c7[_0x258c('0x3d')]];}}}catch(_0x2fb11b){logger[_0x258c('0x40')]('[%s][voiceCallReport][hangup]',_0x3ba6c7['uniqueid'],util[_0x258c('0x32')](_0x2fb11b,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0x258c('0x34')][_0x258c('0x2a')]=function(_0x1480eb){try{if(this[_0x258c('0x33')](_0x1480eb)){logger[_0x258c('0x36')](_0x258c('0x9f'),_0x1480eb[_0x258c('0x3d')],_0x1480eb['origtransferercalleridnum'],_0x1480eb[_0x258c('0xa0')]);logger[_0x258c('0x3a')](_0x258c('0xa1'),_0x1480eb[_0x258c('0x3d')],util[_0x258c('0x32')](_0x1480eb,{'showHidden':![],'depth':null}));if(this['channels'][_0x1480eb[_0x258c('0xa2')]]){this[_0x258c('0x1e')][_0x1480eb[_0x258c('0xa2')]][_0x258c('0xa3')]=_0x1480eb[_0x258c('0xa4')];this[_0x258c('0x1e')][_0x1480eb[_0x258c('0xa2')]][_0x258c('0xa5')]=_0x1480eb[_0x258c('0xa0')];if(this['channels'][_0x1480eb['secondtransfereruniqueid']]){var _0x210092=this[_0x258c('0x1e')][_0x1480eb[_0x258c('0xa6')]];this[_0x258c('0x1e')][_0x1480eb['secondtransfereruniqueid']]=this[_0x258c('0x1e')][_0x1480eb['transfereeuniqueid']];this['channels'][_0x1480eb[_0x258c('0xa2')]]=_0x210092;}}else if(this[_0x258c('0x1e')][_0x1480eb[_0x258c('0xa7')]]){this[_0x258c('0x1e')][_0x1480eb[_0x258c('0xa7')]]['transfercalleridnum']=_0x1480eb[_0x258c('0xa4')];this[_0x258c('0x1e')][_0x1480eb[_0x258c('0xa7')]][_0x258c('0xa5')]=_0x1480eb['transfertargetcalleridnum'];if(this['channels'][_0x1480eb['origtransfereruniqueid']]){var _0x210092=this[_0x258c('0x1e')][_0x1480eb[_0x258c('0xa8')]];this[_0x258c('0x1e')][_0x1480eb[_0x258c('0xa8')]]=this[_0x258c('0x1e')][_0x1480eb['transfertargetuniqueid']];this['channels'][_0x1480eb[_0x258c('0xa7')]]=_0x210092;}}}}catch(_0x2caf6b){logger[_0x258c('0x40')](_0x258c('0xa9'),_0x1480eb[_0x258c('0x3d')],util[_0x258c('0x32')](_0x2caf6b,{'showHidden':![],'depth':null}));}};VoiceCallReport['prototype'][_0x258c('0x2c')]=function(_0x193d18){try{if(this[_0x258c('0x33')](_0x193d18)){logger['info'](_0x258c('0xaa'),_0x193d18['uniqueid'],_0x193d18[_0x258c('0xab')],_0x193d18[_0x258c('0xac')]);logger['debug']('[%s][voiceCallReport][blindtransfer]\x20event:',_0x193d18[_0x258c('0x3d')],util[_0x258c('0x32')](_0x193d18,{'showHidden':![],'depth':null}));if(this[_0x258c('0x1e')][_0x193d18['transfereeuniqueid']]){this[_0x258c('0x1e')][_0x193d18[_0x258c('0xa2')]][_0x258c('0xa3')]=_0x193d18[_0x258c('0xab')];this[_0x258c('0x1e')][_0x193d18[_0x258c('0xa2')]][_0x258c('0xa5')]=_0x193d18[_0x258c('0xac')];this[_0x258c('0x96')]({'event':'BlindTransfer','uniqueid':_0x193d18[_0x258c('0xa2')],'context':_0x193d18[_0x258c('0x47')],'channel':_0x193d18[_0x258c('0xad')]});}}}catch(_0x42f194){logger[_0x258c('0x40')](_0x258c('0xae'),_0x193d18[_0x258c('0x3d')],util['inspect'](_0x42f194,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0x258c('0x34')]['syncMusicOnHoldStart']=function(_0x307376){try{if(this[_0x258c('0x33')](_0x307376)){logger[_0x258c('0x3a')]('[%s][voiceCallReport][musiconholdstart]\x20event:',_0x307376['uniqueid'],util[_0x258c('0x32')](_0x307376,{'showHidden':![],'depth':null}));if(this['channels'][_0x307376[_0x258c('0x3d')]]){if(!_[_0x258c('0x77')](this[_0x258c('0x1e')][_0x307376['uniqueid']]['answertime'])){this['channels'][_0x307376[_0x258c('0x3d')]][_0x258c('0xaf')]=moment()[_0x258c('0x49')](_0x258c('0x4a'));logger[_0x258c('0x36')](_0x258c('0xb0'),_0x307376[_0x258c('0x3d')],this['channels'][_0x307376['uniqueid']][_0x258c('0xaf')]);}}}}catch(_0x33e504){logger['error'](_0x258c('0xb1'),_0x307376[_0x258c('0x3d')],util[_0x258c('0x32')](_0x33e504,{'showHidden':![],'depth':null}));}};VoiceCallReport[_0x258c('0x34')][_0x258c('0x2f')]=function(_0x531c9c){try{if(this[_0x258c('0x33')](_0x531c9c)){logger[_0x258c('0x3a')](_0x258c('0xb2'),_0x531c9c[_0x258c('0x3d')],util[_0x258c('0x32')](_0x531c9c,{'showHidden':![],'depth':null}));if(this[_0x258c('0x1e')][_0x531c9c[_0x258c('0x3d')]]){if(!_[_0x258c('0x77')](this[_0x258c('0x1e')][_0x531c9c['uniqueid']][_0x258c('0xaf')])){this[_0x258c('0x1e')][_0x531c9c['uniqueid']][_0x258c('0xb3')]+=moment()[_0x258c('0xb4')](0x0)[_0x258c('0x99')](this[_0x258c('0x1e')][_0x531c9c[_0x258c('0x3d')]][_0x258c('0xaf')],'seconds');logger[_0x258c('0x36')](_0x258c('0xb5'),_0x531c9c['uniqueid'],this[_0x258c('0x1e')][_0x531c9c[_0x258c('0x3d')]]['mohtime']);delete this['channels'][_0x531c9c[_0x258c('0x3d')]][_0x258c('0xaf')];}}}}catch(_0x500732){logger[_0x258c('0x40')](_0x258c('0xb6'),_0x531c9c[_0x258c('0x3d')],util['inspect'](_0x500732,{'showHidden':![],'depth':null}));}};module[_0x258c('0xb7')]=VoiceCallReport;