Built motion from commit (unavailable).|2.5.31
[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 _0xae79=['dialCongestionMaxRetry','countcongestionretry','dialBusyRetryFrequency','CANCEL','outboundRejectCallsDay','countagentrejectretry','AgentReject','custom:agentreject','agentreject','[syncHangupRequest][logAgentReject]','[callProgressDetectingCustomer][logAgentReject]','dialAgentRejectRetryFrequency','Abandoned','[callProgressDetectingCustomer][logAbandoned]','countabandonedetry','dialAbandonedRetryFrequency','countmachineretry','cause-txt','dialstatus','custom:amd','[callProgressDetectingCustomer][hangupInAMD]','amd','[callProgressDetectingCustomer][machine]','decrementTalkink','[default]','[callProgressDetectingCustomer][logUnknown]','[callProgressDetectingCustomer][logUnknownGlobal]','[callProgressDetectingCustomer]','[originated][decrement][callProgressDetectingCustomer]','destlinkedid','callProgressDetectingAgent','isUndefined','object','reason','NoSuchNumber','createAgentHistory','[callProgressDetectingAgent][logNoSuch]','[callProgressDetectingAgent][logNoAnswer]','logAgent','[callProgressDetectingAgent][logBusy]','[callProgressDetectingAgent]','[originated][decrement][callProgressDetectingAgent]','checkInBlack','Contact','Contact\x20is\x20undefined','Queue','lookAgent','isEmpty','execCall','[Preview][execCall][success]','Queue:\x20','\x20IdHopper:\x20','idContact','custom:agentcalled','called','[Preview][execCall][failure]','Call\x20failed','logBlacklist','createHistory','Contact\x20in\x20black\x20List','SIP/%s','reachable','unmonitored','execRun','unlock','getContactPreview','recallme','validateContact','isValid','checkIsBlackList','Contact.phone','[Preview][checkIsBlackList]','Call\x20unsuccessful','[Preview][getContactPreview]','[Preview][validateContact][Empty\x20Campaign]','Empty\x20Campaign','[Preview][validateContact][Trunk\x20not\x20work]','campaign\x20Name:\x20','\x20Trunk\x20is\x20not\x20active','\x20Trunk\x20Backup\x20is\x20not\x20active','Trunk\x20not\x20work','\x20Not\x20Active','Is\x20Valid','SIP/%s/%s%s','trim','dialCutDigit','phone','substring','dialOriginateCallerIdName','getCallerIdRandom','dialOriginateCallerIdNumber','getCallerId','originatecalleridname','extractCalleridName','originatecalleridnum','extractCalleridNumber','addVariables','merge','toLowerVariables','Action','variablesAction','actionid','logLookAgent','clone','response','unlockContact','custom:agentringnoanswer','syncHangup','[syncHangup][talking]','cause','statedesc','transfer','[syncHangup][talking][cause]','destuniqueid','variables','syncVarSet','filterKey','addVariable','keys','variable','value','error','[syncVarSet][Preview]','syncAttendedTransfer','transfertargetlinkedid','transfererlinkedid','exports','util','lodash','bluebird','uuid','moment','md5','ioredis','../../../config/environment','../../../config/logger','preview','actionPreview','../ami','./rpcDb','./action','redis','defaults','localhost','socket.io-emitter','enqueue','tail','finally','sequence','campaignsPreview','trunks','agents','clockClearZombieChannels','originateresponse','syncOriginateResponse','bind','hangup','hanguprequest','syncHangupRequest','syncDialEnd','newexten','varset','blindtransfer','syncBlindTransfer','type','answered','available','loggedIn','pTalking','sumDuration','sumHoldTime','talking','total','unmanaged','waiting','loggedInDb','dialOriginateTimeout','dialPrefix','outboundAnswerCallsDay','outboundBlacklistCallsDay','outboundBusyCallsDay','outboundCongestionCallsDay','outboundDropCallsDayACS','outboundDropCallsDayCallersExit','outboundNoAnswerCallsDay','outboundOriginateFailureCallsDay','outboundReCallsDay','outboundUnknownCallsDay','outboundAbandonedCallsDay','predictiveIntervalAnsweredCalls','predictiveIntervalAvgTalktime','predictiveIntervalDroppedCallsCallersExit','predictiveIntervalDroppedCallsTimeout','predictiveIntervalErlangCalls','predictiveIntervalMultiplicativeFactor','predictiveIntervalPauses','predictiveIntervalAvailable','predictiveIntervalTotalCalls','message','originated','erlangCalls','erlangCallToSecond','erlangAbandonmentRate','startPredictive','startProgressive','Trunk','active','callerid','Interval','name','stringify','format','voice:queue:%s','voice_queue:save','info','[DEBUG]\x20Emit\x20voice_queue_channel:remove\x20event','voice_queue_channel:remove','emit','voice_queue_presence:remove','sendMessageOneNotActive','paused','NOT_ACTIVE','logger','[CampaignPreview]\x20Campaign\x20Queue:\x20','\x20is\x20not\x20active','IS_DISACTIVED','\x20is\x20disactive','prototype','loopCampaigns','hasOwnProperty','dialMethod','booked','outbound','clearZombieChannels','dialActive','setMessage','recallMe','isNil','actions','[clearZombieChannels][talking]','queue','originated:\x20','pTalking:\x20','dialAnswer','pick','contactId','UserId','VoiceQueueId','status','channel','catch','No\x20such\x20channel','updateOriginated','[clearZombieChannel]','loggerError','[action]','size','clearZombieChannel','getContactRecallMe','agentReadyId','then','length','getDiff','dialRecallMeTimeout','Agent','run','logger2','[RecallMe]','disableContact','starttime','YYYY-MM-DD\x20HH:mm:ss','logCustomer','dialRecallInQueue','rescheduleContactInQueue','createBody','createCustomerFinal','[HistoryRecallClose]','IsNotLoggedIn','AGENTS_NOT_LOGGED','isActive','isTrunkReachable','TrunkBackup','TRUNK_IS_NOT_REACHABLE','ACTIVE','callProgressDetectingCustomer','outboundNoSuchCallsDay','countnosuchnumberretry','countglobal','totalGlobal','custom:agentnosuchnumber','buildObj','nosuchnumber','createCustomerHistory','[callProgressDetectingCustomer][logNoSuch]','cloneAction','Global','[callProgressDetectingCustomer][logNoSuchGlobal]','rescheduleContact','scheduledAt','dialNoSuchNumberRetryFrequency','activeContact','linkedid','ANSWER','responsetime','answertime','uniqueid','\x20Queue','custom:agentconnect','connect','acw','custom:agentConnectPreview','buildAcw','custom:agentcomplete','complete','[16]','Answer','[callProgressDetectingCustomer][logAnswer]','crateCustomerReportQueue','talktime','[syncHangup][talking][decrement]','BUSY','countbusyretry','Busy','busy','dialGlobalMaxRetry','[callProgressDetectingCustomer][logBusyGlobal]','[callProgressDetectingCustomer][logBusy]','unlockAgent','countnoanswerretry','NoAnswer','custom:agentnoanswer','noanswer','[callProgressDetectingCustomer][logNoAnswerGlobal]','dialNoAnswerMaxRetry','[callProgressDetectingCustomer][logNoAnswer]','dialNoAnswerRetryFrequency','Congestion','congestion','[callProgressDetectingCustomer][logCongestion]','[callProgressDetectingCustomer][logCongestionGlobal]'];(function(_0x3d9363,_0x28d5b5){var _0x302e3e=function(_0x31634){while(--_0x31634){_0x3d9363['push'](_0x3d9363['shift']());}};_0x302e3e(++_0x28d5b5);}(_0xae79,0x1d3));var _0x9ae7=function(_0x147b0e,_0x3a9bbc){_0x147b0e=_0x147b0e-0x0;var _0x3d6473=_0xae79[_0x147b0e];return _0x3d6473;};'use strict';var util=require(_0x9ae7('0x0'));var _=require(_0x9ae7('0x1'));var BPromise=require(_0x9ae7('0x2'));var uuid=require(_0x9ae7('0x3'));var moment=require(_0x9ae7('0x4'));var md5=require(_0x9ae7('0x5'));var Redis=require(_0x9ae7('0x6'));var config=require(_0x9ae7('0x7'));var logger=require(_0x9ae7('0x8'))(_0x9ae7('0x9'));var loggerAction=require(_0x9ae7('0x8'))(_0x9ae7('0xa'));var ami=require(_0x9ae7('0xb'));var rpcDb=require(_0x9ae7('0xc'));var Action=require(_0x9ae7('0xd'));var ut=require('./util/util');config[_0x9ae7('0xe')]=_[_0x9ae7('0xf')](config[_0x9ae7('0xe')],{'host':_0x9ae7('0x10'),'port':0x18eb});var io=require(_0x9ae7('0x11'))(new Redis(config[_0x9ae7('0xe')]));var Sequence=function(){};Sequence['prototype'][_0x9ae7('0x12')]=function(_0x598b3d){this[_0x9ae7('0x13')]=this[_0x9ae7('0x13')]?this[_0x9ae7('0x13')][_0x9ae7('0x14')](_0x598b3d):_0x598b3d();};function Preview(_0x6c14cc){this[_0x9ae7('0x15')]=new Sequence();this[_0x9ae7('0x16')]=_0x6c14cc['voiceQueues'];this[_0x9ae7('0x17')]=_0x6c14cc[_0x9ae7('0x17')];this['actions']={};this[_0x9ae7('0x18')]=_0x6c14cc[_0x9ae7('0x18')];this[_0x9ae7('0x19')]=0x0;ami['on'](_0x9ae7('0x1a'),this[_0x9ae7('0x1b')][_0x9ae7('0x1c')](this));ami['on'](_0x9ae7('0x1d'),this['syncHangup'][_0x9ae7('0x1c')](this));ami['on'](_0x9ae7('0x1e'),this[_0x9ae7('0x1f')][_0x9ae7('0x1c')](this));ami['on']('dialend',this[_0x9ae7('0x20')][_0x9ae7('0x1c')](this));ami['on'](_0x9ae7('0x21'),this['syncNewExten']['bind'](this));ami['on'](_0x9ae7('0x22'),this['syncVarSet']['bind'](this));ami['on']('attendedtransfer',this['syncAttendedTransfer'][_0x9ae7('0x1c')](this));ami['on'](_0x9ae7('0x23'),this[_0x9ae7('0x24')][_0x9ae7('0x1c')](this));this['loopCampaigns'](this[_0x9ae7('0x16')]);}function emit(_0x1d94fb,_0x481e47,_0x20fd14){io['to'](_0x1d94fb)['emit'](_0x481e47,_0x20fd14);}function emitCampaignPreview(_0x284961){if(_0x284961[_0x9ae7('0x25')]==='outbound'){var _0x356559={'id':_0x284961['id'],'name':_0x284961['name'],'strategy':_0x284961['strategy'],'answered':_0x284961[_0x9ae7('0x26')],'available':_0x284961[_0x9ae7('0x27')],'loggedIn':_0x284961[_0x9ae7('0x28')],'pTalking':_0x284961[_0x9ae7('0x29')],'sumBillable':_0x284961['sumBillable'],'sumDuration':_0x284961[_0x9ae7('0x2a')],'sumHoldTime':_0x284961[_0x9ae7('0x2b')]||0x0,'talking':_0x284961[_0x9ae7('0x2c')],'total':_0x284961[_0x9ae7('0x2d')],'type':_0x284961['type'],'unmanaged':_0x284961[_0x9ae7('0x2e')],'abandoned':_0x284961['abandoned'],'waiting':_0x284961[_0x9ae7('0x2f')],'loggedInDb':_0x284961[_0x9ae7('0x30')],'dialActive':_0x284961['dialActive'],'dialMethod':_0x284961['dialMethod'],'dialOriginateCallerIdName':_0x284961['dialOriginateCallerIdName'],'dialOriginateCallerIdNumber':_0x284961['dialOriginateCallerIdNumber'],'dialOriginateTimeout':_0x284961[_0x9ae7('0x31')],'dialPrefix':_0x284961[_0x9ae7('0x32')],'outboundAnswerAgiCallsDay':_0x284961['outboundAnswerAgiCallsDay'],'outboundAnswerCallsDay':_0x284961[_0x9ae7('0x33')],'outboundBlacklistCallsDay':_0x284961[_0x9ae7('0x34')],'outboundBusyCallsDay':_0x284961[_0x9ae7('0x35')],'outboundCongestionCallsDay':_0x284961[_0x9ae7('0x36')],'outboundDropCallsDayACS':_0x284961[_0x9ae7('0x37')],'outboundDropCallsDayCallersExit':_0x284961[_0x9ae7('0x38')],'outboundDropCallsDayTimeout':_0x284961['outboundDropCallsDayTimeout'],'outboundNoAnswerCallsDay':_0x284961[_0x9ae7('0x39')],'outboundNoSuchCallsDay':_0x284961['outboundNoSuchCallsDay'],'outboundOriginateFailureCallsDay':_0x284961[_0x9ae7('0x3a')],'outboundReCallsDay':_0x284961[_0x9ae7('0x3b')],'outboundRejectCallsDay':_0x284961['outboundRejectCallsDay'],'outboundUnknownCallsDay':_0x284961[_0x9ae7('0x3c')],'outboundAbandonedCallsDay':_0x284961[_0x9ae7('0x3d')],'predictiveIntervalAnsweredCalls':_0x284961[_0x9ae7('0x3e')],'predictiveIntervalAvgHoldtime':_0x284961['predictiveIntervalAvgHoldtime'],'predictiveIntervalAvgTalktime':_0x284961[_0x9ae7('0x3f')],'predictiveIntervalDroppedCallsCallersExit':_0x284961[_0x9ae7('0x40')],'predictiveIntervalDroppedCallsTimeout':_0x284961[_0x9ae7('0x41')],'predictiveIntervalErlangCalls':_0x284961[_0x9ae7('0x42')],'predictiveIntervalErlangCallsDroppedCalls':_0x284961['predictiveIntervalErlangCallsDroppedCalls'],'predictiveIntervalHitRate':_0x284961['predictiveIntervalHitRate'],'predictiveIntervalMultiplicativeFactor':_0x284961[_0x9ae7('0x43')],'predictiveIntervalPauses':_0x284961[_0x9ae7('0x44')],'predictiveIntervalAvailable':_0x284961[_0x9ae7('0x45')],'predictiveIntervalTotalCalls':_0x284961[_0x9ae7('0x46')],'message':_0x284961[_0x9ae7('0x47')],'originated':_0x284961[_0x9ae7('0x48')],'erlangCalls':_0x284961[_0x9ae7('0x49')],'erlangCallToSecond':_0x284961[_0x9ae7('0x4a')],'erlangAbandonmentRate':_0x284961[_0x9ae7('0x4b')],'erlangBusyFactor':_0x284961['erlangBusyFactor'],'startPredictive':_0x284961[_0x9ae7('0x4c')],'startProgressive':_0x284961[_0x9ae7('0x4d')]};if(_0x284961['Trunk']){_0x356559[_0x9ae7('0x4e')]={'id':_0x284961[_0x9ae7('0x4e')]['id'],'name':_0x284961['Trunk']['name'],'active':_0x284961['Trunk'][_0x9ae7('0x4f')],'callerid':_0x284961['Trunk'][_0x9ae7('0x50')]};}if(_0x284961[_0x9ae7('0x51')]){_0x356559[_0x9ae7('0x51')]={'id':_0x284961[_0x9ae7('0x51')]['id'],'name':_0x284961[_0x9ae7('0x51')][_0x9ae7('0x52')]};}var _0x2c52d2=md5(JSON[_0x9ae7('0x53')](_0x356559));if(_0x284961[_0x9ae7('0x5')]!==_0x2c52d2){_0x284961['md5']=_0x2c52d2;emit(util[_0x9ae7('0x54')](_0x9ae7('0x55'),_0x356559['name']),_0x9ae7('0x56'),_0x356559);}}}function emitVoiceQueueChannelRemove(_0x4a5239){logger[_0x9ae7('0x57')](_0x9ae7('0x58'),JSON[_0x9ae7('0x53')](_0x4a5239));emit(util[_0x9ae7('0x54')](_0x9ae7('0x55'),_0x4a5239['name']),_0x9ae7('0x59'),_0x4a5239);io[_0x9ae7('0x5a')](_0x9ae7('0x5b'),_0x4a5239);}function notSendMessagesQueue(_0xe6d447){if(_0xe6d447['sendMessageOneNotActive']){if(_0xe6d447[_0x9ae7('0x48')]===0x0&&_0xe6d447[_0x9ae7('0x29')]===0x0){_0xe6d447[_0x9ae7('0x5c')]=![];_0xe6d447['available']=0x0;_0xe6d447[_0x9ae7('0x5d')]=0x0;_0xe6d447['message']=_0x9ae7('0x5e');ut[_0x9ae7('0x5f')](_0x9ae7('0x60'),_0xe6d447[_0x9ae7('0x52')]+_0x9ae7('0x61'));}else{_0xe6d447[_0x9ae7('0x47')]=_0x9ae7('0x62');ut[_0x9ae7('0x5f')]('[CampaignPreview]\x20Campaign\x20Queue:\x20',_0xe6d447['name']+_0x9ae7('0x63'));}emitCampaignPreview(_0xe6d447);}}Preview[_0x9ae7('0x64')][_0x9ae7('0x65')]=function(){var _0x231f03=this;setInterval(function(){_0x231f03['syncCampaigns']();},0x7cf);};Preview[_0x9ae7('0x64')]['syncCampaigns']=function(){var _0xeaf6bd=this[_0x9ae7('0x16')];this[_0x9ae7('0x19')]+=0x1;for(var _0x118aad in _0xeaf6bd){if(_0xeaf6bd[_0x9ae7('0x66')](_0x118aad)&&(_0xeaf6bd[_0x118aad][_0x9ae7('0x67')]===_0x9ae7('0x9')||_0xeaf6bd[_0x118aad][_0x9ae7('0x67')]===_0x9ae7('0x68'))&&_0xeaf6bd[_0x118aad]['type']===_0x9ae7('0x69')){if(this[_0x9ae7('0x19')]>0x7){this['clockClearZombieChannels']=0x0;this[_0x9ae7('0x6a')]();}}if(_0xeaf6bd['hasOwnProperty'](_0x118aad)&&_0xeaf6bd[_0x118aad][_0x9ae7('0x67')]==='preview'&&_0xeaf6bd[_0x118aad][_0x9ae7('0x25')]===_0x9ae7('0x69')){if(_0xeaf6bd[_0x118aad][_0x9ae7('0x6b')]){this[_0x9ae7('0x6c')](_0xeaf6bd[_0x118aad]);this[_0x9ae7('0x6d')](_0xeaf6bd[_0x118aad]);}else{notSendMessagesQueue(_0xeaf6bd[_0x118aad]);}}}};Preview[_0x9ae7('0x64')]['clearZombieChannel']=function(_0x19c338){var _0x5cf4b9=this;this[_0x9ae7('0x15')][_0x9ae7('0x12')](function(){if(!_[_0x9ae7('0x6e')](_0x5cf4b9[_0x9ae7('0x6f')][_0x19c338])){loggerAction[_0x9ae7('0x57')](_0x9ae7('0x70'),_0x19c338,'Queue',_0x5cf4b9[_0x9ae7('0x6f')][_0x19c338][_0x9ae7('0x71')],_0x9ae7('0x72'),JSON[_0x9ae7('0x53')](_0x5cf4b9[_0x9ae7('0x16')][_0x5cf4b9[_0x9ae7('0x6f')][_0x19c338][_0x9ae7('0x71')]]['originated']),_0x9ae7('0x73'),JSON[_0x9ae7('0x53')](_0x5cf4b9['campaignsPreview'][_0x5cf4b9['actions'][_0x19c338]['queue']][_0x9ae7('0x29')]),JSON[_0x9ae7('0x53')](_0x5cf4b9[_0x9ae7('0x6f')][_0x19c338][_0x9ae7('0x74')]),JSON[_0x9ae7('0x53')](_[_0x9ae7('0x75')](_0x5cf4b9[_0x9ae7('0x6f')][_0x19c338],[_0x9ae7('0x76'),_0x9ae7('0x77'),_0x9ae7('0x78'),'ListId'])));return ami['Action']({'action':_0x9ae7('0x79'),'channel':_0x5cf4b9[_0x9ae7('0x6f')][_0x19c338][_0x9ae7('0x7a')]})[_0x9ae7('0x7b')](function(_0x431099){if(_0x431099[_0x9ae7('0x47')]===_0x9ae7('0x7c')){setTimeout(function(){if(_0x5cf4b9['actions'][_0x19c338]){ut[_0x9ae7('0x7d')](_0x5cf4b9[_0x9ae7('0x16')][_0x5cf4b9[_0x9ae7('0x6f')][_0x19c338][_0x9ae7('0x71')]],_0x9ae7('0x7e'));if(_0x5cf4b9[_0x9ae7('0x6f')][_0x19c338][_0x9ae7('0x74')]===!![]){ut['decrementTalkink'](_0x5cf4b9[_0x9ae7('0x16')][_0x5cf4b9['actions'][_0x19c338]['queue']],'[clearZombieChannel]');ut[_0x9ae7('0x7f')]('[Dialer][checkChannel][pTalking][Preview]'+_0x19c338,_0x5cf4b9[_0x9ae7('0x6f')][_0x19c338][_0x9ae7('0x71')]);}ut[_0x9ae7('0x7f')]('[Dialer][checkChannel][Preview]'+_0x19c338,_0x5cf4b9['actions'][_0x19c338][_0x9ae7('0x71')]);delete _0x5cf4b9[_0x9ae7('0x6f')][_0x19c338];}},0x2328);}});}});};Preview[_0x9ae7('0x64')][_0x9ae7('0x6a')]=function(){var _0xdced3b=this;loggerAction[_0x9ae7('0x57')](_0x9ae7('0x80'),_[_0x9ae7('0x81')](this[_0x9ae7('0x6f')]));for(var _0x5818ea in this['actions']){if(_0xdced3b[_0x9ae7('0x6f')][_0x9ae7('0x66')](_0x5818ea)){_0xdced3b[_0x9ae7('0x82')](_0x5818ea);}}};Preview[_0x9ae7('0x64')][_0x9ae7('0x6d')]=function(_0x3f101b){var _0x5ae3f6=this;rpcDb[_0x9ae7('0x83')](_0x3f101b['id'],ut[_0x9ae7('0x84')](this['agents']))[_0x9ae7('0x85')](function(_0x446f5b){if(!_[_0x9ae7('0x6e')](_0x446f5b)){for(var _0x2c8cd7=0x0;_0x2c8cd7<_0x446f5b[_0x9ae7('0x86')];_0x2c8cd7+=0x1){if(ut[_0x9ae7('0x87')](_0x446f5b[_0x2c8cd7]['scheduledat'])<_0x3f101b[_0x9ae7('0x88')]*0x3c){if(_0x446f5b[_0x2c8cd7][_0x9ae7('0x89')]&&!_0x446f5b[_0x2c8cd7][_0x9ae7('0x89')]['voicePause']){_0x5ae3f6[_0x9ae7('0x8a')](_0x446f5b[_0x2c8cd7]['id'])[_0x9ae7('0x85')](ut[_0x9ae7('0x8b')](_0x9ae7('0x8c')))[_0x9ae7('0x7b')](ut[_0x9ae7('0x8b')](_0x9ae7('0x8c')));}else{rpcDb[_0x9ae7('0x8d')](_0x446f5b[_0x2c8cd7]['id']);}}else{var _0x12af95=new Action(_0x446f5b[_0x2c8cd7],_0x3f101b);_0x12af95[_0x9ae7('0x8e')]=moment()[_0x9ae7('0x54')](_0x9ae7('0x8f'));_0x3f101b[_0x9ae7('0x3b')]+=0x1;ut[_0x9ae7('0x90')](_0x12af95,0x17,'RecallInQueue');if(_0x3f101b[_0x9ae7('0x91')]){rpcDb[_0x9ae7('0x92')](ut[_0x9ae7('0x93')](_0x446f5b[_0x2c8cd7]));rpcDb['createCustomerHistory'](_0x12af95,'[HistoryDialRecallInQueue][historyCatch]');}else{ut[_0x9ae7('0x90')](_0x12af95,0x16,'RecallFailedTimeout');rpcDb['createCustomerHistory'](_0x12af95,'[HistoryRecallClose]');rpcDb[_0x9ae7('0x94')](_0x12af95,_0x9ae7('0x95'));}}}}})['catch'](ut[_0x9ae7('0x8b')]('[getContactRecallMe]'));};Preview[_0x9ae7('0x64')][_0x9ae7('0x6c')]=function(_0x52e099){_0x52e099[_0x9ae7('0x5c')]=!![];if(ut[_0x9ae7('0x96')](_0x52e099[_0x9ae7('0x28')])){_0x52e099['message']=_0x9ae7('0x97');}else if(!ut[_0x9ae7('0x98')](_0x52e099[_0x9ae7('0x6b')])){_0x52e099[_0x9ae7('0x47')]='NOT_ACTIVE';}else if(!this[_0x9ae7('0x99')](_0x52e099[_0x9ae7('0x4e')])){if(!this['isTrunkReachable'](_0x52e099[_0x9ae7('0x9a')])){_0x52e099['message']=_0x9ae7('0x9b');}else{_0x52e099[_0x9ae7('0x47')]=_0x9ae7('0x9c');}}else{_0x52e099[_0x9ae7('0x47')]=_0x9ae7('0x9c');}emitCampaignPreview(_0x52e099);};Preview[_0x9ae7('0x64')][_0x9ae7('0x9d')]=function(_0x351b27,_0x6de122,_0x36610d){var _0x5d7423=this;var _0x70d446=this[_0x9ae7('0x6f')][_0x6de122];var _0x5404af=this[_0x9ae7('0x16')][_0x70d446[_0x9ae7('0x71')]];var _0x3bdbc2;if(_0x5404af){switch(_0x36610d){case'1':_0x5404af[_0x9ae7('0x9e')]+=0x1;_0x70d446[_0x9ae7('0x9f')]+=0x1;_0x70d446[_0x9ae7('0xa0')]=ut[_0x9ae7('0xa1')](_0x70d446);ut[_0x9ae7('0x90')](_0x70d446,0x0,'NoSuchNumber');ami[_0x9ae7('0x5a')](_0x9ae7('0xa2'),ut[_0x9ae7('0xa3')](_0x70d446,_0x9ae7('0xa4')));rpcDb[_0x9ae7('0xa5')](_0x70d446,_0x9ae7('0xa6'));if(ut[_0x9ae7('0xa1')](_0x70d446)>=_0x5404af['dialGlobalMaxRetry']){_0x3bdbc2=ut[_0x9ae7('0xa7')](_0x70d446,0xf,_0x9ae7('0xa8'));rpcDb['createCustomerFinal'](_0x3bdbc2,_0x9ae7('0xa9'));}else{if(_0x70d446[_0x9ae7('0x9f')]>=_0x5404af['dialNoSuchNumberMaxRetry']){rpcDb[_0x9ae7('0x94')](_0x70d446,'[callProgressDetectingCustomer][logNoSuchGlobal]');}else{rpcDb[_0x9ae7('0xaa')](ut[_0x9ae7('0xab')](_0x70d446,_0x9ae7('0x9f'),_0x5404af[_0x9ae7('0xac')]),_0x70d446['unlockAgent'],_0x70d446[_0x9ae7('0xad')]);}}delete this[_0x9ae7('0x6f')][_0x351b27[_0x9ae7('0xae')]];break;case _0x9ae7('0xaf'):var _0x552700=moment()[_0x9ae7('0x54')](_0x9ae7('0x8f'));_0x70d446[_0x9ae7('0xb0')]=_0x552700;_0x70d446[_0x9ae7('0xb1')]=_0x552700;_0x70d446[_0x9ae7('0x74')]=!![];_0x5404af[_0x9ae7('0x29')]+=0x1;logger[_0x9ae7('0x57')]('[syncHangup][talking][increment]',_0x70d446[_0x9ae7('0xb2')],_0x9ae7('0xb3'),_0x5404af['name'],_0x9ae7('0x73'),_0x5404af[_0x9ae7('0x29')]);ami[_0x9ae7('0x5a')](_0x9ae7('0xb4'),ut[_0x9ae7('0xa3')](_0x70d446,_0x9ae7('0xb5'),this[_0x9ae7('0x16')][_0x70d446['queue']]));if(_0x5404af[_0x9ae7('0xb6')]){ami['emit'](_0x9ae7('0xb7'),ut[_0x9ae7('0xb8')](_0x70d446));}break;case'16':ami[_0x9ae7('0x5a')](_0x9ae7('0xb9'),ut['buildObj'](_0x70d446,_0x9ae7('0xba'),this[_0x9ae7('0x16')][_0x70d446['queue']]));emitVoiceQueueChannelRemove(ut[_0x9ae7('0xa3')](_0x70d446,_0x9ae7('0xba')));_0x5404af[_0x9ae7('0x33')]+=0x1;_0x5404af[_0x9ae7('0x2d')]+=0x1;_0x5404af[_0x9ae7('0x26')]+=0x1;ut['decrementTalkink'](_0x5404af,_0x9ae7('0xbb'));_0x70d446['countglobal']=ut['totalGlobal'](_0x70d446);ut[_0x9ae7('0x90')](_0x70d446,0x4,_0x9ae7('0xbc'));rpcDb[_0x9ae7('0xa5')](_0x70d446,_0x9ae7('0xbd'));rpcDb[_0x9ae7('0x94')](_0x70d446,'[callProgressDetectingCustomer][logAnswerGlobal]');rpcDb[_0x9ae7('0xbe')](_0x70d446);_0x5404af['sumDuration']+=_0x70d446['talktime'];_0x5404af['sumBillable']+=_0x70d446[_0x9ae7('0xbf')];logger[_0x9ae7('0x57')](_0x9ae7('0xc0'),_0x70d446[_0x9ae7('0xb2')],_0x9ae7('0xb3'),_0x5404af['name'],_0x9ae7('0x73'),_0x5404af[_0x9ae7('0x29')]);delete this['actions'][_0x351b27[_0x9ae7('0xae')]];break;case _0x9ae7('0xc1'):_0x5404af['outboundBusyCallsDay']+=0x1;_0x70d446[_0x9ae7('0xc2')]+=0x1;_0x70d446['countglobal']=ut[_0x9ae7('0xa1')](_0x70d446);ut[_0x9ae7('0x90')](_0x70d446,0x5,_0x9ae7('0xc3'));ami[_0x9ae7('0x5a')]('custom:agentbusy',ut['buildObj'](_0x70d446,_0x9ae7('0xc4')));rpcDb[_0x9ae7('0xa5')](_0x70d446,'[callProgressDetectingCustomer][logBusy]');if(ut[_0x9ae7('0xa1')](_0x70d446)>=_0x5404af[_0x9ae7('0xc5')]){_0x3bdbc2=ut[_0x9ae7('0xa7')](_0x70d446,0xf,_0x9ae7('0xa8'));rpcDb[_0x9ae7('0x94')](_0x3bdbc2,_0x9ae7('0xc6'));}else{if(_0x70d446[_0x9ae7('0xc2')]>=_0x5404af['dialBusyMaxRetry']){rpcDb[_0x9ae7('0x94')](_0x70d446,_0x9ae7('0xc7'));}else{rpcDb[_0x9ae7('0xaa')](ut[_0x9ae7('0xab')](_0x70d446,_0x9ae7('0xc2'),_0x5404af['dialBusyRetryFrequency']),_0x70d446[_0x9ae7('0xc8')],_0x70d446[_0x9ae7('0xad')]);}}break;case'NOANSWER':_0x5404af[_0x9ae7('0x39')]+=0x1;_0x70d446[_0x9ae7('0xc9')]+=0x1;_0x70d446[_0x9ae7('0xa0')]=ut[_0x9ae7('0xa1')](_0x70d446);ut[_0x9ae7('0x90')](_0x70d446,0x3,_0x9ae7('0xca'));ami[_0x9ae7('0x5a')](_0x9ae7('0xcb'),ut[_0x9ae7('0xa3')](_0x70d446,_0x9ae7('0xcc')));rpcDb[_0x9ae7('0xa5')](_0x70d446,'[callProgressDetectingCustomer][logNoAnswer]');if(ut['totalGlobal'](_0x70d446)>=_0x5404af['dialGlobalMaxRetry']){_0x3bdbc2=ut[_0x9ae7('0xa7')](_0x70d446,0xf,_0x9ae7('0xa8'));rpcDb['createCustomerFinal'](_0x3bdbc2,_0x9ae7('0xcd'));}else{if(_0x70d446[_0x9ae7('0xc9')]>=_0x5404af[_0x9ae7('0xce')]){rpcDb[_0x9ae7('0x94')](_0x70d446,_0x9ae7('0xcf'));}else{rpcDb[_0x9ae7('0xaa')](ut[_0x9ae7('0xab')](_0x70d446,_0x9ae7('0xc9'),_0x5404af[_0x9ae7('0xd0')]),_0x70d446['unlockAgent'],_0x70d446[_0x9ae7('0xad')]);}}break;case'CONGESTION':_0x5404af['outboundCongestionCallsDay']+=0x1;_0x70d446['countcongestionretry']+=0x1;_0x70d446['countglobal']=ut[_0x9ae7('0xa1')](_0x70d446);ut[_0x9ae7('0x90')](_0x70d446,0x8,_0x9ae7('0xd1'));ami[_0x9ae7('0x5a')]('custom:agentcongestion',ut[_0x9ae7('0xa3')](_0x70d446,_0x9ae7('0xd2')));rpcDb[_0x9ae7('0xa5')](_0x70d446,_0x9ae7('0xd3'));if(ut[_0x9ae7('0xa1')](_0x70d446)>=_0x5404af[_0x9ae7('0xc5')]){_0x3bdbc2=ut[_0x9ae7('0xa7')](_0x70d446,0xf,_0x9ae7('0xa8'));rpcDb[_0x9ae7('0x94')](_0x3bdbc2,_0x9ae7('0xd4'));}else{if(_0x70d446['countcongestionretry']>=_0x5404af[_0x9ae7('0xd5')]){rpcDb[_0x9ae7('0x94')](_0x70d446,_0x9ae7('0xd3'));}else{rpcDb[_0x9ae7('0xaa')](ut[_0x9ae7('0xab')](_0x70d446,_0x9ae7('0xd6'),_0x5404af[_0x9ae7('0xd7')]),_0x70d446[_0x9ae7('0xc8')],_0x70d446[_0x9ae7('0xad')]);}}break;case _0x9ae7('0xd8'):_0x5404af[_0x9ae7('0xd9')]+=0x1;_0x70d446[_0x9ae7('0xda')]+=0x1;_0x70d446[_0x9ae7('0xa0')]=ut[_0x9ae7('0xa1')](_0x70d446);ut[_0x9ae7('0x90')](_0x70d446,0x14,_0x9ae7('0xdb'));ami['emit'](_0x9ae7('0xdc'),ut[_0x9ae7('0xa3')](_0x70d446,_0x9ae7('0xdd')));rpcDb[_0x9ae7('0xa5')](_0x70d446,_0x9ae7('0xde'));if(ut[_0x9ae7('0xa1')](_0x70d446)>=_0x5404af[_0x9ae7('0xc5')]){_0x3bdbc2=ut['cloneAction'](_0x70d446,0x14,_0x9ae7('0xdb'));rpcDb['createCustomerFinal'](_0x3bdbc2,_0x9ae7('0xdf'));}else{if(_0x70d446['countagentrejectretry']>=_0x5404af['dialAgentRejectMaxRetry']){rpcDb[_0x9ae7('0x94')](_0x70d446,_0x9ae7('0xdf'));}else{rpcDb[_0x9ae7('0xaa')](ut[_0x9ae7('0xab')](_0x70d446,_0x9ae7('0xda'),_0x5404af[_0x9ae7('0xe0')]),_0x70d446[_0x9ae7('0xc8')],_0x70d446[_0x9ae7('0xad')]);}}break;case'ABANDONED':_0x5404af[_0x9ae7('0x3d')]+=0x1;_0x70d446['countabandonedretry']+=0x1;_0x70d446[_0x9ae7('0xa0')]=ut[_0x9ae7('0xa1')](_0x70d446);ut[_0x9ae7('0x90')](_0x70d446,0xb,_0x9ae7('0xe1'));rpcDb[_0x9ae7('0xa5')](_0x70d446,_0x9ae7('0xe2'));if(ut[_0x9ae7('0xa1')](_0x70d446)>=_0x5404af[_0x9ae7('0xc5')]){_0x3bdbc2=ut['cloneAction'](_0x70d446,0xf,_0x9ae7('0xa8'));rpcDb[_0x9ae7('0x94')](_0x3bdbc2,_0x9ae7('0xe2'));}else{if(_0x70d446[_0x9ae7('0xe3')]>=_0x5404af['dialAbandonedMaxRety']){rpcDb['createCustomerFinal'](_0x70d446,'[callProgressDetectingCustomer][logAbandoned]');}else{rpcDb['rescheduleContact'](ut[_0x9ae7('0xab')](_0x70d446,'countabandonedretry',_0x5404af[_0x9ae7('0xe4')]),_0x70d446[_0x9ae7('0xc8')],_0x70d446['activeContact']);}}break;case'18':_0x5404af[_0x9ae7('0x3c')]+=0x1;_0x70d446[_0x9ae7('0xe5')]+=0x1;_0x70d446[_0x9ae7('0xa0')]=ut[_0x9ae7('0xa1')](_0x70d446);ut[_0x9ae7('0x90')](_0x70d446,0x12,_0x351b27[_0x9ae7('0xe6')]||_0x351b27[_0x9ae7('0xe7')]);ami['emit'](_0x9ae7('0xe8'),ut[_0x9ae7('0xa3')](_0x70d446,'amd'));rpcDb['createCustomerHistory'](_0x70d446,_0x9ae7('0xe9'));if(ut[_0x9ae7('0xa1')](_0x70d446)>=_0x5404af[_0x9ae7('0xc5')]){_0x3bdbc2=ut[_0x9ae7('0xa7')](_0x70d446,0xf,_0x9ae7('0xa8'));rpcDb['createCustomerFinal'](_0x3bdbc2,'[callProgressDetectingCustomer][hangupInAMD]');}else{rpcDb[_0x9ae7('0x94')](_0x70d446,_0x9ae7('0xe9'));}delete this[_0x9ae7('0x6f')][_0x351b27[_0x9ae7('0xae')]];break;case'19':_0x5404af['outboundUnknownCallsDay']+=0x1;_0x70d446[_0x9ae7('0xa0')]=ut[_0x9ae7('0xa1')](_0x70d446);ut[_0x9ae7('0x90')](_0x70d446,0x13,_0x351b27[_0x9ae7('0xe6')]||_0x351b27[_0x9ae7('0xe7')]);ami[_0x9ae7('0x5a')]('custom:amd',ut[_0x9ae7('0xa3')](_0x70d446,_0x9ae7('0xea')));rpcDb[_0x9ae7('0xa5')](_0x70d446,'[callProgressDetectingCustomer][machine]');if(ut[_0x9ae7('0xa1')](_0x70d446)>=_0x5404af[_0x9ae7('0xc5')]){_0x3bdbc2=ut['cloneAction'](_0x70d446,0xf,_0x9ae7('0xa8'));rpcDb['createCustomerFinal'](_0x3bdbc2,_0x9ae7('0xeb'));}else{rpcDb['createCustomerFinal'](_0x70d446,_0x9ae7('0xeb'));}delete this[_0x9ae7('0x6f')][_0x351b27[_0x9ae7('0xae')]];break;default:if(_0x70d446['dialAnswer']){ut[_0x9ae7('0xec')](_0x5404af,_0x9ae7('0xed'));ut['loggerError']('[Dialer][decrementTalkink][no\x20Hangup][Preview]'+_0x5404af['name'],_0x351b27);}_0x5404af[_0x9ae7('0x3c')]+=0x1;_0x70d446['countglobal']=ut[_0x9ae7('0xa1')](_0x70d446);ut[_0x9ae7('0x90')](_0x70d446,0xc,_0x351b27['cause-txt']||_0x351b27['dialstatus']);rpcDb['createCustomerHistory'](_0x70d446,_0x9ae7('0xee'));if(ut['totalGlobal'](_0x70d446)>=_0x5404af['dialGlobalMaxRetry']){_0x3bdbc2=ut[_0x9ae7('0xa7')](_0x70d446,0xf,_0x9ae7('0xa8'));rpcDb[_0x9ae7('0x94')](_0x3bdbc2,_0x9ae7('0xef'));}else{rpcDb['createCustomerFinal'](_0x70d446,_0x9ae7('0xef'));}delete this[_0x9ae7('0x6f')][_0x351b27[_0x9ae7('0xae')]];}if(!(_0x70d446[_0x9ae7('0x74')]&&_0x36610d==='16')){ut[_0x9ae7('0x7d')](_0x5404af,_0x9ae7('0xf0'));logger[_0x9ae7('0x57')](_0x9ae7('0xf1'),_0x70d446[_0x9ae7('0xb2')],_0x9ae7('0xb3'),_0x5404af[_0x9ae7('0x52')],_0x9ae7('0x72'),_0x5404af[_0x9ae7('0x48')]);}if(_0x36610d!==_0x9ae7('0xaf')){delete this[_0x9ae7('0x6f')][_0x351b27[_0x9ae7('0xae')]];delete this[_0x9ae7('0x6f')][_0x351b27[_0x9ae7('0xf2')]];}}};Preview['prototype'][_0x9ae7('0xf3')]=function(_0x1ed6f8,_0x4548bc,_0x502e7e){if(_[_0x9ae7('0xf4')](_0x4548bc)&&'object'!==typeof _0x4548bc){return;}if(_[_0x9ae7('0xf4')](_0x502e7e)&&_0x9ae7('0xf5')!==typeof _0x502e7e){return;}switch(_0x502e7e[_0x9ae7('0xf6')]){case'0':ut['logAgent'](_0x1ed6f8,0x0,_0x9ae7('0xf7'));rpcDb[_0x9ae7('0xf8')](_0x1ed6f8,_0x9ae7('0xf9'));break;case'3':ut['logAgent'](_0x1ed6f8,0x3,_0x9ae7('0xca'));rpcDb[_0x9ae7('0xf8')](_0x1ed6f8,_0x9ae7('0xfa'));break;case'5':ut[_0x9ae7('0xfb')](_0x1ed6f8,0x5,'Busy');rpcDb[_0x9ae7('0xf8')](_0x1ed6f8,_0x9ae7('0xfc'));break;case'8':ut[_0x9ae7('0xfb')](_0x1ed6f8,0x8,'Congestion');rpcDb[_0x9ae7('0xf8')](_0x1ed6f8,'[callProgressDetectingAgent][logCongestion]');break;case'22':ut[_0x9ae7('0xfb')](_0x1ed6f8,0x16,'AnswerAGI');rpcDb['createAgentHistory'](_0x1ed6f8,'[callProgressDetectingAgent][logAnswerAGI]');break;default:ut[_0x9ae7('0xfb')](_0x1ed6f8,0xc,_0x502e7e[_0x9ae7('0xf6')]);rpcDb[_0x9ae7('0xf8')](_0x1ed6f8,'[callProgressDetectingAgent][logCongestion]');}ut[_0x9ae7('0x7d')](_0x4548bc,_0x9ae7('0xfd'));logger[_0x9ae7('0x57')](_0x9ae7('0xfe'),_0x1ed6f8[_0x9ae7('0xb2')],_0x9ae7('0xb3'),_0x4548bc['name'],_0x9ae7('0x72'),_0x4548bc[_0x9ae7('0x48')]);delete this[_0x9ae7('0x6f')][_0x1ed6f8[_0x9ae7('0xb2')]];};Preview[_0x9ae7('0x64')][_0x9ae7('0xff')]=function(_0x503334,_0x24f991,_0x1e2533,_0x4d1a74,_0x44f8f1){var _0x49f982=this;return new BPromise(function(_0x483f96,_0x4539c1){if(_[_0x9ae7('0x6e')](_0x24f991)||_[_0x9ae7('0x6e')](_0x24f991[_0x9ae7('0x100')])||_[_0x9ae7('0x6e')](_0x24f991[_0x9ae7('0x100')]['phone'])||_[_0x9ae7('0x6e')](_0x24f991[_0x9ae7('0x78')])){_0x4539c1(ut['message'](_0x9ae7('0x101'),_0x4d1a74,_0x44f8f1));return;}var _0x2e4a6c=uuid['v4']();var _0x1c04c2=_0x49f982[_0x9ae7('0x16')][_0x24f991[_0x9ae7('0x102')]['name']];var _0x30d2ac=_0x1e2533?_0x49f982[_0x9ae7('0x18')][_0x1e2533]['id']:undefined;_0x49f982[_0x9ae7('0x6f')][_0x2e4a6c]=new Action(_0x24f991,_0x1c04c2,_0x2e4a6c,_0x1e2533,_0x30d2ac);var _0x52f427=_0x49f982[_0x9ae7('0x6f')][_0x2e4a6c];_0x52f427['unlockAgent']=_0x4d1a74;_0x52f427[_0x9ae7('0xad')]=_0x44f8f1;_0x52f427[_0x9ae7('0x103')]=_0x1e2533;if(_[_0x9ae7('0x104')](_0x503334)){_0x49f982[_0x9ae7('0x105')](_0x52f427,_0x1c04c2,_0x24f991,_0x1e2533)['then'](function(_0xf65cef){logger['info'](_0x9ae7('0x106'),_0x9ae7('0x107')+_0x52f427['queue']+_0x9ae7('0x108')+_0x52f427[_0x9ae7('0x109')],JSON[_0x9ae7('0x53')](_0xf65cef));ami[_0x9ae7('0x5a')](_0x9ae7('0x10a'),ut[_0x9ae7('0xa3')](_0x52f427,_0x9ae7('0x10b'),_0x49f982[_0x9ae7('0x16')][_0x52f427['queue']]));_0x483f96(ut[_0x9ae7('0x47')]('Calling'));})[_0x9ae7('0x7b')](function(_0x3ee6e9){ut[_0x9ae7('0x5f')](_0x9ae7('0x10c'),_0x3ee6e9);_0x4539c1(ut[_0x9ae7('0x47')](_0x9ae7('0x10d'),_0x4d1a74,_0x44f8f1));});}else{_0x1c04c2[_0x9ae7('0x34')]+=0x1;ut[_0x9ae7('0x10e')](_0x52f427);rpcDb[_0x9ae7('0x10f')](_0x52f427,'[Blacklist][error]');delete _0x49f982[_0x9ae7('0x6f')][_0x2e4a6c];_0x4539c1(ut[_0x9ae7('0x47')](_0x9ae7('0x110'),_0x4d1a74,_0x44f8f1));}});};Preview['prototype']['isTrunkReachable']=function(_0x3f35ef){return!_[_0x9ae7('0x6e')](_0x3f35ef)&&!_['isNil'](_0x3f35ef['name'])&&!_[_0x9ae7('0x6e')](_0x3f35ef[_0x9ae7('0x4f')])&&_0x3f35ef['active']&&!_['isNil'](this['trunks'][util[_0x9ae7('0x54')](_0x9ae7('0x111'),_0x3f35ef[_0x9ae7('0x52')])])&&!_[_0x9ae7('0x6e')](this[_0x9ae7('0x17')][util[_0x9ae7('0x54')]('SIP/%s',_0x3f35ef[_0x9ae7('0x52')])][_0x9ae7('0x79')])&&(this[_0x9ae7('0x17')][util[_0x9ae7('0x54')](_0x9ae7('0x111'),_0x3f35ef[_0x9ae7('0x52')])]['status']===_0x9ae7('0x112')||this[_0x9ae7('0x17')][util[_0x9ae7('0x54')](_0x9ae7('0x111'),_0x3f35ef[_0x9ae7('0x52')])][_0x9ae7('0x79')]===_0x9ae7('0x113'));};Preview[_0x9ae7('0x64')][_0x9ae7('0x8a')]=function(_0x2907dc,_0x138263){var _0x4ed404=this;return new BPromise(function(_0x2bca05,_0xe9b8a9){_0x4ed404[_0x9ae7('0x114')](_0x2907dc,_0x138263)['then'](function(_0x55f2ef){_0x2bca05(_['pick'](_0x55f2ef,['message']));})[_0x9ae7('0x7b')](function(_0x54da7e){if(_0x54da7e[_0x9ae7('0x115')]){rpcDb['unlockContact'](_0x2907dc);}if(_0x54da7e[_0x9ae7('0x4f')]){rpcDb[_0x9ae7('0x8d')](_0x2907dc);}_0xe9b8a9(_['pick'](_0x54da7e,[_0x9ae7('0x47')]));});});};Preview[_0x9ae7('0x64')][_0x9ae7('0x114')]=function(_0x1b1be8,_0x4bd9cf){var _0x118e81=this;return new BPromise(function(_0x9c1c5e,_0x5418e1){var _0x5021c3,_0x4c20ef;rpcDb[_0x9ae7('0x116')](_0x1b1be8)[_0x9ae7('0x85')](function(_0x3fb83e){if(!_[_0x9ae7('0x6e')](_0x3fb83e[0x0])){_0x4c20ef=_0x3fb83e[0x0][_0x9ae7('0x117')]?![]:!![];_0x5021c3=_0x3fb83e[0x0]['recallme']?!![]:![];_0x5021c3=_0x4bd9cf?!![]:_0x5021c3;}var _0x58b53e=_0x118e81[_0x9ae7('0x118')](_0x3fb83e);if(_0x58b53e[_0x9ae7('0x119')]){rpcDb[_0x9ae7('0x11a')](_['pick'](_0x3fb83e[0x0],[_0x9ae7('0x78'),_0x9ae7('0x11b')]))['then'](function(_0x283d67){_0x118e81['checkInBlack'](_0x283d67,_0x3fb83e[0x0],_0x4bd9cf,_0x4c20ef,_0x5021c3)[_0x9ae7('0x85')](function(_0x2b4007){_0x9c1c5e(_0x2b4007);})[_0x9ae7('0x7b')](function(_0x5e89fe){_0x5418e1(_0x5e89fe);});})[_0x9ae7('0x7b')](function(_0x681475){ut[_0x9ae7('0x5f')](_0x9ae7('0x11c'),_0x681475);_0x5418e1(ut[_0x9ae7('0x47')](_0x9ae7('0x11d'),_0x4c20ef,_0x5021c3));});}else{_0x5418e1(ut[_0x9ae7('0x47')](_0x58b53e['message'],_0x4c20ef,_0x5021c3));}})[_0x9ae7('0x7b')](function(_0x47577a){ut[_0x9ae7('0x5f')](_0x9ae7('0x11e'),_0x47577a);_0x5418e1(ut[_0x9ae7('0x47')](_0x9ae7('0x11d'),![],!![]));});});};Preview[_0x9ae7('0x64')]['validateContact']=function(_0x2e1e38){if(_[_0x9ae7('0x6e')](_0x2e1e38)||_['isEmpty'](_0x2e1e38)||!_[_0x9ae7('0x6e')](_0x2e1e38[0x0][_0x9ae7('0x89')])&&_[_0x9ae7('0x6e')](_0x2e1e38[0x0][_0x9ae7('0x89')][_0x9ae7('0x52')])){ut['logger']('[Preview][validateContact][Empty\x20Contact]',_0x2e1e38);return{'isValid':![],'message':'Empty\x20Contact'};}var _0x3e4bac=this[_0x9ae7('0x16')][_0x2e1e38[0x0][_0x9ae7('0x102')][_0x9ae7('0x52')]];_0x3e4bac[_0x9ae7('0x47')]=_0x9ae7('0x9c');if(_[_0x9ae7('0x6e')](_0x3e4bac)){ut[_0x9ae7('0x5f')](_0x9ae7('0x11f'),_0x3e4bac);return{'isValid':![],'message':_0x9ae7('0x120')};}if(!this[_0x9ae7('0x99')](_0x3e4bac['Trunk'])){ut[_0x9ae7('0x5f')](_0x9ae7('0x121'),_0x9ae7('0x122')+_0x3e4bac[_0x9ae7('0x52')]+_0x9ae7('0x123'));if(!this[_0x9ae7('0x99')](_0x3e4bac[_0x9ae7('0x9a')])){ut[_0x9ae7('0x5f')](_0x9ae7('0x121'),_0x3e4bac['name']+_0x9ae7('0x124'));return{'isValid':![],'message':_0x9ae7('0x125')};}}if(!ut[_0x9ae7('0x98')](_0x3e4bac[_0x9ae7('0x6b')])){ut[_0x9ae7('0x5f')]('[Preview][validateContact][Campaign\x20Active]',_0x3e4bac[_0x9ae7('0x52')]+'\x20Not\x20Active');return{'isValid':![],'message':'campaign\x20Name:\x20'+_0x3e4bac[_0x9ae7('0x52')]+_0x9ae7('0x126')};}return{'isValid':!![],'message':_0x9ae7('0x127')};};Preview[_0x9ae7('0x64')][_0x9ae7('0x105')]=function(_0x4b0481,_0xaa3c62,_0x55e9e2,_0x1c1ab9){var _0xc96209=this;return new BPromise(function(_0x5af372,_0x327b68){var _0x31e380=_0x4b0481[_0x9ae7('0xb2')];var _0x1dbba1=_0xc96209['isTrunkReachable'](_0xaa3c62[_0x9ae7('0x4e')])?util[_0x9ae7('0x54')](_0x9ae7('0x128'),_0xaa3c62['Trunk'][_0x9ae7('0x52')],_['isNil'](_0xaa3c62[_0x9ae7('0x32')])?'':_0xaa3c62[_0x9ae7('0x32')][_0x9ae7('0x129')]()||'',_0xaa3c62[_0x9ae7('0x12a')]>0x0?_0x55e9e2[_0x9ae7('0x100')][_0x9ae7('0x12b')][_0x9ae7('0x12c')](_0xaa3c62[_0x9ae7('0x12a')]):_0x55e9e2[_0x9ae7('0x100')]['phone']):util[_0x9ae7('0x54')](_0x9ae7('0x128'),_['isNil'](_0xaa3c62[_0x9ae7('0x9a')])?_0xaa3c62[_0x9ae7('0x4e')]['name']:_0xaa3c62[_0x9ae7('0x9a')]['name'],_[_0x9ae7('0x6e')](_0xaa3c62[_0x9ae7('0x32')])?'':_0xaa3c62[_0x9ae7('0x32')][_0x9ae7('0x129')]()||'',_0xaa3c62[_0x9ae7('0x12a')]>0x0?_0x55e9e2[_0x9ae7('0x100')]['phone'][_0x9ae7('0x12c')](_0xaa3c62[_0x9ae7('0x12a')]):_0x55e9e2[_0x9ae7('0x100')][_0x9ae7('0x12b')]);var _0x1f65e6=_0xc96209['isTrunkReachable'](_0xaa3c62['Trunk'])?ut['getCallerId'](_0xaa3c62['Trunk']['callerid'],_0xaa3c62[_0x9ae7('0x12d')],_0xaa3c62['dialRandomLastDigitCallerIdNumber']>0x0?ut[_0x9ae7('0x12e')](_0xaa3c62[_0x9ae7('0x12f')],_0xaa3c62['dialRandomLastDigitCallerIdNumber']):_0xaa3c62[_0x9ae7('0x12f')]):ut[_0x9ae7('0x130')](_[_0x9ae7('0x6e')](_0xaa3c62[_0x9ae7('0x9a')])?_0xaa3c62[_0x9ae7('0x4e')]['callerid']:_0xaa3c62['TrunkBackup'][_0x9ae7('0x50')],_0xaa3c62[_0x9ae7('0x12d')],_0xaa3c62['dialRandomLastDigitCallerIdNumber']>0x0?ut[_0x9ae7('0x12e')](_0xaa3c62['dialOriginateCallerIdNumber'],_0xaa3c62['dialRandomLastDigitCallerIdNumber']):_0xaa3c62[_0x9ae7('0x12f')]);if(_0x1f65e6){_0x4b0481[_0x9ae7('0x131')]=ut[_0x9ae7('0x132')](_0x1f65e6);_0x4b0481[_0x9ae7('0x133')]=ut[_0x9ae7('0x134')](_0x1f65e6);}var _0x301c2f=ut[_0x9ae7('0x135')](_0xaa3c62,_0x55e9e2,_0x1dbba1,_0x1f65e6,_0x31e380,_0x4b0481);_[_0x9ae7('0x136')](_0x4b0481,ut[_0x9ae7('0x137')](_0x301c2f));_0x4b0481[_0x9ae7('0x8e')]=moment()['format'](_0x9ae7('0x8f'));ami[_0x9ae7('0x138')](ut[_0x9ae7('0x139')](_0x4b0481,_0xaa3c62,_0x301c2f,_0x4b0481[_0x9ae7('0xad')],_0x1c1ab9))[_0x9ae7('0x85')](function(_0x44c58d){_0xaa3c62[_0x9ae7('0x48')]+=0x1;logger['info']('[originated][increment]',_0x31e380,_0x9ae7('0xb3'),_0xaa3c62[_0x9ae7('0x52')],_0x9ae7('0x72'),_0xaa3c62[_0x9ae7('0x48')]);_0x5af372(_0x44c58d);})[_0x9ae7('0x7b')](function(_0x1beacc){ut[_0x9ae7('0xfb')](_0x4b0481,0xe,'OriginateError');rpcDb['createAgentHistory'](_0x4b0481,'[originateFailure][logOriginateFailure]');_0x327b68(_0x1beacc);});});};Preview[_0x9ae7('0x64')]['syncNewExten']=function(_0x438a74){if(this[_0x9ae7('0x6f')][_0x438a74[_0x9ae7('0xae')]]){this[_0x9ae7('0x6f')][_0x438a74['linkedid']][_0x9ae7('0x7a')]=_0x438a74[_0x9ae7('0x7a')];}};Preview[_0x9ae7('0x64')][_0x9ae7('0x1b')]=function(_0x54aace){var _0x2a6656=this;var _0x31b406=this[_0x9ae7('0x6f')][_0x54aace[_0x9ae7('0x13a')]];if(_0x31b406){if(_0x31b406[_0x9ae7('0x103')]&&this[_0x9ae7('0x18')][_0x31b406[_0x9ae7('0x103')]]){ut[_0x9ae7('0x13b')](_0x31b406,this[_0x9ae7('0x18')][_0x31b406[_0x9ae7('0x103')]][_0x9ae7('0x52')],this[_0x9ae7('0x18')][_0x31b406['lookAgent']]['id']);}var _0x73fc1d=_[_0x9ae7('0x13c')](_0x31b406);_0x73fc1d[_0x9ae7('0xb0')]=moment()[_0x9ae7('0x54')](_0x9ae7('0x8f'));var _0x48b4d9=_0x2a6656['campaignsPreview'][_0x31b406[_0x9ae7('0x71')]];if(ut['isFailure'](_0x54aace[_0x9ae7('0x13d')])){if(_0x31b406[_0x9ae7('0xc8')]){rpcDb[_0x9ae7('0x13e')](_0x31b406[_0x9ae7('0x109')]);}if(_0x31b406[_0x9ae7('0xad')]){rpcDb[_0x9ae7('0x8d')](_0x31b406[_0x9ae7('0x109')]);}ami['emit'](_0x9ae7('0x13f'),ut['buildObj'](_0x31b406,'rejected',this[_0x9ae7('0x16')][_0x31b406[_0x9ae7('0x71')]]));this['callProgressDetectingAgent'](_0x73fc1d,_0x48b4d9,_0x54aace);}else{_0x31b406['starttime']=moment()[_0x9ae7('0x54')]('YYYY-MM-DD\x20HH:mm:ss');ut[_0x9ae7('0xfb')](_0x73fc1d,0x4,_0x9ae7('0xbc'));rpcDb[_0x9ae7('0xf8')](_0x73fc1d,'[callProgressDetectingAgent][logAnswer]');}}};Preview[_0x9ae7('0x64')][_0x9ae7('0x140')]=function(_0x48393d){var _0x17c56c=this;var _0x4494d1=this[_0x9ae7('0x6f')][_0x48393d['linkedid']];var _0x5ce604;if(_0x4494d1){_0x5ce604=this[_0x9ae7('0x16')][_0x4494d1['queue']];logger[_0x9ae7('0x57')](_0x9ae7('0x141'),_0x48393d['linkedid'],_0x9ae7('0xb3'),_0x5ce604['name'],'pTalking:\x20',_0x5ce604[_0x9ae7('0x29')]);}if(this[_0x9ae7('0x6f')][_0x48393d[_0x9ae7('0xae')]]&&_0x48393d[_0x9ae7('0xae')]!==_0x48393d[_0x9ae7('0xb2')]){if(_0x48393d['cause']==='16'&&this[_0x9ae7('0x6f')][_0x48393d[_0x9ae7('0xae')]][_0x9ae7('0x74')]){this['callProgressDetectingCustomer'](_0x48393d,_0x48393d['linkedid'],_0x48393d[_0x9ae7('0x142')]);}else if(this[_0x9ae7('0x6f')][_0x48393d['linkedid']][_0x9ae7('0x74')]){logger[_0x9ae7('0x57')]('[syncHangup][talking][cause]',_0x48393d['linkedid'],_0x48393d[_0x9ae7('0x142')],_0x9ae7('0xb3'),_0x5ce604[_0x9ae7('0x52')],_0x9ae7('0x73'),_0x5ce604['pTalking']);this[_0x9ae7('0x9d')](_0x48393d,_0x48393d[_0x9ae7('0xae')],_0x48393d['cause']);}}else if(_0x4494d1&&_[_0x9ae7('0x6e')](_0x4494d1[_0x9ae7('0x143')])&&_0x5ce604['dialQueueProject']&&_0x48393d[_0x9ae7('0xae')]===_0x48393d[_0x9ae7('0xb2')]&&_['isNil'](_0x48393d[_0x9ae7('0xf6')])&&_0x48393d[_0x9ae7('0x142')]==='16'&&_0x48393d['channelstate']==='6'&&_[_0x9ae7('0xf4')](_0x4494d1[_0x9ae7('0x144')])){if(_0x4494d1[_0x9ae7('0xc8')]){rpcDb[_0x9ae7('0x13e')](_0x4494d1[_0x9ae7('0x109')]);}if(_0x4494d1[_0x9ae7('0xad')]){rpcDb['disableContact'](_0x4494d1['idContact']);}_0x48393d['reason']='22';this['callProgressDetectingAgent'](_0x4494d1,_0x5ce604,_0x48393d);}else if(_0x4494d1&&_0x4494d1['transfer']){if(_0x48393d['cause']==='16'&&this[_0x9ae7('0x6f')][_0x48393d[_0x9ae7('0xae')]][_0x9ae7('0x74')]){logger[_0x9ae7('0x57')]('[syncHangup][talking][transfer]',_0x48393d[_0x9ae7('0xae')],_0x48393d[_0x9ae7('0x142')],_0x9ae7('0xb3'),_0x5ce604[_0x9ae7('0x52')],_0x9ae7('0x73'),_0x5ce604[_0x9ae7('0x29')]);this[_0x9ae7('0x9d')](_0x48393d,_0x48393d[_0x9ae7('0xae')],_0x48393d[_0x9ae7('0x142')]);}else if(this[_0x9ae7('0x6f')][_0x48393d['linkedid']][_0x9ae7('0x74')]){logger['info'](_0x9ae7('0x145'),_0x48393d[_0x9ae7('0xae')],_0x48393d['cause'],'\x20Queue',_0x5ce604[_0x9ae7('0x52')],_0x9ae7('0x73'),_0x5ce604[_0x9ae7('0x29')]);this['callProgressDetectingCustomer'](_0x48393d,_0x48393d['linkedid'],_0x48393d[_0x9ae7('0x142')]);}}};Preview['prototype']['syncDialEnd']=function(_0x5715d5){if(this[_0x9ae7('0x6f')][_0x5715d5[_0x9ae7('0xf2')]]&&_0x5715d5[_0x9ae7('0xf2')]!==_0x5715d5[_0x9ae7('0x146')]){this[_0x9ae7('0x9d')](_0x5715d5,_0x5715d5['destlinkedid'],_0x5715d5['dialstatus']);}};Preview[_0x9ae7('0x64')][_0x9ae7('0x1f')]=function(_0x1d9631){if(this[_0x9ae7('0x6f')][_0x1d9631[_0x9ae7('0xae')]]&&_0x1d9631['linkedid']!==_0x1d9631['uniqueid']&&!this[_0x9ae7('0x6f')][_0x1d9631['linkedid']][_0x9ae7('0x74')]){if(_0x1d9631['cause']==='1'){this['callProgressDetectingCustomer'](_0x1d9631,_0x1d9631[_0x9ae7('0xae')],_0x1d9631[_0x9ae7('0x142')]);}}};Preview['prototype']['addVariable']=function(_0x349379,_0x13c1dd,_0x23e250){if(this['actions'][_0x349379]){if(_[_0x9ae7('0x6e')](this[_0x9ae7('0x6f')][_0x349379][_0x9ae7('0x147')])){this['actions'][_0x349379][_0x9ae7('0x147')]={};}this[_0x9ae7('0x6f')][_0x349379][_0x9ae7('0x147')][_0x13c1dd]=_0x23e250;}};Preview[_0x9ae7('0x64')][_0x9ae7('0x148')]=function(_0x3cb35f){try{if(!_['isNil'](_0x3cb35f)){if(ut[_0x9ae7('0x149')](_['keys'](_0x3cb35f['variable'])[0x0])){this[_0x9ae7('0x14a')](_0x3cb35f['uniqueid'],_[_0x9ae7('0x14b')](_0x3cb35f[_0x9ae7('0x14c')])[0x0],_0x3cb35f[_0x9ae7('0x14d')]);}}}catch(_0x15e9af){logger[_0x9ae7('0x14e')](_0x9ae7('0x14f'),util['inspect'](_0x15e9af,{'showHidden':![],'depth':null}));}};Preview[_0x9ae7('0x64')][_0x9ae7('0x150')]=function(_0x470403){if(_0x470403){if(this[_0x9ae7('0x6f')][_0x470403[_0x9ae7('0x151')]]){this[_0x9ae7('0x6f')][_0x470403[_0x9ae7('0x151')]][_0x9ae7('0x144')]=!![];}}};Preview['prototype'][_0x9ae7('0x24')]=function(_0x4486f9){if(_0x4486f9){if(this['actions'][_0x4486f9[_0x9ae7('0x152')]]){this[_0x9ae7('0x6f')][_0x4486f9['transfererlinkedid']][_0x9ae7('0x144')]=!![];}}};module[_0x9ae7('0x153')]=Preview;