affc7201cd2269919fdc4f2565aee56a44a74daf
[motion2.git] / server / services / ami / preview / index.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 _0x2c5e=['dialRandomLastDigitCallerIdNumber','getCallerId','callerid','originatecalleridname','extractCalleridName','originatecalleridnum','extractCalleridNumber','addVariables','setXMDContactVariables','Contact','assign','toLowerVariables','variables','variablesAction','[originated][increment]','[originateFailure][logOriginateFailure]','actionid','lookAgent','logLookAgent','isFailure','response','custom:agentringnoanswer','rejected','callProgressDetectingAgent','[callProgressDetectingAgent][logAnswer]','[syncHangup][talking]','cause','[syncHangup][talking][cause]','callProgressDetectingCustomer','statedesc','dialQueueProject','channelstate','transfer','[syncHangup][talking][transfer]','destlinkedid','keys','variable','addVariable','error','inspect','transfertargetlinkedid','transfererlinkedid','lodash','uuid','moment','../../../config/environment','../../../config/logger','../ami','./rpcDb','../rpc/cmHopperAdditionalPhone','./action','./util/util','../dialer/utils','redis','localhost','socket.io-emitter','enqueue','tail','sequence','campaignsPreview','actions','agents','originateresponse','syncOriginateResponse','hangup','syncHangup','hanguprequest','bind','dialend','syncDialEnd','syncNewExten','varset','attendedtransfer','syncAttendedTransfer','blindtransfer','syncBlindTransfer','loopCampaigns','info','[DEBUG]\x20Emit\x20voice_queue_channel:remove\x20event','format','voice:queue:%s','name','voice_queue_channel:remove','emit','sendMessageOneNotActive','originated','pTalking','paused','message','INACTIVE','logger','[CampaignPreview]\x20Campaign\x20Queue:\x20','\x20is\x20not\x20active','CAMPAIGN_STATUS','\x20is\x20deactivated','prototype','syncCampaigns','clockClearZombieChannels','hasOwnProperty','dialMethod','booked','type','outbound','clearZombieChannels','dialActive','recallMe','isNil','[clearZombieChannels][talking]','Queue','stringify','queue','pTalking:\x20','contactId','UserId','ListId','Action','channel','catch','No\x20such\x20channel','updateOriginated','[clearZombieChannel]','decrementTalkink','loggerError','[Dialer][checkChannel][pTalking][Preview]','[Dialer][checkChannel][Preview]','[action]','size','clearZombieChannel','getContactRecallMe','agentReadyId','then','length','getDiff','dialRecallMeTimeout','Agent','voicePause','run','logger2','[RecallMe]','disableContact','starttime','YYYY-MM-DD\x20HH:mm:ss','outboundReCallsDay','logCustomer','RecallInQueue','dialRecallInQueue','rescheduleContactInQueue','createCustomerHistory','[HistoryDialRecallInQueue][historyCatch]','RecallFailedTimeout','[getContactRecallMe]','setMessage','IsNotLoggedIn','loggedIn','isActive','isTrunkReachable','Trunk','TrunkBackup','UNREACHABLE_TRUNK','ACTIVE','countnosuchnumberretry','countglobal','totalGlobal','NoSuchNumber','custom:agentnosuchnumber','buildObj','nosuchnumber','additional','createCustomerFinal','[callProgressDetectingCustomer][logNoSuchGlobal]','dialNoSuchNumberMaxRetry','rescheduleContact','scheduledAt','dialNoSuchNumberRetryFrequency','unlockAgent','activeContact','linkedid','actioncountonusuch','idContact','swapAdditionalPhones','ANSWER','responsetime','dialAnswer','[syncHangup][talking][increment]','uniqueid','custom:agentconnect','connect','acw','complete','outboundAnswerCallsDay','answered','Answer','[callProgressDetectingCustomer][logAnswer]','crateCustomerReportQueue','sumDuration','sumBillable','talktime','[syncHangup][talking][decrement]','BUSY','countbusyretry','Busy','dialBusyRetryFrequency','callAdditionalPhoneAfterMin','custom:agentbusy','busy','[callProgressDetectingCustomer][logBusy]','verifyAdditionalPhones','cloneAction','Global','[callProgressDetectingCustomer][logBusyGlobal]','countnoanswerretry','NoAnswer','dialNoAnswerRetryFrequency','[callProgressDetectingCustomer][logNoAnswer]','dialGlobalMaxRetry','dialNoAnswerMaxRetry','CONGESTION','outboundCongestionCallsDay','countcongestionretry','Congestion','dialCongestionRetryFrequency','custom:agentcongestion','congestion','[callProgressDetectingCustomer][logCongestion]','incrementPreviewCounters','CANCEL','outboundRejectCallsDay','countagentrejectretry','AgentReject','dialAgentRejectRetryFrequency','custom:agentreject','agentreject','[syncHangupRequest][logAgentReject]','[callProgressDetectingCustomer][logAgentReject]','outboundAbandonedCallsDay','countabandonedretry','Abandoned','[callProgressDetectingCustomer][logAbandoned]','countabandonedetry','dialAbandonedMaxRety','countmachineretry','cause-txt','custom:amd','[callProgressDetectingCustomer][hangupInAMD]','dialstatus','amd','[callProgressDetectingCustomer][machine]','[default]','[Dialer][decrementTalkink][no\x20Hangup][Preview]','outboundUnknownCallsDay','[callProgressDetectingCustomer][logUnknown]','[callProgressDetectingCustomer][logUnknownGlobal]','[callProgressDetectingCustomer]','\x20Queue','originated:\x20','queueSummaryCountersUpdated','isUndefined','reason','logAgent','createAgentHistory','[callProgressDetectingAgent][logNoSuch]','[callProgressDetectingAgent][logNoAnswer]','[callProgressDetectingAgent][logCongestion]','[callProgressDetectingAgent]','[originated][decrement][callProgressDetectingAgent]','[verifyAdditionalPhone]\x20','[swapAdditionalPhone]\x20','resolve','[incrementPreviewCounters]\x20','checkInBlack','phone','VoiceQueueId','Contact\x20is\x20undefined','isEmpty','[Preview][execCall][success]','Queue:\x20','\x20IdHopper:\x20','custom:agentcalled','Call\x20failed','logBlacklist','createHistory','[Blacklist][error]','Contact\x20in\x20black\x20List','active','trunks','SIP/%s','reachable','unmonitored','execRun','pick','unlockContact','recallme','validateContact','isValid','checkIsBlackList','[Preview][checkIsBlackList]','[Preview][getContactPreview]','Call\x20unsuccessful','[Preview][validateContact][Empty\x20Contact]','Empty\x20Campaign','campaign\x20Name:\x20','\x20Trunk\x20is\x20not\x20active','\x20Trunk\x20Backup\x20is\x20not\x20active','Trunk\x20not\x20working\x20correctly','[Preview][validateContact][Campaign\x20Active]','\x20Not\x20Active','Is\x20Valid','dialPrefix','trim','substring','dialCutDigit','SIP/%s/%s%s','dialOriginateCallerIdName','getCallerIdRandom','dialOriginateCallerIdNumber'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x2c5e,0x165));var _0xe2c5=function(_0x387c65,_0x2fd251){_0x387c65=_0x387c65-0x0;var _0x4d24b7=_0x2c5e[_0x387c65];return _0x4d24b7;};'use strict';var util=require('util');var _=require(_0xe2c5('0x0'));var uuid=require(_0xe2c5('0x1'));var moment=require(_0xe2c5('0x2'));var Redis=require('ioredis');var config=require(_0xe2c5('0x3'));var logger=require(_0xe2c5('0x4'))('preview');var loggerAction=require('../../../config/logger')('actionPreview');var ami=require(_0xe2c5('0x5'));var rpcDb=require(_0xe2c5('0x6'));var cmHopperAdditionalPhone=require(_0xe2c5('0x7'));var Action=require(_0xe2c5('0x8'));var ut=require(_0xe2c5('0x9'));var utils=require(_0xe2c5('0xa'));config[_0xe2c5('0xb')]=_['defaults'](config['redis'],{'host':_0xe2c5('0xc'),'port':0x18eb});var io=require(_0xe2c5('0xd'))(new Redis(config[_0xe2c5('0xb')]));var Sequence=function(){};Sequence['prototype'][_0xe2c5('0xe')]=function(_0x5a4f21){this[_0xe2c5('0xf')]=this[_0xe2c5('0xf')]?this['tail']['finally'](_0x5a4f21):_0x5a4f21();};function Preview(_0x18f99a){this[_0xe2c5('0x10')]=new Sequence();this[_0xe2c5('0x11')]=_0x18f99a['voiceQueues'];this['trunks']=_0x18f99a['trunks'];this[_0xe2c5('0x12')]={};this['agents']=_0x18f99a[_0xe2c5('0x13')];this['clockClearZombieChannels']=0x0;ami['on'](_0xe2c5('0x14'),this[_0xe2c5('0x15')]['bind'](this));ami['on'](_0xe2c5('0x16'),this[_0xe2c5('0x17')]['bind'](this));ami['on'](_0xe2c5('0x18'),this['syncHangupRequest'][_0xe2c5('0x19')](this));ami['on'](_0xe2c5('0x1a'),this[_0xe2c5('0x1b')][_0xe2c5('0x19')](this));ami['on']('newexten',this[_0xe2c5('0x1c')][_0xe2c5('0x19')](this));ami['on'](_0xe2c5('0x1d'),this['syncVarSet'][_0xe2c5('0x19')](this));ami['on'](_0xe2c5('0x1e'),this[_0xe2c5('0x1f')]['bind'](this));ami['on'](_0xe2c5('0x20'),this[_0xe2c5('0x21')][_0xe2c5('0x19')](this));this[_0xe2c5('0x22')](this[_0xe2c5('0x11')]);}function emit(_0xb161d0,_0x156323,_0x11a629){io['to'](_0xb161d0)['emit'](_0x156323,_0x11a629);}function emitVoiceQueueChannelRemove(_0x2ecf3e){logger[_0xe2c5('0x23')](_0xe2c5('0x24'),JSON['stringify'](_0x2ecf3e));emit(util[_0xe2c5('0x25')](_0xe2c5('0x26'),_0x2ecf3e[_0xe2c5('0x27')]),_0xe2c5('0x28'),_0x2ecf3e);io[_0xe2c5('0x29')]('voice_queue_presence:remove',_0x2ecf3e);}function notSendMessagesQueue(_0xd149a3){if(_0xd149a3[_0xe2c5('0x2a')]){if(_0xd149a3[_0xe2c5('0x2b')]===0x0&&_0xd149a3[_0xe2c5('0x2c')]===0x0){_0xd149a3[_0xe2c5('0x2a')]=![];_0xd149a3['available']=0x0;_0xd149a3[_0xe2c5('0x2d')]=0x0;_0xd149a3[_0xe2c5('0x2e')]=utils['CAMPAIGN_STATUS'][_0xe2c5('0x2f')];ut[_0xe2c5('0x30')](_0xe2c5('0x31'),_0xd149a3[_0xe2c5('0x27')]+_0xe2c5('0x32'));}else{_0xd149a3[_0xe2c5('0x2e')]=utils[_0xe2c5('0x33')]['DEACTIVATED'];ut['logger'](_0xe2c5('0x31'),_0xd149a3['name']+_0xe2c5('0x34'));}}}Preview[_0xe2c5('0x35')][_0xe2c5('0x22')]=function(){var _0x5b2135=this;setInterval(function(){_0x5b2135[_0xe2c5('0x36')]();},0x7cf);};Preview[_0xe2c5('0x35')][_0xe2c5('0x36')]=function(){var _0x34b666=this['campaignsPreview'];this[_0xe2c5('0x37')]+=0x1;for(var _0x4d7bf8 in _0x34b666){if(_0x34b666[_0xe2c5('0x38')](_0x4d7bf8)&&(_0x34b666[_0x4d7bf8]['dialMethod']==='preview'||_0x34b666[_0x4d7bf8][_0xe2c5('0x39')]===_0xe2c5('0x3a'))&&_0x34b666[_0x4d7bf8][_0xe2c5('0x3b')]===_0xe2c5('0x3c')){if(this['clockClearZombieChannels']>0x7){this[_0xe2c5('0x37')]=0x0;this[_0xe2c5('0x3d')]();}}if(_0x34b666[_0xe2c5('0x38')](_0x4d7bf8)&&_0x34b666[_0x4d7bf8]['dialMethod']==='preview'&&_0x34b666[_0x4d7bf8][_0xe2c5('0x3b')]===_0xe2c5('0x3c')){if(_0x34b666[_0x4d7bf8][_0xe2c5('0x3e')]){this['setMessage'](_0x34b666[_0x4d7bf8]);if(_0x34b666[_0x4d7bf8]['dialPreviewAutoRecallMe'])this[_0xe2c5('0x3f')](_0x34b666[_0x4d7bf8]);}else{notSendMessagesQueue(_0x34b666[_0x4d7bf8]);}}}};Preview[_0xe2c5('0x35')]['clearZombieChannel']=function(_0x5d433f){var _0x248f57=this;this['sequence'][_0xe2c5('0xe')](function(){if(!_[_0xe2c5('0x40')](_0x248f57[_0xe2c5('0x12')][_0x5d433f])){loggerAction[_0xe2c5('0x23')](_0xe2c5('0x41'),_0x5d433f,_0xe2c5('0x42'),_0x248f57[_0xe2c5('0x12')][_0x5d433f]['queue'],'originated:\x20',JSON[_0xe2c5('0x43')](_0x248f57[_0xe2c5('0x11')][_0x248f57[_0xe2c5('0x12')][_0x5d433f][_0xe2c5('0x44')]]['originated']),_0xe2c5('0x45'),JSON[_0xe2c5('0x43')](_0x248f57[_0xe2c5('0x11')][_0x248f57[_0xe2c5('0x12')][_0x5d433f]['queue']][_0xe2c5('0x2c')]),JSON[_0xe2c5('0x43')](_0x248f57['actions'][_0x5d433f]['dialAnswer']),JSON[_0xe2c5('0x43')](_['pick'](_0x248f57[_0xe2c5('0x12')][_0x5d433f],[_0xe2c5('0x46'),_0xe2c5('0x47'),'VoiceQueueId',_0xe2c5('0x48')])));return ami[_0xe2c5('0x49')]({'action':'status','channel':_0x248f57['actions'][_0x5d433f][_0xe2c5('0x4a')]})[_0xe2c5('0x4b')](function(_0x55315c){if(_0x55315c[_0xe2c5('0x2e')]===_0xe2c5('0x4c')){setTimeout(function(){if(_0x248f57['actions'][_0x5d433f]){ut[_0xe2c5('0x4d')](_0x248f57['campaignsPreview'][_0x248f57[_0xe2c5('0x12')][_0x5d433f][_0xe2c5('0x44')]],_0xe2c5('0x4e'));if(_0x248f57['actions'][_0x5d433f]['dialAnswer']===!![]){ut[_0xe2c5('0x4f')](_0x248f57[_0xe2c5('0x11')][_0x248f57[_0xe2c5('0x12')][_0x5d433f][_0xe2c5('0x44')]],_0xe2c5('0x4e'));ut[_0xe2c5('0x50')](_0xe2c5('0x51')+_0x5d433f,_0x248f57[_0xe2c5('0x12')][_0x5d433f][_0xe2c5('0x44')]);}ut[_0xe2c5('0x50')](_0xe2c5('0x52')+_0x5d433f,_0x248f57[_0xe2c5('0x12')][_0x5d433f]['queue']);delete _0x248f57[_0xe2c5('0x12')][_0x5d433f];}},0x2328);}});}});};Preview[_0xe2c5('0x35')][_0xe2c5('0x3d')]=function(){var _0x5dc06c=this;loggerAction[_0xe2c5('0x23')](_0xe2c5('0x53'),_[_0xe2c5('0x54')](this[_0xe2c5('0x12')]));for(var _0x5527a1 in this[_0xe2c5('0x12')]){if(_0x5dc06c[_0xe2c5('0x12')][_0xe2c5('0x38')](_0x5527a1)){_0x5dc06c[_0xe2c5('0x55')](_0x5527a1);}}};Preview[_0xe2c5('0x35')]['recallMe']=function(_0x297169){var _0x15f623=this;rpcDb[_0xe2c5('0x56')](_0x297169['id'],ut[_0xe2c5('0x57')](this['agents']))[_0xe2c5('0x58')](function(_0x123c74){if(!_[_0xe2c5('0x40')](_0x123c74)){for(var _0x2b6a55=0x0;_0x2b6a55<_0x123c74[_0xe2c5('0x59')];_0x2b6a55+=0x1){if(ut[_0xe2c5('0x5a')](_0x123c74[_0x2b6a55]['scheduledat'])<_0x297169[_0xe2c5('0x5b')]*0x3c){if(_0x123c74[_0x2b6a55][_0xe2c5('0x5c')]&&!_0x123c74[_0x2b6a55]['Agent'][_0xe2c5('0x5d')]){_0x15f623[_0xe2c5('0x5e')](_0x123c74[_0x2b6a55]['id'])['then'](ut[_0xe2c5('0x5f')](_0xe2c5('0x60')))[_0xe2c5('0x4b')](ut['logger2'](_0xe2c5('0x60')));}else{rpcDb[_0xe2c5('0x61')](_0x123c74[_0x2b6a55]['id']);}}else{var _0x10a577=new Action(_0x123c74[_0x2b6a55],_0x297169);_0x10a577[_0xe2c5('0x62')]=moment()['format'](_0xe2c5('0x63'));_0x297169[_0xe2c5('0x64')]+=0x1;ut[_0xe2c5('0x65')](_0x10a577,0x17,_0xe2c5('0x66'));if(_0x297169[_0xe2c5('0x67')]){rpcDb[_0xe2c5('0x68')](ut['createBody'](_0x123c74[_0x2b6a55]));rpcDb[_0xe2c5('0x69')](_0x10a577,_0xe2c5('0x6a'));}else{ut[_0xe2c5('0x65')](_0x10a577,0x16,_0xe2c5('0x6b'));rpcDb[_0xe2c5('0x69')](_0x10a577,'[HistoryRecallClose]');rpcDb['createCustomerFinal'](_0x10a577,'[HistoryRecallClose]');}}}}})[_0xe2c5('0x4b')](ut[_0xe2c5('0x5f')](_0xe2c5('0x6c')));};Preview[_0xe2c5('0x35')][_0xe2c5('0x6d')]=function(_0x37ec3a){_0x37ec3a[_0xe2c5('0x2a')]=!![];if(ut[_0xe2c5('0x6e')](_0x37ec3a[_0xe2c5('0x6f')])){_0x37ec3a[_0xe2c5('0x2e')]=utils[_0xe2c5('0x33')]['NO_AGENTS_LOGGED'];}else if(!ut[_0xe2c5('0x70')](_0x37ec3a[_0xe2c5('0x3e')])){_0x37ec3a['message']=utils[_0xe2c5('0x33')][_0xe2c5('0x2f')];}else if(!this[_0xe2c5('0x71')](_0x37ec3a[_0xe2c5('0x72')])){if(!this[_0xe2c5('0x71')](_0x37ec3a[_0xe2c5('0x73')])){_0x37ec3a[_0xe2c5('0x2e')]=utils[_0xe2c5('0x33')][_0xe2c5('0x74')];}else{_0x37ec3a[_0xe2c5('0x2e')]=utils[_0xe2c5('0x33')][_0xe2c5('0x75')];}}else{_0x37ec3a[_0xe2c5('0x2e')]=utils[_0xe2c5('0x33')][_0xe2c5('0x75')];}};Preview[_0xe2c5('0x35')]['callProgressDetectingCustomer']=function(_0x2cce28,_0x4ed7de,_0x58ff07){var _0x3ca192=this;var _0xa4d36d=this[_0xe2c5('0x12')][_0x4ed7de];var _0x43cc50=this[_0xe2c5('0x11')][_0xa4d36d[_0xe2c5('0x44')]];var _0x5c3cd3;var _0x579fd0=![];var _0x1bd2b0=0x2;var _0xafc951=0x3;if(_0x43cc50){switch(_0x58ff07){case'1':_0x43cc50['outboundNoSuchCallsDay']+=0x1;_0xa4d36d[_0xe2c5('0x76')]+=0x1;_0xa4d36d[_0xe2c5('0x77')]=ut[_0xe2c5('0x78')](_0xa4d36d);ut[_0xe2c5('0x65')](_0xa4d36d,0x0,_0xe2c5('0x79'));ami['emit'](_0xe2c5('0x7a'),ut[_0xe2c5('0x7b')](_0xa4d36d,_0xe2c5('0x7c')));rpcDb[_0xe2c5('0x69')](_0xa4d36d,'[callProgressDetectingCustomer][logNoSuch]');_0x3ca192['verifyAdditionalPhones'](_0xa4d36d,'0',_0x43cc50)[_0xe2c5('0x58')](function(_0xfffcc4){_0x579fd0=_0xfffcc4[_0xe2c5('0x7d')]==0x1;_0x1bd2b0=_0x43cc50['dialNoSuchNumberRetryFrequency'];_0xafc951=_0x43cc50['callAdditionalPhoneAfterMin'];if(!_0x579fd0){if(ut[_0xe2c5('0x78')](_0xa4d36d)>=_0x43cc50['dialGlobalMaxRetry']){_0x5c3cd3=ut['cloneAction'](_0xa4d36d,0xf,'Global');rpcDb[_0xe2c5('0x7e')](_0x5c3cd3,_0xe2c5('0x7f'));}else{if(_0xa4d36d['countnosuchnumberretry']>=_0x43cc50[_0xe2c5('0x80')]){rpcDb[_0xe2c5('0x7e')](_0xa4d36d,_0xe2c5('0x7f'));}else{rpcDb[_0xe2c5('0x81')](ut[_0xe2c5('0x82')](_0xa4d36d,_0xe2c5('0x76'),_0x43cc50[_0xe2c5('0x83')]),_0xa4d36d[_0xe2c5('0x84')],_0xa4d36d[_0xe2c5('0x85')]);}}delete this['actions'][_0x2cce28[_0xe2c5('0x86')]];}else{_0xa4d36d[_0xe2c5('0x76')]++;logger[_0xe2c5('0x23')](_0xe2c5('0x87'),_0xa4d36d['countnosuchnumberretry']);logger[_0xe2c5('0x23')]('id',_0xa4d36d[_0xe2c5('0x88')]);_0x3ca192['incrementPreviewCounters']({'id':_0xa4d36d['idContact'],'field':{'countnosuchnumberretry':_0xa4d36d[_0xe2c5('0x76')]}})['then'](function(){_0x3ca192[_0xe2c5('0x89')](_0xa4d36d,_0x1bd2b0,_0xafc951)[_0xe2c5('0x58')](function(){});});}});break;case _0xe2c5('0x8a'):var _0x48d3c4=moment()[_0xe2c5('0x25')](_0xe2c5('0x63'));_0xa4d36d[_0xe2c5('0x8b')]=_0x48d3c4;_0xa4d36d['answertime']=_0x48d3c4;_0xa4d36d[_0xe2c5('0x8c')]=!![];_0x43cc50[_0xe2c5('0x2c')]+=0x1;logger['info'](_0xe2c5('0x8d'),_0xa4d36d[_0xe2c5('0x8e')],'\x20Queue',_0x43cc50[_0xe2c5('0x27')],_0xe2c5('0x45'),_0x43cc50['pTalking']);ami[_0xe2c5('0x29')](_0xe2c5('0x8f'),ut[_0xe2c5('0x7b')](_0xa4d36d,_0xe2c5('0x90'),this['campaignsPreview'][_0xa4d36d[_0xe2c5('0x44')]]));if(_0x43cc50[_0xe2c5('0x91')]){ami[_0xe2c5('0x29')]('custom:agentConnectPreview',ut['buildAcw'](_0xa4d36d));}break;case'16':ami[_0xe2c5('0x29')]('custom:agentcomplete',ut['buildObj'](_0xa4d36d,_0xe2c5('0x92'),this[_0xe2c5('0x11')][_0xa4d36d['queue']]));emitVoiceQueueChannelRemove(ut['buildObj'](_0xa4d36d,_0xe2c5('0x92')));_0x43cc50[_0xe2c5('0x93')]+=0x1;_0x43cc50['total']+=0x1;_0x43cc50[_0xe2c5('0x94')]+=0x1;ut[_0xe2c5('0x4f')](_0x43cc50,'[16]');_0xa4d36d[_0xe2c5('0x77')]=ut[_0xe2c5('0x78')](_0xa4d36d);ut[_0xe2c5('0x65')](_0xa4d36d,0x4,_0xe2c5('0x95'));rpcDb[_0xe2c5('0x69')](_0xa4d36d,_0xe2c5('0x96'));rpcDb[_0xe2c5('0x7e')](_0xa4d36d,'[callProgressDetectingCustomer][logAnswerGlobal]');rpcDb[_0xe2c5('0x97')](_0xa4d36d);_0x43cc50[_0xe2c5('0x98')]+=_0xa4d36d['talktime'];_0x43cc50[_0xe2c5('0x99')]+=_0xa4d36d[_0xe2c5('0x9a')];logger['info'](_0xe2c5('0x9b'),_0xa4d36d[_0xe2c5('0x8e')],'\x20Queue',_0x43cc50[_0xe2c5('0x27')],_0xe2c5('0x45'),_0x43cc50[_0xe2c5('0x2c')]);delete this[_0xe2c5('0x12')][_0x2cce28[_0xe2c5('0x86')]];break;case _0xe2c5('0x9c'):_0x43cc50['outboundBusyCallsDay']+=0x1;_0xa4d36d[_0xe2c5('0x9d')]+=0x1;_0xa4d36d[_0xe2c5('0x77')]=ut[_0xe2c5('0x78')](_0xa4d36d);ut[_0xe2c5('0x65')](_0xa4d36d,0x5,_0xe2c5('0x9e'));_0x1bd2b0=_0x43cc50[_0xe2c5('0x9f')];_0xafc951=_0x43cc50[_0xe2c5('0xa0')];ami[_0xe2c5('0x29')](_0xe2c5('0xa1'),ut['buildObj'](_0xa4d36d,_0xe2c5('0xa2')));rpcDb[_0xe2c5('0x69')](_0xa4d36d,_0xe2c5('0xa3'));_0x3ca192[_0xe2c5('0xa4')](_0xa4d36d,'5',_0x43cc50)['then'](function(_0x4cf723){_0x579fd0=_0x4cf723[_0xe2c5('0x7d')]==0x1;if(!_0x579fd0){if(ut[_0xe2c5('0x78')](_0xa4d36d)>=_0x43cc50['dialGlobalMaxRetry']){_0x5c3cd3=ut[_0xe2c5('0xa5')](_0xa4d36d,0xf,_0xe2c5('0xa6'));rpcDb[_0xe2c5('0x7e')](_0x5c3cd3,_0xe2c5('0xa7'));}else{if(_0xa4d36d[_0xe2c5('0x9d')]>=_0x43cc50['dialBusyMaxRetry']){rpcDb[_0xe2c5('0x7e')](_0xa4d36d,_0xe2c5('0xa3'));}else{rpcDb[_0xe2c5('0x81')](ut[_0xe2c5('0x82')](_0xa4d36d,_0xe2c5('0x9d'),_0x43cc50[_0xe2c5('0x9f')]),_0xa4d36d[_0xe2c5('0x84')],_0xa4d36d[_0xe2c5('0x85')]);}}}else{_0xa4d36d['countbusyretry']++;_0x3ca192['incrementPreviewCounters']({'id':_0xa4d36d[_0xe2c5('0x88')],'field':{'countbusyretry':_0xa4d36d[_0xe2c5('0x9d')]}})[_0xe2c5('0x58')](function(){_0x3ca192[_0xe2c5('0x89')](_0xa4d36d,_0x1bd2b0,_0xafc951)[_0xe2c5('0x58')](function(){});});}});break;case'NOANSWER':_0x43cc50['outboundNoAnswerCallsDay']+=0x1;_0xa4d36d[_0xe2c5('0xa8')]+=0x1;_0xa4d36d[_0xe2c5('0x77')]=ut['totalGlobal'](_0xa4d36d);ut[_0xe2c5('0x65')](_0xa4d36d,0x3,_0xe2c5('0xa9'));_0x1bd2b0=_0x43cc50[_0xe2c5('0xaa')];_0xafc951=_0x43cc50[_0xe2c5('0xa0')];var _0x3ea5ed=ut['buildNoAnswerEventPayload'](_0xa4d36d,_0x43cc50);ami['emit']('custom:agentnoanswer',_0x3ea5ed);rpcDb[_0xe2c5('0x69')](_0xa4d36d,_0xe2c5('0xab'));_0x3ca192['verifyAdditionalPhones'](_0xa4d36d,'3',_0x43cc50)['then'](function(_0x59c63c){_0x579fd0=_0x59c63c[_0xe2c5('0x7d')]==0x1;if(!_0x579fd0){if(ut[_0xe2c5('0x78')](_0xa4d36d)>=_0x43cc50[_0xe2c5('0xac')]){_0x5c3cd3=ut['cloneAction'](_0xa4d36d,0xf,_0xe2c5('0xa6'));rpcDb[_0xe2c5('0x7e')](_0x5c3cd3,'[callProgressDetectingCustomer][logNoAnswerGlobal]');}else{if(_0xa4d36d[_0xe2c5('0xa8')]>=_0x43cc50[_0xe2c5('0xad')]){rpcDb[_0xe2c5('0x7e')](_0xa4d36d,_0xe2c5('0xab'));}else{rpcDb[_0xe2c5('0x81')](ut['scheduledAt'](_0xa4d36d,'countnoanswerretry',_0x43cc50[_0xe2c5('0xaa')]),_0xa4d36d[_0xe2c5('0x84')],_0xa4d36d[_0xe2c5('0x85')]);}}}else{_0xa4d36d[_0xe2c5('0xa8')]++;_0x3ca192['incrementPreviewCounters']({'id':_0xa4d36d[_0xe2c5('0x88')],'field':{'countnoanswerretry':_0xa4d36d['countnoanswerretry']}})[_0xe2c5('0x58')](function(){_0x3ca192[_0xe2c5('0x89')](_0xa4d36d,_0x1bd2b0,_0xafc951)[_0xe2c5('0x58')](function(){});});}});break;case _0xe2c5('0xae'):_0x43cc50[_0xe2c5('0xaf')]+=0x1;_0xa4d36d[_0xe2c5('0xb0')]+=0x1;_0xa4d36d['countglobal']=ut[_0xe2c5('0x78')](_0xa4d36d);ut[_0xe2c5('0x65')](_0xa4d36d,0x8,_0xe2c5('0xb1'));_0x1bd2b0=_0x43cc50[_0xe2c5('0xb2')];_0xafc951=_0x43cc50[_0xe2c5('0xa0')];ami[_0xe2c5('0x29')](_0xe2c5('0xb3'),ut['buildObj'](_0xa4d36d,_0xe2c5('0xb4')));rpcDb['createCustomerHistory'](_0xa4d36d,_0xe2c5('0xb5'));_0x3ca192[_0xe2c5('0xa4')](_0xa4d36d,'8',_0x43cc50)[_0xe2c5('0x58')](function(_0x957be8){_0x579fd0=_0x957be8[_0xe2c5('0x7d')]==0x1;if(!_0x579fd0){if(ut[_0xe2c5('0x78')](_0xa4d36d)>=_0x43cc50[_0xe2c5('0xac')]){_0x5c3cd3=ut[_0xe2c5('0xa5')](_0xa4d36d,0xf,_0xe2c5('0xa6'));rpcDb[_0xe2c5('0x7e')](_0x5c3cd3,'[callProgressDetectingCustomer][logCongestionGlobal]');}else{if(_0xa4d36d['countcongestionretry']>=_0x43cc50['dialCongestionMaxRetry']){rpcDb['createCustomerFinal'](_0xa4d36d,_0xe2c5('0xb5'));}else{rpcDb[_0xe2c5('0x81')](ut[_0xe2c5('0x82')](_0xa4d36d,_0xe2c5('0xb0'),_0x43cc50[_0xe2c5('0x9f')]),_0xa4d36d[_0xe2c5('0x84')],_0xa4d36d[_0xe2c5('0x85')]);}}}else{_0xa4d36d[_0xe2c5('0xb0')]++;_0x3ca192[_0xe2c5('0xb6')]({'id':_0xa4d36d[_0xe2c5('0x88')],'field':{'countcongestionretry':_0xa4d36d[_0xe2c5('0xb0')]}})[_0xe2c5('0x58')](function(){_0x3ca192[_0xe2c5('0x89')](_0xa4d36d,_0x1bd2b0,_0xafc951)[_0xe2c5('0x58')](function(){});});}});break;case _0xe2c5('0xb7'):_0x43cc50[_0xe2c5('0xb8')]+=0x1;_0xa4d36d[_0xe2c5('0xb9')]+=0x1;_0xa4d36d[_0xe2c5('0x77')]=ut[_0xe2c5('0x78')](_0xa4d36d);ut[_0xe2c5('0x65')](_0xa4d36d,0x14,_0xe2c5('0xba'));_0x1bd2b0=_0x43cc50[_0xe2c5('0xbb')];_0xafc951=_0x43cc50[_0xe2c5('0xa0')];ami[_0xe2c5('0x29')](_0xe2c5('0xbc'),ut[_0xe2c5('0x7b')](_0xa4d36d,_0xe2c5('0xbd')));rpcDb[_0xe2c5('0x69')](_0xa4d36d,_0xe2c5('0xbe'));_0x3ca192[_0xe2c5('0xa4')](_0xa4d36d,'20',_0x43cc50)[_0xe2c5('0x58')](function(_0x4eefb9){_0x579fd0=_0x4eefb9['additional']==0x1;if(!_0x579fd0){if(ut[_0xe2c5('0x78')](_0xa4d36d)>=_0x43cc50[_0xe2c5('0xac')]){_0x5c3cd3=ut[_0xe2c5('0xa5')](_0xa4d36d,0x14,_0xe2c5('0xba'));rpcDb[_0xe2c5('0x7e')](_0x5c3cd3,_0xe2c5('0xbf'));}else{if(_0xa4d36d[_0xe2c5('0xb9')]>=_0x43cc50['dialAgentRejectMaxRetry']){rpcDb[_0xe2c5('0x7e')](_0xa4d36d,_0xe2c5('0xbf'));}else{rpcDb[_0xe2c5('0x81')](ut[_0xe2c5('0x82')](_0xa4d36d,_0xe2c5('0xb9'),_0x43cc50[_0xe2c5('0xbb')]),_0xa4d36d[_0xe2c5('0x84')],_0xa4d36d[_0xe2c5('0x85')]);}}}else{_0xa4d36d[_0xe2c5('0xa8')]++;_0x3ca192[_0xe2c5('0xb6')]({'id':_0xa4d36d[_0xe2c5('0x88')],'field':{'countnoanswerretry':_0xa4d36d[_0xe2c5('0xa8')]}})[_0xe2c5('0x58')](function(){_0x3ca192['swapAdditionalPhones'](_0xa4d36d,_0x1bd2b0,_0xafc951)['then'](function(){});});}});break;case'ABANDONED':_0x43cc50[_0xe2c5('0xc0')]+=0x1;_0xa4d36d[_0xe2c5('0xc1')]+=0x1;_0xa4d36d[_0xe2c5('0x77')]=ut[_0xe2c5('0x78')](_0xa4d36d);ut[_0xe2c5('0x65')](_0xa4d36d,0xb,_0xe2c5('0xc2'));rpcDb[_0xe2c5('0x69')](_0xa4d36d,_0xe2c5('0xc3'));_0x3ca192[_0xe2c5('0xa4')](_0xa4d36d,'11',_0x43cc50)[_0xe2c5('0x58')](function(_0x479a80){_0x579fd0=_0x479a80['additional']==0x1;if(!_0x579fd0){if(ut[_0xe2c5('0x78')](_0xa4d36d)>=_0x43cc50[_0xe2c5('0xac')]){_0x5c3cd3=ut[_0xe2c5('0xa5')](_0xa4d36d,0xf,'Global');rpcDb[_0xe2c5('0x7e')](_0x5c3cd3,_0xe2c5('0xc3'));}else{if(_0xa4d36d[_0xe2c5('0xc4')]>=_0x43cc50[_0xe2c5('0xc5')]){rpcDb['createCustomerFinal'](_0xa4d36d,'[callProgressDetectingCustomer][logAbandoned]');}else{rpcDb[_0xe2c5('0x81')](ut[_0xe2c5('0x82')](_0xa4d36d,_0xe2c5('0xc1'),_0x43cc50['dialAbandonedRetryFrequency']),_0xa4d36d[_0xe2c5('0x84')],_0xa4d36d[_0xe2c5('0x85')]);}}}else{_0xa4d36d['countnoanswerretry']++;_0x3ca192[_0xe2c5('0xb6')]({'id':_0xa4d36d[_0xe2c5('0x88')],'field':{'countnoanswerretry':_0xa4d36d[_0xe2c5('0xa8')]}})[_0xe2c5('0x58')](function(){_0x3ca192[_0xe2c5('0x89')](_0xa4d36d,_0x1bd2b0,_0xafc951)[_0xe2c5('0x58')](function(){});});}});break;case'18':_0x43cc50['outboundUnknownCallsDay']+=0x1;_0xa4d36d[_0xe2c5('0xc6')]+=0x1;_0xa4d36d[_0xe2c5('0x77')]=ut[_0xe2c5('0x78')](_0xa4d36d);ut[_0xe2c5('0x65')](_0xa4d36d,0x12,_0x2cce28[_0xe2c5('0xc7')]||_0x2cce28['dialstatus']);ami[_0xe2c5('0x29')](_0xe2c5('0xc8'),ut[_0xe2c5('0x7b')](_0xa4d36d,'amd'));rpcDb[_0xe2c5('0x69')](_0xa4d36d,_0xe2c5('0xc9'));_0x3ca192[_0xe2c5('0xa4')](_0xa4d36d,'18',_0x43cc50)[_0xe2c5('0x58')](function(_0x28c896){_0x579fd0=_0x28c896[_0xe2c5('0x7d')]==0x1;if(!_0x579fd0){if(ut[_0xe2c5('0x78')](_0xa4d36d)>=_0x43cc50['dialGlobalMaxRetry']){_0x5c3cd3=ut[_0xe2c5('0xa5')](_0xa4d36d,0x12,'Global');rpcDb[_0xe2c5('0x7e')](_0x5c3cd3,_0xe2c5('0xc9'));}else{rpcDb[_0xe2c5('0x7e')](_0xa4d36d,'[callProgressDetectingCustomer][hangupInAMD]');}}else{_0xa4d36d[_0xe2c5('0xa8')]++;_0x3ca192[_0xe2c5('0xb6')]({'id':_0xa4d36d['idContact'],'field':{'countnoanswerretry':_0xa4d36d['countnoanswerretry']}})[_0xe2c5('0x58')](function(){_0x3ca192[_0xe2c5('0x89')](_0xa4d36d,_0x1bd2b0,_0xafc951)[_0xe2c5('0x58')](function(){});});}});delete this[_0xe2c5('0x12')][_0x2cce28['linkedid']];break;case'19':_0x43cc50['outboundUnknownCallsDay']+=0x1;_0xa4d36d[_0xe2c5('0x77')]=ut[_0xe2c5('0x78')](_0xa4d36d);ut['logCustomer'](_0xa4d36d,0x13,_0x2cce28[_0xe2c5('0xc7')]||_0x2cce28[_0xe2c5('0xca')]);ami[_0xe2c5('0x29')](_0xe2c5('0xc8'),ut['buildObj'](_0xa4d36d,_0xe2c5('0xcb')));rpcDb[_0xe2c5('0x69')](_0xa4d36d,_0xe2c5('0xcc'));_0x3ca192['verifyAdditionalPhones'](_0xa4d36d,'18',_0x43cc50)['then'](function(_0x4df08f){_0x579fd0=_0x4df08f[_0xe2c5('0x7d')]==0x1;if(!_0x579fd0){if(ut[_0xe2c5('0x78')](_0xa4d36d)>=_0x43cc50['dialGlobalMaxRetry']){_0x5c3cd3=ut[_0xe2c5('0xa5')](_0xa4d36d,0xf,'Global');rpcDb['createCustomerFinal'](_0x5c3cd3,_0xe2c5('0xcc'));}else{rpcDb[_0xe2c5('0x7e')](_0xa4d36d,_0xe2c5('0xcc'));}}else{_0xa4d36d[_0xe2c5('0xa8')]++;_0x3ca192[_0xe2c5('0xb6')]({'id':_0xa4d36d[_0xe2c5('0x88')],'field':{'countnoanswerretry':_0xa4d36d[_0xe2c5('0xa8')]}})[_0xe2c5('0x58')](function(){_0x3ca192[_0xe2c5('0x89')](_0xa4d36d,_0x1bd2b0,_0xafc951)[_0xe2c5('0x58')](function(){});});}});delete this['actions'][_0x2cce28[_0xe2c5('0x86')]];break;default:if(_0xa4d36d[_0xe2c5('0x8c')]){ut[_0xe2c5('0x4f')](_0x43cc50,_0xe2c5('0xcd'));ut[_0xe2c5('0x50')](_0xe2c5('0xce')+_0x43cc50[_0xe2c5('0x27')],_0x2cce28);}_0x43cc50[_0xe2c5('0xcf')]+=0x1;_0xa4d36d['countglobal']=ut[_0xe2c5('0x78')](_0xa4d36d);ut[_0xe2c5('0x65')](_0xa4d36d,0xc,_0x2cce28[_0xe2c5('0xc7')]||_0x2cce28[_0xe2c5('0xca')]);_0x1bd2b0=_0x43cc50[_0xe2c5('0xbb')];_0xafc951=_0x43cc50[_0xe2c5('0xa0')];rpcDb[_0xe2c5('0x69')](_0xa4d36d,_0xe2c5('0xd0'));_0x3ca192[_0xe2c5('0xa4')](_0xa4d36d,'20',_0x43cc50)[_0xe2c5('0x58')](function(_0x7edd18){_0x579fd0=_0x7edd18[_0xe2c5('0x7d')]==0x1;if(!_0x579fd0){if(ut[_0xe2c5('0x78')](_0xa4d36d)>=_0x43cc50['dialGlobalMaxRetry']){_0x5c3cd3=ut[_0xe2c5('0xa5')](_0xa4d36d,0xf,_0xe2c5('0xa6'));rpcDb[_0xe2c5('0x7e')](_0x5c3cd3,_0xe2c5('0xd1'));}else{rpcDb[_0xe2c5('0x7e')](_0xa4d36d,_0xe2c5('0xd1'));}delete this[_0xe2c5('0x12')][_0x2cce28[_0xe2c5('0x86')]];}else{_0x3ca192[_0xe2c5('0x89')](_0xa4d36d,_0x1bd2b0,_0xafc951)[_0xe2c5('0x58')](function(){});}});}if(!(_0xa4d36d[_0xe2c5('0x8c')]&&_0x58ff07==='16')){ut[_0xe2c5('0x4d')](_0x43cc50,_0xe2c5('0xd2'));logger['info']('[originated][decrement][callProgressDetectingCustomer]',_0xa4d36d[_0xe2c5('0x8e')],_0xe2c5('0xd3'),_0x43cc50[_0xe2c5('0x27')],_0xe2c5('0xd4'),_0x43cc50[_0xe2c5('0x2b')]);}if(_0x58ff07!=='ANSWER'){delete this[_0xe2c5('0x12')][_0x2cce28[_0xe2c5('0x86')]];delete this[_0xe2c5('0x12')][_0x2cce28['destlinkedid']];}_0x43cc50[_0xe2c5('0xd5')]=!![];}};Preview[_0xe2c5('0x35')]['callProgressDetectingAgent']=function(_0x1970a6,_0x497136,_0x1fecaa){if(_[_0xe2c5('0xd6')](_0x497136)&&'object'!==typeof _0x497136){return;}if(_['isUndefined'](_0x1fecaa)&&'object'!==typeof _0x1fecaa){return;}switch(_0x1fecaa[_0xe2c5('0xd7')]){case'0':ut[_0xe2c5('0xd8')](_0x1970a6,0x0,_0xe2c5('0x79'));rpcDb[_0xe2c5('0xd9')](_0x1970a6,_0xe2c5('0xda'));break;case'3':ut[_0xe2c5('0xd8')](_0x1970a6,0x3,_0xe2c5('0xa9'));rpcDb['createAgentHistory'](_0x1970a6,_0xe2c5('0xdb'));break;case'5':ut['logAgent'](_0x1970a6,0x5,_0xe2c5('0x9e'));rpcDb[_0xe2c5('0xd9')](_0x1970a6,'[callProgressDetectingAgent][logBusy]');break;case'8':ut['logAgent'](_0x1970a6,0x8,_0xe2c5('0xb1'));rpcDb['createAgentHistory'](_0x1970a6,'[callProgressDetectingAgent][logCongestion]');break;case'22':ut[_0xe2c5('0xd8')](_0x1970a6,0x16,'AnswerAGI');rpcDb[_0xe2c5('0xd9')](_0x1970a6,'[callProgressDetectingAgent][logAnswerAGI]');break;default:ut[_0xe2c5('0xd8')](_0x1970a6,0xc,_0x1fecaa[_0xe2c5('0xd7')]);rpcDb['createAgentHistory'](_0x1970a6,_0xe2c5('0xdc'));}ut[_0xe2c5('0x4d')](_0x497136,_0xe2c5('0xdd'));logger[_0xe2c5('0x23')](_0xe2c5('0xde'),_0x1970a6[_0xe2c5('0x8e')],'\x20Queue',_0x497136[_0xe2c5('0x27')],'originated:\x20',_0x497136['originated']);delete this[_0xe2c5('0x12')][_0x1970a6[_0xe2c5('0x8e')]];};Preview[_0xe2c5('0x35')][_0xe2c5('0xa4')]=function(_0x56ed84,_0x5f0fd2,_0x4e55a3){return cmHopperAdditionalPhone['verifyAdditionalPhones'](_0x56ed84,_0x5f0fd2,_0x4e55a3)[_0xe2c5('0x4b')](logger[_0xe2c5('0x23')](_0xe2c5('0xdf')));};Preview[_0xe2c5('0x35')]['swapAdditionalPhones']=function(_0x149ca9,_0x123b1a,_0x3634f0){return cmHopperAdditionalPhone[_0xe2c5('0x89')](_0x149ca9,_0x123b1a,_0x3634f0)[_0xe2c5('0x4b')](logger[_0xe2c5('0x23')](_0xe2c5('0xe0')));};Preview[_0xe2c5('0x35')]['incrementPreviewCounters']=function(_0x2189c3){return Promise[_0xe2c5('0xe1')]()[_0xe2c5('0x58')](cmHopperAdditionalPhone[_0xe2c5('0xb6')](_0x2189c3))[_0xe2c5('0x4b')](logger[_0xe2c5('0x23')](_0xe2c5('0xe2')));};Preview[_0xe2c5('0x35')][_0xe2c5('0xe3')]=function(_0x29d356,_0x19efdb,_0x129b93,_0x4f7b41,_0x3a9281){var _0x58db5b=this;return new Promise(function(_0x44c9a4,_0x390579){if(_[_0xe2c5('0x40')](_0x19efdb)||_[_0xe2c5('0x40')](_0x19efdb['Contact'])||_[_0xe2c5('0x40')](_0x19efdb[_0xe2c5('0xe4')])||_['isNil'](_0x19efdb[_0xe2c5('0xe5')])){_0x390579(ut[_0xe2c5('0x2e')](_0xe2c5('0xe6'),_0x4f7b41,_0x3a9281));return;}var _0x3e3051=uuid['v4']();var _0x535179=_0x58db5b[_0xe2c5('0x11')][_0x19efdb[_0xe2c5('0x42')][_0xe2c5('0x27')]];var _0x2f95e6=_0x129b93?_0x58db5b[_0xe2c5('0x13')][_0x129b93]['id']:undefined;_0x58db5b[_0xe2c5('0x12')][_0x3e3051]=new Action(_0x19efdb,_0x535179,_0x3e3051,_0x129b93,_0x2f95e6);var _0x2b8520=_0x58db5b[_0xe2c5('0x12')][_0x3e3051];_0x2b8520['unlockAgent']=_0x4f7b41;_0x2b8520['activeContact']=_0x3a9281;_0x2b8520['lookAgent']=_0x129b93;if(_[_0xe2c5('0xe7')](_0x29d356)){_0x58db5b['execCall'](_0x2b8520,_0x535179,_0x19efdb,_0x129b93)[_0xe2c5('0x58')](function(_0x1c3d9f){logger['info'](_0xe2c5('0xe8'),_0xe2c5('0xe9')+_0x2b8520['queue']+_0xe2c5('0xea')+_0x2b8520[_0xe2c5('0x88')],JSON['stringify'](_0x1c3d9f));ami['emit'](_0xe2c5('0xeb'),ut[_0xe2c5('0x7b')](_0x2b8520,'called',_0x58db5b[_0xe2c5('0x11')][_0x2b8520[_0xe2c5('0x44')]]));_0x44c9a4(ut[_0xe2c5('0x2e')]('Calling'));})[_0xe2c5('0x4b')](function(_0x1e6498){ut[_0xe2c5('0x30')]('[Preview][execCall][failure]',_0x1e6498);_0x390579(ut['message'](_0xe2c5('0xec'),_0x4f7b41,_0x3a9281));});}else{_0x535179['outboundBlacklistCallsDay']+=0x1;ut[_0xe2c5('0xed')](_0x2b8520);rpcDb[_0xe2c5('0xee')](_0x2b8520,_0xe2c5('0xef'));delete _0x58db5b[_0xe2c5('0x12')][_0x3e3051];_0x390579(ut[_0xe2c5('0x2e')](_0xe2c5('0xf0'),_0x4f7b41,_0x3a9281));}});};Preview[_0xe2c5('0x35')][_0xe2c5('0x71')]=function(_0x2f9158){return!_['isNil'](_0x2f9158)&&!_['isNil'](_0x2f9158[_0xe2c5('0x27')])&&!_[_0xe2c5('0x40')](_0x2f9158[_0xe2c5('0xf1')])&&_0x2f9158[_0xe2c5('0xf1')]&&!_[_0xe2c5('0x40')](this[_0xe2c5('0xf2')][util['format'](_0xe2c5('0xf3'),_0x2f9158[_0xe2c5('0x27')])])&&!_[_0xe2c5('0x40')](this[_0xe2c5('0xf2')][util[_0xe2c5('0x25')](_0xe2c5('0xf3'),_0x2f9158[_0xe2c5('0x27')])]['status'])&&(this[_0xe2c5('0xf2')][util['format']('SIP/%s',_0x2f9158[_0xe2c5('0x27')])]['status']===_0xe2c5('0xf4')||this[_0xe2c5('0xf2')][util[_0xe2c5('0x25')]('SIP/%s',_0x2f9158[_0xe2c5('0x27')])]['status']===_0xe2c5('0xf5'));};Preview[_0xe2c5('0x35')]['run']=function(_0x45fe68,_0x39966a){return this[_0xe2c5('0xf6')](_0x45fe68,_0x39966a)['then'](function(_0x59a18a){return _[_0xe2c5('0xf7')](_0x59a18a,['message']);})[_0xe2c5('0x4b')](function(_0x65f132){if(_0x65f132['unlock']){rpcDb[_0xe2c5('0xf8')](_0x45fe68);}if(_0x65f132['active']){rpcDb['disableContact'](_0x45fe68);}throw _[_0xe2c5('0xf7')](_0x65f132,[_0xe2c5('0x2e')]);});};Preview[_0xe2c5('0x35')][_0xe2c5('0xf6')]=function(_0x18ea09,_0x3f460b){var _0x44790b=this;var _0x3d4c7e,_0x18e6e8;return rpcDb['getContactPreview'](_0x18ea09)[_0xe2c5('0x58')](function(_0x3711c1){if(!_[_0xe2c5('0x40')](_0x3711c1[0x0])){_0x18e6e8=_0x3711c1[0x0][_0xe2c5('0xf9')]?![]:!![];_0x3d4c7e=_0x3711c1[0x0][_0xe2c5('0xf9')]?!![]:![];_0x3d4c7e=_0x3f460b?!![]:_0x3d4c7e;}var _0x32fef9=_0x44790b[_0xe2c5('0xfa')](_0x3711c1);if(_0x32fef9[_0xe2c5('0xfb')]){rpcDb[_0xe2c5('0xfc')](_[_0xe2c5('0xf7')](_0x3711c1[0x0],['VoiceQueueId',_0xe2c5('0xe4')]))['then'](function(_0x8fa01c){_0x44790b[_0xe2c5('0xe3')](_0x8fa01c,_0x3711c1[0x0],_0x3f460b,_0x18e6e8,_0x3d4c7e)['then'](function(_0xcc494f){return _0xcc494f;})[_0xe2c5('0x4b')](function(_0x2521cf){throw _0x2521cf;});})[_0xe2c5('0x4b')](function(_0x9ad252){ut['logger'](_0xe2c5('0xfd'),_0x9ad252);throw ut[_0xe2c5('0x2e')]('Call\x20unsuccessful',_0x18e6e8,_0x3d4c7e);});}else{throw ut[_0xe2c5('0x2e')](_0x32fef9[_0xe2c5('0x2e')],_0x18e6e8,_0x3d4c7e);}})[_0xe2c5('0x4b')](function(_0x16f11c){ut['logger'](_0xe2c5('0xfe'),_0x16f11c);throw ut[_0xe2c5('0x2e')](_0xe2c5('0xff'),![],!![]);});};Preview[_0xe2c5('0x35')][_0xe2c5('0xfa')]=function(_0x1a371d){if(_[_0xe2c5('0x40')](_0x1a371d)||_[_0xe2c5('0xe7')](_0x1a371d)||!_[_0xe2c5('0x40')](_0x1a371d[0x0][_0xe2c5('0x5c')])&&_[_0xe2c5('0x40')](_0x1a371d[0x0][_0xe2c5('0x5c')][_0xe2c5('0x27')])){ut[_0xe2c5('0x30')](_0xe2c5('0x100'),_0x1a371d);return{'isValid':![],'message':'Empty\x20Contact'};}var _0x5a0f1c=this[_0xe2c5('0x11')][_0x1a371d[0x0][_0xe2c5('0x42')][_0xe2c5('0x27')]];_0x5a0f1c[_0xe2c5('0x2e')]=utils['CAMPAIGN_STATUS']['ACTIVE'];if(_[_0xe2c5('0x40')](_0x5a0f1c)){ut[_0xe2c5('0x30')]('[Preview][validateContact][Empty\x20Campaign]',_0x5a0f1c);return{'isValid':![],'message':_0xe2c5('0x101')};}if(!this[_0xe2c5('0x71')](_0x5a0f1c[_0xe2c5('0x72')])){ut[_0xe2c5('0x30')]('[Preview][validateContact][Trunk\x20not\x20working\x20correctly]',_0xe2c5('0x102')+_0x5a0f1c[_0xe2c5('0x27')]+_0xe2c5('0x103'));if(!this[_0xe2c5('0x71')](_0x5a0f1c[_0xe2c5('0x73')])){ut[_0xe2c5('0x30')]('[Preview][validateContact][Trunk\x20not\x20working\x20correctly]',_0x5a0f1c[_0xe2c5('0x27')]+_0xe2c5('0x104'));return{'isValid':![],'message':_0xe2c5('0x105')};}}if(!ut[_0xe2c5('0x70')](_0x5a0f1c[_0xe2c5('0x3e')])){ut['logger'](_0xe2c5('0x106'),_0x5a0f1c[_0xe2c5('0x27')]+_0xe2c5('0x107'));return{'isValid':![],'message':_0xe2c5('0x102')+_0x5a0f1c[_0xe2c5('0x27')]+_0xe2c5('0x107')};}return{'isValid':!![],'message':_0xe2c5('0x108')};};Preview[_0xe2c5('0x35')]['execCall']=function(_0x132692,_0x188b07,_0x1fe8de,_0x4e7168){var _0x282248=this;return new Promise(function(_0x35a1c1,_0x6f30a){var _0x7fed5f=_0x132692[_0xe2c5('0x8e')];var _0x259ef2=_0x282248['isTrunkReachable'](_0x188b07['Trunk'])?util[_0xe2c5('0x25')]('SIP/%s/%s%s',_0x188b07['Trunk'][_0xe2c5('0x27')],_[_0xe2c5('0x40')](_0x188b07[_0xe2c5('0x109')])?'':_0x188b07['dialPrefix'][_0xe2c5('0x10a')]()||'',_0x188b07['dialCutDigit']>0x0?_0x1fe8de[_0xe2c5('0xe4')][_0xe2c5('0x10b')](_0x188b07[_0xe2c5('0x10c')]):_0x1fe8de['phone']):util[_0xe2c5('0x25')](_0xe2c5('0x10d'),_[_0xe2c5('0x40')](_0x188b07[_0xe2c5('0x73')])?_0x188b07[_0xe2c5('0x72')]['name']:_0x188b07['TrunkBackup'][_0xe2c5('0x27')],_[_0xe2c5('0x40')](_0x188b07['dialPrefix'])?'':_0x188b07[_0xe2c5('0x109')]['trim']()||'',_0x188b07['dialCutDigit']>0x0?_0x1fe8de['phone'][_0xe2c5('0x10b')](_0x188b07[_0xe2c5('0x10c')]):_0x1fe8de[_0xe2c5('0xe4')]);var _0x165a55=_0x282248[_0xe2c5('0x71')](_0x188b07[_0xe2c5('0x72')])?ut['getCallerId'](_0x188b07[_0xe2c5('0x72')]['callerid'],_0x188b07[_0xe2c5('0x10e')],_0x188b07['dialRandomLastDigitCallerIdNumber']>0x0?ut[_0xe2c5('0x10f')](_0x188b07[_0xe2c5('0x110')],_0x188b07[_0xe2c5('0x111')]):_0x188b07[_0xe2c5('0x110')]):ut[_0xe2c5('0x112')](_[_0xe2c5('0x40')](_0x188b07[_0xe2c5('0x73')])?_0x188b07[_0xe2c5('0x72')]['callerid']:_0x188b07[_0xe2c5('0x73')][_0xe2c5('0x113')],_0x188b07['dialOriginateCallerIdName'],_0x188b07[_0xe2c5('0x111')]>0x0?ut[_0xe2c5('0x10f')](_0x188b07['dialOriginateCallerIdNumber'],_0x188b07[_0xe2c5('0x111')]):_0x188b07[_0xe2c5('0x110')]);if(_0x165a55){_0x132692[_0xe2c5('0x114')]=ut[_0xe2c5('0x115')](_0x165a55);_0x132692[_0xe2c5('0x116')]=ut[_0xe2c5('0x117')](_0x165a55);}var _0x117841=ut[_0xe2c5('0x118')](_0x188b07,_0x1fe8de,_0x259ef2,_0x165a55,_0x7fed5f,_0x132692);var _0x32f06d=utils[_0xe2c5('0x119')](_0x1fe8de[_0xe2c5('0x11a')]);Object[_0xe2c5('0x11b')](_0x117841,_0x32f06d);_['merge'](_0x132692,ut[_0xe2c5('0x11c')](_0x117841));_0x132692['starttime']=moment()['format'](_0xe2c5('0x63'));_0x188b07[_0xe2c5('0x11d')]=_0x117841;var _0x448230=ut[_0xe2c5('0x11e')](_0x132692,_0x188b07,_0x117841,_0x132692['activeContact'],_0x4e7168);return ami['Action'](_0x448230)['then'](function(_0x2a1850){_0x188b07[_0xe2c5('0x2b')]+=0x1;logger['info'](_0xe2c5('0x11f'),_0x7fed5f,_0xe2c5('0xd3'),_0x188b07[_0xe2c5('0x27')],_0xe2c5('0xd4'),_0x188b07[_0xe2c5('0x2b')]);_0x35a1c1(_0x2a1850);})[_0xe2c5('0x4b')](function(_0x27771d){ut[_0xe2c5('0xd8')](_0x132692,0xe,'OriginateError');rpcDb['createAgentHistory'](_0x132692,_0xe2c5('0x120'));_0x6f30a(_0x27771d);});});};Preview['prototype'][_0xe2c5('0x1c')]=function(_0x4fcee9){if(this[_0xe2c5('0x12')][_0x4fcee9[_0xe2c5('0x86')]]){this[_0xe2c5('0x12')][_0x4fcee9[_0xe2c5('0x86')]][_0xe2c5('0x4a')]=_0x4fcee9[_0xe2c5('0x4a')];}};Preview[_0xe2c5('0x35')][_0xe2c5('0x15')]=function(_0x2c2489){var _0x172298=this;var _0x2a3cd6=this[_0xe2c5('0x12')][_0x2c2489[_0xe2c5('0x121')]];if(_0x2a3cd6){if(_0x2a3cd6[_0xe2c5('0x122')]&&this[_0xe2c5('0x13')][_0x2a3cd6['lookAgent']]){ut[_0xe2c5('0x123')](_0x2a3cd6,this[_0xe2c5('0x13')][_0x2a3cd6['lookAgent']][_0xe2c5('0x27')],this['agents'][_0x2a3cd6[_0xe2c5('0x122')]]['id']);}var _0x25c603=_['clone'](_0x2a3cd6);_0x25c603[_0xe2c5('0x8b')]=moment()[_0xe2c5('0x25')](_0xe2c5('0x63'));var _0x40ae66=_0x172298[_0xe2c5('0x11')][_0x2a3cd6['queue']];if(ut[_0xe2c5('0x124')](_0x2c2489[_0xe2c5('0x125')])){if(_0x2a3cd6[_0xe2c5('0x84')]){rpcDb['unlockContact'](_0x2a3cd6[_0xe2c5('0x88')]);}if(_0x2a3cd6[_0xe2c5('0x85')]){rpcDb[_0xe2c5('0x61')](_0x2a3cd6[_0xe2c5('0x88')]);}ami['emit'](_0xe2c5('0x126'),ut[_0xe2c5('0x7b')](_0x2a3cd6,_0xe2c5('0x127'),this['campaignsPreview'][_0x2a3cd6[_0xe2c5('0x44')]]));this[_0xe2c5('0x128')](_0x25c603,_0x40ae66,_0x2c2489);}else{_0x2a3cd6['starttime']=moment()[_0xe2c5('0x25')](_0xe2c5('0x63'));ut['logAgent'](_0x25c603,0x4,_0xe2c5('0x95'));rpcDb[_0xe2c5('0xd9')](_0x25c603,_0xe2c5('0x129'));}}};Preview[_0xe2c5('0x35')][_0xe2c5('0x17')]=function(_0xdc504b){var _0x5561b2=this[_0xe2c5('0x12')][_0xdc504b['linkedid']];var _0x4ec710;if(_0x5561b2){_0x4ec710=this[_0xe2c5('0x11')][_0x5561b2['queue']];logger[_0xe2c5('0x23')](_0xe2c5('0x12a'),_0xdc504b[_0xe2c5('0x86')],_0xe2c5('0xd3'),_0x4ec710[_0xe2c5('0x27')],_0xe2c5('0x45'),_0x4ec710[_0xe2c5('0x2c')]);}if(this['actions'][_0xdc504b[_0xe2c5('0x86')]]&&_0xdc504b['linkedid']!==_0xdc504b[_0xe2c5('0x8e')]){if(_0xdc504b[_0xe2c5('0x12b')]==='16'&&this[_0xe2c5('0x12')][_0xdc504b['linkedid']][_0xe2c5('0x8c')]){this['callProgressDetectingCustomer'](_0xdc504b,_0xdc504b[_0xe2c5('0x86')],_0xdc504b[_0xe2c5('0x12b')]);}else if(this[_0xe2c5('0x12')][_0xdc504b[_0xe2c5('0x86')]][_0xe2c5('0x8c')]){logger[_0xe2c5('0x23')](_0xe2c5('0x12c'),_0xdc504b['linkedid'],_0xdc504b[_0xe2c5('0x12b')],_0xe2c5('0xd3'),_0x4ec710['name'],_0xe2c5('0x45'),_0x4ec710[_0xe2c5('0x2c')]);this[_0xe2c5('0x12d')](_0xdc504b,_0xdc504b[_0xe2c5('0x86')],_0xdc504b[_0xe2c5('0x12b')]);}}else if(_0x5561b2&&_[_0xe2c5('0x40')](_0x5561b2[_0xe2c5('0x12e')])&&_0x4ec710[_0xe2c5('0x12f')]&&_0xdc504b[_0xe2c5('0x86')]===_0xdc504b[_0xe2c5('0x8e')]&&_[_0xe2c5('0x40')](_0xdc504b['reason'])&&_0xdc504b['cause']==='16'&&_0xdc504b[_0xe2c5('0x130')]==='6'&&_[_0xe2c5('0xd6')](_0x5561b2[_0xe2c5('0x131')])){if(_0x5561b2[_0xe2c5('0x84')]){rpcDb[_0xe2c5('0xf8')](_0x5561b2['idContact']);}if(_0x5561b2['activeContact']){rpcDb['disableContact'](_0x5561b2[_0xe2c5('0x88')]);}_0xdc504b['reason']='22';this[_0xe2c5('0x128')](_0x5561b2,_0x4ec710,_0xdc504b);}else if(_0x5561b2&&_0x5561b2['transfer']){if(_0xdc504b[_0xe2c5('0x12b')]==='16'&&this[_0xe2c5('0x12')][_0xdc504b['linkedid']][_0xe2c5('0x8c')]){logger[_0xe2c5('0x23')](_0xe2c5('0x132'),_0xdc504b['linkedid'],_0xdc504b[_0xe2c5('0x12b')],_0xe2c5('0xd3'),_0x4ec710[_0xe2c5('0x27')],'pTalking:\x20',_0x4ec710[_0xe2c5('0x2c')]);this['callProgressDetectingCustomer'](_0xdc504b,_0xdc504b[_0xe2c5('0x86')],_0xdc504b[_0xe2c5('0x12b')]);}else if(this[_0xe2c5('0x12')][_0xdc504b[_0xe2c5('0x86')]][_0xe2c5('0x8c')]){logger['info'](_0xe2c5('0x12c'),_0xdc504b[_0xe2c5('0x86')],_0xdc504b[_0xe2c5('0x12b')],_0xe2c5('0xd3'),_0x4ec710[_0xe2c5('0x27')],_0xe2c5('0x45'),_0x4ec710[_0xe2c5('0x2c')]);this[_0xe2c5('0x12d')](_0xdc504b,_0xdc504b[_0xe2c5('0x86')],_0xdc504b[_0xe2c5('0x12b')]);}}};Preview[_0xe2c5('0x35')][_0xe2c5('0x1b')]=function(_0x1e70fd){if(this[_0xe2c5('0x12')][_0x1e70fd[_0xe2c5('0x133')]]&&_0x1e70fd['destlinkedid']!==_0x1e70fd['destuniqueid']){this['callProgressDetectingCustomer'](_0x1e70fd,_0x1e70fd[_0xe2c5('0x133')],_0x1e70fd[_0xe2c5('0xca')]);}};Preview['prototype']['syncHangupRequest']=function(_0x4e193d){if(this[_0xe2c5('0x12')][_0x4e193d['linkedid']]&&_0x4e193d['linkedid']!==_0x4e193d[_0xe2c5('0x8e')]&&!this['actions'][_0x4e193d['linkedid']][_0xe2c5('0x8c')]){if(_0x4e193d[_0xe2c5('0x12b')]==='1'){this[_0xe2c5('0x12d')](_0x4e193d,_0x4e193d[_0xe2c5('0x86')],_0x4e193d[_0xe2c5('0x12b')]);}}};Preview[_0xe2c5('0x35')]['addVariable']=function(_0x3cef1f,_0x17b0fd,_0x4add77){if(this[_0xe2c5('0x12')][_0x3cef1f]){if(_['isNil'](this[_0xe2c5('0x12')][_0x3cef1f][_0xe2c5('0x11d')])){this['actions'][_0x3cef1f][_0xe2c5('0x11d')]={};}this[_0xe2c5('0x12')][_0x3cef1f][_0xe2c5('0x11d')][_0x17b0fd]=_0x4add77;}};Preview[_0xe2c5('0x35')]['syncVarSet']=function(_0xde9df7){try{if(!_[_0xe2c5('0x40')](_0xde9df7)){if(ut['filterKey'](_[_0xe2c5('0x134')](_0xde9df7[_0xe2c5('0x135')])[0x0])){this[_0xe2c5('0x136')](_0xde9df7['uniqueid'],_['keys'](_0xde9df7['variable'])[0x0],_0xde9df7['value']);}}}catch(_0x1f5e93){logger[_0xe2c5('0x137')]('[syncVarSet][Preview]',util[_0xe2c5('0x138')](_0x1f5e93,{'showHidden':![],'depth':null}));}};Preview[_0xe2c5('0x35')][_0xe2c5('0x1f')]=function(_0x2b0216){if(_0x2b0216){if(this[_0xe2c5('0x12')][_0x2b0216[_0xe2c5('0x139')]]){this[_0xe2c5('0x12')][_0x2b0216[_0xe2c5('0x139')]][_0xe2c5('0x131')]=!![];}}};Preview[_0xe2c5('0x35')][_0xe2c5('0x21')]=function(_0x5209b6){if(_0x5209b6){if(this[_0xe2c5('0x12')][_0x5209b6[_0xe2c5('0x13a')]]){this[_0xe2c5('0x12')][_0x5209b6['transfererlinkedid']][_0xe2c5('0x131')]=!![];}}};module['exports']=Preview;