e79013bc8b3d264baa260a6f39069efcedea7110
[motion2.git] / server / services / ami / report / voiceQueueReport.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 _0xec64=['then','actionid','queuestatus','[voiceQueueReport][queuesummary]','summaryEvent','createReport','handleInboundQueueSummaryReport','createQueueSummaryReport','compareToInboundQueue','assign','type','outbound','statusRequests','completeEvent','push','[voiceQueueReport][queuesummary]\x20event:','[voiceQueueReport][queuesummarycomplete]\x20event:','custom:queuesummarycomplete','isNotNull','[%s][voiceQueueReport][queuecallerjoin]','queuecallerjoinAt','YYYY-MM-DD\x20HH:mm:ss','position','count','info','pick','keys','emitVoiceQueueChannelSave','queuecallerjoin','[%s][voiceQueueReport][queuecallerabandon]','last','queuecallercompleteAt','holdtime','queuecallerabandonAt','lastAssignedTo','[voiceQueueReport][queuecallerabandon]\x20name:%s\x20type:%s','[%s][voiceQueueReport][queuecallerleave]','queuecallerleaveAt','connectedlinenum','connectedlinename','[voiceQueueReport][queuecallerleave]\x20name:%s\x20type:%s\x20connectedlinenum:%s\x20connectedlinename:%s','queuecallerleave','[%s][voiceQueueReport][agentconnect]','COMPLETEDBYAGENT','[voiceQueueReport][agentconnect]\x20name:%s\x20type:%s\x20queuecallerexitreason:COMPLETEDBYAGENT','[%s][voiceQueueReport][agentcomplete]','assigned','queuecallerexit','queuecallerexitAt','transfer','reason','startsWith','local/','linkedid','add','queuecallerexitreason','FORWARDTRANSFER','transfertype','transferexten','transferuniqueid','[voiceQueueReport][agentcomplete]\x20name:%s\x20type:%s\x20queuecallerexitreason:FORWARDTRANSFER','COMPLETEDBY','toUpperCase','[voiceQueueReport][agentcomplete]\x20name:%s\x20type:%s\x20queuecallerexitreason:%s','[%s][voiceQueueReport][varset]','addVariable','variable','value','TIMEOUT','lastevent','timeout','[%s][voiceQueueReport][varset]\x20sending\x20timeout\x20event:','custom:timeout','[%s][voiceQueueReport][varset]\x20name:%s\x20type:%s\x20variable:%s\x20value:%s','rtpaudioqosbridged','rtpaudioqosjitterbridged','rtpaudioqosloss','rtpaudioqoslossbridged','rtpaudioqosrtt','rtpaudioqosrttbridged','sipcallid','bridgepeer','membercalls','memberdynamic','memberlastcall','memberpenalty','length','sumHoldTime','diff','seconds','milliseconds','unmanaged','[%s][voiceQueueReport][hangup]\x20sending\x20queuecallerunmanaged\x20event:','custom:queuecallerunmanaged','abandoned','[%s][voiceQueueReport][hangup]\x20sending\x20queuecallerabandon\x20event:','custom:queuecallerabandon','custom:voiceQueueReport','deleteChannelAfterTimeout','[%s][voiceQueueReport][hangup]','handleHangup','cause-txt','transferid','[%s][voiceQueueReport][syncHangup]\x20No\x20available\x20data\x20in\x20queueReports\x20structure:\x20clear\x20action\x20in\x20variablea\x20and\x20channels\x20structures\x20needed','transfereeuniqueid','secondtransfereruniqueid','ATTENDED','[%s][voiceQueueReport][attendedTransfer]\x20name:%s\x20type:%s\x20transferexten:%s\x20transferuniqueid:%s','transfertargetuniqueid','origtransfererexten','origtransfereruniqueid','secondtransfererexten','[%s][voiceQueueReport][attendedtransfer]','syncBlindTransfer','BLINDTRANSFER','BLIND','extension','BlindTransfer','[%s][voiceQueueReport][blindtransfer]','[%s][voiceQueueReport][musiconholdstart]','[%s][voiceQueueReport][musiconholdstart]\x20mohstarttime:%s','mohstarttime','[%s][voiceQueueReport][musiconholdstop]','mohtime','[%s][voiceQueueReport][musiconholdstop]\x20mohtime:%s','syncNewExten','[%s][voiceQueueReport][newexten]\x20event:','toLowerCase','set','applicationdata','appdata','cdr(','[%s][voiceQueueReport][newexten]\x20application:%s\x20appdata:%s','application','split','match','[%s][voiceQueueReport][newexten]','moment','ioredis','../../../config/logger','ami','../ami','../model/queueReport','../model/voiceQueueSummary','defaults','localhost','socket.io-emitter','redis','prototype','tail','finally','queueReports','realtime','agents','queueChannels','voiceQueues','campaigns','summary','variables','queuesummary','syncQueueSummary','bind','queuesummarycomplete','syncQueueSummaryComplete','queuemember','syncQueueMember','queuestatuscomplete','syncQueueStatusComplete','syncQueueCallerJoin','queuecallerabandon','syncQueueCallerAbandon','syncQueueCallerLeave','syncAgentComplete','agentconnect','syncAgentConnect','varset','syncVarSet','hangup','syncHangup','fullybooted','syncFullyBooted','musiconholdstart','syncMusicOnHoldStart','syncMusicOnHoldStop','attendedtransfer','syncAttendedTransfer','blindtransfer','loopQueueSummary','loopQueueShow','hasOwnProperty','isEmpty','originated','waiting','queueStatusComplete','unlockRR','queuecallercomplete','clearZombieChannels','channels','switch','sequence','enqueue','isNil','Action','status','channel','No\x20such\x20channel','inspect','error','[%s][voiceQueueReport][checkQueueReport]','[FullyBooted]\x20clear\x20realtime','clearQueueReport','emitVoiceQueueChannelRemove','clearqueuereport','emit','debug','[%s][voiceQueueReport][',']\x20sending\x20voice_queue_channel:save\x20event:','uniqueid','format','queue','voice_queue_channel:save','voice_queue_presence:save','ATTENDEDTRANSFER','voice_queue_channel:remove','inbound','[voiceQueueReport][queuesummary]\x20sending\x20voice_queue:save\x20event:','name','voice_queue:save','isUndefined','queues','catch','[voiceQueueReport][queues]','isRunning'];(function(_0x482b54,_0x14b147){var _0x15f42c=function(_0x349738){while(--_0x349738){_0x482b54['push'](_0x482b54['shift']());}};_0x15f42c(++_0x14b147);}(_0xec64,0x172));var _0x4ec6=function(_0x5712f8,_0x17156b){_0x5712f8=_0x5712f8-0x0;var _0x14a364=_0xec64[_0x5712f8];return _0x14a364;};'use strict';var _=require('lodash');var moment=require(_0x4ec6('0x0'));var util=require('util');var Redis=require(_0x4ec6('0x1'));var config=require('../../../config/environment');var logger=require(_0x4ec6('0x2'))(_0x4ec6('0x3'));var ami=require(_0x4ec6('0x4'));var QueueReport=require(_0x4ec6('0x5'));var VoiceQueueSummary=require(_0x4ec6('0x6'));config['redis']=_[_0x4ec6('0x7')](config['redis'],{'host':_0x4ec6('0x8'),'port':0x18eb});var io=require(_0x4ec6('0x9'))(new Redis(config[_0x4ec6('0xa')]));var Sequence=function(){};Sequence[_0x4ec6('0xb')]['enqueue']=function(_0x431aac){this['tail']=this[_0x4ec6('0xc')]?this['tail'][_0x4ec6('0xd')](_0x431aac):_0x431aac();};function VoiceQueueReport(_0x377c37){this['sequence']=new Sequence();this[_0x4ec6('0xe')]={};this[_0x4ec6('0xf')]=_0x377c37;this['agents']=_0x377c37[_0x4ec6('0x10')];this['channels']=_0x377c37[_0x4ec6('0x11')];this[_0x4ec6('0x12')]=_0x377c37['voiceQueues'];this[_0x4ec6('0x13')]=_0x377c37[_0x4ec6('0x13')];this[_0x4ec6('0x14')]=initializeSummary();this[_0x4ec6('0x15')]={};ami['on'](_0x4ec6('0x16'),this[_0x4ec6('0x17')][_0x4ec6('0x18')](this));ami['on'](_0x4ec6('0x19'),this[_0x4ec6('0x1a')][_0x4ec6('0x18')](this));ami['on'](_0x4ec6('0x1b'),this[_0x4ec6('0x1c')][_0x4ec6('0x18')](this));ami['on'](_0x4ec6('0x1d'),this[_0x4ec6('0x1e')][_0x4ec6('0x18')](this));ami['on']('queuecallerjoin',this[_0x4ec6('0x1f')][_0x4ec6('0x18')](this));ami['on'](_0x4ec6('0x20'),this[_0x4ec6('0x21')]['bind'](this));ami['on']('queuecallerleave',this[_0x4ec6('0x22')][_0x4ec6('0x18')](this));ami['on']('agentcomplete',this[_0x4ec6('0x23')][_0x4ec6('0x18')](this));ami['on'](_0x4ec6('0x24'),this[_0x4ec6('0x25')]['bind'](this));ami['on'](_0x4ec6('0x26'),this[_0x4ec6('0x27')][_0x4ec6('0x18')](this));ami['on'](_0x4ec6('0x28'),this[_0x4ec6('0x29')][_0x4ec6('0x18')](this));ami['on'](_0x4ec6('0x2a'),this[_0x4ec6('0x2b')][_0x4ec6('0x18')](this));ami['on'](_0x4ec6('0x2c'),this[_0x4ec6('0x2d')]['bind'](this));ami['on']('musiconholdstop',this[_0x4ec6('0x2e')][_0x4ec6('0x18')](this));ami['on'](_0x4ec6('0x2f'),this[_0x4ec6('0x30')]['bind'](this));ami['on'](_0x4ec6('0x31'),this['syncBlindTransfer']['bind'](this));this[_0x4ec6('0x32')]();this[_0x4ec6('0x33')]();}function clearChannels(_0x363699){if(!_['isEmpty'](_0x363699)){for(var _0x2ca3e6 in _0x363699){if(_0x363699[_0x4ec6('0x34')](_0x2ca3e6)){delete _0x363699[_0x2ca3e6];}}}}function clearCampaigns(_0x1114c9){if(!_[_0x4ec6('0x35')](_0x1114c9)){for(var _0x267832 in _0x1114c9){if(_0x1114c9[_0x4ec6('0x34')](_0x267832)){_0x1114c9[_0x267832][_0x4ec6('0x36')]=0x0;}}}}function clearVoiceQueues(_0xafa317){if(!_[_0x4ec6('0x35')](_0xafa317)){for(var _0x31c0b5 in _0xafa317){if(_0xafa317[_0x4ec6('0x34')](_0x31c0b5)){_0xafa317[_0x31c0b5]['originated']=0x0;_0xafa317[_0x31c0b5]['talking']=0x0;_0xafa317[_0x31c0b5]['pTalking']=0x0;_0xafa317[_0x31c0b5][_0x4ec6('0x37')]=0x0;_0xafa317[_0x31c0b5][_0x4ec6('0x38')]=!![];}}}}function clearAgentBooked(_0x28b80e){if(!_[_0x4ec6('0x35')](_0x28b80e)){for(var _0x21b20d in _0x28b80e){if(_0x28b80e[_0x4ec6('0x34')](_0x21b20d)){_0x28b80e[_0x21b20d][_0x4ec6('0x39')]=!![];}}}}function initializeSummary(){return{'id':null,'completeEvent':null,'isRunning':![],'queues':{},'queuestatus':{},'statusRequests':0x0};}function hasCallerLeftTheQueue(_0x15d4b9){return _0x15d4b9['queuecallerexit']||_0x15d4b9['queuecallerabandon']||_0x15d4b9[_0x4ec6('0x3a')];}VoiceQueueReport[_0x4ec6('0xb')][_0x4ec6('0x3b')]=function(){var _0x3488b3=this;for(var _0x5a0393 in this[_0x4ec6('0x3c')]){if(this['channels'][_0x4ec6('0x34')](_0x5a0393)&&!this[_0x4ec6('0x3c')][_0x5a0393][_0x4ec6('0x3d')]){this[_0x4ec6('0x3e')][_0x4ec6('0x3f')](function(){if(!_[_0x4ec6('0x40')](_0x3488b3[_0x4ec6('0x3c')][_0x5a0393])){return ami[_0x4ec6('0x41')]({'action':_0x4ec6('0x42'),'channel':_0x3488b3[_0x4ec6('0x3c')][_0x5a0393][_0x4ec6('0x43')]})['catch'](function(_0x23a73b){if(_0x23a73b['message']===_0x4ec6('0x44')){setTimeout(function(){if(_0x3488b3[_0x4ec6('0x3c')][_0x5a0393]){delete _0x3488b3[_0x4ec6('0x3c')][_0x5a0393];logger['error']('[%s][voiceQueueReport][checkChannel]',_0x5a0393,util[_0x4ec6('0x45')](_0x23a73b,{'showHidden':![],'depth':null}));}if(_0x3488b3[_0x4ec6('0xe')][_0x5a0393]){delete _0x3488b3[_0x4ec6('0xe')][_0x5a0393];logger[_0x4ec6('0x46')](_0x4ec6('0x47'),_0x5a0393,util[_0x4ec6('0x45')](_0x23a73b,{'showHidden':![],'depth':null}));}if(_0x3488b3[_0x4ec6('0x15')][_0x5a0393]){delete _0x3488b3[_0x4ec6('0x15')][_0x5a0393];logger[_0x4ec6('0x46')]('[%s][voiceQueueReport][checkVariables]',_0x5a0393,util[_0x4ec6('0x45')](_0x23a73b,{'showHidden':![],'depth':null}));}},0x1f40);}});}});}}};VoiceQueueReport[_0x4ec6('0xb')]['syncFullyBooted']=function(){logger[_0x4ec6('0x46')](_0x4ec6('0x48'));clearChannels(this[_0x4ec6('0x3c')]);this[_0x4ec6('0x49')](this[_0x4ec6('0xe')]);clearAgentBooked(this[_0x4ec6('0x10')]);clearVoiceQueues(this['voiceQueues']);clearCampaigns(this[_0x4ec6('0x13')]);this['summary']=initializeSummary();};VoiceQueueReport[_0x4ec6('0xb')][_0x4ec6('0x49')]=function(_0x15e554){var _0x28193f=this;if(!_['isEmpty'](_0x15e554)){for(var _0x10f2ef in _0x15e554){if(_0x15e554[_0x4ec6('0x34')](_0x10f2ef)){_0x28193f[_0x4ec6('0x4a')](_0x15e554[_0x10f2ef],_0x4ec6('0x4b'));delete _0x15e554[_0x10f2ef];}}}};VoiceQueueReport[_0x4ec6('0xb')]['emit']=function(_0x3bc5c0,_0x2e8b17,_0xaa4658){io['to'](_0x3bc5c0)[_0x4ec6('0x4c')](_0x2e8b17,_0xaa4658);};VoiceQueueReport['prototype']['emitVoiceQueueChannelSave']=function(_0x26b548,_0x344581){logger[_0x4ec6('0x4d')](_0x4ec6('0x4e')+_0x344581+_0x4ec6('0x4f'),_0x26b548[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x26b548,{'showHidden':![],'depth':null}));this[_0x4ec6('0x4c')](util[_0x4ec6('0x51')]('voice:queue:%s',_0x26b548[_0x4ec6('0x52')]),_0x4ec6('0x53'),_0x26b548);io[_0x4ec6('0x4c')](_0x4ec6('0x54'),_0x26b548);};VoiceQueueReport[_0x4ec6('0xb')]['emitVoiceQueueChannelRemove']=function(_0x112fe0,_0x581231){logger[_0x4ec6('0x4d')](_0x4ec6('0x4e')+_0x581231+']\x20sending\x20voice_queue_channel:remove\x20event:',_0x112fe0[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x112fe0,{'showHidden':![],'depth':null}));if(_0x112fe0['queuecallerexitreason']===_0x4ec6('0x55')){return;}this[_0x4ec6('0x4c')](util[_0x4ec6('0x51')]('voice:queue:%s',_0x112fe0[_0x4ec6('0x52')]),_0x4ec6('0x56'),_0x112fe0);io[_0x4ec6('0x4c')]('voice_queue_presence:remove',_0x112fe0);};VoiceQueueReport[_0x4ec6('0xb')]['emitInboundVoiceQueueSummary']=function(_0x2bee4e){if(_0x2bee4e['type']===_0x4ec6('0x57')){logger[_0x4ec6('0x4d')](_0x4ec6('0x58'),util['inspect'](_0x2bee4e,{'showHidden':![],'depth':null}));this['emit'](util[_0x4ec6('0x51')]('voice:queue:%s',_0x2bee4e[_0x4ec6('0x59')]),_0x4ec6('0x5a'),_0x2bee4e);}};VoiceQueueReport[_0x4ec6('0xb')]['isNotNull']=function(_0x36f216){return _0x36f216!==null&&!_[_0x4ec6('0x5b')](_0x36f216);};VoiceQueueReport['prototype'][_0x4ec6('0x33')]=function(){var _0x3b4a9a=this;setInterval(function(){_0x3b4a9a[_0x4ec6('0x3b')]();ami[_0x4ec6('0x41')]({'action':_0x4ec6('0x5c')})[_0x4ec6('0x5d')](function(_0x4c4b2b){logger[_0x4ec6('0x46')](_0x4ec6('0x5e'),util[_0x4ec6('0x45')](_0x4c4b2b,{'showHidden':![],'depth':null}));});},0x2710);};VoiceQueueReport[_0x4ec6('0xb')][_0x4ec6('0x32')]=function(){var _0x1381a0=this;setInterval(function(){if(!_0x1381a0[_0x4ec6('0x14')][_0x4ec6('0x5f')]){return ami[_0x4ec6('0x41')]({'action':_0x4ec6('0x16')})[_0x4ec6('0x60')](function(_0x5111d6){_0x1381a0[_0x4ec6('0x14')]['id']=_0x5111d6[_0x4ec6('0x61')];_0x1381a0[_0x4ec6('0x14')][_0x4ec6('0x5f')]=!![];_0x1381a0[_0x4ec6('0x14')][_0x4ec6('0x62')][_0x5111d6[_0x4ec6('0x61')]]={};})[_0x4ec6('0x5d')](function(_0x381f93){logger['error'](_0x4ec6('0x63'),util['inspect'](_0x381f93,{'showHidden':![],'depth':null}));});}},0x3e8);};VoiceQueueReport[_0x4ec6('0xb')]['createQueueSummaryReport']=function(_0x2dd6ff,_0xe13b7){var _0xb28962;if(this[_0x4ec6('0x14')]&&this[_0x4ec6('0x14')][_0x4ec6('0x5c')]&&this[_0x4ec6('0x14')]['queues'][_0x2dd6ff[_0x4ec6('0x59')]]){_0xb28962=this[_0x4ec6('0x14')][_0x4ec6('0x5c')][_0x2dd6ff[_0x4ec6('0x59')]][_0x4ec6('0x64')];}var _0x5e1883=new VoiceQueueSummary(_0x2dd6ff);return _0x5e1883[_0x4ec6('0x65')](_0xe13b7[_0x4ec6('0x10')],this[_0x4ec6('0x10')],_0xb28962,this[_0x4ec6('0xf')][_0x4ec6('0x3c')]);};VoiceQueueReport[_0x4ec6('0xb')][_0x4ec6('0x66')]=function(_0x3ca5d6,_0x5c8c87){var _0x46b477=this[_0x4ec6('0x67')](_0x3ca5d6,_0x5c8c87);var _0x3b488b=![];_0x3b488b=_0x46b477[_0x4ec6('0x68')](_0x3ca5d6);if(_0x3b488b){Object[_0x4ec6('0x69')](_0x3ca5d6,_0x46b477);this[_0x4ec6('0xf')][_0x4ec6('0x12')][_0x3ca5d6[_0x4ec6('0x59')]]=_0x3ca5d6;this['emitInboundVoiceQueueSummary'](_0x46b477);}};VoiceQueueReport[_0x4ec6('0xb')][_0x4ec6('0x1e')]=function(_0x3e7eb7){var _0x333f4d=null;var _0x202a4b=this['summary']['id'];if(this[_0x4ec6('0x14')][_0x4ec6('0x62')][_0x202a4b]){_0x333f4d=this['summary'][_0x4ec6('0x62')][_0x202a4b][_0x3e7eb7[_0x4ec6('0x61')]];}if(!_0x333f4d){this['summary']=initializeSummary();return;}var _0x478ec7=this['voiceQueues'][_0x333f4d[_0x4ec6('0x52')]];if(_0x478ec7[_0x4ec6('0x6a')]===_0x4ec6('0x57')){this[_0x4ec6('0x66')](_0x478ec7,_0x333f4d);}else if(_0x478ec7[_0x4ec6('0x6a')]===_0x4ec6('0x6b')){var _0x209663=this[_0x4ec6('0x67')](_0x478ec7,_0x333f4d);ami[_0x4ec6('0x4c')]('custom:queuesummary',_0x209663);}this[_0x4ec6('0x14')]['statusRequests']-=0x1;var _0x2b5d3a=this['summary'][_0x4ec6('0x6c')]>0x0?!![]:![];if(!_0x2b5d3a){return this[_0x4ec6('0x1a')](this[_0x4ec6('0x14')][_0x4ec6('0x6d')]);}};VoiceQueueReport[_0x4ec6('0xb')][_0x4ec6('0x1c')]=function(_0x243d8e){var _0x14c04c=this[_0x4ec6('0x14')]['id'];if(this[_0x4ec6('0x14')][_0x4ec6('0x62')][_0x14c04c]&&this['summary'][_0x4ec6('0x62')][_0x14c04c][_0x243d8e[_0x4ec6('0x61')]]){this[_0x4ec6('0x14')][_0x4ec6('0x62')][_0x14c04c][_0x243d8e[_0x4ec6('0x61')]][_0x4ec6('0x10')][_0x4ec6('0x6e')](_0x243d8e);}};VoiceQueueReport[_0x4ec6('0xb')][_0x4ec6('0x17')]=function(_0x35907a){var _0x5cb80f=this;try{if(this['isNotNull'](_0x35907a)&&this['isNotNull'](_0x35907a['queue'])){logger[_0x4ec6('0x4d')](_0x4ec6('0x6f'),util['inspect'](_0x35907a,{'showHidden':![],'depth':null}));var _0x4201e2=this[_0x4ec6('0x12')][_0x35907a[_0x4ec6('0x52')]];if(_0x4201e2){logger['debug']('[voiceQueueReport][queuesummary]\x20name:%s',_0x4201e2[_0x4ec6('0x59')]);this[_0x4ec6('0x14')][_0x4ec6('0x5c')][_0x4201e2[_0x4ec6('0x59')]]={'summaryEvent':_0x35907a};this[_0x4ec6('0x14')][_0x4ec6('0x6c')]+=0x1;return ami[_0x4ec6('0x41')]({'action':_0x4ec6('0x62'),'queue':_0x4201e2[_0x4ec6('0x59')]})[_0x4ec6('0x60')](function(_0x4f34ce){if(!_0x5cb80f[_0x4ec6('0x14')][_0x4ec6('0x62')][_0x35907a[_0x4ec6('0x61')]]){_0x5cb80f[_0x4ec6('0x14')][_0x4ec6('0x62')][_0x35907a[_0x4ec6('0x61')]]={};}_0x5cb80f[_0x4ec6('0x14')]['queuestatus'][_0x35907a[_0x4ec6('0x61')]][_0x4f34ce['actionid']]={'queue':_0x4201e2[_0x4ec6('0x59')],'agents':[]};})[_0x4ec6('0x5d')](function(_0x2a4fb2){throw _0x2a4fb2;});}}}catch(_0x17d812){logger[_0x4ec6('0x46')](_0x4ec6('0x63'),util[_0x4ec6('0x45')](_0x17d812,{'showHidden':![],'depth':null}));}};VoiceQueueReport['prototype'][_0x4ec6('0x1a')]=function(_0x171406){if(this[_0x4ec6('0x14')]['statusRequests']>0x0){this[_0x4ec6('0x14')][_0x4ec6('0x6d')]=_0x171406;return;}logger[_0x4ec6('0x4d')](_0x4ec6('0x70'),util['inspect'](_0x171406,{'showHidden':![],'depth':null}));this[_0x4ec6('0x14')]=initializeSummary();ami['emit'](_0x4ec6('0x71'),{});};VoiceQueueReport[_0x4ec6('0xb')][_0x4ec6('0x1f')]=function(_0x5c180b){try{if(this[_0x4ec6('0x72')](_0x5c180b)){logger[_0x4ec6('0x4d')](_0x4ec6('0x73'),_0x5c180b[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x5c180b,{'showHidden':![],'depth':null}));if(_[_0x4ec6('0x5b')](this[_0x4ec6('0xe')][_0x5c180b[_0x4ec6('0x50')]])){this[_0x4ec6('0xe')][_0x5c180b[_0x4ec6('0x50')]]=[];}if(_[_0x4ec6('0x5b')](this['channels'][_0x5c180b[_0x4ec6('0x50')]])){this[_0x4ec6('0x3c')][_0x5c180b['uniqueid']]={};}var _0x278a27=new QueueReport();_0x278a27[_0x4ec6('0x52')]=_0x5c180b[_0x4ec6('0x52')];_0x278a27[_0x4ec6('0x6a')]=this['voiceQueues'][_0x278a27['queue']]&&this[_0x4ec6('0x12')][_0x278a27[_0x4ec6('0x52')]][_0x4ec6('0x6a')]?this['voiceQueues'][_0x278a27[_0x4ec6('0x52')]]['type']||_0x4ec6('0x57'):_0x4ec6('0x57');_0x278a27[_0x4ec6('0x74')]=moment()[_0x4ec6('0x51')](_0x4ec6('0x75'));_0x278a27[_0x4ec6('0x76')]=_0x5c180b[_0x4ec6('0x76')];_0x278a27['count']=_0x5c180b[_0x4ec6('0x77')];_0x278a27[_0x4ec6('0x50')]=_0x5c180b[_0x4ec6('0x50')];logger[_0x4ec6('0x78')]('[voiceQueueReport][queuecallerjoin]\x20name:%s\x20type:%s',_0x278a27['queue'],_0x278a27[_0x4ec6('0x6a')]);Object[_0x4ec6('0x69')](_0x278a27,_[_0x4ec6('0x79')](_0x5c180b,_[_0x4ec6('0x7a')](_0x278a27)));this[_0x4ec6('0xe')][_0x5c180b['uniqueid']][_0x4ec6('0x6e')](_0x278a27);this[_0x4ec6('0x3c')][_0x5c180b[_0x4ec6('0x50')]]=_0x278a27;this[_0x4ec6('0x7b')](_0x278a27,_0x4ec6('0x7c'));}}catch(_0x576329){logger['error'](_0x4ec6('0x73'),_0x5c180b['uniqueid'],util[_0x4ec6('0x45')](_0x576329,{'showHidden':![],'depth':null}));}};VoiceQueueReport[_0x4ec6('0xb')]['syncQueueCallerAbandon']=function(_0x16fa40){try{if(this['isNotNull'](_0x16fa40)){logger[_0x4ec6('0x4d')](_0x4ec6('0x7d'),_0x16fa40[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x16fa40,{'showHidden':![],'depth':null}));if(this[_0x4ec6('0xe')][_0x16fa40[_0x4ec6('0x50')]]){var _0x3442f8=_[_0x4ec6('0x7e')](this[_0x4ec6('0xe')][_0x16fa40[_0x4ec6('0x50')]]);_0x3442f8[_0x4ec6('0x3a')]=![];_0x3442f8[_0x4ec6('0x7f')]=null;_0x3442f8[_0x4ec6('0x80')]=_0x16fa40['holdtime'];_0x3442f8['originalposition']=_0x16fa40['originalposition'];_0x3442f8['queuecallerabandon']=!![];_0x3442f8[_0x4ec6('0x81')]=moment()['format']('YYYY-MM-DD\x20HH:mm:ss');_0x3442f8['queuecallerexitreason']='ABANDONED';_0x3442f8[_0x4ec6('0x82')]=null;logger[_0x4ec6('0x78')](_0x4ec6('0x83'),_0x3442f8[_0x4ec6('0x52')],_0x3442f8[_0x4ec6('0x6a')]);this[_0x4ec6('0x3c')][_0x16fa40['uniqueid']]=_0x3442f8;this[_0x4ec6('0x4a')](_0x3442f8,_0x4ec6('0x20'));}}}catch(_0xde137a){logger[_0x4ec6('0x46')]('[%s][voiceQueueReport][queuecallerabandon]',_0x16fa40[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0xde137a,{'showHidden':![],'depth':null}));}};VoiceQueueReport['prototype'][_0x4ec6('0x22')]=function(_0x32f833){try{if(this[_0x4ec6('0x72')](_0x32f833)){logger['debug'](_0x4ec6('0x84'),_0x32f833[_0x4ec6('0x50')],util['inspect'](_0x32f833,{'showHidden':![],'depth':null}));if(this[_0x4ec6('0xe')][_0x32f833['uniqueid']]){var _0x3a8743=_[_0x4ec6('0x7e')](this[_0x4ec6('0xe')][_0x32f833[_0x4ec6('0x50')]]);_0x3a8743[_0x4ec6('0x85')]=moment()[_0x4ec6('0x51')](_0x4ec6('0x75'));_0x3a8743[_0x4ec6('0x86')]=_0x32f833[_0x4ec6('0x86')];_0x3a8743['connectedlinename']=_0x32f833[_0x4ec6('0x87')];logger[_0x4ec6('0x78')](_0x4ec6('0x88'),_0x3a8743[_0x4ec6('0x52')],_0x3a8743[_0x4ec6('0x6a')],_0x32f833[_0x4ec6('0x86')],_0x32f833[_0x4ec6('0x87')]);this[_0x4ec6('0x3c')][_0x32f833[_0x4ec6('0x50')]]=_0x3a8743;this[_0x4ec6('0x7b')](_0x3a8743,_0x4ec6('0x89'));}}}catch(_0x583a0e){logger[_0x4ec6('0x46')](_0x4ec6('0x84'),_0x32f833[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x583a0e,{'showHidden':![],'depth':null}));}};VoiceQueueReport[_0x4ec6('0xb')][_0x4ec6('0x25')]=function(_0x41ca62){try{if(this['isNotNull'](_0x41ca62)){logger[_0x4ec6('0x4d')](_0x4ec6('0x8a'),_0x41ca62[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x41ca62,{'showHidden':![],'depth':null}));if(this['queueReports'][_0x41ca62[_0x4ec6('0x50')]]){var _0x32e4f4=_[_0x4ec6('0x7e')](this[_0x4ec6('0xe')][_0x41ca62[_0x4ec6('0x50')]]);_0x32e4f4[_0x4ec6('0x3a')]=!![];_0x32e4f4['queuecallerexitreason']=_0x4ec6('0x8b');logger['info'](_0x4ec6('0x8c'),_0x32e4f4[_0x4ec6('0x52')],_0x32e4f4[_0x4ec6('0x6a')]);}}}catch(_0x2448ce){logger[_0x4ec6('0x46')](_0x4ec6('0x8a'),_0x41ca62[_0x4ec6('0x50')],util['inspect'](_0x2448ce,{'showHidden':![],'depth':null}));}};VoiceQueueReport[_0x4ec6('0xb')][_0x4ec6('0x23')]=function(_0x536b03){try{if(this[_0x4ec6('0x72')](_0x536b03)){logger[_0x4ec6('0x4d')](_0x4ec6('0x8d'),_0x536b03['uniqueid'],util['inspect'](_0x536b03,{'showHidden':![],'depth':null}));if(this['queueReports'][_0x536b03[_0x4ec6('0x50')]]){var _0x40a06a=_['last'](this['queueReports'][_0x536b03[_0x4ec6('0x50')]]);_0x40a06a[_0x4ec6('0x20')]=![];_0x40a06a['queuecallerabandonAt']=null;_0x40a06a[_0x4ec6('0x8e')]=!![];_0x40a06a['lastAssignedTo']=_0x536b03['membername'];_0x40a06a[_0x4ec6('0x80')]=_0x536b03[_0x4ec6('0x80')];_0x40a06a[_0x4ec6('0x3a')]=!![];_0x40a06a[_0x4ec6('0x8f')]=![];_0x40a06a[_0x4ec6('0x90')]=null;if(!_0x40a06a[_0x4ec6('0x91')]){if(_0x536b03[_0x4ec6('0x92')]==_0x4ec6('0x91')){_0x40a06a['queuecallerexitreason']='COMPLETED';logger[_0x4ec6('0x78')]('[voiceQueueReport][agentcomplete]\x20name:%s\x20type:%s\x20queuecallerexitreason:COMPLETED',_0x40a06a[_0x4ec6('0x52')],_0x40a06a[_0x4ec6('0x6a')]);}else{if(_[_0x4ec6('0x93')](_0x536b03['channel']['toLowerCase'](),_0x4ec6('0x94'))){if(this[_0x4ec6('0xe')][_0x536b03[_0x4ec6('0x95')]]){var _0x1cf8a=_[_0x4ec6('0x7e')](this['queueReports'][_0x536b03[_0x4ec6('0x95')]]);_0x1cf8a[_0x4ec6('0x3a')]=![];_0x1cf8a[_0x4ec6('0x8f')]=!![];_0x1cf8a[_0x4ec6('0x90')]=moment(_0x40a06a[_0x4ec6('0x74')])[_0x4ec6('0x96')](_0x536b03[_0x4ec6('0x80')],'seconds')[_0x4ec6('0x51')]('YYYY-MM-DD\x20HH:mm:ss');_0x1cf8a[_0x4ec6('0x97')]=_0x4ec6('0x98');_0x1cf8a['transfer']=!![];_0x1cf8a[_0x4ec6('0x99')]='FORWARD';_0x1cf8a[_0x4ec6('0x9a')]=_0x536b03['destexten'];_0x1cf8a[_0x4ec6('0x9b')]=_0x536b03['uniqueid'];logger[_0x4ec6('0x78')](_0x4ec6('0x9c'),_0x1cf8a[_0x4ec6('0x52')],_0x1cf8a[_0x4ec6('0x6a')]);var _0x29296b=this[_0x4ec6('0xe')][_0x536b03[_0x4ec6('0x95')]];this['queueReports'][_0x536b03['linkedid']]=this[_0x4ec6('0xe')][_0x536b03['uniqueid']];this[_0x4ec6('0xe')][_0x536b03[_0x4ec6('0x50')]]=_0x29296b;}}else{_0x40a06a[_0x4ec6('0x97')]=_0x4ec6('0x9d')+_0x536b03[_0x4ec6('0x92')][_0x4ec6('0x9e')]();logger['info'](_0x4ec6('0x9f'),_0x40a06a[_0x4ec6('0x52')],_0x40a06a[_0x4ec6('0x6a')],_0x40a06a['queuecallerexitreason']);}}}this[_0x4ec6('0x3c')][_0x536b03[_0x4ec6('0x50')]]=_0x40a06a;}}}catch(_0x5353a9){logger['error'](_0x4ec6('0x8d'),_0x536b03[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x5353a9,{'showHidden':![],'depth':null}));}};VoiceQueueReport[_0x4ec6('0xb')]['syncVarSet']=function(_0x3746a4){try{if(this['isNotNull'](_0x3746a4)){logger[_0x4ec6('0x4d')](_0x4ec6('0xa0'),_0x3746a4['uniqueid'],util[_0x4ec6('0x45')](_0x3746a4,{'showHidden':![],'depth':null}));this[_0x4ec6('0xa1')](_0x3746a4[_0x4ec6('0x50')],_['keys'](_0x3746a4['variable'])[0x0],_0x3746a4['value']);if(this[_0x4ec6('0xe')][_0x3746a4[_0x4ec6('0x50')]]){var _0x471f57=_[_0x4ec6('0x7e')](this[_0x4ec6('0xe')][_0x3746a4[_0x4ec6('0x50')]]);if(_0x471f57){if(this[_0x4ec6('0x72')](_0x3746a4['variable'])&&this['isNotNull'](_0x3746a4[_0x4ec6('0xa2')][_0x4ec6('0x62')])){switch(_0x3746a4[_0x4ec6('0xa3')]){case'CONTINUE':_0x471f57[_0x4ec6('0x8f')]=![];_0x471f57[_0x4ec6('0x90')]=null;break;case _0x4ec6('0xa4'):_0x471f57[_0x4ec6('0xa5')]=_0x4ec6('0xa6');_0x471f57[_0x4ec6('0x8f')]=!![];_0x471f57[_0x4ec6('0x90')]=moment()['format'](_0x4ec6('0x75'));_0x471f57[_0x4ec6('0x85')]=moment()[_0x4ec6('0x51')](_0x4ec6('0x75'));logger[_0x4ec6('0x4d')](_0x4ec6('0xa7'),_0x3746a4[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x471f57,{'showHidden':![],'depth':null}));ami[_0x4ec6('0x4c')](_0x4ec6('0xa8'),_0x471f57);break;default:_0x471f57[_0x4ec6('0x8f')]=!![];_0x471f57[_0x4ec6('0x90')]=moment()[_0x4ec6('0x51')](_0x4ec6('0x75'));_0x471f57[_0x4ec6('0x85')]=moment()['format']('YYYY-MM-DD\x20HH:mm:ss');}_0x471f57[_0x4ec6('0x20')]=![];_0x471f57[_0x4ec6('0x81')]=null;_0x471f57['queuecallerexitreason']=_0x3746a4[_0x4ec6('0xa3')];this['channels'][_0x3746a4[_0x4ec6('0x50')]]=_0x471f57;this[_0x4ec6('0x4a')](_0x471f57,_0x4ec6('0x26'));}else if(this[_0x4ec6('0x72')](_0x3746a4['variable'])&&this[_0x4ec6('0x72')](_0x3746a4[_0x4ec6('0xa2')]['queueposition'])){if(!_0x471f57['queuecallerabandon']){_0x471f57['queuecallerexit']=!![];_0x471f57['queuecallerexitAt']=moment()['format'](_0x4ec6('0x75'));_0x471f57[_0x4ec6('0x97')]='EXITWITHKEY';_0x471f57[_0x4ec6('0x85')]=moment()[_0x4ec6('0x51')](_0x4ec6('0x75'));this['channels'][_0x3746a4[_0x4ec6('0x50')]]=_0x471f57;}}logger[_0x4ec6('0x78')](_0x4ec6('0xa9'),_0x3746a4[_0x4ec6('0x50')],_0x471f57[_0x4ec6('0x52')],_0x471f57[_0x4ec6('0x6a')],_[_0x4ec6('0x7a')](_0x3746a4[_0x4ec6('0xa2')])[0x0],_0x3746a4[_0x4ec6('0xa3')]);_0x471f57['variables']=this[_0x4ec6('0x15')][_0x3746a4['uniqueid']];}}}}catch(_0x100cee){logger[_0x4ec6('0x46')](_0x4ec6('0xa0'),_0x3746a4[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x100cee,{'showHidden':![],'depth':null}));}};VoiceQueueReport[_0x4ec6('0xb')][_0x4ec6('0xa1')]=function(_0x1fe505,_0x5028c9,_0x17d555){var _0x1eb078=['rtpaudioqos',_0x4ec6('0xaa'),'rtpaudioqosjitter',_0x4ec6('0xab'),_0x4ec6('0xac'),_0x4ec6('0xad'),_0x4ec6('0xae'),_0x4ec6('0xaf'),_0x4ec6('0xb0'),'sipuri',_0x4ec6('0xb1'),'bridgepvtcallid',_0x4ec6('0xb2'),_0x4ec6('0xb3'),'memberinterface',_0x4ec6('0xb4'),'membername',_0x4ec6('0xb5'),'memberrealtime'];if(!_[_0x4ec6('0x40')](_0x5028c9)&&!_['includes'](_0x1eb078,_0x5028c9)){if(_[_0x4ec6('0x5b')](this['variables'][_0x1fe505])){this['variables'][_0x1fe505]={};}this['variables'][_0x1fe505][_0x5028c9]=_0x17d555;}};VoiceQueueReport[_0x4ec6('0xb')]['handleHangup']=function(_0x47e87d,_0x3c36c6,_0x463d7a){try{var _0x47d7d7={};if(this['queueReports'][_0x47e87d]){for(var _0xd93d71=0x0;_0xd93d71<this[_0x4ec6('0xe')][_0x47e87d][_0x4ec6('0xb6')];_0xd93d71+=0x1){_0x47d7d7=this[_0x4ec6('0xe')][_0x47e87d][_0xd93d71];var _0x5cca2e=this[_0x4ec6('0x12')][_0x47d7d7[_0x4ec6('0x52')]];if(_0x5cca2e){_0x5cca2e[_0x4ec6('0xb7')]+=moment(_0x47d7d7['queuecallerleaveAt'])[_0x4ec6('0xb8')](_0x47d7d7['queuecallerjoinAt'],_0x4ec6('0xb9'))||0x0;if(_0x463d7a&&_0x47d7d7[_0x4ec6('0x97')]==='ATTENDEDTRANSFER'){_0x47d7d7['queuecallerexitreason']=_0x4ec6('0x8b');}if(_0xd93d71===this[_0x4ec6('0xe')][_0x47e87d][_0x4ec6('0xb6')]-0x1){_0x5cca2e['sumDuration']+=moment()['milliseconds'](0x0)[_0x4ec6('0xb8')](_0x47d7d7['queuecallerjoinAt'],_0x4ec6('0xb9'));if(hasCallerLeftTheQueue(_0x47d7d7)&&_0x47d7d7[_0x4ec6('0x97')]!=='ATTENDEDTRANSFER'){_0x5cca2e['total']+=0x1;}if(_0x47d7d7[_0x4ec6('0x3a')]){_0x5cca2e['answered']+=0x1;_0x5cca2e['sumBillable']+=moment()[_0x4ec6('0xba')](0x0)[_0x4ec6('0xb8')](_0x47d7d7['queuecallerleaveAt'],_0x4ec6('0xb9'));_0x47d7d7[_0x4ec6('0x7f')]=moment()[_0x4ec6('0x51')]('YYYY-MM-DD\x20HH:mm:ss');_0x47d7d7['queuecallerexit']=![];_0x47d7d7[_0x4ec6('0x90')]=null;}if(_0x47d7d7[_0x4ec6('0x8f')]&&_0x47d7d7['transfer']!=!![]){_0x5cca2e[_0x4ec6('0xbb')]+=0x1;_0x47d7d7[_0x4ec6('0xa5')]=_0x4ec6('0xbb');logger[_0x4ec6('0x4d')](_0x4ec6('0xbc'),_0x47e87d,util[_0x4ec6('0x45')](_0x47d7d7,{'showHidden':![],'depth':null}));ami[_0x4ec6('0x4c')](_0x4ec6('0xbd'),_0x47d7d7);}if(_0x47d7d7[_0x4ec6('0x20')]){_0x5cca2e[_0x4ec6('0xbe')]+=0x1;_0x47d7d7[_0x4ec6('0xa5')]=_0x4ec6('0xbe');logger[_0x4ec6('0x4d')](_0x4ec6('0xbf'),_0x47e87d,util[_0x4ec6('0x45')](_0x47d7d7,{'showHidden':![],'depth':null}));ami[_0x4ec6('0x4c')](_0x4ec6('0xc0'),_0x47d7d7);}}else{_0x5cca2e['sumDuration']+=_0x5cca2e[_0x4ec6('0xb7')];}logger[_0x4ec6('0x78')]('[%s][voiceQueueReport][hangup]\x20name:%s\x20type:%s\x20reason:%s',_0x47e87d,_0x47d7d7[_0x4ec6('0x52')],_0x47d7d7[_0x4ec6('0x6a')],_0x3c36c6);this['channels'][_0x47e87d]=_0x47d7d7;Object[_0x4ec6('0x69')](this[_0x4ec6('0x12')][_0x47d7d7[_0x4ec6('0x52')]],_0x5cca2e);if(_0x47d7d7['queuecallerleaveAt']){this[_0x4ec6('0x4a')](_0x47d7d7,_0x4ec6('0x28'));}}}logger[_0x4ec6('0x4d')]('[%s][voiceQueueReport][hangup]\x20sending\x20voiceQueueReport\x20event:',_0x47e87d,util[_0x4ec6('0x45')](this[_0x4ec6('0xe')][_0x47e87d],{'showHidden':![],'depth':null}));if(hasCallerLeftTheQueue(_0x47d7d7)&&_0x47d7d7['queuecallerexitreason']!==_0x4ec6('0x55')){ami[_0x4ec6('0x4c')](_0x4ec6('0xc1'),this[_0x4ec6('0xe')][_0x47e87d]);if(this[_0x4ec6('0xe')][_0x47e87d]){delete this[_0x4ec6('0xe')][_0x47e87d];}if(this[_0x4ec6('0x3c')][_0x47e87d]){this[_0x4ec6('0xc2')](_0x47e87d);}if(this[_0x4ec6('0x15')][_0x47e87d]){delete this['variables'][_0x47e87d];}}}}catch(_0x2dafbf){logger['error']('[%s][voiceQueueReport][handleHangup]',_0x47e87d,util['inspect'](_0x2dafbf,{'showHidden':![],'depth':null}));}};VoiceQueueReport['prototype'][_0x4ec6('0x29')]=function(_0xd96115){try{if(this[_0x4ec6('0x72')](_0xd96115)){logger['debug'](_0x4ec6('0xc3'),_0xd96115[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0xd96115,{'showHidden':![],'depth':null}));if(this['queueReports'][_0xd96115[_0x4ec6('0x50')]]){return this[_0x4ec6('0xc4')](_0xd96115['uniqueid'],_0xd96115[_0x4ec6('0xc5')],![]);}if(this[_0x4ec6('0xe')][_0xd96115[_0x4ec6('0x95')]]){if(_0xd96115['cause']==='21'){return;}return this[_0x4ec6('0xc4')](_0xd96115[_0x4ec6('0x95')],_0xd96115[_0x4ec6('0xc5')],!![]);}var _0x1aae35=Object[_0x4ec6('0x7a')](this[_0x4ec6('0xe')]);for(var _0xd11346=0x0;_0xd11346<_0x1aae35[_0x4ec6('0xb6')];_0xd11346++){var _0x263a1a=_[_0x4ec6('0x7e')](this[_0x4ec6('0xe')][_0x1aae35[_0xd11346]]);if(_0x263a1a&&_0x263a1a[_0x4ec6('0xc6')]===_0xd96115['uniqueid']){return this[_0x4ec6('0xc4')](_0x263a1a[_0x4ec6('0x50')],_0xd96115['cause-txt'],!![]);}}if(!this[_0x4ec6('0xe')][_0xd96115[_0x4ec6('0x50')]]){logger[_0x4ec6('0x4d')](_0x4ec6('0xc7'),_0xd96115['uniqueid']);if(this[_0x4ec6('0x3c')][_0xd96115[_0x4ec6('0x50')]]){this[_0x4ec6('0xc2')](_0xd96115[_0x4ec6('0x50')]);}if(this[_0x4ec6('0x15')][_0xd96115[_0x4ec6('0x50')]]){delete this[_0x4ec6('0x15')][_0xd96115['uniqueid']];}}}}catch(_0x176aed){logger['error'](_0x4ec6('0xc3'),_0xd96115[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x176aed,{'showHidden':![],'depth':null}));}};VoiceQueueReport[_0x4ec6('0xb')]['syncAttendedTransfer']=function(_0x2bd9f7){try{if(this[_0x4ec6('0x72')](_0x2bd9f7)){logger[_0x4ec6('0x4d')]('[%s][voiceQueueReport][attendedtransfer]',_0x2bd9f7[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x2bd9f7,{'showHidden':![],'depth':null}));var _0x137865;var _0x3f21fa;var _0x1ebcd5;if(this[_0x4ec6('0xe')][_0x2bd9f7[_0x4ec6('0xc8')]]){_0x137865=_['last'](this[_0x4ec6('0xe')][_0x2bd9f7[_0x4ec6('0xc8')]]);_0x137865['transferexten']=_0x2bd9f7['secondtransfererexten'];_0x137865['transferuniqueid']=_0x2bd9f7[_0x4ec6('0xc9')];_0x137865[_0x4ec6('0x97')]=_0x4ec6('0x55');_0x137865['transfer']=!![];_0x137865[_0x4ec6('0x99')]=_0x4ec6('0xca');if(this[_0x4ec6('0xe')][_0x2bd9f7[_0x4ec6('0xc9')]]){_0x1ebcd5=this[_0x4ec6('0xe')][_0x2bd9f7['secondtransfereruniqueid']];this[_0x4ec6('0xe')][_0x2bd9f7[_0x4ec6('0xc9')]]=this['queueReports'][_0x2bd9f7['transfereeuniqueid']];this['queueReports'][_0x2bd9f7[_0x4ec6('0xc8')]]=_0x1ebcd5;_0x3f21fa=_['last'](this[_0x4ec6('0xe')][_0x2bd9f7['transfereeuniqueid']]);_0x3f21fa[_0x4ec6('0x3d')]=!![];}logger['info'](_0x4ec6('0xcb'),_0x2bd9f7[_0x4ec6('0x50')],_0x137865['queue'],_0x137865['type'],_0x137865['transferexten'],_0x137865[_0x4ec6('0x9b')]);}else if(this[_0x4ec6('0xe')][_0x2bd9f7[_0x4ec6('0xcc')]]){_0x137865=_[_0x4ec6('0x7e')](this[_0x4ec6('0xe')][_0x2bd9f7['transfertargetuniqueid']]);_0x137865[_0x4ec6('0x9a')]=_0x2bd9f7[_0x4ec6('0xcd')];_0x137865[_0x4ec6('0x9b')]=_0x2bd9f7[_0x4ec6('0xce')];_0x137865[_0x4ec6('0x97')]=_0x4ec6('0x55');_0x137865['transfer']=!![];_0x137865[_0x4ec6('0x99')]=_0x4ec6('0xca');if(this[_0x4ec6('0xe')][_0x2bd9f7[_0x4ec6('0xce')]]){_0x1ebcd5=this[_0x4ec6('0xe')][_0x2bd9f7[_0x4ec6('0xce')]];this['queueReports'][_0x2bd9f7[_0x4ec6('0xce')]]=this[_0x4ec6('0xe')][_0x2bd9f7[_0x4ec6('0xcc')]];this[_0x4ec6('0xe')][_0x2bd9f7[_0x4ec6('0xcc')]]=_0x1ebcd5;_0x3f21fa=_[_0x4ec6('0x7e')](this['queueReports'][_0x2bd9f7[_0x4ec6('0xcc')]]);_0x3f21fa['switch']=!![];}logger[_0x4ec6('0x78')](_0x4ec6('0xcb'),_0x2bd9f7[_0x4ec6('0x50')],_0x137865[_0x4ec6('0x52')],_0x137865[_0x4ec6('0x6a')],_0x137865['transferexten'],_0x137865[_0x4ec6('0x9b')]);}else if(this['queueReports'][_0x2bd9f7[_0x4ec6('0xce')]]){_0x137865=_[_0x4ec6('0x7e')](this[_0x4ec6('0xe')][_0x2bd9f7[_0x4ec6('0xce')]]);_0x137865[_0x4ec6('0x9a')]=_0x2bd9f7[_0x4ec6('0xcd')];_0x137865['transferuniqueid']=_0x2bd9f7[_0x4ec6('0xce')];_0x137865['queuecallerexitreason']=_0x4ec6('0x55');_0x137865[_0x4ec6('0x91')]=!![];_0x137865['transfertype']=_0x4ec6('0xca');_0x137865[_0x4ec6('0x3d')]=!![];_0x137865[_0x4ec6('0xc6')]=_0x2bd9f7[_0x4ec6('0xc8')];}else if(this[_0x4ec6('0xe')][_0x2bd9f7['secondtransfereruniqueid']]){_0x137865=_['last'](this[_0x4ec6('0xe')][_0x2bd9f7[_0x4ec6('0xc9')]]);_0x137865[_0x4ec6('0x9a')]=_0x2bd9f7[_0x4ec6('0xcf')];_0x137865['transferuniqueid']=_0x2bd9f7[_0x4ec6('0xc9')];_0x137865[_0x4ec6('0x97')]=_0x4ec6('0x55');_0x137865[_0x4ec6('0x91')]=!![];_0x137865[_0x4ec6('0x99')]='ATTENDED';_0x137865[_0x4ec6('0x3d')]=!![];_0x137865['transferid']=_0x2bd9f7['transfertargetuniqueid'];}}}catch(_0x532e41){logger['error'](_0x4ec6('0xd0'),_0x2bd9f7[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x532e41,{'showHidden':![],'depth':null}));}};VoiceQueueReport['prototype'][_0x4ec6('0xd1')]=function(_0x1c22cd){try{if(this['isNotNull'](_0x1c22cd)){logger['debug']('[%s][voiceQueueReport][blindtransfer]',_0x1c22cd[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x1c22cd,{'showHidden':![],'depth':null}));if(this[_0x4ec6('0xe')][_0x1c22cd['transfereeuniqueid']]){var _0x4f86e4=_[_0x4ec6('0x7e')](this[_0x4ec6('0xe')][_0x1c22cd[_0x4ec6('0xc8')]]);_0x4f86e4[_0x4ec6('0x97')]=_0x4ec6('0xd2');_0x4f86e4[_0x4ec6('0x91')]=!![];_0x4f86e4[_0x4ec6('0x99')]=_0x4ec6('0xd3');_0x4f86e4['transferexten']=_0x1c22cd[_0x4ec6('0xd4')];_0x4f86e4[_0x4ec6('0x9b')]=_0x1c22cd[_0x4ec6('0xc8')];logger[_0x4ec6('0x78')]('[%s][voiceQueueReport][blindTransfer]\x20name:%s\x20type:%s\x20transferexten:%s\x20transferuniqueid:%s',_0x1c22cd[_0x4ec6('0x50')],_0x4f86e4['queue'],_0x4f86e4[_0x4ec6('0x6a')],_0x4f86e4[_0x4ec6('0x9a')],_0x4f86e4['transferuniqueid']);this[_0x4ec6('0x29')]({'event':_0x4ec6('0xd5'),'uniqueid':_0x1c22cd[_0x4ec6('0xc8')],'context':_0x1c22cd['context'],'channel':_0x1c22cd['transfererchannel']});}}}catch(_0x7740f0){logger[_0x4ec6('0x46')](_0x4ec6('0xd6'),_0x1c22cd[_0x4ec6('0x50')],util['inspect'](_0x7740f0,{'showHidden':![],'depth':null}));}};VoiceQueueReport[_0x4ec6('0xb')][_0x4ec6('0x2d')]=function(_0x4a77a8){try{if(this[_0x4ec6('0x72')](_0x4a77a8)){logger[_0x4ec6('0x4d')](_0x4ec6('0xd7'),_0x4a77a8[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x4a77a8,{'showHidden':![],'depth':null}));if(this[_0x4ec6('0xe')][_0x4a77a8[_0x4ec6('0x50')]]){var _0xdb8ad3=_['last'](this[_0x4ec6('0xe')][_0x4a77a8[_0x4ec6('0x50')]]);if(!_['isNil'](_0xdb8ad3[_0x4ec6('0x85')])){_0xdb8ad3['mohstarttime']=moment()[_0x4ec6('0x51')](_0x4ec6('0x75'));logger[_0x4ec6('0x78')](_0x4ec6('0xd8'),_0x4a77a8[_0x4ec6('0x50')],_0xdb8ad3[_0x4ec6('0xd9')]);}}}}catch(_0x1e49bc){logger[_0x4ec6('0x46')](_0x4ec6('0xd7'),_0x4a77a8[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x1e49bc,{'showHidden':![],'depth':null}));}};VoiceQueueReport['prototype'][_0x4ec6('0x2e')]=function(_0x1a6698){try{if(this[_0x4ec6('0x72')](_0x1a6698)){logger[_0x4ec6('0x4d')](_0x4ec6('0xda'),_0x1a6698[_0x4ec6('0x50')],util['inspect'](_0x1a6698,{'showHidden':![],'depth':null}));if(this[_0x4ec6('0xe')][_0x1a6698['uniqueid']]){var _0x3e7e1f=_[_0x4ec6('0x7e')](this[_0x4ec6('0xe')][_0x1a6698[_0x4ec6('0x50')]]);if(!_[_0x4ec6('0x40')](_0x3e7e1f[_0x4ec6('0xd9')])){_0x3e7e1f[_0x4ec6('0xdb')]+=moment()['milliseconds'](0x0)['diff'](_0x3e7e1f[_0x4ec6('0xd9')],'seconds');logger[_0x4ec6('0x78')](_0x4ec6('0xdc'),_0x1a6698[_0x4ec6('0x50')],_0x3e7e1f['mohtime']);delete _0x3e7e1f[_0x4ec6('0xd9')];}}}}catch(_0x2dacab){logger['error'](_0x4ec6('0xda'),_0x1a6698['uniqueid'],util[_0x4ec6('0x45')](_0x2dacab,{'showHidden':![],'depth':null}));}};VoiceQueueReport[_0x4ec6('0xb')][_0x4ec6('0xdd')]=function(_0x32c300){try{if(this['isNotNull'](_0x32c300)){logger[_0x4ec6('0x4d')](_0x4ec6('0xde'),_0x32c300[_0x4ec6('0x50')],util[_0x4ec6('0x45')](_0x32c300,{'showHidden':![],'depth':null}));if(_0x32c300['application'][_0x4ec6('0xdf')]()===_0x4ec6('0xe0')){_0x32c300[_0x4ec6('0xe1')]=(_0x32c300[_0x4ec6('0xe2')]||_0x32c300[_0x4ec6('0xe1')])[_0x4ec6('0xdf')]();if(_['startsWith'](_0x32c300['applicationdata'][_0x4ec6('0xdf')](),_0x4ec6('0xe3'))){logger['info'](_0x4ec6('0xe4'),_0x32c300['uniqueid'],_0x32c300[_0x4ec6('0xe5')],_0x32c300[_0x4ec6('0xe1')]);if(_[_0x4ec6('0x5b')](this[_0x4ec6('0x3c')][_0x32c300[_0x4ec6('0x50')]]))this[_0x4ec6('0x3c')][_0x32c300[_0x4ec6('0x50')]]={};var _0x58b5a3=_0x32c300[_0x4ec6('0xe1')][_0x4ec6('0xe6')]('=');var _0x37c548=_0x58b5a3[0x0][_0x4ec6('0xdf')]()[_0x4ec6('0xe7')](/cdr\((.*)\)/);if(_0x37c548)this['channels'][_0x32c300[_0x4ec6('0x50')]][_0x37c548[0x1]]=_0x58b5a3[0x1];}}}}catch(_0x2e83cc){logger['error'](_0x4ec6('0xe8'),_0x32c300['uniqueid'],util[_0x4ec6('0x45')](_0x2e83cc,{'showHidden':![],'depth':null}));}};VoiceQueueReport[_0x4ec6('0xb')][_0x4ec6('0xc2')]=function(_0x1a493b,_0x1dee30=0x2710){if(this[_0x4ec6('0x3c')][_0x1a493b]){setTimeout(()=>{delete this['channels'][_0x1a493b];},_0x1dee30);}};module['exports']=VoiceQueueReport;