5b6292f8c6de914224c06bfe62794e05fb3125a0
[motion2.git] / server / services / ami / report / voiceAgentReport.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 _0x448e=['membercalls','memberinterface','memberlastcall','memberpenalty','includes','syncHangup','[%s][voiceAgentReport][hangup]\x20event:','[%s][voiceAgentReport][hangup]\x20destuniqueid:%s','agentcompleteAt','[%s][voiceAgentReport][hangup]\x20sending\x20voiceAgentReport\x20event:','values','custom:voiceAgentReport','[%s][voiceAgentReport][hangup]','[%s][voiceAgentReport][attendedtransfer]\x20event:','transfereeuniqueid','origtransfereruniqueid','[%s][voiceAgentReport][attendedtransfer]\x20agent:%s\x20destuniqueid:%s\x20lastevent:complete','diff','seconds','secondtransfereruniqueid','[%s][voiceAgentReport][attendedtransfer]','[%s][voiceAgentReport][blindtransfer]\x20event:','transfereruniqueid','[%s][voiceAgentReport][blindtransfer]','[%s][voiceAgentReport][musiconholdstart]\x20event:','channel','substring','lastIndexOf','[%s][voiceAgentReport][musiconholdstart]\x20interface:%s','[%s][voiceAgentReport][musiconholdstart]','[%s][voiceAgentReport][musiconholdstop]\x20event:','[%s][voiceAgentReport][musiconholdstop]\x20interface:%s','onhold','[%s][voiceAgentReport][musiconholdstop]','exports','lodash','moment','ioredis','../../../config/environment','../../../config/logger','ami','../ami','redis','localhost','socket.io-emitter','channels','variables','agentcalled','syncAgentCalled','bind','agentconnect','agentringnoanswer','queuecallerabandon','syncQueueCallerAbandon','syncAgentComplete','varset','hangup','syncMusicOnHoldStart','musiconholdstop','syncMusicOnHoldStop','syncAttendedTransfer','blindtransfer','syncBlindTransfer','prototype','emit','isNotNull','isUndefined','info','[%s][voiceAgentReport][agentcalled]\x20event:','uniqueid','destuniqueid','YYYY-MM-DD\x20HH:mm:ss','called','voiceQueues','queue','mandatoryDisposition','type','inbound','voice','merge','omit','privilege','[%s][voiceAgentReport][agentcalled]\x20sending\x20agentcalled\x20event:','custom:agentcalled','debug','[%s][voiceAgentReport][agentcalled]\x20sending\x20user:called\x20event:','inspect','format','user:%s','membername','user:called','error','[%s][voiceAgentReport][agentconnect]\x20event:','[%s][voiceAgentReport][agentconnect]\x20agent:%s\x20destuniqueid:%s\x20lastevent:connect','connectedlinename','connectedlinenum','destchannelstate','destchannelstatedesc','holdtime','lastevent','voiceChannels','routealias','agents','interface','pick','destconnectedlinenum','custom:agentconnect','[%s][voiceAgentReport][agentcalled]\x20sending\x20user:agentconnect\x20event:','agentcomplete','agentringnoanswerAt','answeredelsewheredestinationuniqueid','answeredelsewheremembername','answered_elsewhere','reason','[%s][voiceAgentReport][agentconnect]\x20sending\x20agentansweredelsewhere\x20event:','syncAgentRingNoAnswer','[%s][voiceAgentReport][agentringnoanswer]\x20event:','[%s][voiceAgentReport][agentringnoanswer]\x20agent:%s\x20destuniqueid:%s\x20lastevent:rejected','rejected','[%s][voiceAgentReport][agentringnoanswer]\x20sending\x20agentringnoanswer\x20event:','[%s][voiceAgentReport][agentringnoanswer]','[%s][voiceAgentReport][queuecallerabandon]\x20event:','hasOwnProperty','[%s][voiceAgentReport][queuecallerabandon]\x20agent:%s\x20destuniqueid:%s\x20lastevent:abandoned','abandoned','[%s][voiceAgentReport][queuecallerabandon]\x20sending\x20agentqueuecallerabandon\x20event:','[%s][voiceAgentReport][queuecallerabandon]','agentconnectAt','[%s][voiceAgentReport][agentcomplete]\x20agent:%s\x20destuniqueid:%s\x20lastevent:complete','complete','transfer','agent','talktime','agentacw','[%s][voiceAgentReport][agentcomplete]\x20sending\x20agentcomplete\x20event:','[%s][voiceAgentReport][agentcomplete]\x20sending\x20user:agentcomplete\x20event:','destaccountcode','user:agentcomplete','syncVarSet','[%s][voiceAgentReport][varset]\x20event:','addVariable','keys','value','variable','rtpaudioqos','rtpaudioqosbridged','rtpaudioqosjitter','rtpaudioqosjitterbridged','rtpaudioqosloss','rtpaudioqoslossbridged','rtpaudioqosrtt','rtpaudioqosrttbridged','sipcallid','sipuri','bridgepeer','bridgepvtcallid'];(function(_0x450ad5,_0x43becc){var _0x6a97d3=function(_0x33a51a){while(--_0x33a51a){_0x450ad5['push'](_0x450ad5['shift']());}};_0x6a97d3(++_0x43becc);}(_0x448e,0x15b));var _0xe448=function(_0xf30651,_0x964c8){_0xf30651=_0xf30651-0x0;var _0x5382a0=_0x448e[_0xf30651];return _0x5382a0;};'use strict';var _=require(_0xe448('0x0'));var moment=require(_0xe448('0x1'));var util=require('util');var Redis=require(_0xe448('0x2'));var config=require(_0xe448('0x3'));var logger=require(_0xe448('0x4'))(_0xe448('0x5'));var ami=require(_0xe448('0x6'));config[_0xe448('0x7')]=_['defaults'](config['redis'],{'host':_0xe448('0x8'),'port':0x18eb});var io=require(_0xe448('0x9'))(new Redis(config[_0xe448('0x7')]));function VoiceAgentReport(_0x15b6d0){this[_0xe448('0xa')]={};this['voiceChannels']=_0x15b6d0[_0xe448('0xa')];this['voiceQueues']=_0x15b6d0['voiceQueues'];this['agents']=_0x15b6d0['agents'];this[_0xe448('0xb')]={};ami['on'](_0xe448('0xc'),this[_0xe448('0xd')][_0xe448('0xe')](this));ami['on'](_0xe448('0xf'),this['syncAgentConnect'][_0xe448('0xe')](this));ami['on'](_0xe448('0x10'),this['syncAgentRingNoAnswer'][_0xe448('0xe')](this));ami['on'](_0xe448('0x11'),this[_0xe448('0x12')][_0xe448('0xe')](this));ami['on']('agentcomplete',this[_0xe448('0x13')][_0xe448('0xe')](this));ami['on'](_0xe448('0x14'),this['syncVarSet'][_0xe448('0xe')](this));ami['on'](_0xe448('0x15'),this['syncHangup'][_0xe448('0xe')](this));ami['on']('musiconholdstart',this[_0xe448('0x16')]['bind'](this));ami['on'](_0xe448('0x17'),this[_0xe448('0x18')][_0xe448('0xe')](this));ami['on']('attendedtransfer',this[_0xe448('0x19')][_0xe448('0xe')](this));ami['on'](_0xe448('0x1a'),this[_0xe448('0x1b')]['bind'](this));}VoiceAgentReport[_0xe448('0x1c')][_0xe448('0x1d')]=function(_0xad5b2a,_0x3b4836,_0x3e846b){io['to'](_0xad5b2a)[_0xe448('0x1d')](_0x3b4836,_0x3e846b);};VoiceAgentReport[_0xe448('0x1c')][_0xe448('0x1e')]=function(_0x296062){return _0x296062!==null&&!_[_0xe448('0x1f')](_0x296062);};VoiceAgentReport['prototype'][_0xe448('0xd')]=function(_0x45d909){try{if(this['isNotNull'](_0x45d909)){logger[_0xe448('0x20')]('[%s][voiceAgentReport][agentcalled]\x20agent:%s\x20destuniqueid:%s\x20lastevent:called',_0x45d909['uniqueid'],_0x45d909['membername'],_0x45d909['destuniqueid']);logger['debug'](_0xe448('0x21'),_0x45d909[_0xe448('0x22')],util['inspect'](_0x45d909,{'showHidden':![],'depth':null}));if(_[_0xe448('0x1f')](this[_0xe448('0xa')][_0x45d909['uniqueid']])){this['channels'][_0x45d909['uniqueid']]={};}if(_['isUndefined'](this[_0xe448('0xa')][_0x45d909['uniqueid']][_0x45d909['destuniqueid']])){this['channels'][_0x45d909[_0xe448('0x22')]][_0x45d909[_0xe448('0x23')]]={'agentcalledAt':moment()['format'](_0xe448('0x24')),'lastevent':_0xe448('0x25'),'mandatoryDisposition':this[_0xe448('0x26')][_0x45d909[_0xe448('0x27')]]?this[_0xe448('0x26')][_0x45d909['queue']][_0xe448('0x28')]||![]:![],'type':this[_0xe448('0x26')][_0x45d909['queue']]?this[_0xe448('0x26')][_0x45d909[_0xe448('0x27')]][_0xe448('0x29')]||'inbound':_0xe448('0x2a'),'variables':this['variables'][_0x45d909['uniqueid']],'motionChannel':_0xe448('0x2b')};}_[_0xe448('0x2c')](this[_0xe448('0xa')][_0x45d909[_0xe448('0x22')]][_0x45d909['destuniqueid']],_[_0xe448('0x2d')](_0x45d909,['event',_0xe448('0x2e')]));logger['debug'](_0xe448('0x2f'),_0x45d909[_0xe448('0x22')],util['inspect'](this[_0xe448('0xa')][_0x45d909['uniqueid']][_0x45d909[_0xe448('0x23')]],{'showHidden':![],'depth':null}));ami[_0xe448('0x1d')](_0xe448('0x30'),this[_0xe448('0xa')][_0x45d909[_0xe448('0x22')]][_0x45d909[_0xe448('0x23')]]);var _0x443b2f={'id':this['agents'][_0x45d909['interface']]['id'],'calleridnum':this[_0xe448('0xa')][_0x45d909[_0xe448('0x22')]][_0x45d909[_0xe448('0x23')]]['calleridnum'],'queue':this[_0xe448('0xa')][_0x45d909[_0xe448('0x22')]][_0x45d909[_0xe448('0x23')]][_0xe448('0x27')],'variables':this[_0xe448('0xa')][_0x45d909[_0xe448('0x22')]][_0x45d909[_0xe448('0x23')]]['variables']};logger[_0xe448('0x31')](_0xe448('0x32'),_0x45d909[_0xe448('0x22')],util[_0xe448('0x33')](_0x443b2f,{'showHidden':![],'depth':null}));this[_0xe448('0x1d')](util[_0xe448('0x34')](_0xe448('0x35'),_0x45d909[_0xe448('0x36')]),_0xe448('0x37'),_0x443b2f);}}catch(_0xe8537a){logger[_0xe448('0x38')]('[%s][voiceAgentReport][agentcalled]',_0x45d909['uniqueid'],util[_0xe448('0x33')](_0xe8537a,{'showHidden':![],'depth':null}));}};VoiceAgentReport[_0xe448('0x1c')]['syncAgentConnect']=function(_0x17f683){try{if(this[_0xe448('0x1e')](_0x17f683)){if(this['channels'][_0x17f683[_0xe448('0x22')]]){logger[_0xe448('0x31')](_0xe448('0x39'),_0x17f683[_0xe448('0x22')],util['inspect'](_0x17f683,{'showHidden':![],'depth':null}));for(var _0x5adcf0 in this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]]){if(this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]]['hasOwnProperty'](_0x5adcf0)){if(_0x17f683[_0xe448('0x23')]===_0x5adcf0){logger['info'](_0xe448('0x3a'),_0x17f683[_0xe448('0x22')],_0x17f683[_0xe448('0x36')],_0x17f683[_0xe448('0x23')]);this[_0xe448('0xa')][_0x17f683['uniqueid']][_0x5adcf0]['agentconnectAt']=moment()[_0xe448('0x34')](_0xe448('0x24'));this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]][_0x5adcf0][_0xe448('0x3b')]=_0x17f683[_0xe448('0x3b')];this['channels'][_0x17f683[_0xe448('0x22')]][_0x5adcf0][_0xe448('0x3c')]=_0x17f683[_0xe448('0x3c')];this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]][_0x5adcf0][_0xe448('0x3d')]=_0x17f683['destchannelstate'];this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]][_0x5adcf0][_0xe448('0x3e')]=_0x17f683['destchannelstatedesc'];this['channels'][_0x17f683[_0xe448('0x22')]][_0x5adcf0][_0xe448('0x3f')]=_0x17f683[_0xe448('0x3f')];this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]][_0x5adcf0][_0xe448('0x40')]='connect';if(this[_0xe448('0x41')][this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]][_0x5adcf0]['uniqueid']]){var _0x589a09=this[_0xe448('0x41')][this[_0xe448('0xa')][_0x17f683['uniqueid']][_0x5adcf0][_0xe448('0x22')]][_0xe448('0x42')];this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]][_0x5adcf0][_0xe448('0x42')]=_0x589a09;_0x17f683['routealias']=_0x589a09;}_[_0xe448('0x2c')](this[_0xe448('0x43')][_0x17f683[_0xe448('0x44')]],_[_0xe448('0x45')](_0x17f683,[_0xe448('0x27'),_0xe448('0x46'),_0xe448('0x42')]));logger[_0xe448('0x31')]('[%s][voiceAgentReport][agentconnect]\x20sending\x20agentconnect\x20event:',_0x17f683[_0xe448('0x22')],util[_0xe448('0x33')](this['channels'][_0x17f683['uniqueid']][_0x17f683[_0xe448('0x23')]],{'showHidden':![],'depth':null}));ami[_0xe448('0x1d')](_0xe448('0x47'),this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]][_0x17f683['destuniqueid']]);logger[_0xe448('0x31')](_0xe448('0x48'),_0x17f683[_0xe448('0x22')],util['inspect'](this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]][_0x17f683[_0xe448('0x23')]],{'showHidden':![],'depth':null}));this['emit'](util[_0xe448('0x34')](_0xe448('0x35'),_0x17f683[_0xe448('0x36')]),'user:agentconnect',this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]][_0x17f683['destuniqueid']]);}else if(!this[_0xe448('0xa')][_0x17f683['uniqueid']][_0x5adcf0]['agentringnoanswer']&&!this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]][_0x5adcf0][_0xe448('0x49')]){logger[_0xe448('0x20')]('[%s][voiceAgentReport][agentconnect]\x20agent:%s\x20destuniqueid:%s\x20lastevent:answered_elsewhere',_0x17f683[_0xe448('0x22')],this['channels'][_0x17f683[_0xe448('0x22')]][_0x5adcf0]['membername'],_0x5adcf0);this['channels'][_0x17f683[_0xe448('0x22')]][_0x5adcf0]['agentringnoanswer']=!![];this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]][_0x5adcf0][_0xe448('0x4a')]=moment()[_0xe448('0x34')]('YYYY-MM-DD\x20HH:mm:ss');this[_0xe448('0xa')][_0x17f683['uniqueid']][_0x5adcf0][_0xe448('0x4b')]=_0x17f683[_0xe448('0x23')];this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]][_0x5adcf0][_0xe448('0x4c')]=_0x17f683[_0xe448('0x36')];this[_0xe448('0xa')][_0x17f683['uniqueid']][_0x5adcf0][_0xe448('0x40')]=_0xe448('0x4d');this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]][_0x5adcf0][_0xe448('0x4e')]='answered_elsewhere';logger[_0xe448('0x31')](_0xe448('0x4f'),_0x17f683[_0xe448('0x22')],util[_0xe448('0x33')](this[_0xe448('0xa')][_0x17f683[_0xe448('0x22')]][_0x5adcf0],{'showHidden':![],'depth':null}));ami[_0xe448('0x1d')]('custom:agentansweredelsewhere',this[_0xe448('0xa')][_0x17f683['uniqueid']][_0x5adcf0]);}}}}}}catch(_0x1a2a77){logger['error']('[%s][voiceAgentReport][agentconnect]',_0x17f683[_0xe448('0x22')],util[_0xe448('0x33')](_0x1a2a77,{'showHidden':![],'depth':null}));}};VoiceAgentReport['prototype'][_0xe448('0x50')]=function(_0x12f797){try{if(this[_0xe448('0x1e')](_0x12f797)){logger[_0xe448('0x31')](_0xe448('0x51'),_0x12f797[_0xe448('0x22')],util[_0xe448('0x33')](_0x12f797,{'showHidden':![],'depth':null}));if(this[_0xe448('0xa')][_0x12f797[_0xe448('0x22')]]&&this[_0xe448('0xa')][_0x12f797['uniqueid']][_0x12f797[_0xe448('0x23')]]){logger['info'](_0xe448('0x52'),_0x12f797['uniqueid'],_0x12f797[_0xe448('0x36')],_0x12f797[_0xe448('0x23')]);this[_0xe448('0xa')][_0x12f797[_0xe448('0x22')]][_0x12f797[_0xe448('0x23')]][_0xe448('0x10')]=!![];this[_0xe448('0xa')][_0x12f797[_0xe448('0x22')]][_0x12f797[_0xe448('0x23')]][_0xe448('0x4a')]=moment()[_0xe448('0x34')](_0xe448('0x24'));this[_0xe448('0xa')][_0x12f797['uniqueid']][_0x12f797[_0xe448('0x23')]][_0xe448('0x40')]=_0xe448('0x53');this[_0xe448('0xa')][_0x12f797[_0xe448('0x22')]][_0x12f797['destuniqueid']][_0xe448('0x4e')]='rejected';logger[_0xe448('0x31')](_0xe448('0x54'),_0x12f797[_0xe448('0x22')],util[_0xe448('0x33')](this['channels'][_0x12f797['uniqueid']][_0x12f797['destuniqueid']],{'showHidden':![],'depth':null}));ami[_0xe448('0x1d')]('custom:agentringnoanswer',this[_0xe448('0xa')][_0x12f797[_0xe448('0x22')]][_0x12f797[_0xe448('0x23')]]);}}}catch(_0x2d379e){logger['error'](_0xe448('0x55'),_0x12f797[_0xe448('0x22')],util[_0xe448('0x33')](_0x2d379e,{'showHidden':![],'depth':null}));}};VoiceAgentReport[_0xe448('0x1c')][_0xe448('0x12')]=function(_0x51b89f){try{if(this[_0xe448('0x1e')](_0x51b89f)){logger['debug'](_0xe448('0x56'),_0x51b89f[_0xe448('0x22')],util[_0xe448('0x33')](_0x51b89f,{'showHidden':![],'depth':null}));if(this[_0xe448('0xa')][_0x51b89f[_0xe448('0x22')]]){for(var _0x4592a9 in this[_0xe448('0xa')][_0x51b89f[_0xe448('0x22')]]){if(this[_0xe448('0xa')][_0x51b89f[_0xe448('0x22')]][_0xe448('0x57')](_0x4592a9)&&!this[_0xe448('0xa')][_0x51b89f['uniqueid']][_0x4592a9][_0xe448('0x10')]&&!this[_0xe448('0xa')][_0x51b89f[_0xe448('0x22')]][_0x4592a9]['agentcomplete']){logger[_0xe448('0x20')](_0xe448('0x58'),_0x51b89f[_0xe448('0x22')],this[_0xe448('0xa')][_0x51b89f[_0xe448('0x22')]][_0x4592a9][_0xe448('0x36')],_0x4592a9);this['channels'][_0x51b89f['uniqueid']][_0x4592a9][_0xe448('0x10')]=!![];this[_0xe448('0xa')][_0x51b89f[_0xe448('0x22')]][_0x4592a9][_0xe448('0x4a')]=moment()['format'](_0xe448('0x24'));this[_0xe448('0xa')][_0x51b89f[_0xe448('0x22')]][_0x4592a9][_0xe448('0x40')]='abandoned';this[_0xe448('0xa')][_0x51b89f[_0xe448('0x22')]][_0x4592a9]['reason']=_0xe448('0x59');logger[_0xe448('0x31')](_0xe448('0x5a'),_0x51b89f[_0xe448('0x22')],util[_0xe448('0x33')](this[_0xe448('0xa')][_0x51b89f[_0xe448('0x22')]][_0x4592a9],{'showHidden':![],'depth':null}));ami[_0xe448('0x1d')]('custom:agentqueuecallerabandon',this[_0xe448('0xa')][_0x51b89f[_0xe448('0x22')]][_0x4592a9]);}}}}}catch(_0x44c3f8){logger['error'](_0xe448('0x5b'),_0x51b89f[_0xe448('0x22')],util[_0xe448('0x33')](_0x44c3f8,{'showHidden':![],'depth':null}));}};VoiceAgentReport[_0xe448('0x1c')][_0xe448('0x13')]=function(_0x45d589){try{if(this['isNotNull'](_0x45d589)){logger['debug']('[%s][voiceAgentReport][agentcomplete]\x20event:',_0x45d589[_0xe448('0x22')],util['inspect'](_0x45d589,{'showHidden':![],'depth':null}));if(this[_0xe448('0xa')][_0x45d589[_0xe448('0x22')]]){for(var _0x4b6797 in this[_0xe448('0xa')][_0x45d589[_0xe448('0x22')]]){if(this[_0xe448('0xa')][_0x45d589['uniqueid']]['hasOwnProperty'](_0x4b6797)){if(this[_0xe448('0xa')][_0x45d589['uniqueid']][_0x4b6797][_0xe448('0x5c')]&&!this[_0xe448('0xa')][_0x45d589[_0xe448('0x22')]][_0x4b6797][_0xe448('0x49')]){logger[_0xe448('0x20')](_0xe448('0x5d'),_0x45d589[_0xe448('0x22')],this['channels'][_0x45d589[_0xe448('0x22')]][_0x4b6797][_0xe448('0x36')],_0x4b6797);this[_0xe448('0xa')][_0x45d589[_0xe448('0x22')]][_0x4b6797][_0xe448('0x49')]=!![];this[_0xe448('0xa')][_0x45d589[_0xe448('0x22')]][_0x4b6797]['agentcompleteAt']=moment()[_0xe448('0x34')](_0xe448('0x24'));this['channels'][_0x45d589[_0xe448('0x22')]][_0x4b6797]['lastevent']=_0xe448('0x5e');this[_0xe448('0xa')][_0x45d589[_0xe448('0x22')]][_0x4b6797][_0xe448('0x4e')]=_0x45d589['reason']==_0xe448('0x5f')?_0xe448('0x60'):_0x45d589[_0xe448('0x4e')];this[_0xe448('0xa')][_0x45d589[_0xe448('0x22')]][_0x4b6797][_0xe448('0x61')]=_0x45d589['talktime'];if(this[_0xe448('0x26')][_0x45d589['queue']]&&this[_0xe448('0x26')][_0x45d589['queue']]['acw']){this[_0xe448('0xa')][_0x45d589[_0xe448('0x22')]][_0x4b6797]['acwtime']=this[_0xe448('0x26')][_0x45d589['queue']]['acwTimeout'];this[_0xe448('0xa')][_0x45d589[_0xe448('0x22')]][_0x4b6797][_0xe448('0x62')]=!![];}this[_0xe448('0x43')][_0x45d589[_0xe448('0x44')]]=_[_0xe448('0x2d')](this[_0xe448('0x43')][_0x45d589['interface']],[_0xe448('0x27'),'destconnectedlinenum']);logger[_0xe448('0x31')](_0xe448('0x63'),_0x45d589[_0xe448('0x22')],util[_0xe448('0x33')](this[_0xe448('0xa')][_0x45d589[_0xe448('0x22')]][_0x4b6797],{'showHidden':![],'depth':null}));ami[_0xe448('0x1d')]('custom:agentcomplete',this['channels'][_0x45d589[_0xe448('0x22')]][_0x4b6797]);logger[_0xe448('0x31')](_0xe448('0x64'),_0x45d589[_0xe448('0x22')],util['inspect']({'id':this[_0xe448('0x43')][_0x45d589[_0xe448('0x44')]]['id'],'destaccountcode':_0x45d589[_0xe448('0x65')]},{'showHidden':![],'depth':null}));this['emit'](util['format'](_0xe448('0x35'),_0x45d589[_0xe448('0x36')]),_0xe448('0x66'),{'id':this[_0xe448('0x43')][_0x45d589['interface']]['id'],'destaccountcode':_0x45d589['destaccountcode']});}}}}}}catch(_0x131cf1){logger[_0xe448('0x38')]('[%s][voiceAgentReport][agentcomplete]',_0x45d589['uniqueid'],util[_0xe448('0x33')](_0x131cf1,{'showHidden':![],'depth':null}));}};VoiceAgentReport[_0xe448('0x1c')][_0xe448('0x67')]=function(_0x5c7b02){try{if(this['isNotNull'](_0x5c7b02)){logger[_0xe448('0x31')](_0xe448('0x68'),_0x5c7b02[_0xe448('0x22')],util[_0xe448('0x33')](_0x5c7b02,{'showHidden':![],'depth':null}));this[_0xe448('0x69')](_0x5c7b02[_0xe448('0x22')],_[_0xe448('0x6a')](_0x5c7b02['variable'])[0x0],_0x5c7b02[_0xe448('0x6b')]);if(this[_0xe448('0xa')][_0x5c7b02['uniqueid']]){for(var _0x4164bb in this['channels'][_0x5c7b02[_0xe448('0x22')]]){if(this[_0xe448('0xa')][_0x5c7b02[_0xe448('0x22')]][_0xe448('0x57')](_0x4164bb)){logger['info']('[%s][voiceAgentReport][varset]\x20destuniqueid:%s\x20variable:%s\x20value:%s',_0x5c7b02[_0xe448('0x22')],_0x4164bb,_[_0xe448('0x6a')](_0x5c7b02[_0xe448('0x6c')])[0x0],_0x5c7b02[_0xe448('0x6b')]);if(_[_0xe448('0x1f')](this[_0xe448('0xa')][_0x5c7b02[_0xe448('0x22')]][_0x4164bb]['variables'])){this[_0xe448('0xa')][_0x5c7b02[_0xe448('0x22')]][_0x4164bb][_0xe448('0xb')]={};}this[_0xe448('0xa')][_0x5c7b02[_0xe448('0x22')]][_0x4164bb][_0xe448('0xb')]=this[_0xe448('0xb')][_0x5c7b02[_0xe448('0x22')]];}}}}}catch(_0x274da5){logger['error']('[%s][voiceAgentReport][varset]',_0x5c7b02[_0xe448('0x22')],util[_0xe448('0x33')](_0x274da5,{'showHidden':![],'depth':null}));}};VoiceAgentReport['prototype']['addVariable']=function(_0x3f9bc2,_0x440978,_0x23f0e0){var _0x10e75b=[_0xe448('0x6d'),_0xe448('0x6e'),_0xe448('0x6f'),_0xe448('0x70'),_0xe448('0x71'),_0xe448('0x72'),_0xe448('0x73'),_0xe448('0x74'),_0xe448('0x75'),_0xe448('0x76'),_0xe448('0x77'),_0xe448('0x78'),_0xe448('0x79'),'memberdynamic',_0xe448('0x7a'),_0xe448('0x7b'),'membername',_0xe448('0x7c'),'memberrealtime'];if(!_['isNil'](_0x440978)&&!_[_0xe448('0x7d')](_0x10e75b,_0x440978)){if(_[_0xe448('0x1f')](this['variables'][_0x3f9bc2])){this[_0xe448('0xb')][_0x3f9bc2]={};}this[_0xe448('0xb')][_0x3f9bc2][_0x440978]=_0x23f0e0;}};VoiceAgentReport[_0xe448('0x1c')][_0xe448('0x7e')]=function(_0x5304d5){try{if(this[_0xe448('0x1e')](_0x5304d5)){logger[_0xe448('0x31')](_0xe448('0x7f'),_0x5304d5[_0xe448('0x22')],util[_0xe448('0x33')](_0x5304d5,{'showHidden':![],'depth':null}));if(this[_0xe448('0xa')][_0x5304d5['uniqueid']]){for(var _0x52a1a2 in this['channels'][_0x5304d5['uniqueid']]){if(this['channels'][_0x5304d5['uniqueid']]['hasOwnProperty'](_0x52a1a2)){if(this['channels'][_0x5304d5[_0xe448('0x22')]][_0x52a1a2][_0xe448('0x4e')]==_0xe448('0x5f')&&this[_0xe448('0xa')][_0x5304d5[_0xe448('0x22')]][_0x52a1a2][_0xe448('0x49')]){logger[_0xe448('0x20')](_0xe448('0x80'),_0x5304d5[_0xe448('0x22')],_0x52a1a2);this[_0xe448('0xa')][_0x5304d5[_0xe448('0x22')]][_0x52a1a2][_0xe448('0x81')]=moment()[_0xe448('0x34')](_0xe448('0x24'));}}}logger[_0xe448('0x31')](_0xe448('0x82'),_0x5304d5[_0xe448('0x22')],util['inspect'](_[_0xe448('0x83')](this['channels'][_0x5304d5[_0xe448('0x22')]]),{'showHidden':![],'depth':null}));ami[_0xe448('0x1d')](_0xe448('0x84'),_[_0xe448('0x83')](this[_0xe448('0xa')][_0x5304d5[_0xe448('0x22')]]));delete this[_0xe448('0xa')][_0x5304d5['uniqueid']];}if(this[_0xe448('0xb')][_0x5304d5[_0xe448('0x22')]]){delete this['variables'][_0x5304d5[_0xe448('0x22')]];}}}catch(_0x224b4d){logger['error'](_0xe448('0x85'),_0x5304d5['uniqueid'],util[_0xe448('0x33')](_0x224b4d,{'showHidden':![],'depth':null}));}};VoiceAgentReport['prototype'][_0xe448('0x19')]=function(_0x2cac1a){try{if(this[_0xe448('0x1e')](_0x2cac1a)){logger['debug'](_0xe448('0x86'),_0x2cac1a[_0xe448('0x22')],util[_0xe448('0x33')](_0x2cac1a,{'showHidden':![],'depth':null}));if(this['channels'][_0x2cac1a[_0xe448('0x87')]]){for(var _0x3d3516 in this['channels'][_0x2cac1a[_0xe448('0x87')]]){if(this['channels'][_0x2cac1a['transfereeuniqueid']][_0xe448('0x57')](_0x3d3516)){if(_0x2cac1a[_0xe448('0x88')]===_0x3d3516){logger[_0xe448('0x20')](_0xe448('0x89'),_0x2cac1a[_0xe448('0x22')],this[_0xe448('0xa')][_0x2cac1a['transfereeuniqueid']][_0x3d3516][_0xe448('0x36')],_0x3d3516);var _0x468dc7=moment();this[_0xe448('0xa')][_0x2cac1a[_0xe448('0x87')]][_0x3d3516][_0xe448('0x49')]=!![];this[_0xe448('0xa')][_0x2cac1a[_0xe448('0x87')]][_0x3d3516][_0xe448('0x81')]=moment()[_0xe448('0x34')](_0xe448('0x24'));this[_0xe448('0xa')][_0x2cac1a[_0xe448('0x87')]][_0x3d3516][_0xe448('0x40')]=_0xe448('0x5e');this[_0xe448('0xa')][_0x2cac1a['transfereeuniqueid']][_0x3d3516][_0xe448('0x4e')]='transfer';this[_0xe448('0xa')][_0x2cac1a['transfereeuniqueid']][_0x3d3516][_0xe448('0x61')]=_0x468dc7[_0xe448('0x8a')](this[_0xe448('0xa')][_0x2cac1a[_0xe448('0x87')]][_0x3d3516][_0xe448('0x5c')],_0xe448('0x8b'));}}}}if(this['channels'][_0x2cac1a[_0xe448('0x8c')]]){var _0x581bb4=this[_0xe448('0xa')][_0x2cac1a[_0xe448('0x8c')]];this[_0xe448('0xa')][_0x2cac1a[_0xe448('0x8c')]]=this[_0xe448('0xa')][_0x2cac1a[_0xe448('0x87')]];this['channels'][_0x2cac1a[_0xe448('0x87')]]=_0x581bb4;}}}catch(_0x12389e){logger['error'](_0xe448('0x8d'),_0x2cac1a[_0xe448('0x22')],util['inspect'](_0x12389e,{'showHidden':![],'depth':null}));}};VoiceAgentReport['prototype'][_0xe448('0x1b')]=function(_0x55b187){try{if(this[_0xe448('0x1e')](_0x55b187)){logger[_0xe448('0x31')](_0xe448('0x8e'),_0x55b187[_0xe448('0x22')],util[_0xe448('0x33')](_0x55b187,{'showHidden':![],'depth':null}));if(this['channels'][_0x55b187[_0xe448('0x87')]]){for(var _0x272ffa in this['channels'][_0x55b187[_0xe448('0x87')]]){if(this[_0xe448('0xa')][_0x55b187[_0xe448('0x87')]][_0xe448('0x57')](_0x272ffa)){if(_0x55b187[_0xe448('0x8f')]===_0x272ffa){logger[_0xe448('0x20')]('[%s][voiceAgentReport][blindtransfer]\x20agent:%s\x20destuniqueid:%s\x20lastevent:complete',_0x55b187[_0xe448('0x22')],this[_0xe448('0xa')][_0x55b187[_0xe448('0x87')]][_0x272ffa][_0xe448('0x36')],_0x272ffa);var _0x17f82b=moment();this['channels'][_0x55b187[_0xe448('0x87')]][_0x272ffa]['agentcomplete']=!![];this[_0xe448('0xa')][_0x55b187[_0xe448('0x87')]][_0x272ffa][_0xe448('0x81')]=_0x17f82b;this['channels'][_0x55b187[_0xe448('0x87')]][_0x272ffa][_0xe448('0x40')]=_0xe448('0x5e');this[_0xe448('0xa')][_0x55b187['transfereeuniqueid']][_0x272ffa][_0xe448('0x4e')]=_0xe448('0x5f');this[_0xe448('0xa')][_0x55b187[_0xe448('0x87')]][_0x272ffa]['talktime']=_0x17f82b['diff'](this['channels'][_0x55b187['transfereeuniqueid']][_0x272ffa]['agentconnectAt'],_0xe448('0x8b'));}}}}}}catch(_0x2bbd4b){logger[_0xe448('0x38')](_0xe448('0x90'),_0x55b187[_0xe448('0x22')],util['inspect'](_0x2bbd4b,{'showHidden':![],'depth':null}));}};VoiceAgentReport[_0xe448('0x1c')][_0xe448('0x16')]=function(_0x393171){var _0x519809='';try{if(this['isNotNull'](_0x393171)){logger['debug'](_0xe448('0x91'),_0x393171[_0xe448('0x22')],util[_0xe448('0x33')](_0x393171,{'showHidden':![],'depth':null}));if(_0x393171[_0xe448('0x92')]){_0x519809=_0x393171[_0xe448('0x92')][_0xe448('0x93')](0x0,_0x393171[_0xe448('0x92')][_0xe448('0x94')]('-'));if(this[_0xe448('0x43')][_0x519809]){logger[_0xe448('0x20')](_0xe448('0x95'),_0x393171[_0xe448('0x22')],_0x519809);this[_0xe448('0x43')][_0x519809]['onhold']=!![];}}}}catch(_0x26bcc6){logger[_0xe448('0x38')](_0xe448('0x96'),_0x393171[_0xe448('0x22')],util[_0xe448('0x33')](_0x26bcc6,{'showHidden':![],'depth':null}));}};VoiceAgentReport[_0xe448('0x1c')][_0xe448('0x18')]=function(_0x15f687){var _0x233193='';try{if(this[_0xe448('0x1e')](_0x15f687)){logger[_0xe448('0x31')](_0xe448('0x97'),_0x15f687[_0xe448('0x22')],util[_0xe448('0x33')](_0x15f687,{'showHidden':![],'depth':null}));if(_0x15f687[_0xe448('0x92')]){_0x233193=_0x15f687[_0xe448('0x92')][_0xe448('0x93')](0x0,_0x15f687[_0xe448('0x92')][_0xe448('0x94')]('-'));if(this[_0xe448('0x43')][_0x233193]){logger[_0xe448('0x20')](_0xe448('0x98'),_0x15f687[_0xe448('0x22')],_0x233193);this[_0xe448('0x43')][_0x233193][_0xe448('0x99')]=![];}}}}catch(_0x55ac0e){logger[_0xe448('0x38')](_0xe448('0x9a'),_0x15f687[_0xe448('0x22')],util[_0xe448('0x33')](_0x55ac0e,{'showHidden':![],'depth':null}));}};module[_0xe448('0x9b')]=VoiceAgentReport;