Built motion from commit 497d3d92.|2.5.43
[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 _0x885a=['Trunk\x20not\x20work','[Preview][validateContact][Campaign\x20Active]','\x20Not\x20Active','Is\x20Valid','SIP/%s/%s%s','trim','dialCutDigit','substring','callerid','getCallerIdRandom','dialRandomLastDigitCallerIdNumber','getCallerId','extractCalleridName','originatecalleridnum','extractCalleridNumber','merge','toLowerVariables','variablesAction','[originated][increment]','OriginateError','[originateFailure][logOriginateFailure]','actionid','lookAgent','logLookAgent','response','idContact','custom:agentringnoanswer','callProgressDetectingAgent','[syncHangup][talking]','[syncHangup][talking][cause]','cause','statedesc','dialQueueProject','channelstate','transfer','[syncHangup][talking][transfer]','destlinkedid','destuniqueid','addVariable','variables','filterKey','keys','variable','value','error','[syncVarSet][Preview]','inspect','transfertargetlinkedid','transfererlinkedid','exports','lodash','bluebird','uuid','moment','ioredis','../../../config/environment','../../../config/logger','preview','actionPreview','./rpcDb','./action','./util/util','defaults','redis','localhost','prototype','enqueue','tail','sequence','campaignsPreview','voiceQueues','trunks','actions','agents','clockClearZombieChannels','originateresponse','syncOriginateResponse','bind','syncHangup','syncHangupRequest','syncDialEnd','syncNewExten','varset','syncVarSet','syncAttendedTransfer','blindtransfer','syncBlindTransfer','emit','type','strategy','answered','loggedIn','pTalking','sumBillable','sumHoldTime','talking','abandoned','loggedInDb','dialActive','dialMethod','dialOriginateCallerIdName','dialOriginateCallerIdNumber','dialOriginateTimeout','dialPrefix','outboundAnswerAgiCallsDay','outboundDropCallsDayACS','outboundDropCallsDayCallersExit','outboundDropCallsDayTimeout','outboundNoAnswerCallsDay','outboundNoSuchCallsDay','outboundOriginateFailureCallsDay','outboundRejectCallsDay','outboundAbandonedCallsDay','predictiveIntervalAvgHoldtime','predictiveIntervalDroppedCallsCallersExit','predictiveIntervalDroppedCallsTimeout','predictiveIntervalErlangCalls','predictiveIntervalHitRate','predictiveIntervalMultiplicativeFactor','predictiveIntervalAvailable','message','originated','erlangCalls','erlangAbandonmentRate','erlangBusyFactor','startPredictive','Trunk','name','active','Interval','stringify','md5','format','voice_queue:save','[DEBUG]\x20Emit\x20voice_queue_channel:remove\x20event','voice:queue:%s','voice_queue_channel:remove','voice_queue_presence:remove','sendMessageOneNotActive','available','paused','NOT_ACTIVE','logger','\x20is\x20not\x20active','IS_DISACTIVED','[CampaignPreview]\x20Campaign\x20Queue:\x20','\x20is\x20disactive','syncCampaigns','hasOwnProperty','booked','outbound','clearZombieChannels','setMessage','recallMe','clearZombieChannel','isNil','info','Queue','queue','pTalking:\x20','contactId','UserId','VoiceQueueId','ListId','Action','status','channel','catch','No\x20such\x20channel','updateOriginated','[clearZombieChannel]','dialAnswer','decrementTalkink','loggerError','[Dialer][checkChannel][pTalking][Preview]','[Dialer][checkChannel][Preview]','size','getContactRecallMe','agentReadyId','then','length','getDiff','dialRecallMeTimeout','Agent','voicePause','run','logger2','disableContact','starttime','YYYY-MM-DD\x20HH:mm:ss','outboundReCallsDay','logCustomer','RecallInQueue','rescheduleContactInQueue','createBody','createCustomerHistory','[HistoryRecallClose]','[getContactRecallMe]','IsNotLoggedIn','AGENTS_NOT_LOGGED','isActive','isTrunkReachable','TrunkBackup','TRUNK_IS_NOT_REACHABLE','ACTIVE','callProgressDetectingCustomer','countglobal','totalGlobal','custom:agentnosuchnumber','buildObj','nosuchnumber','dialGlobalMaxRetry','cloneAction','[callProgressDetectingCustomer][logNoSuchGlobal]','countnosuchnumberretry','dialNoSuchNumberMaxRetry','rescheduleContact','scheduledAt','unlockAgent','activeContact','linkedid','ANSWER','responsetime','answertime','[syncHangup][talking][increment]','uniqueid','\x20Queue','connect','custom:agentConnectPreview','buildAcw','complete','outboundAnswerCallsDay','total','[16]','Answer','[callProgressDetectingCustomer][logAnswer]','createCustomerFinal','sumDuration','talktime','outboundBusyCallsDay','countbusyretry','Busy','busy','[callProgressDetectingCustomer][logBusy]','[callProgressDetectingCustomer][logBusyGlobal]','dialBusyRetryFrequency','NOANSWER','NoAnswer','custom:agentnoanswer','noanswer','[callProgressDetectingCustomer][logNoAnswer]','[callProgressDetectingCustomer][logNoAnswerGlobal]','dialNoAnswerMaxRetry','countnoanswerretry','CONGESTION','countcongestionretry','custom:agentcongestion','[callProgressDetectingCustomer][logCongestion]','Global','dialCongestionMaxRetry','CANCEL','countagentrejectretry','AgentReject','custom:agentreject','agentreject','[syncHangupRequest][logAgentReject]','[callProgressDetectingCustomer][logAgentReject]','dialAgentRejectMaxRetry','dialAgentRejectRetryFrequency','ABANDONED','countabandonedretry','Abandoned','[callProgressDetectingCustomer][logAbandoned]','dialAbandonedMaxRety','outboundUnknownCallsDay','countmachineretry','cause-txt','dialstatus','custom:amd','amd','[callProgressDetectingCustomer][hangupInAMD]','[callProgressDetectingCustomer][machine]','[default]','[Dialer][decrementTalkink][no\x20Hangup][Preview]','[callProgressDetectingCustomer][logUnknown]','[callProgressDetectingCustomer][logUnknownGlobal]','[callProgressDetectingCustomer]','[originated][decrement][callProgressDetectingCustomer]','originated:\x20','isUndefined','object','reason','logAgent','NoSuchNumber','createAgentHistory','[callProgressDetectingAgent][logNoSuch]','[callProgressDetectingAgent][logNoAnswer]','[callProgressDetectingAgent][logBusy]','Congestion','[callProgressDetectingAgent][logCongestion]','AnswerAGI','[originated][decrement][callProgressDetectingAgent]','checkInBlack','Contact','phone','Contact\x20is\x20undefined','isEmpty','execCall','Queue:\x20','\x20IdHopper:\x20','called','Calling','[Preview][execCall][failure]','Call\x20failed','outboundBlacklistCallsDay','Contact\x20in\x20black\x20List','SIP/%s','unmonitored','execRun','pick','unlock','unlockContact','getContactPreview','recallme','validateContact','isValid','Call\x20unsuccessful','[Preview][validateContact][Empty\x20Contact]','Empty\x20Contact','[Preview][validateContact][Empty\x20Campaign]','[Preview][validateContact][Trunk\x20not\x20work]','campaign\x20Name:\x20','\x20Trunk\x20is\x20not\x20active','\x20Trunk\x20Backup\x20is\x20not\x20active'];(function(_0x20a584,_0xe384a5){var _0x4b41a8=function(_0x2127c6){while(--_0x2127c6){_0x20a584['push'](_0x20a584['shift']());}};_0x4b41a8(++_0xe384a5);}(_0x885a,0x180));var _0xa885=function(_0x3e5086,_0x48f4a2){_0x3e5086=_0x3e5086-0x0;var _0xfeb102=_0x885a[_0x3e5086];return _0xfeb102;};'use strict';var util=require('util');var _=require(_0xa885('0x0'));var BPromise=require(_0xa885('0x1'));var uuid=require(_0xa885('0x2'));var moment=require(_0xa885('0x3'));var md5=require('md5');var Redis=require(_0xa885('0x4'));var config=require(_0xa885('0x5'));var logger=require(_0xa885('0x6'))(_0xa885('0x7'));var loggerAction=require(_0xa885('0x6'))(_0xa885('0x8'));var ami=require('../ami');var rpcDb=require(_0xa885('0x9'));var Action=require(_0xa885('0xa'));var ut=require(_0xa885('0xb'));config['redis']=_[_0xa885('0xc')](config[_0xa885('0xd')],{'host':_0xa885('0xe'),'port':0x18eb});var io=require('socket.io-emitter')(new Redis(config[_0xa885('0xd')]));var Sequence=function(){};Sequence[_0xa885('0xf')][_0xa885('0x10')]=function(_0x745710){this[_0xa885('0x11')]=this[_0xa885('0x11')]?this[_0xa885('0x11')]['finally'](_0x745710):_0x745710();};function Preview(_0x8a82f5){this[_0xa885('0x12')]=new Sequence();this[_0xa885('0x13')]=_0x8a82f5[_0xa885('0x14')];this[_0xa885('0x15')]=_0x8a82f5[_0xa885('0x15')];this[_0xa885('0x16')]={};this['agents']=_0x8a82f5[_0xa885('0x17')];this[_0xa885('0x18')]=0x0;ami['on'](_0xa885('0x19'),this[_0xa885('0x1a')][_0xa885('0x1b')](this));ami['on']('hangup',this[_0xa885('0x1c')][_0xa885('0x1b')](this));ami['on']('hanguprequest',this[_0xa885('0x1d')][_0xa885('0x1b')](this));ami['on']('dialend',this[_0xa885('0x1e')][_0xa885('0x1b')](this));ami['on']('newexten',this[_0xa885('0x1f')]['bind'](this));ami['on'](_0xa885('0x20'),this[_0xa885('0x21')][_0xa885('0x1b')](this));ami['on']('attendedtransfer',this[_0xa885('0x22')]['bind'](this));ami['on'](_0xa885('0x23'),this[_0xa885('0x24')][_0xa885('0x1b')](this));this['loopCampaigns'](this[_0xa885('0x13')]);}function emit(_0x32b8df,_0x1530b6,_0x4de770){io['to'](_0x32b8df)[_0xa885('0x25')](_0x1530b6,_0x4de770);}function emitCampaignPreview(_0x465611){if(_0x465611[_0xa885('0x26')]==='outbound'){var _0x303830={'id':_0x465611['id'],'name':_0x465611['name'],'strategy':_0x465611[_0xa885('0x27')],'answered':_0x465611[_0xa885('0x28')],'available':_0x465611['available'],'loggedIn':_0x465611[_0xa885('0x29')],'pTalking':_0x465611[_0xa885('0x2a')],'sumBillable':_0x465611[_0xa885('0x2b')],'sumDuration':_0x465611['sumDuration'],'sumHoldTime':_0x465611[_0xa885('0x2c')]||0x0,'talking':_0x465611[_0xa885('0x2d')],'total':_0x465611['total'],'type':_0x465611[_0xa885('0x26')],'unmanaged':_0x465611['unmanaged'],'abandoned':_0x465611[_0xa885('0x2e')],'waiting':_0x465611['waiting'],'loggedInDb':_0x465611[_0xa885('0x2f')],'dialActive':_0x465611[_0xa885('0x30')],'dialMethod':_0x465611[_0xa885('0x31')],'dialOriginateCallerIdName':_0x465611[_0xa885('0x32')],'dialOriginateCallerIdNumber':_0x465611[_0xa885('0x33')],'dialOriginateTimeout':_0x465611[_0xa885('0x34')],'dialPrefix':_0x465611[_0xa885('0x35')],'outboundAnswerAgiCallsDay':_0x465611[_0xa885('0x36')],'outboundAnswerCallsDay':_0x465611['outboundAnswerCallsDay'],'outboundBlacklistCallsDay':_0x465611['outboundBlacklistCallsDay'],'outboundBusyCallsDay':_0x465611['outboundBusyCallsDay'],'outboundCongestionCallsDay':_0x465611['outboundCongestionCallsDay'],'outboundDropCallsDayACS':_0x465611[_0xa885('0x37')],'outboundDropCallsDayCallersExit':_0x465611[_0xa885('0x38')],'outboundDropCallsDayTimeout':_0x465611[_0xa885('0x39')],'outboundNoAnswerCallsDay':_0x465611[_0xa885('0x3a')],'outboundNoSuchCallsDay':_0x465611[_0xa885('0x3b')],'outboundOriginateFailureCallsDay':_0x465611[_0xa885('0x3c')],'outboundReCallsDay':_0x465611['outboundReCallsDay'],'outboundRejectCallsDay':_0x465611[_0xa885('0x3d')],'outboundUnknownCallsDay':_0x465611['outboundUnknownCallsDay'],'outboundAbandonedCallsDay':_0x465611[_0xa885('0x3e')],'predictiveIntervalAnsweredCalls':_0x465611['predictiveIntervalAnsweredCalls'],'predictiveIntervalAvgHoldtime':_0x465611[_0xa885('0x3f')],'predictiveIntervalAvgTalktime':_0x465611['predictiveIntervalAvgTalktime'],'predictiveIntervalDroppedCallsCallersExit':_0x465611[_0xa885('0x40')],'predictiveIntervalDroppedCallsTimeout':_0x465611[_0xa885('0x41')],'predictiveIntervalErlangCalls':_0x465611[_0xa885('0x42')],'predictiveIntervalErlangCallsDroppedCalls':_0x465611['predictiveIntervalErlangCallsDroppedCalls'],'predictiveIntervalHitRate':_0x465611[_0xa885('0x43')],'predictiveIntervalMultiplicativeFactor':_0x465611[_0xa885('0x44')],'predictiveIntervalPauses':_0x465611['predictiveIntervalPauses'],'predictiveIntervalAvailable':_0x465611[_0xa885('0x45')],'predictiveIntervalTotalCalls':_0x465611['predictiveIntervalTotalCalls'],'message':_0x465611[_0xa885('0x46')],'originated':_0x465611[_0xa885('0x47')],'erlangCalls':_0x465611[_0xa885('0x48')],'erlangCallToSecond':_0x465611['erlangCallToSecond'],'erlangAbandonmentRate':_0x465611[_0xa885('0x49')],'erlangBusyFactor':_0x465611[_0xa885('0x4a')],'startPredictive':_0x465611[_0xa885('0x4b')],'startProgressive':_0x465611['startProgressive']};if(_0x465611[_0xa885('0x4c')]){_0x303830[_0xa885('0x4c')]={'id':_0x465611[_0xa885('0x4c')]['id'],'name':_0x465611[_0xa885('0x4c')][_0xa885('0x4d')],'active':_0x465611[_0xa885('0x4c')][_0xa885('0x4e')],'callerid':_0x465611[_0xa885('0x4c')]['callerid']};}if(_0x465611['Interval']){_0x303830[_0xa885('0x4f')]={'id':_0x465611[_0xa885('0x4f')]['id'],'name':_0x465611[_0xa885('0x4f')][_0xa885('0x4d')]};}var _0x405bac=md5(JSON[_0xa885('0x50')](_0x303830));if(_0x465611[_0xa885('0x51')]!==_0x405bac){_0x465611[_0xa885('0x51')]=_0x405bac;emit(util[_0xa885('0x52')]('voice:queue:%s',_0x303830['name']),_0xa885('0x53'),_0x303830);}}}function emitVoiceQueueChannelRemove(_0x576c78){logger['info'](_0xa885('0x54'),JSON['stringify'](_0x576c78));emit(util[_0xa885('0x52')](_0xa885('0x55'),_0x576c78[_0xa885('0x4d')]),_0xa885('0x56'),_0x576c78);io[_0xa885('0x25')](_0xa885('0x57'),_0x576c78);}function notSendMessagesQueue(_0x113298){if(_0x113298[_0xa885('0x58')]){if(_0x113298[_0xa885('0x47')]===0x0&&_0x113298[_0xa885('0x2a')]===0x0){_0x113298['sendMessageOneNotActive']=![];_0x113298[_0xa885('0x59')]=0x0;_0x113298[_0xa885('0x5a')]=0x0;_0x113298[_0xa885('0x46')]=_0xa885('0x5b');ut[_0xa885('0x5c')]('[CampaignPreview]\x20Campaign\x20Queue:\x20',_0x113298['name']+_0xa885('0x5d'));}else{_0x113298[_0xa885('0x46')]=_0xa885('0x5e');ut[_0xa885('0x5c')](_0xa885('0x5f'),_0x113298['name']+_0xa885('0x60'));}emitCampaignPreview(_0x113298);}}Preview[_0xa885('0xf')]['loopCampaigns']=function(){var _0x491478=this;setInterval(function(){_0x491478[_0xa885('0x61')]();},0x7cf);};Preview[_0xa885('0xf')]['syncCampaigns']=function(){var _0x561bf0=this[_0xa885('0x13')];this[_0xa885('0x18')]+=0x1;for(var _0x2a3a3f in _0x561bf0){if(_0x561bf0[_0xa885('0x62')](_0x2a3a3f)&&(_0x561bf0[_0x2a3a3f][_0xa885('0x31')]===_0xa885('0x7')||_0x561bf0[_0x2a3a3f][_0xa885('0x31')]===_0xa885('0x63'))&&_0x561bf0[_0x2a3a3f][_0xa885('0x26')]===_0xa885('0x64')){if(this[_0xa885('0x18')]>0x7){this['clockClearZombieChannels']=0x0;this[_0xa885('0x65')]();}}if(_0x561bf0[_0xa885('0x62')](_0x2a3a3f)&&_0x561bf0[_0x2a3a3f][_0xa885('0x31')]==='preview'&&_0x561bf0[_0x2a3a3f][_0xa885('0x26')]===_0xa885('0x64')){if(_0x561bf0[_0x2a3a3f][_0xa885('0x30')]){this[_0xa885('0x66')](_0x561bf0[_0x2a3a3f]);if(_0x561bf0[_0x2a3a3f]['dialPreviewAutoRecallMe'])this[_0xa885('0x67')](_0x561bf0[_0x2a3a3f]);}else{notSendMessagesQueue(_0x561bf0[_0x2a3a3f]);}}}};Preview['prototype'][_0xa885('0x68')]=function(_0x245fe9){var _0x4aa113=this;this[_0xa885('0x12')][_0xa885('0x10')](function(){if(!_[_0xa885('0x69')](_0x4aa113[_0xa885('0x16')][_0x245fe9])){loggerAction[_0xa885('0x6a')]('[clearZombieChannels][talking]',_0x245fe9,_0xa885('0x6b'),_0x4aa113[_0xa885('0x16')][_0x245fe9][_0xa885('0x6c')],'originated:\x20',JSON['stringify'](_0x4aa113['campaignsPreview'][_0x4aa113[_0xa885('0x16')][_0x245fe9][_0xa885('0x6c')]][_0xa885('0x47')]),_0xa885('0x6d'),JSON[_0xa885('0x50')](_0x4aa113[_0xa885('0x13')][_0x4aa113[_0xa885('0x16')][_0x245fe9][_0xa885('0x6c')]][_0xa885('0x2a')]),JSON[_0xa885('0x50')](_0x4aa113[_0xa885('0x16')][_0x245fe9]['dialAnswer']),JSON['stringify'](_['pick'](_0x4aa113[_0xa885('0x16')][_0x245fe9],[_0xa885('0x6e'),_0xa885('0x6f'),_0xa885('0x70'),_0xa885('0x71')])));return ami[_0xa885('0x72')]({'action':_0xa885('0x73'),'channel':_0x4aa113['actions'][_0x245fe9][_0xa885('0x74')]})[_0xa885('0x75')](function(_0x45806c){if(_0x45806c[_0xa885('0x46')]===_0xa885('0x76')){setTimeout(function(){if(_0x4aa113[_0xa885('0x16')][_0x245fe9]){ut[_0xa885('0x77')](_0x4aa113['campaignsPreview'][_0x4aa113[_0xa885('0x16')][_0x245fe9][_0xa885('0x6c')]],_0xa885('0x78'));if(_0x4aa113['actions'][_0x245fe9][_0xa885('0x79')]===!![]){ut[_0xa885('0x7a')](_0x4aa113[_0xa885('0x13')][_0x4aa113[_0xa885('0x16')][_0x245fe9][_0xa885('0x6c')]],_0xa885('0x78'));ut[_0xa885('0x7b')](_0xa885('0x7c')+_0x245fe9,_0x4aa113['actions'][_0x245fe9][_0xa885('0x6c')]);}ut[_0xa885('0x7b')](_0xa885('0x7d')+_0x245fe9,_0x4aa113['actions'][_0x245fe9][_0xa885('0x6c')]);delete _0x4aa113[_0xa885('0x16')][_0x245fe9];}},0x2328);}});}});};Preview[_0xa885('0xf')][_0xa885('0x65')]=function(){var _0x2eb4d6=this;loggerAction[_0xa885('0x6a')]('[action]',_[_0xa885('0x7e')](this[_0xa885('0x16')]));for(var _0x27d0b3 in this['actions']){if(_0x2eb4d6[_0xa885('0x16')][_0xa885('0x62')](_0x27d0b3)){_0x2eb4d6[_0xa885('0x68')](_0x27d0b3);}}};Preview[_0xa885('0xf')][_0xa885('0x67')]=function(_0x2ee5eb){var _0x16f162=this;rpcDb[_0xa885('0x7f')](_0x2ee5eb['id'],ut[_0xa885('0x80')](this['agents']))[_0xa885('0x81')](function(_0x333502){if(!_['isNil'](_0x333502)){for(var _0x4dc788=0x0;_0x4dc788<_0x333502[_0xa885('0x82')];_0x4dc788+=0x1){if(ut[_0xa885('0x83')](_0x333502[_0x4dc788]['scheduledat'])<_0x2ee5eb[_0xa885('0x84')]*0x3c){if(_0x333502[_0x4dc788][_0xa885('0x85')]&&!_0x333502[_0x4dc788][_0xa885('0x85')][_0xa885('0x86')]){_0x16f162[_0xa885('0x87')](_0x333502[_0x4dc788]['id'])[_0xa885('0x81')](ut[_0xa885('0x88')]('[RecallMe]'))[_0xa885('0x75')](ut[_0xa885('0x88')]('[RecallMe]'));}else{rpcDb[_0xa885('0x89')](_0x333502[_0x4dc788]['id']);}}else{var _0x48ded4=new Action(_0x333502[_0x4dc788],_0x2ee5eb);_0x48ded4[_0xa885('0x8a')]=moment()['format'](_0xa885('0x8b'));_0x2ee5eb[_0xa885('0x8c')]+=0x1;ut[_0xa885('0x8d')](_0x48ded4,0x17,_0xa885('0x8e'));if(_0x2ee5eb['dialRecallInQueue']){rpcDb[_0xa885('0x8f')](ut[_0xa885('0x90')](_0x333502[_0x4dc788]));rpcDb[_0xa885('0x91')](_0x48ded4,'[HistoryDialRecallInQueue][historyCatch]');}else{ut[_0xa885('0x8d')](_0x48ded4,0x16,'RecallFailedTimeout');rpcDb[_0xa885('0x91')](_0x48ded4,_0xa885('0x92'));rpcDb['createCustomerFinal'](_0x48ded4,_0xa885('0x92'));}}}}})['catch'](ut[_0xa885('0x88')](_0xa885('0x93')));};Preview['prototype'][_0xa885('0x66')]=function(_0x569d63){_0x569d63[_0xa885('0x58')]=!![];if(ut[_0xa885('0x94')](_0x569d63['loggedIn'])){_0x569d63['message']=_0xa885('0x95');}else if(!ut[_0xa885('0x96')](_0x569d63['dialActive'])){_0x569d63['message']=_0xa885('0x5b');}else if(!this[_0xa885('0x97')](_0x569d63[_0xa885('0x4c')])){if(!this[_0xa885('0x97')](_0x569d63[_0xa885('0x98')])){_0x569d63[_0xa885('0x46')]=_0xa885('0x99');}else{_0x569d63[_0xa885('0x46')]=_0xa885('0x9a');}}else{_0x569d63[_0xa885('0x46')]=_0xa885('0x9a');}emitCampaignPreview(_0x569d63);};Preview['prototype'][_0xa885('0x9b')]=function(_0x32e7ff,_0x3babfe,_0x3a0794){var _0x1da286=this;var _0x5cc2cf=this[_0xa885('0x16')][_0x3babfe];var _0x59ae23=this['campaignsPreview'][_0x5cc2cf[_0xa885('0x6c')]];var _0x3ce170;if(_0x59ae23){switch(_0x3a0794){case'1':_0x59ae23['outboundNoSuchCallsDay']+=0x1;_0x5cc2cf['countnosuchnumberretry']+=0x1;_0x5cc2cf[_0xa885('0x9c')]=ut[_0xa885('0x9d')](_0x5cc2cf);ut[_0xa885('0x8d')](_0x5cc2cf,0x0,'NoSuchNumber');ami['emit'](_0xa885('0x9e'),ut[_0xa885('0x9f')](_0x5cc2cf,_0xa885('0xa0')));rpcDb[_0xa885('0x91')](_0x5cc2cf,'[callProgressDetectingCustomer][logNoSuch]');if(ut[_0xa885('0x9d')](_0x5cc2cf)>=_0x59ae23[_0xa885('0xa1')]){_0x3ce170=ut[_0xa885('0xa2')](_0x5cc2cf,0xf,'Global');rpcDb['createCustomerFinal'](_0x3ce170,_0xa885('0xa3'));}else{if(_0x5cc2cf[_0xa885('0xa4')]>=_0x59ae23[_0xa885('0xa5')]){rpcDb['createCustomerFinal'](_0x5cc2cf,_0xa885('0xa3'));}else{rpcDb[_0xa885('0xa6')](ut[_0xa885('0xa7')](_0x5cc2cf,_0xa885('0xa4'),_0x59ae23['dialNoSuchNumberRetryFrequency']),_0x5cc2cf[_0xa885('0xa8')],_0x5cc2cf[_0xa885('0xa9')]);}}delete this['actions'][_0x32e7ff[_0xa885('0xaa')]];break;case _0xa885('0xab'):var _0x5a7bde=moment()[_0xa885('0x52')]('YYYY-MM-DD\x20HH:mm:ss');_0x5cc2cf[_0xa885('0xac')]=_0x5a7bde;_0x5cc2cf[_0xa885('0xad')]=_0x5a7bde;_0x5cc2cf[_0xa885('0x79')]=!![];_0x59ae23[_0xa885('0x2a')]+=0x1;logger[_0xa885('0x6a')](_0xa885('0xae'),_0x5cc2cf[_0xa885('0xaf')],_0xa885('0xb0'),_0x59ae23['name'],'pTalking:\x20',_0x59ae23[_0xa885('0x2a')]);ami[_0xa885('0x25')]('custom:agentconnect',ut[_0xa885('0x9f')](_0x5cc2cf,_0xa885('0xb1'),this['campaignsPreview'][_0x5cc2cf[_0xa885('0x6c')]]));if(_0x59ae23['acw']){ami[_0xa885('0x25')](_0xa885('0xb2'),ut[_0xa885('0xb3')](_0x5cc2cf));}break;case'16':ami[_0xa885('0x25')]('custom:agentcomplete',ut['buildObj'](_0x5cc2cf,_0xa885('0xb4'),this[_0xa885('0x13')][_0x5cc2cf[_0xa885('0x6c')]]));emitVoiceQueueChannelRemove(ut[_0xa885('0x9f')](_0x5cc2cf,_0xa885('0xb4')));_0x59ae23[_0xa885('0xb5')]+=0x1;_0x59ae23[_0xa885('0xb6')]+=0x1;_0x59ae23[_0xa885('0x28')]+=0x1;ut['decrementTalkink'](_0x59ae23,_0xa885('0xb7'));_0x5cc2cf['countglobal']=ut[_0xa885('0x9d')](_0x5cc2cf);ut[_0xa885('0x8d')](_0x5cc2cf,0x4,_0xa885('0xb8'));rpcDb['createCustomerHistory'](_0x5cc2cf,_0xa885('0xb9'));rpcDb[_0xa885('0xba')](_0x5cc2cf,'[callProgressDetectingCustomer][logAnswerGlobal]');rpcDb['crateCustomerReportQueue'](_0x5cc2cf);_0x59ae23[_0xa885('0xbb')]+=_0x5cc2cf[_0xa885('0xbc')];_0x59ae23[_0xa885('0x2b')]+=_0x5cc2cf[_0xa885('0xbc')];logger[_0xa885('0x6a')]('[syncHangup][talking][decrement]',_0x5cc2cf['uniqueid'],_0xa885('0xb0'),_0x59ae23[_0xa885('0x4d')],_0xa885('0x6d'),_0x59ae23[_0xa885('0x2a')]);delete this['actions'][_0x32e7ff['linkedid']];break;case'BUSY':_0x59ae23[_0xa885('0xbd')]+=0x1;_0x5cc2cf[_0xa885('0xbe')]+=0x1;_0x5cc2cf[_0xa885('0x9c')]=ut[_0xa885('0x9d')](_0x5cc2cf);ut[_0xa885('0x8d')](_0x5cc2cf,0x5,_0xa885('0xbf'));ami[_0xa885('0x25')]('custom:agentbusy',ut['buildObj'](_0x5cc2cf,_0xa885('0xc0')));rpcDb['createCustomerHistory'](_0x5cc2cf,_0xa885('0xc1'));if(ut[_0xa885('0x9d')](_0x5cc2cf)>=_0x59ae23[_0xa885('0xa1')]){_0x3ce170=ut[_0xa885('0xa2')](_0x5cc2cf,0xf,'Global');rpcDb[_0xa885('0xba')](_0x3ce170,_0xa885('0xc2'));}else{if(_0x5cc2cf[_0xa885('0xbe')]>=_0x59ae23['dialBusyMaxRetry']){rpcDb[_0xa885('0xba')](_0x5cc2cf,_0xa885('0xc1'));}else{rpcDb[_0xa885('0xa6')](ut['scheduledAt'](_0x5cc2cf,_0xa885('0xbe'),_0x59ae23[_0xa885('0xc3')]),_0x5cc2cf[_0xa885('0xa8')],_0x5cc2cf[_0xa885('0xa9')]);}}break;case _0xa885('0xc4'):_0x59ae23[_0xa885('0x3a')]+=0x1;_0x5cc2cf['countnoanswerretry']+=0x1;_0x5cc2cf[_0xa885('0x9c')]=ut[_0xa885('0x9d')](_0x5cc2cf);ut[_0xa885('0x8d')](_0x5cc2cf,0x3,_0xa885('0xc5'));ami['emit'](_0xa885('0xc6'),ut[_0xa885('0x9f')](_0x5cc2cf,_0xa885('0xc7')));rpcDb[_0xa885('0x91')](_0x5cc2cf,_0xa885('0xc8'));if(ut[_0xa885('0x9d')](_0x5cc2cf)>=_0x59ae23[_0xa885('0xa1')]){_0x3ce170=ut[_0xa885('0xa2')](_0x5cc2cf,0xf,'Global');rpcDb[_0xa885('0xba')](_0x3ce170,_0xa885('0xc9'));}else{if(_0x5cc2cf['countnoanswerretry']>=_0x59ae23[_0xa885('0xca')]){rpcDb['createCustomerFinal'](_0x5cc2cf,_0xa885('0xc8'));}else{rpcDb[_0xa885('0xa6')](ut['scheduledAt'](_0x5cc2cf,_0xa885('0xcb'),_0x59ae23['dialNoAnswerRetryFrequency']),_0x5cc2cf[_0xa885('0xa8')],_0x5cc2cf['activeContact']);}}break;case _0xa885('0xcc'):_0x59ae23['outboundCongestionCallsDay']+=0x1;_0x5cc2cf[_0xa885('0xcd')]+=0x1;_0x5cc2cf[_0xa885('0x9c')]=ut[_0xa885('0x9d')](_0x5cc2cf);ut[_0xa885('0x8d')](_0x5cc2cf,0x8,'Congestion');ami[_0xa885('0x25')](_0xa885('0xce'),ut[_0xa885('0x9f')](_0x5cc2cf,'congestion'));rpcDb[_0xa885('0x91')](_0x5cc2cf,_0xa885('0xcf'));if(ut[_0xa885('0x9d')](_0x5cc2cf)>=_0x59ae23['dialGlobalMaxRetry']){_0x3ce170=ut[_0xa885('0xa2')](_0x5cc2cf,0xf,_0xa885('0xd0'));rpcDb['createCustomerFinal'](_0x3ce170,'[callProgressDetectingCustomer][logCongestionGlobal]');}else{if(_0x5cc2cf[_0xa885('0xcd')]>=_0x59ae23[_0xa885('0xd1')]){rpcDb[_0xa885('0xba')](_0x5cc2cf,'[callProgressDetectingCustomer][logCongestion]');}else{rpcDb[_0xa885('0xa6')](ut[_0xa885('0xa7')](_0x5cc2cf,_0xa885('0xcd'),_0x59ae23[_0xa885('0xc3')]),_0x5cc2cf[_0xa885('0xa8')],_0x5cc2cf[_0xa885('0xa9')]);}}break;case _0xa885('0xd2'):_0x59ae23[_0xa885('0x3d')]+=0x1;_0x5cc2cf[_0xa885('0xd3')]+=0x1;_0x5cc2cf[_0xa885('0x9c')]=ut['totalGlobal'](_0x5cc2cf);ut['logCustomer'](_0x5cc2cf,0x14,_0xa885('0xd4'));ami['emit'](_0xa885('0xd5'),ut[_0xa885('0x9f')](_0x5cc2cf,_0xa885('0xd6')));rpcDb['createCustomerHistory'](_0x5cc2cf,_0xa885('0xd7'));if(ut[_0xa885('0x9d')](_0x5cc2cf)>=_0x59ae23[_0xa885('0xa1')]){_0x3ce170=ut[_0xa885('0xa2')](_0x5cc2cf,0x14,_0xa885('0xd4'));rpcDb[_0xa885('0xba')](_0x3ce170,_0xa885('0xd8'));}else{if(_0x5cc2cf['countagentrejectretry']>=_0x59ae23[_0xa885('0xd9')]){rpcDb[_0xa885('0xba')](_0x5cc2cf,_0xa885('0xd8'));}else{rpcDb[_0xa885('0xa6')](ut['scheduledAt'](_0x5cc2cf,_0xa885('0xd3'),_0x59ae23[_0xa885('0xda')]),_0x5cc2cf['unlockAgent'],_0x5cc2cf['activeContact']);}}break;case _0xa885('0xdb'):_0x59ae23[_0xa885('0x3e')]+=0x1;_0x5cc2cf[_0xa885('0xdc')]+=0x1;_0x5cc2cf[_0xa885('0x9c')]=ut[_0xa885('0x9d')](_0x5cc2cf);ut[_0xa885('0x8d')](_0x5cc2cf,0xb,_0xa885('0xdd'));rpcDb[_0xa885('0x91')](_0x5cc2cf,'[callProgressDetectingCustomer][logAbandoned]');if(ut[_0xa885('0x9d')](_0x5cc2cf)>=_0x59ae23['dialGlobalMaxRetry']){_0x3ce170=ut[_0xa885('0xa2')](_0x5cc2cf,0xf,_0xa885('0xd0'));rpcDb[_0xa885('0xba')](_0x3ce170,_0xa885('0xde'));}else{if(_0x5cc2cf['countabandonedetry']>=_0x59ae23[_0xa885('0xdf')]){rpcDb[_0xa885('0xba')](_0x5cc2cf,_0xa885('0xde'));}else{rpcDb[_0xa885('0xa6')](ut['scheduledAt'](_0x5cc2cf,_0xa885('0xdc'),_0x59ae23['dialAbandonedRetryFrequency']),_0x5cc2cf[_0xa885('0xa8')],_0x5cc2cf['activeContact']);}}break;case'18':_0x59ae23[_0xa885('0xe0')]+=0x1;_0x5cc2cf[_0xa885('0xe1')]+=0x1;_0x5cc2cf[_0xa885('0x9c')]=ut['totalGlobal'](_0x5cc2cf);ut[_0xa885('0x8d')](_0x5cc2cf,0x12,_0x32e7ff[_0xa885('0xe2')]||_0x32e7ff[_0xa885('0xe3')]);ami[_0xa885('0x25')](_0xa885('0xe4'),ut[_0xa885('0x9f')](_0x5cc2cf,_0xa885('0xe5')));rpcDb[_0xa885('0x91')](_0x5cc2cf,_0xa885('0xe6'));if(ut[_0xa885('0x9d')](_0x5cc2cf)>=_0x59ae23[_0xa885('0xa1')]){_0x3ce170=ut[_0xa885('0xa2')](_0x5cc2cf,0xf,_0xa885('0xd0'));rpcDb[_0xa885('0xba')](_0x3ce170,'[callProgressDetectingCustomer][hangupInAMD]');}else{rpcDb[_0xa885('0xba')](_0x5cc2cf,_0xa885('0xe6'));}delete this[_0xa885('0x16')][_0x32e7ff[_0xa885('0xaa')]];break;case'19':_0x59ae23['outboundUnknownCallsDay']+=0x1;_0x5cc2cf[_0xa885('0x9c')]=ut[_0xa885('0x9d')](_0x5cc2cf);ut[_0xa885('0x8d')](_0x5cc2cf,0x13,_0x32e7ff[_0xa885('0xe2')]||_0x32e7ff[_0xa885('0xe3')]);ami[_0xa885('0x25')](_0xa885('0xe4'),ut[_0xa885('0x9f')](_0x5cc2cf,_0xa885('0xe5')));rpcDb['createCustomerHistory'](_0x5cc2cf,'[callProgressDetectingCustomer][machine]');if(ut[_0xa885('0x9d')](_0x5cc2cf)>=_0x59ae23[_0xa885('0xa1')]){_0x3ce170=ut[_0xa885('0xa2')](_0x5cc2cf,0xf,_0xa885('0xd0'));rpcDb[_0xa885('0xba')](_0x3ce170,_0xa885('0xe7'));}else{rpcDb[_0xa885('0xba')](_0x5cc2cf,_0xa885('0xe7'));}delete this[_0xa885('0x16')][_0x32e7ff[_0xa885('0xaa')]];break;default:if(_0x5cc2cf[_0xa885('0x79')]){ut['decrementTalkink'](_0x59ae23,_0xa885('0xe8'));ut[_0xa885('0x7b')](_0xa885('0xe9')+_0x59ae23[_0xa885('0x4d')],_0x32e7ff);}_0x59ae23[_0xa885('0xe0')]+=0x1;_0x5cc2cf['countglobal']=ut[_0xa885('0x9d')](_0x5cc2cf);ut[_0xa885('0x8d')](_0x5cc2cf,0xc,_0x32e7ff[_0xa885('0xe2')]||_0x32e7ff['dialstatus']);rpcDb[_0xa885('0x91')](_0x5cc2cf,_0xa885('0xea'));if(ut[_0xa885('0x9d')](_0x5cc2cf)>=_0x59ae23[_0xa885('0xa1')]){_0x3ce170=ut[_0xa885('0xa2')](_0x5cc2cf,0xf,_0xa885('0xd0'));rpcDb[_0xa885('0xba')](_0x3ce170,'[callProgressDetectingCustomer][logUnknownGlobal]');}else{rpcDb[_0xa885('0xba')](_0x5cc2cf,_0xa885('0xeb'));}delete this[_0xa885('0x16')][_0x32e7ff[_0xa885('0xaa')]];}if(!(_0x5cc2cf['dialAnswer']&&_0x3a0794==='16')){ut['updateOriginated'](_0x59ae23,_0xa885('0xec'));logger[_0xa885('0x6a')](_0xa885('0xed'),_0x5cc2cf[_0xa885('0xaf')],_0xa885('0xb0'),_0x59ae23['name'],_0xa885('0xee'),_0x59ae23[_0xa885('0x47')]);}if(_0x3a0794!==_0xa885('0xab')){delete this[_0xa885('0x16')][_0x32e7ff[_0xa885('0xaa')]];delete this[_0xa885('0x16')][_0x32e7ff['destlinkedid']];}}};Preview[_0xa885('0xf')]['callProgressDetectingAgent']=function(_0x5102f8,_0x20b6bd,_0x557f12){if(_[_0xa885('0xef')](_0x20b6bd)&&'object'!==typeof _0x20b6bd){return;}if(_[_0xa885('0xef')](_0x557f12)&&_0xa885('0xf0')!==typeof _0x557f12){return;}switch(_0x557f12[_0xa885('0xf1')]){case'0':ut[_0xa885('0xf2')](_0x5102f8,0x0,_0xa885('0xf3'));rpcDb[_0xa885('0xf4')](_0x5102f8,_0xa885('0xf5'));break;case'3':ut[_0xa885('0xf2')](_0x5102f8,0x3,_0xa885('0xc5'));rpcDb[_0xa885('0xf4')](_0x5102f8,_0xa885('0xf6'));break;case'5':ut['logAgent'](_0x5102f8,0x5,_0xa885('0xbf'));rpcDb[_0xa885('0xf4')](_0x5102f8,_0xa885('0xf7'));break;case'8':ut['logAgent'](_0x5102f8,0x8,_0xa885('0xf8'));rpcDb[_0xa885('0xf4')](_0x5102f8,_0xa885('0xf9'));break;case'22':ut[_0xa885('0xf2')](_0x5102f8,0x16,_0xa885('0xfa'));rpcDb[_0xa885('0xf4')](_0x5102f8,'[callProgressDetectingAgent][logAnswerAGI]');break;default:ut[_0xa885('0xf2')](_0x5102f8,0xc,_0x557f12[_0xa885('0xf1')]);rpcDb[_0xa885('0xf4')](_0x5102f8,_0xa885('0xf9'));}ut['updateOriginated'](_0x20b6bd,'[callProgressDetectingAgent]');logger[_0xa885('0x6a')](_0xa885('0xfb'),_0x5102f8[_0xa885('0xaf')],'\x20Queue',_0x20b6bd['name'],_0xa885('0xee'),_0x20b6bd[_0xa885('0x47')]);delete this[_0xa885('0x16')][_0x5102f8[_0xa885('0xaf')]];};Preview['prototype'][_0xa885('0xfc')]=function(_0x2f2a64,_0x5c68f7,_0x5cf609,_0x1fe18b,_0x41c077){var _0x4ae384=this;return new BPromise(function(_0xc9b253,_0x3e9888){if(_[_0xa885('0x69')](_0x5c68f7)||_[_0xa885('0x69')](_0x5c68f7[_0xa885('0xfd')])||_['isNil'](_0x5c68f7['Contact'][_0xa885('0xfe')])||_[_0xa885('0x69')](_0x5c68f7['VoiceQueueId'])){_0x3e9888(ut[_0xa885('0x46')](_0xa885('0xff'),_0x1fe18b,_0x41c077));return;}var _0x49f02a=uuid['v4']();var _0x453494=_0x4ae384[_0xa885('0x13')][_0x5c68f7[_0xa885('0x6b')]['name']];var _0x2dcf1a=_0x5cf609?_0x4ae384[_0xa885('0x17')][_0x5cf609]['id']:undefined;_0x4ae384[_0xa885('0x16')][_0x49f02a]=new Action(_0x5c68f7,_0x453494,_0x49f02a,_0x5cf609,_0x2dcf1a);var _0x4dd4ac=_0x4ae384[_0xa885('0x16')][_0x49f02a];_0x4dd4ac[_0xa885('0xa8')]=_0x1fe18b;_0x4dd4ac[_0xa885('0xa9')]=_0x41c077;_0x4dd4ac['lookAgent']=_0x5cf609;if(_[_0xa885('0x100')](_0x2f2a64)){_0x4ae384[_0xa885('0x101')](_0x4dd4ac,_0x453494,_0x5c68f7,_0x5cf609)[_0xa885('0x81')](function(_0x3e36c4){logger['info']('[Preview][execCall][success]',_0xa885('0x102')+_0x4dd4ac[_0xa885('0x6c')]+_0xa885('0x103')+_0x4dd4ac['idContact'],JSON[_0xa885('0x50')](_0x3e36c4));ami[_0xa885('0x25')]('custom:agentcalled',ut[_0xa885('0x9f')](_0x4dd4ac,_0xa885('0x104'),_0x4ae384[_0xa885('0x13')][_0x4dd4ac[_0xa885('0x6c')]]));_0xc9b253(ut[_0xa885('0x46')](_0xa885('0x105')));})[_0xa885('0x75')](function(_0x33bd83){ut[_0xa885('0x5c')](_0xa885('0x106'),_0x33bd83);_0x3e9888(ut['message'](_0xa885('0x107'),_0x1fe18b,_0x41c077));});}else{_0x453494[_0xa885('0x108')]+=0x1;ut['logBlacklist'](_0x4dd4ac);rpcDb['createHistory'](_0x4dd4ac,'[Blacklist][error]');delete _0x4ae384[_0xa885('0x16')][_0x49f02a];_0x3e9888(ut[_0xa885('0x46')](_0xa885('0x109'),_0x1fe18b,_0x41c077));}});};Preview[_0xa885('0xf')][_0xa885('0x97')]=function(_0x5b4ae6){return!_[_0xa885('0x69')](_0x5b4ae6)&&!_[_0xa885('0x69')](_0x5b4ae6[_0xa885('0x4d')])&&!_[_0xa885('0x69')](_0x5b4ae6[_0xa885('0x4e')])&&_0x5b4ae6[_0xa885('0x4e')]&&!_['isNil'](this[_0xa885('0x15')][util[_0xa885('0x52')](_0xa885('0x10a'),_0x5b4ae6[_0xa885('0x4d')])])&&!_['isNil'](this[_0xa885('0x15')][util[_0xa885('0x52')](_0xa885('0x10a'),_0x5b4ae6[_0xa885('0x4d')])][_0xa885('0x73')])&&(this['trunks'][util['format'](_0xa885('0x10a'),_0x5b4ae6[_0xa885('0x4d')])][_0xa885('0x73')]==='reachable'||this[_0xa885('0x15')][util[_0xa885('0x52')]('SIP/%s',_0x5b4ae6[_0xa885('0x4d')])]['status']===_0xa885('0x10b'));};Preview[_0xa885('0xf')][_0xa885('0x87')]=function(_0x4bf9f5,_0x5906f1){var _0x5556c9=this;return new BPromise(function(_0x3037ad,_0x10034f){_0x5556c9[_0xa885('0x10c')](_0x4bf9f5,_0x5906f1)['then'](function(_0x583b70){_0x3037ad(_[_0xa885('0x10d')](_0x583b70,[_0xa885('0x46')]));})['catch'](function(_0x57df36){if(_0x57df36[_0xa885('0x10e')]){rpcDb[_0xa885('0x10f')](_0x4bf9f5);}if(_0x57df36[_0xa885('0x4e')]){rpcDb[_0xa885('0x89')](_0x4bf9f5);}_0x10034f(_[_0xa885('0x10d')](_0x57df36,['message']));});});};Preview[_0xa885('0xf')]['execRun']=function(_0x35c9d2,_0x2141aa){var _0xe5797=this;return new BPromise(function(_0x64da56,_0x3d0e0a){var _0x363329,_0xc9665e;rpcDb[_0xa885('0x110')](_0x35c9d2)[_0xa885('0x81')](function(_0x3347a3){if(!_['isNil'](_0x3347a3[0x0])){_0xc9665e=_0x3347a3[0x0][_0xa885('0x111')]?![]:!![];_0x363329=_0x3347a3[0x0][_0xa885('0x111')]?!![]:![];_0x363329=_0x2141aa?!![]:_0x363329;}var _0x469497=_0xe5797[_0xa885('0x112')](_0x3347a3);if(_0x469497[_0xa885('0x113')]){rpcDb['checkIsBlackList'](_[_0xa885('0x10d')](_0x3347a3[0x0],[_0xa885('0x70'),'Contact.phone']))['then'](function(_0x17019f){_0xe5797['checkInBlack'](_0x17019f,_0x3347a3[0x0],_0x2141aa,_0xc9665e,_0x363329)[_0xa885('0x81')](function(_0x2d55f4){_0x64da56(_0x2d55f4);})[_0xa885('0x75')](function(_0x4ba8a7){_0x3d0e0a(_0x4ba8a7);});})[_0xa885('0x75')](function(_0x288795){ut[_0xa885('0x5c')]('[Preview][checkIsBlackList]',_0x288795);_0x3d0e0a(ut[_0xa885('0x46')](_0xa885('0x114'),_0xc9665e,_0x363329));});}else{_0x3d0e0a(ut['message'](_0x469497['message'],_0xc9665e,_0x363329));}})[_0xa885('0x75')](function(_0x1d32c8){ut[_0xa885('0x5c')]('[Preview][getContactPreview]',_0x1d32c8);_0x3d0e0a(ut[_0xa885('0x46')]('Call\x20unsuccessful',![],!![]));});});};Preview['prototype'][_0xa885('0x112')]=function(_0x1d5f01){if(_[_0xa885('0x69')](_0x1d5f01)||_[_0xa885('0x100')](_0x1d5f01)||!_[_0xa885('0x69')](_0x1d5f01[0x0]['Agent'])&&_['isNil'](_0x1d5f01[0x0][_0xa885('0x85')]['name'])){ut[_0xa885('0x5c')](_0xa885('0x115'),_0x1d5f01);return{'isValid':![],'message':_0xa885('0x116')};}var _0xf9497c=this[_0xa885('0x13')][_0x1d5f01[0x0]['Queue'][_0xa885('0x4d')]];_0xf9497c[_0xa885('0x46')]='ACTIVE';if(_[_0xa885('0x69')](_0xf9497c)){ut[_0xa885('0x5c')](_0xa885('0x117'),_0xf9497c);return{'isValid':![],'message':'Empty\x20Campaign'};}if(!this[_0xa885('0x97')](_0xf9497c[_0xa885('0x4c')])){ut[_0xa885('0x5c')](_0xa885('0x118'),_0xa885('0x119')+_0xf9497c[_0xa885('0x4d')]+_0xa885('0x11a'));if(!this['isTrunkReachable'](_0xf9497c[_0xa885('0x98')])){ut[_0xa885('0x5c')](_0xa885('0x118'),_0xf9497c[_0xa885('0x4d')]+_0xa885('0x11b'));return{'isValid':![],'message':_0xa885('0x11c')};}}if(!ut[_0xa885('0x96')](_0xf9497c['dialActive'])){ut[_0xa885('0x5c')](_0xa885('0x11d'),_0xf9497c[_0xa885('0x4d')]+_0xa885('0x11e'));return{'isValid':![],'message':_0xa885('0x119')+_0xf9497c[_0xa885('0x4d')]+_0xa885('0x11e')};}return{'isValid':!![],'message':_0xa885('0x11f')};};Preview[_0xa885('0xf')][_0xa885('0x101')]=function(_0x4adab9,_0x2a0788,_0x571953,_0x4716ef){var _0xebf906=this;return new BPromise(function(_0x177803,_0x5a9bf0){var _0x595cb4=_0x4adab9[_0xa885('0xaf')];var _0x29d231=_0xebf906[_0xa885('0x97')](_0x2a0788['Trunk'])?util[_0xa885('0x52')](_0xa885('0x120'),_0x2a0788['Trunk'][_0xa885('0x4d')],_[_0xa885('0x69')](_0x2a0788[_0xa885('0x35')])?'':_0x2a0788[_0xa885('0x35')][_0xa885('0x121')]()||'',_0x2a0788[_0xa885('0x122')]>0x0?_0x571953[_0xa885('0xfd')][_0xa885('0xfe')][_0xa885('0x123')](_0x2a0788[_0xa885('0x122')]):_0x571953[_0xa885('0xfd')]['phone']):util[_0xa885('0x52')](_0xa885('0x120'),_['isNil'](_0x2a0788[_0xa885('0x98')])?_0x2a0788[_0xa885('0x4c')][_0xa885('0x4d')]:_0x2a0788['TrunkBackup']['name'],_[_0xa885('0x69')](_0x2a0788[_0xa885('0x35')])?'':_0x2a0788[_0xa885('0x35')][_0xa885('0x121')]()||'',_0x2a0788[_0xa885('0x122')]>0x0?_0x571953['Contact']['phone'][_0xa885('0x123')](_0x2a0788[_0xa885('0x122')]):_0x571953[_0xa885('0xfd')]['phone']);var _0x273488=_0xebf906[_0xa885('0x97')](_0x2a0788[_0xa885('0x4c')])?ut['getCallerId'](_0x2a0788[_0xa885('0x4c')][_0xa885('0x124')],_0x2a0788[_0xa885('0x32')],_0x2a0788['dialRandomLastDigitCallerIdNumber']>0x0?ut[_0xa885('0x125')](_0x2a0788[_0xa885('0x33')],_0x2a0788[_0xa885('0x126')]):_0x2a0788['dialOriginateCallerIdNumber']):ut[_0xa885('0x127')](_[_0xa885('0x69')](_0x2a0788[_0xa885('0x98')])?_0x2a0788[_0xa885('0x4c')][_0xa885('0x124')]:_0x2a0788[_0xa885('0x98')][_0xa885('0x124')],_0x2a0788[_0xa885('0x32')],_0x2a0788['dialRandomLastDigitCallerIdNumber']>0x0?ut[_0xa885('0x125')](_0x2a0788[_0xa885('0x33')],_0x2a0788[_0xa885('0x126')]):_0x2a0788[_0xa885('0x33')]);if(_0x273488){_0x4adab9['originatecalleridname']=ut[_0xa885('0x128')](_0x273488);_0x4adab9[_0xa885('0x129')]=ut[_0xa885('0x12a')](_0x273488);}var _0x2494c5=ut['addVariables'](_0x2a0788,_0x571953,_0x29d231,_0x273488,_0x595cb4,_0x4adab9);_[_0xa885('0x12b')](_0x4adab9,ut[_0xa885('0x12c')](_0x2494c5));_0x4adab9[_0xa885('0x8a')]=moment()['format']('YYYY-MM-DD\x20HH:mm:ss');ami[_0xa885('0x72')](ut[_0xa885('0x12d')](_0x4adab9,_0x2a0788,_0x2494c5,_0x4adab9['activeContact'],_0x4716ef))['then'](function(_0x13f115){_0x2a0788[_0xa885('0x47')]+=0x1;logger[_0xa885('0x6a')](_0xa885('0x12e'),_0x595cb4,_0xa885('0xb0'),_0x2a0788[_0xa885('0x4d')],_0xa885('0xee'),_0x2a0788['originated']);_0x177803(_0x13f115);})[_0xa885('0x75')](function(_0x2025e2){ut[_0xa885('0xf2')](_0x4adab9,0xe,_0xa885('0x12f'));rpcDb[_0xa885('0xf4')](_0x4adab9,_0xa885('0x130'));_0x5a9bf0(_0x2025e2);});});};Preview[_0xa885('0xf')][_0xa885('0x1f')]=function(_0x23742d){if(this[_0xa885('0x16')][_0x23742d['linkedid']]){this[_0xa885('0x16')][_0x23742d[_0xa885('0xaa')]][_0xa885('0x74')]=_0x23742d['channel'];}};Preview[_0xa885('0xf')]['syncOriginateResponse']=function(_0x2f88e6){var _0x4f14db=this;var _0x1585ba=this['actions'][_0x2f88e6[_0xa885('0x131')]];if(_0x1585ba){if(_0x1585ba[_0xa885('0x132')]&&this[_0xa885('0x17')][_0x1585ba[_0xa885('0x132')]]){ut[_0xa885('0x133')](_0x1585ba,this[_0xa885('0x17')][_0x1585ba[_0xa885('0x132')]]['name'],this[_0xa885('0x17')][_0x1585ba[_0xa885('0x132')]]['id']);}var _0x5b9dfe=_['clone'](_0x1585ba);_0x5b9dfe[_0xa885('0xac')]=moment()[_0xa885('0x52')]('YYYY-MM-DD\x20HH:mm:ss');var _0x56c5c9=_0x4f14db[_0xa885('0x13')][_0x1585ba[_0xa885('0x6c')]];if(ut['isFailure'](_0x2f88e6[_0xa885('0x134')])){if(_0x1585ba[_0xa885('0xa8')]){rpcDb[_0xa885('0x10f')](_0x1585ba['idContact']);}if(_0x1585ba['activeContact']){rpcDb['disableContact'](_0x1585ba[_0xa885('0x135')]);}ami[_0xa885('0x25')](_0xa885('0x136'),ut[_0xa885('0x9f')](_0x1585ba,'rejected',this[_0xa885('0x13')][_0x1585ba[_0xa885('0x6c')]]));this[_0xa885('0x137')](_0x5b9dfe,_0x56c5c9,_0x2f88e6);}else{_0x1585ba[_0xa885('0x8a')]=moment()[_0xa885('0x52')]('YYYY-MM-DD\x20HH:mm:ss');ut[_0xa885('0xf2')](_0x5b9dfe,0x4,_0xa885('0xb8'));rpcDb[_0xa885('0xf4')](_0x5b9dfe,'[callProgressDetectingAgent][logAnswer]');}}};Preview[_0xa885('0xf')][_0xa885('0x1c')]=function(_0x97042f){var _0x33f7d3=this;var _0x4830aa=this['actions'][_0x97042f[_0xa885('0xaa')]];var _0x6a66bc;if(_0x4830aa){_0x6a66bc=this[_0xa885('0x13')][_0x4830aa[_0xa885('0x6c')]];logger[_0xa885('0x6a')](_0xa885('0x138'),_0x97042f[_0xa885('0xaa')],_0xa885('0xb0'),_0x6a66bc['name'],_0xa885('0x6d'),_0x6a66bc[_0xa885('0x2a')]);}if(this['actions'][_0x97042f[_0xa885('0xaa')]]&&_0x97042f[_0xa885('0xaa')]!==_0x97042f[_0xa885('0xaf')]){if(_0x97042f['cause']==='16'&&this[_0xa885('0x16')][_0x97042f[_0xa885('0xaa')]][_0xa885('0x79')]){this['callProgressDetectingCustomer'](_0x97042f,_0x97042f[_0xa885('0xaa')],_0x97042f['cause']);}else if(this['actions'][_0x97042f[_0xa885('0xaa')]][_0xa885('0x79')]){logger[_0xa885('0x6a')](_0xa885('0x139'),_0x97042f[_0xa885('0xaa')],_0x97042f[_0xa885('0x13a')],_0xa885('0xb0'),_0x6a66bc[_0xa885('0x4d')],_0xa885('0x6d'),_0x6a66bc['pTalking']);this[_0xa885('0x9b')](_0x97042f,_0x97042f[_0xa885('0xaa')],_0x97042f['cause']);}}else if(_0x4830aa&&_[_0xa885('0x69')](_0x4830aa[_0xa885('0x13b')])&&_0x6a66bc[_0xa885('0x13c')]&&_0x97042f[_0xa885('0xaa')]===_0x97042f[_0xa885('0xaf')]&&_[_0xa885('0x69')](_0x97042f['reason'])&&_0x97042f[_0xa885('0x13a')]==='16'&&_0x97042f[_0xa885('0x13d')]==='6'&&_['isUndefined'](_0x4830aa['transfer'])){if(_0x4830aa[_0xa885('0xa8')]){rpcDb[_0xa885('0x10f')](_0x4830aa['idContact']);}if(_0x4830aa['activeContact']){rpcDb[_0xa885('0x89')](_0x4830aa['idContact']);}_0x97042f[_0xa885('0xf1')]='22';this[_0xa885('0x137')](_0x4830aa,_0x6a66bc,_0x97042f);}else if(_0x4830aa&&_0x4830aa[_0xa885('0x13e')]){if(_0x97042f[_0xa885('0x13a')]==='16'&&this[_0xa885('0x16')][_0x97042f[_0xa885('0xaa')]][_0xa885('0x79')]){logger[_0xa885('0x6a')](_0xa885('0x13f'),_0x97042f[_0xa885('0xaa')],_0x97042f[_0xa885('0x13a')],_0xa885('0xb0'),_0x6a66bc[_0xa885('0x4d')],_0xa885('0x6d'),_0x6a66bc[_0xa885('0x2a')]);this[_0xa885('0x9b')](_0x97042f,_0x97042f[_0xa885('0xaa')],_0x97042f[_0xa885('0x13a')]);}else if(this[_0xa885('0x16')][_0x97042f[_0xa885('0xaa')]][_0xa885('0x79')]){logger['info'](_0xa885('0x139'),_0x97042f['linkedid'],_0x97042f[_0xa885('0x13a')],_0xa885('0xb0'),_0x6a66bc[_0xa885('0x4d')],'pTalking:\x20',_0x6a66bc[_0xa885('0x2a')]);this[_0xa885('0x9b')](_0x97042f,_0x97042f[_0xa885('0xaa')],_0x97042f[_0xa885('0x13a')]);}}};Preview[_0xa885('0xf')][_0xa885('0x1e')]=function(_0x157513){if(this['actions'][_0x157513[_0xa885('0x140')]]&&_0x157513[_0xa885('0x140')]!==_0x157513[_0xa885('0x141')]){this['callProgressDetectingCustomer'](_0x157513,_0x157513[_0xa885('0x140')],_0x157513[_0xa885('0xe3')]);}};Preview['prototype'][_0xa885('0x1d')]=function(_0x5ecf53){if(this[_0xa885('0x16')][_0x5ecf53[_0xa885('0xaa')]]&&_0x5ecf53[_0xa885('0xaa')]!==_0x5ecf53[_0xa885('0xaf')]&&!this[_0xa885('0x16')][_0x5ecf53[_0xa885('0xaa')]][_0xa885('0x79')]){if(_0x5ecf53[_0xa885('0x13a')]==='1'){this['callProgressDetectingCustomer'](_0x5ecf53,_0x5ecf53[_0xa885('0xaa')],_0x5ecf53[_0xa885('0x13a')]);}}};Preview['prototype'][_0xa885('0x142')]=function(_0x324b77,_0x52a3c7,_0xcad242){if(this[_0xa885('0x16')][_0x324b77]){if(_['isNil'](this[_0xa885('0x16')][_0x324b77][_0xa885('0x143')])){this[_0xa885('0x16')][_0x324b77][_0xa885('0x143')]={};}this[_0xa885('0x16')][_0x324b77]['variables'][_0x52a3c7]=_0xcad242;}};Preview[_0xa885('0xf')]['syncVarSet']=function(_0x2a2aac){try{if(!_[_0xa885('0x69')](_0x2a2aac)){if(ut[_0xa885('0x144')](_[_0xa885('0x145')](_0x2a2aac[_0xa885('0x146')])[0x0])){this['addVariable'](_0x2a2aac[_0xa885('0xaf')],_[_0xa885('0x145')](_0x2a2aac[_0xa885('0x146')])[0x0],_0x2a2aac[_0xa885('0x147')]);}}}catch(_0x3efa79){logger[_0xa885('0x148')](_0xa885('0x149'),util[_0xa885('0x14a')](_0x3efa79,{'showHidden':![],'depth':null}));}};Preview[_0xa885('0xf')]['syncAttendedTransfer']=function(_0x211e42){if(_0x211e42){if(this['actions'][_0x211e42[_0xa885('0x14b')]]){this[_0xa885('0x16')][_0x211e42[_0xa885('0x14b')]][_0xa885('0x13e')]=!![];}}};Preview[_0xa885('0xf')][_0xa885('0x24')]=function(_0x55d509){if(_0x55d509){if(this['actions'][_0x55d509[_0xa885('0x14c')]]){this[_0xa885('0x16')][_0x55d509[_0xa885('0x14c')]][_0xa885('0x13e')]=!![];}}};module[_0xa885('0x14d')]=Preview;