Built motion from commit 0900f080.|2.5.45
[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 _0x7bae=['syncHangup','bind','syncHangupRequest','syncNewExten','attendedtransfer','syncAttendedTransfer','blindtransfer','loopCampaigns','campaignsPreview','emit','type','outbound','name','strategy','answered','available','loggedIn','pTalking','sumBillable','loggedInDb','dialActive','dialMethod','dialOriginateCallerIdName','dialOriginateCallerIdNumber','dialOriginateTimeout','dialPrefix','outboundAnswerAgiCallsDay','outboundBlacklistCallsDay','outboundCongestionCallsDay','outboundDropCallsDayACS','outboundDropCallsDayCallersExit','outboundNoSuchCallsDay','outboundOriginateFailureCallsDay','outboundReCallsDay','outboundRejectCallsDay','outboundUnknownCallsDay','predictiveIntervalAnsweredCalls','predictiveIntervalAvgHoldtime','predictiveIntervalDroppedCallsCallersExit','predictiveIntervalErlangCallsDroppedCalls','predictiveIntervalHitRate','predictiveIntervalMultiplicativeFactor','predictiveIntervalAvailable','message','originated','erlangCalls','erlangCallToSecond','erlangAbandonmentRate','startPredictive','startProgressive','Trunk','active','callerid','Interval','stringify','voice_queue:save','info','[DEBUG]\x20Emit\x20voice_queue_channel:remove\x20event','format','voice:queue:%s','voice_queue_channel:remove','voice_queue_presence:remove','sendMessageOneNotActive','NOT_ACTIVE','logger','[CampaignPreview]\x20Campaign\x20Queue:\x20','\x20is\x20not\x20active','IS_DISACTIVED','\x20is\x20disactive','syncCampaigns','hasOwnProperty','booked','clearZombieChannels','setMessage','dialPreviewAutoRecallMe','recallMe','clearZombieChannel','[clearZombieChannels][talking]','Queue','queue','pTalking:\x20','dialAnswer','pick','contactId','VoiceQueueId','ListId','status','channel','catch','No\x20such\x20channel','updateOriginated','[clearZombieChannel]','decrementTalkink','loggerError','[Dialer][checkChannel][Preview]','size','agentReadyId','then','length','getDiff','scheduledat','dialRecallMeTimeout','Agent','voicePause','run','[RecallMe]','logger2','disableContact','starttime','YYYY-MM-DD\x20HH:mm:ss','logCustomer','RecallInQueue','rescheduleContactInQueue','createBody','createCustomerHistory','[HistoryRecallClose]','createCustomerFinal','[getContactRecallMe]','IsNotLoggedIn','isActive','isTrunkReachable','TrunkBackup','TRUNK_IS_NOT_REACHABLE','ACTIVE','callProgressDetectingCustomer','countnosuchnumberretry','countglobal','buildObj','[callProgressDetectingCustomer][logNoSuch]','totalGlobal','dialGlobalMaxRetry','cloneAction','Global','dialNoSuchNumberMaxRetry','[callProgressDetectingCustomer][logNoSuchGlobal]','rescheduleContact','scheduledAt','dialNoSuchNumberRetryFrequency','unlockAgent','activeContact','linkedid','ANSWER','answertime','[syncHangup][talking][increment]','uniqueid','\x20Queue','custom:agentconnect','connect','acw','buildAcw','custom:agentcomplete','complete','total','[16]','[callProgressDetectingCustomer][logAnswer]','[callProgressDetectingCustomer][logAnswerGlobal]','crateCustomerReportQueue','sumDuration','[syncHangup][talking][decrement]','BUSY','outboundBusyCallsDay','countbusyretry','Busy','custom:agentbusy','busy','[callProgressDetectingCustomer][logBusy]','[callProgressDetectingCustomer][logBusyGlobal]','dialBusyMaxRetry','dialBusyRetryFrequency','NOANSWER','outboundNoAnswerCallsDay','NoAnswer','noanswer','[callProgressDetectingCustomer][logNoAnswer]','[callProgressDetectingCustomer][logNoAnswerGlobal]','countnoanswerretry','dialNoAnswerRetryFrequency','CONGESTION','countcongestionretry','Congestion','custom:agentcongestion','congestion','[callProgressDetectingCustomer][logCongestion]','[callProgressDetectingCustomer][logCongestionGlobal]','dialCongestionMaxRetry','CANCEL','AgentReject','custom:agentreject','agentreject','[syncHangupRequest][logAgentReject]','dialAgentRejectMaxRetry','[callProgressDetectingCustomer][logAgentReject]','countagentrejectretry','dialAgentRejectRetryFrequency','ABANDONED','outboundAbandonedCallsDay','countabandonedretry','Abandoned','[callProgressDetectingCustomer][logAbandoned]','countabandonedetry','dialAbandonedMaxRety','dialAbandonedRetryFrequency','countmachineretry','cause-txt','dialstatus','custom:amd','amd','[callProgressDetectingCustomer][hangupInAMD]','[callProgressDetectingCustomer][machine]','[default]','[Dialer][decrementTalkink][no\x20Hangup][Preview]','[callProgressDetectingCustomer][logUnknown]','[callProgressDetectingCustomer][logUnknownGlobal]','[callProgressDetectingCustomer]','originated:\x20','object','isUndefined','reason','createAgentHistory','[callProgressDetectingAgent][logNoAnswer]','[callProgressDetectingAgent][logBusy]','logAgent','[callProgressDetectingAgent][logCongestion]','AnswerAGI','[callProgressDetectingAgent][logAnswerAGI]','[callProgressDetectingAgent]','[originated][decrement][callProgressDetectingAgent]','checkInBlack','isNil','Contact','Contact\x20is\x20undefined','lookAgent','isEmpty','execCall','[Preview][execCall][success]','Queue:\x20','\x20IdHopper:\x20','custom:agentcalled','called','[Preview][execCall][failure]','Call\x20failed','logBlacklist','createHistory','[Blacklist][error]','Contact\x20in\x20black\x20List','SIP/%s','unmonitored','execRun','unlock','unlockContact','recallme','validateContact','checkIsBlackList','Contact.phone','Call\x20unsuccessful','[Preview][getContactPreview]','[Preview][validateContact][Empty\x20Contact]','Empty\x20Contact','[Preview][validateContact][Trunk\x20not\x20work]','campaign\x20Name:\x20','\x20Trunk\x20is\x20not\x20active','\x20Trunk\x20Backup\x20is\x20not\x20active','Trunk\x20not\x20work','[Preview][validateContact][Campaign\x20Active]','\x20Not\x20Active','Is\x20Valid','SIP/%s/%s%s','dialCutDigit','phone','substring','trim','getCallerId','dialRandomLastDigitCallerIdNumber','getCallerIdRandom','originatecalleridname','extractCalleridName','originatecalleridnum','extractCalleridNumber','merge','Action','variablesAction','[originated][increment]','OriginateError','syncOriginateResponse','actionid','logLookAgent','clone','responsetime','isFailure','response','idContact','custom:agentringnoanswer','rejected','callProgressDetectingAgent','Answer','[callProgressDetectingAgent][logAnswer]','[syncHangup][talking]','cause','[syncHangup][talking][cause]','dialQueueProject','channelstate','transfer','[syncHangup][talking][transfer]','syncDialEnd','destlinkedid','destuniqueid','variables','filterKey','keys','variable','addVariable','value','error','inspect','transfererlinkedid','bluebird','uuid','md5','../../../config/environment','../../../config/logger','preview','actionPreview','../ami','./rpcDb','./action','./util/util','redis','defaults','localhost','socket.io-emitter','prototype','enqueue','tail','finally','sequence','voiceQueues','trunks','actions','agents','clockClearZombieChannels','originateresponse','hangup'];(function(_0x120bc2,_0x57a253){var _0x454a41=function(_0x21adfe){while(--_0x21adfe){_0x120bc2['push'](_0x120bc2['shift']());}};_0x454a41(++_0x57a253);}(_0x7bae,0x13b));var _0xe7ba=function(_0x34021d,_0x753aa6){_0x34021d=_0x34021d-0x0;var _0x16597b=_0x7bae[_0x34021d];return _0x16597b;};'use strict';var util=require('util');var _=require('lodash');var BPromise=require(_0xe7ba('0x0'));var uuid=require(_0xe7ba('0x1'));var moment=require('moment');var md5=require(_0xe7ba('0x2'));var Redis=require('ioredis');var config=require(_0xe7ba('0x3'));var logger=require(_0xe7ba('0x4'))(_0xe7ba('0x5'));var loggerAction=require(_0xe7ba('0x4'))(_0xe7ba('0x6'));var ami=require(_0xe7ba('0x7'));var rpcDb=require(_0xe7ba('0x8'));var Action=require(_0xe7ba('0x9'));var ut=require(_0xe7ba('0xa'));config[_0xe7ba('0xb')]=_[_0xe7ba('0xc')](config[_0xe7ba('0xb')],{'host':_0xe7ba('0xd'),'port':0x18eb});var io=require(_0xe7ba('0xe'))(new Redis(config['redis']));var Sequence=function(){};Sequence[_0xe7ba('0xf')][_0xe7ba('0x10')]=function(_0x375ebb){this[_0xe7ba('0x11')]=this[_0xe7ba('0x11')]?this[_0xe7ba('0x11')][_0xe7ba('0x12')](_0x375ebb):_0x375ebb();};function Preview(_0x448bcc){this[_0xe7ba('0x13')]=new Sequence();this['campaignsPreview']=_0x448bcc[_0xe7ba('0x14')];this['trunks']=_0x448bcc[_0xe7ba('0x15')];this[_0xe7ba('0x16')]={};this[_0xe7ba('0x17')]=_0x448bcc[_0xe7ba('0x17')];this[_0xe7ba('0x18')]=0x0;ami['on'](_0xe7ba('0x19'),this['syncOriginateResponse']['bind'](this));ami['on'](_0xe7ba('0x1a'),this[_0xe7ba('0x1b')][_0xe7ba('0x1c')](this));ami['on']('hanguprequest',this[_0xe7ba('0x1d')]['bind'](this));ami['on']('dialend',this['syncDialEnd'][_0xe7ba('0x1c')](this));ami['on']('newexten',this[_0xe7ba('0x1e')]['bind'](this));ami['on']('varset',this['syncVarSet'][_0xe7ba('0x1c')](this));ami['on'](_0xe7ba('0x1f'),this[_0xe7ba('0x20')][_0xe7ba('0x1c')](this));ami['on'](_0xe7ba('0x21'),this['syncBlindTransfer'][_0xe7ba('0x1c')](this));this[_0xe7ba('0x22')](this[_0xe7ba('0x23')]);}function emit(_0x136ec6,_0x4aaf35,_0x1076c5){io['to'](_0x136ec6)[_0xe7ba('0x24')](_0x4aaf35,_0x1076c5);}function emitCampaignPreview(_0x5a158f){if(_0x5a158f[_0xe7ba('0x25')]===_0xe7ba('0x26')){var _0x27c882={'id':_0x5a158f['id'],'name':_0x5a158f[_0xe7ba('0x27')],'strategy':_0x5a158f[_0xe7ba('0x28')],'answered':_0x5a158f[_0xe7ba('0x29')],'available':_0x5a158f[_0xe7ba('0x2a')],'loggedIn':_0x5a158f[_0xe7ba('0x2b')],'pTalking':_0x5a158f[_0xe7ba('0x2c')],'sumBillable':_0x5a158f[_0xe7ba('0x2d')],'sumDuration':_0x5a158f['sumDuration'],'sumHoldTime':_0x5a158f['sumHoldTime']||0x0,'talking':_0x5a158f['talking'],'total':_0x5a158f['total'],'type':_0x5a158f[_0xe7ba('0x25')],'unmanaged':_0x5a158f['unmanaged'],'abandoned':_0x5a158f['abandoned'],'waiting':_0x5a158f['waiting'],'loggedInDb':_0x5a158f[_0xe7ba('0x2e')],'dialActive':_0x5a158f[_0xe7ba('0x2f')],'dialMethod':_0x5a158f[_0xe7ba('0x30')],'dialOriginateCallerIdName':_0x5a158f[_0xe7ba('0x31')],'dialOriginateCallerIdNumber':_0x5a158f[_0xe7ba('0x32')],'dialOriginateTimeout':_0x5a158f[_0xe7ba('0x33')],'dialPrefix':_0x5a158f[_0xe7ba('0x34')],'outboundAnswerAgiCallsDay':_0x5a158f[_0xe7ba('0x35')],'outboundAnswerCallsDay':_0x5a158f['outboundAnswerCallsDay'],'outboundBlacklistCallsDay':_0x5a158f[_0xe7ba('0x36')],'outboundBusyCallsDay':_0x5a158f['outboundBusyCallsDay'],'outboundCongestionCallsDay':_0x5a158f[_0xe7ba('0x37')],'outboundDropCallsDayACS':_0x5a158f[_0xe7ba('0x38')],'outboundDropCallsDayCallersExit':_0x5a158f[_0xe7ba('0x39')],'outboundDropCallsDayTimeout':_0x5a158f['outboundDropCallsDayTimeout'],'outboundNoAnswerCallsDay':_0x5a158f['outboundNoAnswerCallsDay'],'outboundNoSuchCallsDay':_0x5a158f[_0xe7ba('0x3a')],'outboundOriginateFailureCallsDay':_0x5a158f[_0xe7ba('0x3b')],'outboundReCallsDay':_0x5a158f[_0xe7ba('0x3c')],'outboundRejectCallsDay':_0x5a158f[_0xe7ba('0x3d')],'outboundUnknownCallsDay':_0x5a158f[_0xe7ba('0x3e')],'outboundAbandonedCallsDay':_0x5a158f['outboundAbandonedCallsDay'],'predictiveIntervalAnsweredCalls':_0x5a158f[_0xe7ba('0x3f')],'predictiveIntervalAvgHoldtime':_0x5a158f[_0xe7ba('0x40')],'predictiveIntervalAvgTalktime':_0x5a158f['predictiveIntervalAvgTalktime'],'predictiveIntervalDroppedCallsCallersExit':_0x5a158f[_0xe7ba('0x41')],'predictiveIntervalDroppedCallsTimeout':_0x5a158f['predictiveIntervalDroppedCallsTimeout'],'predictiveIntervalErlangCalls':_0x5a158f['predictiveIntervalErlangCalls'],'predictiveIntervalErlangCallsDroppedCalls':_0x5a158f[_0xe7ba('0x42')],'predictiveIntervalHitRate':_0x5a158f[_0xe7ba('0x43')],'predictiveIntervalMultiplicativeFactor':_0x5a158f[_0xe7ba('0x44')],'predictiveIntervalPauses':_0x5a158f['predictiveIntervalPauses'],'predictiveIntervalAvailable':_0x5a158f[_0xe7ba('0x45')],'predictiveIntervalTotalCalls':_0x5a158f['predictiveIntervalTotalCalls'],'message':_0x5a158f[_0xe7ba('0x46')],'originated':_0x5a158f[_0xe7ba('0x47')],'erlangCalls':_0x5a158f[_0xe7ba('0x48')],'erlangCallToSecond':_0x5a158f[_0xe7ba('0x49')],'erlangAbandonmentRate':_0x5a158f[_0xe7ba('0x4a')],'erlangBusyFactor':_0x5a158f['erlangBusyFactor'],'startPredictive':_0x5a158f[_0xe7ba('0x4b')],'startProgressive':_0x5a158f[_0xe7ba('0x4c')]};if(_0x5a158f['Trunk']){_0x27c882[_0xe7ba('0x4d')]={'id':_0x5a158f[_0xe7ba('0x4d')]['id'],'name':_0x5a158f[_0xe7ba('0x4d')]['name'],'active':_0x5a158f[_0xe7ba('0x4d')][_0xe7ba('0x4e')],'callerid':_0x5a158f['Trunk'][_0xe7ba('0x4f')]};}if(_0x5a158f[_0xe7ba('0x50')]){_0x27c882[_0xe7ba('0x50')]={'id':_0x5a158f['Interval']['id'],'name':_0x5a158f[_0xe7ba('0x50')][_0xe7ba('0x27')]};}var _0x575f4b=md5(JSON[_0xe7ba('0x51')](_0x27c882));if(_0x5a158f[_0xe7ba('0x2')]!==_0x575f4b){_0x5a158f[_0xe7ba('0x2')]=_0x575f4b;emit(util['format']('voice:queue:%s',_0x27c882[_0xe7ba('0x27')]),_0xe7ba('0x52'),_0x27c882);}}}function emitVoiceQueueChannelRemove(_0x58d2a){logger[_0xe7ba('0x53')](_0xe7ba('0x54'),JSON['stringify'](_0x58d2a));emit(util[_0xe7ba('0x55')](_0xe7ba('0x56'),_0x58d2a[_0xe7ba('0x27')]),_0xe7ba('0x57'),_0x58d2a);io['emit'](_0xe7ba('0x58'),_0x58d2a);}function notSendMessagesQueue(_0x1b7f18){if(_0x1b7f18[_0xe7ba('0x59')]){if(_0x1b7f18[_0xe7ba('0x47')]===0x0&&_0x1b7f18[_0xe7ba('0x2c')]===0x0){_0x1b7f18[_0xe7ba('0x59')]=![];_0x1b7f18[_0xe7ba('0x2a')]=0x0;_0x1b7f18['paused']=0x0;_0x1b7f18[_0xe7ba('0x46')]=_0xe7ba('0x5a');ut[_0xe7ba('0x5b')](_0xe7ba('0x5c'),_0x1b7f18[_0xe7ba('0x27')]+_0xe7ba('0x5d'));}else{_0x1b7f18[_0xe7ba('0x46')]=_0xe7ba('0x5e');ut[_0xe7ba('0x5b')]('[CampaignPreview]\x20Campaign\x20Queue:\x20',_0x1b7f18[_0xe7ba('0x27')]+_0xe7ba('0x5f'));}emitCampaignPreview(_0x1b7f18);}}Preview['prototype']['loopCampaigns']=function(){var _0x32053d=this;setInterval(function(){_0x32053d[_0xe7ba('0x60')]();},0x7cf);};Preview[_0xe7ba('0xf')]['syncCampaigns']=function(){var _0x249e1d=this[_0xe7ba('0x23')];this[_0xe7ba('0x18')]+=0x1;for(var _0x12770d in _0x249e1d){if(_0x249e1d[_0xe7ba('0x61')](_0x12770d)&&(_0x249e1d[_0x12770d]['dialMethod']===_0xe7ba('0x5')||_0x249e1d[_0x12770d]['dialMethod']===_0xe7ba('0x62'))&&_0x249e1d[_0x12770d][_0xe7ba('0x25')]===_0xe7ba('0x26')){if(this[_0xe7ba('0x18')]>0x7){this[_0xe7ba('0x18')]=0x0;this[_0xe7ba('0x63')]();}}if(_0x249e1d[_0xe7ba('0x61')](_0x12770d)&&_0x249e1d[_0x12770d][_0xe7ba('0x30')]==='preview'&&_0x249e1d[_0x12770d][_0xe7ba('0x25')]===_0xe7ba('0x26')){if(_0x249e1d[_0x12770d][_0xe7ba('0x2f')]){this[_0xe7ba('0x64')](_0x249e1d[_0x12770d]);if(_0x249e1d[_0x12770d][_0xe7ba('0x65')])this[_0xe7ba('0x66')](_0x249e1d[_0x12770d]);}else{notSendMessagesQueue(_0x249e1d[_0x12770d]);}}}};Preview[_0xe7ba('0xf')][_0xe7ba('0x67')]=function(_0x45f49a){var _0x46c456=this;this['sequence'][_0xe7ba('0x10')](function(){if(!_['isNil'](_0x46c456[_0xe7ba('0x16')][_0x45f49a])){loggerAction[_0xe7ba('0x53')](_0xe7ba('0x68'),_0x45f49a,_0xe7ba('0x69'),_0x46c456[_0xe7ba('0x16')][_0x45f49a][_0xe7ba('0x6a')],'originated:\x20',JSON[_0xe7ba('0x51')](_0x46c456[_0xe7ba('0x23')][_0x46c456[_0xe7ba('0x16')][_0x45f49a][_0xe7ba('0x6a')]][_0xe7ba('0x47')]),_0xe7ba('0x6b'),JSON[_0xe7ba('0x51')](_0x46c456[_0xe7ba('0x23')][_0x46c456[_0xe7ba('0x16')][_0x45f49a][_0xe7ba('0x6a')]][_0xe7ba('0x2c')]),JSON['stringify'](_0x46c456[_0xe7ba('0x16')][_0x45f49a][_0xe7ba('0x6c')]),JSON[_0xe7ba('0x51')](_[_0xe7ba('0x6d')](_0x46c456[_0xe7ba('0x16')][_0x45f49a],[_0xe7ba('0x6e'),'UserId',_0xe7ba('0x6f'),_0xe7ba('0x70')])));return ami['Action']({'action':_0xe7ba('0x71'),'channel':_0x46c456[_0xe7ba('0x16')][_0x45f49a][_0xe7ba('0x72')]})[_0xe7ba('0x73')](function(_0x4cc4e9){if(_0x4cc4e9['message']===_0xe7ba('0x74')){setTimeout(function(){if(_0x46c456[_0xe7ba('0x16')][_0x45f49a]){ut[_0xe7ba('0x75')](_0x46c456['campaignsPreview'][_0x46c456[_0xe7ba('0x16')][_0x45f49a][_0xe7ba('0x6a')]],_0xe7ba('0x76'));if(_0x46c456[_0xe7ba('0x16')][_0x45f49a][_0xe7ba('0x6c')]===!![]){ut[_0xe7ba('0x77')](_0x46c456[_0xe7ba('0x23')][_0x46c456['actions'][_0x45f49a][_0xe7ba('0x6a')]],_0xe7ba('0x76'));ut[_0xe7ba('0x78')]('[Dialer][checkChannel][pTalking][Preview]'+_0x45f49a,_0x46c456[_0xe7ba('0x16')][_0x45f49a][_0xe7ba('0x6a')]);}ut['loggerError'](_0xe7ba('0x79')+_0x45f49a,_0x46c456[_0xe7ba('0x16')][_0x45f49a]['queue']);delete _0x46c456[_0xe7ba('0x16')][_0x45f49a];}},0x2328);}});}});};Preview['prototype'][_0xe7ba('0x63')]=function(){var _0x2a8317=this;loggerAction[_0xe7ba('0x53')]('[action]',_[_0xe7ba('0x7a')](this[_0xe7ba('0x16')]));for(var _0x314549 in this[_0xe7ba('0x16')]){if(_0x2a8317[_0xe7ba('0x16')]['hasOwnProperty'](_0x314549)){_0x2a8317[_0xe7ba('0x67')](_0x314549);}}};Preview[_0xe7ba('0xf')][_0xe7ba('0x66')]=function(_0x19159c){var _0x435dee=this;rpcDb['getContactRecallMe'](_0x19159c['id'],ut[_0xe7ba('0x7b')](this[_0xe7ba('0x17')]))[_0xe7ba('0x7c')](function(_0x41dbf2){if(!_['isNil'](_0x41dbf2)){for(var _0x3e31c1=0x0;_0x3e31c1<_0x41dbf2[_0xe7ba('0x7d')];_0x3e31c1+=0x1){if(ut[_0xe7ba('0x7e')](_0x41dbf2[_0x3e31c1][_0xe7ba('0x7f')])<_0x19159c[_0xe7ba('0x80')]*0x3c){if(_0x41dbf2[_0x3e31c1][_0xe7ba('0x81')]&&!_0x41dbf2[_0x3e31c1]['Agent'][_0xe7ba('0x82')]){_0x435dee[_0xe7ba('0x83')](_0x41dbf2[_0x3e31c1]['id'])[_0xe7ba('0x7c')](ut['logger2'](_0xe7ba('0x84')))[_0xe7ba('0x73')](ut[_0xe7ba('0x85')](_0xe7ba('0x84')));}else{rpcDb[_0xe7ba('0x86')](_0x41dbf2[_0x3e31c1]['id']);}}else{var _0x162d7f=new Action(_0x41dbf2[_0x3e31c1],_0x19159c);_0x162d7f[_0xe7ba('0x87')]=moment()[_0xe7ba('0x55')](_0xe7ba('0x88'));_0x19159c[_0xe7ba('0x3c')]+=0x1;ut[_0xe7ba('0x89')](_0x162d7f,0x17,_0xe7ba('0x8a'));if(_0x19159c['dialRecallInQueue']){rpcDb[_0xe7ba('0x8b')](ut[_0xe7ba('0x8c')](_0x41dbf2[_0x3e31c1]));rpcDb[_0xe7ba('0x8d')](_0x162d7f,'[HistoryDialRecallInQueue][historyCatch]');}else{ut[_0xe7ba('0x89')](_0x162d7f,0x16,'RecallFailedTimeout');rpcDb[_0xe7ba('0x8d')](_0x162d7f,_0xe7ba('0x8e'));rpcDb[_0xe7ba('0x8f')](_0x162d7f,'[HistoryRecallClose]');}}}}})['catch'](ut[_0xe7ba('0x85')](_0xe7ba('0x90')));};Preview[_0xe7ba('0xf')]['setMessage']=function(_0x3ba4fd){_0x3ba4fd[_0xe7ba('0x59')]=!![];if(ut[_0xe7ba('0x91')](_0x3ba4fd[_0xe7ba('0x2b')])){_0x3ba4fd[_0xe7ba('0x46')]='AGENTS_NOT_LOGGED';}else if(!ut[_0xe7ba('0x92')](_0x3ba4fd[_0xe7ba('0x2f')])){_0x3ba4fd[_0xe7ba('0x46')]='NOT_ACTIVE';}else if(!this[_0xe7ba('0x93')](_0x3ba4fd[_0xe7ba('0x4d')])){if(!this[_0xe7ba('0x93')](_0x3ba4fd[_0xe7ba('0x94')])){_0x3ba4fd[_0xe7ba('0x46')]=_0xe7ba('0x95');}else{_0x3ba4fd[_0xe7ba('0x46')]=_0xe7ba('0x96');}}else{_0x3ba4fd[_0xe7ba('0x46')]=_0xe7ba('0x96');}emitCampaignPreview(_0x3ba4fd);};Preview['prototype'][_0xe7ba('0x97')]=function(_0x2ee567,_0x344d29,_0xa6da9e){var _0x4d8773=this;var _0x4c0d12=this[_0xe7ba('0x16')][_0x344d29];var _0x3c2b1c=this[_0xe7ba('0x23')][_0x4c0d12['queue']];var _0x53ebd1;if(_0x3c2b1c){switch(_0xa6da9e){case'1':_0x3c2b1c['outboundNoSuchCallsDay']+=0x1;_0x4c0d12[_0xe7ba('0x98')]+=0x1;_0x4c0d12[_0xe7ba('0x99')]=ut['totalGlobal'](_0x4c0d12);ut[_0xe7ba('0x89')](_0x4c0d12,0x0,'NoSuchNumber');ami[_0xe7ba('0x24')]('custom:agentnosuchnumber',ut[_0xe7ba('0x9a')](_0x4c0d12,'nosuchnumber'));rpcDb['createCustomerHistory'](_0x4c0d12,_0xe7ba('0x9b'));if(ut[_0xe7ba('0x9c')](_0x4c0d12)>=_0x3c2b1c[_0xe7ba('0x9d')]){_0x53ebd1=ut[_0xe7ba('0x9e')](_0x4c0d12,0xf,_0xe7ba('0x9f'));rpcDb[_0xe7ba('0x8f')](_0x53ebd1,'[callProgressDetectingCustomer][logNoSuchGlobal]');}else{if(_0x4c0d12['countnosuchnumberretry']>=_0x3c2b1c[_0xe7ba('0xa0')]){rpcDb[_0xe7ba('0x8f')](_0x4c0d12,_0xe7ba('0xa1'));}else{rpcDb[_0xe7ba('0xa2')](ut[_0xe7ba('0xa3')](_0x4c0d12,_0xe7ba('0x98'),_0x3c2b1c[_0xe7ba('0xa4')]),_0x4c0d12[_0xe7ba('0xa5')],_0x4c0d12[_0xe7ba('0xa6')]);}}delete this[_0xe7ba('0x16')][_0x2ee567[_0xe7ba('0xa7')]];break;case _0xe7ba('0xa8'):var _0x2022e2=moment()[_0xe7ba('0x55')](_0xe7ba('0x88'));_0x4c0d12['responsetime']=_0x2022e2;_0x4c0d12[_0xe7ba('0xa9')]=_0x2022e2;_0x4c0d12[_0xe7ba('0x6c')]=!![];_0x3c2b1c[_0xe7ba('0x2c')]+=0x1;logger[_0xe7ba('0x53')](_0xe7ba('0xaa'),_0x4c0d12[_0xe7ba('0xab')],_0xe7ba('0xac'),_0x3c2b1c[_0xe7ba('0x27')],_0xe7ba('0x6b'),_0x3c2b1c[_0xe7ba('0x2c')]);ami[_0xe7ba('0x24')](_0xe7ba('0xad'),ut['buildObj'](_0x4c0d12,_0xe7ba('0xae'),this['campaignsPreview'][_0x4c0d12[_0xe7ba('0x6a')]]));if(_0x3c2b1c[_0xe7ba('0xaf')]){ami[_0xe7ba('0x24')]('custom:agentConnectPreview',ut[_0xe7ba('0xb0')](_0x4c0d12));}break;case'16':ami[_0xe7ba('0x24')](_0xe7ba('0xb1'),ut[_0xe7ba('0x9a')](_0x4c0d12,'complete',this[_0xe7ba('0x23')][_0x4c0d12[_0xe7ba('0x6a')]]));emitVoiceQueueChannelRemove(ut[_0xe7ba('0x9a')](_0x4c0d12,_0xe7ba('0xb2')));_0x3c2b1c['outboundAnswerCallsDay']+=0x1;_0x3c2b1c[_0xe7ba('0xb3')]+=0x1;_0x3c2b1c[_0xe7ba('0x29')]+=0x1;ut[_0xe7ba('0x77')](_0x3c2b1c,_0xe7ba('0xb4'));_0x4c0d12[_0xe7ba('0x99')]=ut['totalGlobal'](_0x4c0d12);ut['logCustomer'](_0x4c0d12,0x4,'Answer');rpcDb[_0xe7ba('0x8d')](_0x4c0d12,_0xe7ba('0xb5'));rpcDb[_0xe7ba('0x8f')](_0x4c0d12,_0xe7ba('0xb6'));rpcDb[_0xe7ba('0xb7')](_0x4c0d12);_0x3c2b1c[_0xe7ba('0xb8')]+=_0x4c0d12['talktime'];_0x3c2b1c[_0xe7ba('0x2d')]+=_0x4c0d12['talktime'];logger[_0xe7ba('0x53')](_0xe7ba('0xb9'),_0x4c0d12[_0xe7ba('0xab')],_0xe7ba('0xac'),_0x3c2b1c[_0xe7ba('0x27')],_0xe7ba('0x6b'),_0x3c2b1c['pTalking']);delete this[_0xe7ba('0x16')][_0x2ee567[_0xe7ba('0xa7')]];break;case _0xe7ba('0xba'):_0x3c2b1c[_0xe7ba('0xbb')]+=0x1;_0x4c0d12[_0xe7ba('0xbc')]+=0x1;_0x4c0d12['countglobal']=ut[_0xe7ba('0x9c')](_0x4c0d12);ut['logCustomer'](_0x4c0d12,0x5,_0xe7ba('0xbd'));ami[_0xe7ba('0x24')](_0xe7ba('0xbe'),ut[_0xe7ba('0x9a')](_0x4c0d12,_0xe7ba('0xbf')));rpcDb[_0xe7ba('0x8d')](_0x4c0d12,_0xe7ba('0xc0'));if(ut[_0xe7ba('0x9c')](_0x4c0d12)>=_0x3c2b1c[_0xe7ba('0x9d')]){_0x53ebd1=ut[_0xe7ba('0x9e')](_0x4c0d12,0xf,_0xe7ba('0x9f'));rpcDb[_0xe7ba('0x8f')](_0x53ebd1,_0xe7ba('0xc1'));}else{if(_0x4c0d12[_0xe7ba('0xbc')]>=_0x3c2b1c[_0xe7ba('0xc2')]){rpcDb[_0xe7ba('0x8f')](_0x4c0d12,_0xe7ba('0xc0'));}else{rpcDb[_0xe7ba('0xa2')](ut[_0xe7ba('0xa3')](_0x4c0d12,_0xe7ba('0xbc'),_0x3c2b1c[_0xe7ba('0xc3')]),_0x4c0d12[_0xe7ba('0xa5')],_0x4c0d12[_0xe7ba('0xa6')]);}}break;case _0xe7ba('0xc4'):_0x3c2b1c[_0xe7ba('0xc5')]+=0x1;_0x4c0d12['countnoanswerretry']+=0x1;_0x4c0d12['countglobal']=ut['totalGlobal'](_0x4c0d12);ut[_0xe7ba('0x89')](_0x4c0d12,0x3,_0xe7ba('0xc6'));ami['emit']('custom:agentnoanswer',ut[_0xe7ba('0x9a')](_0x4c0d12,_0xe7ba('0xc7')));rpcDb['createCustomerHistory'](_0x4c0d12,_0xe7ba('0xc8'));if(ut['totalGlobal'](_0x4c0d12)>=_0x3c2b1c['dialGlobalMaxRetry']){_0x53ebd1=ut['cloneAction'](_0x4c0d12,0xf,_0xe7ba('0x9f'));rpcDb[_0xe7ba('0x8f')](_0x53ebd1,_0xe7ba('0xc9'));}else{if(_0x4c0d12[_0xe7ba('0xca')]>=_0x3c2b1c['dialNoAnswerMaxRetry']){rpcDb[_0xe7ba('0x8f')](_0x4c0d12,_0xe7ba('0xc8'));}else{rpcDb['rescheduleContact'](ut['scheduledAt'](_0x4c0d12,_0xe7ba('0xca'),_0x3c2b1c[_0xe7ba('0xcb')]),_0x4c0d12[_0xe7ba('0xa5')],_0x4c0d12[_0xe7ba('0xa6')]);}}break;case _0xe7ba('0xcc'):_0x3c2b1c['outboundCongestionCallsDay']+=0x1;_0x4c0d12[_0xe7ba('0xcd')]+=0x1;_0x4c0d12[_0xe7ba('0x99')]=ut[_0xe7ba('0x9c')](_0x4c0d12);ut[_0xe7ba('0x89')](_0x4c0d12,0x8,_0xe7ba('0xce'));ami[_0xe7ba('0x24')](_0xe7ba('0xcf'),ut[_0xe7ba('0x9a')](_0x4c0d12,_0xe7ba('0xd0')));rpcDb[_0xe7ba('0x8d')](_0x4c0d12,_0xe7ba('0xd1'));if(ut[_0xe7ba('0x9c')](_0x4c0d12)>=_0x3c2b1c[_0xe7ba('0x9d')]){_0x53ebd1=ut[_0xe7ba('0x9e')](_0x4c0d12,0xf,_0xe7ba('0x9f'));rpcDb[_0xe7ba('0x8f')](_0x53ebd1,_0xe7ba('0xd2'));}else{if(_0x4c0d12[_0xe7ba('0xcd')]>=_0x3c2b1c[_0xe7ba('0xd3')]){rpcDb[_0xe7ba('0x8f')](_0x4c0d12,_0xe7ba('0xd1'));}else{rpcDb['rescheduleContact'](ut['scheduledAt'](_0x4c0d12,'countcongestionretry',_0x3c2b1c[_0xe7ba('0xc3')]),_0x4c0d12[_0xe7ba('0xa5')],_0x4c0d12[_0xe7ba('0xa6')]);}}break;case _0xe7ba('0xd4'):_0x3c2b1c[_0xe7ba('0x3d')]+=0x1;_0x4c0d12['countagentrejectretry']+=0x1;_0x4c0d12['countglobal']=ut[_0xe7ba('0x9c')](_0x4c0d12);ut['logCustomer'](_0x4c0d12,0x14,_0xe7ba('0xd5'));ami[_0xe7ba('0x24')](_0xe7ba('0xd6'),ut[_0xe7ba('0x9a')](_0x4c0d12,_0xe7ba('0xd7')));rpcDb[_0xe7ba('0x8d')](_0x4c0d12,_0xe7ba('0xd8'));if(ut[_0xe7ba('0x9c')](_0x4c0d12)>=_0x3c2b1c['dialGlobalMaxRetry']){_0x53ebd1=ut[_0xe7ba('0x9e')](_0x4c0d12,0x14,_0xe7ba('0xd5'));rpcDb[_0xe7ba('0x8f')](_0x53ebd1,'[callProgressDetectingCustomer][logAgentReject]');}else{if(_0x4c0d12['countagentrejectretry']>=_0x3c2b1c[_0xe7ba('0xd9')]){rpcDb[_0xe7ba('0x8f')](_0x4c0d12,_0xe7ba('0xda'));}else{rpcDb[_0xe7ba('0xa2')](ut['scheduledAt'](_0x4c0d12,_0xe7ba('0xdb'),_0x3c2b1c[_0xe7ba('0xdc')]),_0x4c0d12[_0xe7ba('0xa5')],_0x4c0d12[_0xe7ba('0xa6')]);}}break;case _0xe7ba('0xdd'):_0x3c2b1c[_0xe7ba('0xde')]+=0x1;_0x4c0d12[_0xe7ba('0xdf')]+=0x1;_0x4c0d12[_0xe7ba('0x99')]=ut[_0xe7ba('0x9c')](_0x4c0d12);ut[_0xe7ba('0x89')](_0x4c0d12,0xb,_0xe7ba('0xe0'));rpcDb[_0xe7ba('0x8d')](_0x4c0d12,_0xe7ba('0xe1'));if(ut[_0xe7ba('0x9c')](_0x4c0d12)>=_0x3c2b1c[_0xe7ba('0x9d')]){_0x53ebd1=ut[_0xe7ba('0x9e')](_0x4c0d12,0xf,'Global');rpcDb['createCustomerFinal'](_0x53ebd1,'[callProgressDetectingCustomer][logAbandoned]');}else{if(_0x4c0d12[_0xe7ba('0xe2')]>=_0x3c2b1c[_0xe7ba('0xe3')]){rpcDb[_0xe7ba('0x8f')](_0x4c0d12,'[callProgressDetectingCustomer][logAbandoned]');}else{rpcDb['rescheduleContact'](ut[_0xe7ba('0xa3')](_0x4c0d12,_0xe7ba('0xdf'),_0x3c2b1c[_0xe7ba('0xe4')]),_0x4c0d12[_0xe7ba('0xa5')],_0x4c0d12[_0xe7ba('0xa6')]);}}break;case'18':_0x3c2b1c[_0xe7ba('0x3e')]+=0x1;_0x4c0d12[_0xe7ba('0xe5')]+=0x1;_0x4c0d12['countglobal']=ut[_0xe7ba('0x9c')](_0x4c0d12);ut[_0xe7ba('0x89')](_0x4c0d12,0x12,_0x2ee567[_0xe7ba('0xe6')]||_0x2ee567[_0xe7ba('0xe7')]);ami['emit'](_0xe7ba('0xe8'),ut['buildObj'](_0x4c0d12,_0xe7ba('0xe9')));rpcDb[_0xe7ba('0x8d')](_0x4c0d12,_0xe7ba('0xea'));if(ut[_0xe7ba('0x9c')](_0x4c0d12)>=_0x3c2b1c[_0xe7ba('0x9d')]){_0x53ebd1=ut[_0xe7ba('0x9e')](_0x4c0d12,0xf,_0xe7ba('0x9f'));rpcDb[_0xe7ba('0x8f')](_0x53ebd1,_0xe7ba('0xea'));}else{rpcDb[_0xe7ba('0x8f')](_0x4c0d12,_0xe7ba('0xea'));}delete this[_0xe7ba('0x16')][_0x2ee567[_0xe7ba('0xa7')]];break;case'19':_0x3c2b1c['outboundUnknownCallsDay']+=0x1;_0x4c0d12[_0xe7ba('0x99')]=ut[_0xe7ba('0x9c')](_0x4c0d12);ut[_0xe7ba('0x89')](_0x4c0d12,0x13,_0x2ee567[_0xe7ba('0xe6')]||_0x2ee567['dialstatus']);ami[_0xe7ba('0x24')]('custom:amd',ut['buildObj'](_0x4c0d12,_0xe7ba('0xe9')));rpcDb[_0xe7ba('0x8d')](_0x4c0d12,_0xe7ba('0xeb'));if(ut[_0xe7ba('0x9c')](_0x4c0d12)>=_0x3c2b1c[_0xe7ba('0x9d')]){_0x53ebd1=ut[_0xe7ba('0x9e')](_0x4c0d12,0xf,_0xe7ba('0x9f'));rpcDb[_0xe7ba('0x8f')](_0x53ebd1,'[callProgressDetectingCustomer][machine]');}else{rpcDb[_0xe7ba('0x8f')](_0x4c0d12,_0xe7ba('0xeb'));}delete this['actions'][_0x2ee567[_0xe7ba('0xa7')]];break;default:if(_0x4c0d12[_0xe7ba('0x6c')]){ut[_0xe7ba('0x77')](_0x3c2b1c,_0xe7ba('0xec'));ut[_0xe7ba('0x78')](_0xe7ba('0xed')+_0x3c2b1c[_0xe7ba('0x27')],_0x2ee567);}_0x3c2b1c[_0xe7ba('0x3e')]+=0x1;_0x4c0d12['countglobal']=ut[_0xe7ba('0x9c')](_0x4c0d12);ut[_0xe7ba('0x89')](_0x4c0d12,0xc,_0x2ee567[_0xe7ba('0xe6')]||_0x2ee567[_0xe7ba('0xe7')]);rpcDb[_0xe7ba('0x8d')](_0x4c0d12,_0xe7ba('0xee'));if(ut[_0xe7ba('0x9c')](_0x4c0d12)>=_0x3c2b1c[_0xe7ba('0x9d')]){_0x53ebd1=ut[_0xe7ba('0x9e')](_0x4c0d12,0xf,_0xe7ba('0x9f'));rpcDb[_0xe7ba('0x8f')](_0x53ebd1,_0xe7ba('0xef'));}else{rpcDb[_0xe7ba('0x8f')](_0x4c0d12,_0xe7ba('0xef'));}delete this[_0xe7ba('0x16')][_0x2ee567[_0xe7ba('0xa7')]];}if(!(_0x4c0d12[_0xe7ba('0x6c')]&&_0xa6da9e==='16')){ut[_0xe7ba('0x75')](_0x3c2b1c,_0xe7ba('0xf0'));logger['info']('[originated][decrement][callProgressDetectingCustomer]',_0x4c0d12[_0xe7ba('0xab')],_0xe7ba('0xac'),_0x3c2b1c[_0xe7ba('0x27')],_0xe7ba('0xf1'),_0x3c2b1c[_0xe7ba('0x47')]);}if(_0xa6da9e!==_0xe7ba('0xa8')){delete this['actions'][_0x2ee567[_0xe7ba('0xa7')]];delete this[_0xe7ba('0x16')][_0x2ee567['destlinkedid']];}}};Preview['prototype']['callProgressDetectingAgent']=function(_0x2e1e57,_0xc70e27,_0xe43ddc){if(_['isUndefined'](_0xc70e27)&&_0xe7ba('0xf2')!==typeof _0xc70e27){return;}if(_[_0xe7ba('0xf3')](_0xe43ddc)&&_0xe7ba('0xf2')!==typeof _0xe43ddc){return;}switch(_0xe43ddc[_0xe7ba('0xf4')]){case'0':ut['logAgent'](_0x2e1e57,0x0,'NoSuchNumber');rpcDb['createAgentHistory'](_0x2e1e57,'[callProgressDetectingAgent][logNoSuch]');break;case'3':ut['logAgent'](_0x2e1e57,0x3,_0xe7ba('0xc6'));rpcDb[_0xe7ba('0xf5')](_0x2e1e57,_0xe7ba('0xf6'));break;case'5':ut['logAgent'](_0x2e1e57,0x5,'Busy');rpcDb['createAgentHistory'](_0x2e1e57,_0xe7ba('0xf7'));break;case'8':ut[_0xe7ba('0xf8')](_0x2e1e57,0x8,'Congestion');rpcDb['createAgentHistory'](_0x2e1e57,_0xe7ba('0xf9'));break;case'22':ut[_0xe7ba('0xf8')](_0x2e1e57,0x16,_0xe7ba('0xfa'));rpcDb[_0xe7ba('0xf5')](_0x2e1e57,_0xe7ba('0xfb'));break;default:ut[_0xe7ba('0xf8')](_0x2e1e57,0xc,_0xe43ddc[_0xe7ba('0xf4')]);rpcDb[_0xe7ba('0xf5')](_0x2e1e57,'[callProgressDetectingAgent][logCongestion]');}ut[_0xe7ba('0x75')](_0xc70e27,_0xe7ba('0xfc'));logger['info'](_0xe7ba('0xfd'),_0x2e1e57[_0xe7ba('0xab')],_0xe7ba('0xac'),_0xc70e27[_0xe7ba('0x27')],_0xe7ba('0xf1'),_0xc70e27['originated']);delete this['actions'][_0x2e1e57[_0xe7ba('0xab')]];};Preview['prototype'][_0xe7ba('0xfe')]=function(_0x5b8b21,_0x2cda32,_0x24ce3b,_0x5b2b3f,_0x1ae52f){var _0xe6617d=this;return new BPromise(function(_0x4407e0,_0x277b8a){if(_[_0xe7ba('0xff')](_0x2cda32)||_[_0xe7ba('0xff')](_0x2cda32[_0xe7ba('0x100')])||_['isNil'](_0x2cda32[_0xe7ba('0x100')]['phone'])||_[_0xe7ba('0xff')](_0x2cda32[_0xe7ba('0x6f')])){_0x277b8a(ut[_0xe7ba('0x46')](_0xe7ba('0x101'),_0x5b2b3f,_0x1ae52f));return;}var _0x1e8329=uuid['v4']();var _0x29f8f3=_0xe6617d['campaignsPreview'][_0x2cda32[_0xe7ba('0x69')][_0xe7ba('0x27')]];var _0x57e899=_0x24ce3b?_0xe6617d[_0xe7ba('0x17')][_0x24ce3b]['id']:undefined;_0xe6617d[_0xe7ba('0x16')][_0x1e8329]=new Action(_0x2cda32,_0x29f8f3,_0x1e8329,_0x24ce3b,_0x57e899);var _0x4a2b36=_0xe6617d[_0xe7ba('0x16')][_0x1e8329];_0x4a2b36[_0xe7ba('0xa5')]=_0x5b2b3f;_0x4a2b36[_0xe7ba('0xa6')]=_0x1ae52f;_0x4a2b36[_0xe7ba('0x102')]=_0x24ce3b;if(_[_0xe7ba('0x103')](_0x5b8b21)){_0xe6617d[_0xe7ba('0x104')](_0x4a2b36,_0x29f8f3,_0x2cda32,_0x24ce3b)[_0xe7ba('0x7c')](function(_0x4ebfa6){logger[_0xe7ba('0x53')](_0xe7ba('0x105'),_0xe7ba('0x106')+_0x4a2b36[_0xe7ba('0x6a')]+_0xe7ba('0x107')+_0x4a2b36['idContact'],JSON['stringify'](_0x4ebfa6));ami[_0xe7ba('0x24')](_0xe7ba('0x108'),ut['buildObj'](_0x4a2b36,_0xe7ba('0x109'),_0xe6617d[_0xe7ba('0x23')][_0x4a2b36[_0xe7ba('0x6a')]]));_0x4407e0(ut['message']('Calling'));})[_0xe7ba('0x73')](function(_0x277684){ut[_0xe7ba('0x5b')](_0xe7ba('0x10a'),_0x277684);_0x277b8a(ut[_0xe7ba('0x46')](_0xe7ba('0x10b'),_0x5b2b3f,_0x1ae52f));});}else{_0x29f8f3[_0xe7ba('0x36')]+=0x1;ut[_0xe7ba('0x10c')](_0x4a2b36);rpcDb[_0xe7ba('0x10d')](_0x4a2b36,_0xe7ba('0x10e'));delete _0xe6617d[_0xe7ba('0x16')][_0x1e8329];_0x277b8a(ut[_0xe7ba('0x46')](_0xe7ba('0x10f'),_0x5b2b3f,_0x1ae52f));}});};Preview['prototype'][_0xe7ba('0x93')]=function(_0x12de23){return!_[_0xe7ba('0xff')](_0x12de23)&&!_['isNil'](_0x12de23['name'])&&!_[_0xe7ba('0xff')](_0x12de23[_0xe7ba('0x4e')])&&_0x12de23[_0xe7ba('0x4e')]&&!_['isNil'](this[_0xe7ba('0x15')][util[_0xe7ba('0x55')]('SIP/%s',_0x12de23[_0xe7ba('0x27')])])&&!_[_0xe7ba('0xff')](this[_0xe7ba('0x15')][util[_0xe7ba('0x55')](_0xe7ba('0x110'),_0x12de23[_0xe7ba('0x27')])][_0xe7ba('0x71')])&&(this[_0xe7ba('0x15')][util[_0xe7ba('0x55')](_0xe7ba('0x110'),_0x12de23[_0xe7ba('0x27')])][_0xe7ba('0x71')]==='reachable'||this['trunks'][util[_0xe7ba('0x55')]('SIP/%s',_0x12de23['name'])][_0xe7ba('0x71')]===_0xe7ba('0x111'));};Preview[_0xe7ba('0xf')]['run']=function(_0x15b29c,_0x3a78a1){var _0x3b8c03=this;return new BPromise(function(_0x2e9c2e,_0x1f563b){_0x3b8c03[_0xe7ba('0x112')](_0x15b29c,_0x3a78a1)['then'](function(_0x1bdb1e){_0x2e9c2e(_[_0xe7ba('0x6d')](_0x1bdb1e,[_0xe7ba('0x46')]));})[_0xe7ba('0x73')](function(_0x52aa36){if(_0x52aa36[_0xe7ba('0x113')]){rpcDb[_0xe7ba('0x114')](_0x15b29c);}if(_0x52aa36[_0xe7ba('0x4e')]){rpcDb[_0xe7ba('0x86')](_0x15b29c);}_0x1f563b(_[_0xe7ba('0x6d')](_0x52aa36,[_0xe7ba('0x46')]));});});};Preview[_0xe7ba('0xf')][_0xe7ba('0x112')]=function(_0x3e574c,_0x4d094d){var _0x1cb032=this;return new BPromise(function(_0x51f37f,_0x14f746){var _0xcbd1b9,_0x1f8c9e;rpcDb['getContactPreview'](_0x3e574c)[_0xe7ba('0x7c')](function(_0x27ce76){if(!_[_0xe7ba('0xff')](_0x27ce76[0x0])){_0x1f8c9e=_0x27ce76[0x0][_0xe7ba('0x115')]?![]:!![];_0xcbd1b9=_0x27ce76[0x0][_0xe7ba('0x115')]?!![]:![];_0xcbd1b9=_0x4d094d?!![]:_0xcbd1b9;}var _0x1db4a2=_0x1cb032[_0xe7ba('0x116')](_0x27ce76);if(_0x1db4a2['isValid']){rpcDb[_0xe7ba('0x117')](_['pick'](_0x27ce76[0x0],[_0xe7ba('0x6f'),_0xe7ba('0x118')]))[_0xe7ba('0x7c')](function(_0x5e8020){_0x1cb032[_0xe7ba('0xfe')](_0x5e8020,_0x27ce76[0x0],_0x4d094d,_0x1f8c9e,_0xcbd1b9)[_0xe7ba('0x7c')](function(_0x26dc8e){_0x51f37f(_0x26dc8e);})[_0xe7ba('0x73')](function(_0x400502){_0x14f746(_0x400502);});})[_0xe7ba('0x73')](function(_0x5b19c){ut[_0xe7ba('0x5b')]('[Preview][checkIsBlackList]',_0x5b19c);_0x14f746(ut[_0xe7ba('0x46')](_0xe7ba('0x119'),_0x1f8c9e,_0xcbd1b9));});}else{_0x14f746(ut[_0xe7ba('0x46')](_0x1db4a2[_0xe7ba('0x46')],_0x1f8c9e,_0xcbd1b9));}})[_0xe7ba('0x73')](function(_0x209e82){ut['logger'](_0xe7ba('0x11a'),_0x209e82);_0x14f746(ut[_0xe7ba('0x46')](_0xe7ba('0x119'),![],!![]));});});};Preview['prototype'][_0xe7ba('0x116')]=function(_0x1ccb79){if(_[_0xe7ba('0xff')](_0x1ccb79)||_[_0xe7ba('0x103')](_0x1ccb79)||!_[_0xe7ba('0xff')](_0x1ccb79[0x0][_0xe7ba('0x81')])&&_[_0xe7ba('0xff')](_0x1ccb79[0x0]['Agent'][_0xe7ba('0x27')])){ut[_0xe7ba('0x5b')](_0xe7ba('0x11b'),_0x1ccb79);return{'isValid':![],'message':_0xe7ba('0x11c')};}var _0x365a82=this['campaignsPreview'][_0x1ccb79[0x0][_0xe7ba('0x69')][_0xe7ba('0x27')]];_0x365a82[_0xe7ba('0x46')]='ACTIVE';if(_['isNil'](_0x365a82)){ut[_0xe7ba('0x5b')]('[Preview][validateContact][Empty\x20Campaign]',_0x365a82);return{'isValid':![],'message':'Empty\x20Campaign'};}if(!this[_0xe7ba('0x93')](_0x365a82[_0xe7ba('0x4d')])){ut[_0xe7ba('0x5b')](_0xe7ba('0x11d'),_0xe7ba('0x11e')+_0x365a82[_0xe7ba('0x27')]+_0xe7ba('0x11f'));if(!this[_0xe7ba('0x93')](_0x365a82[_0xe7ba('0x94')])){ut[_0xe7ba('0x5b')](_0xe7ba('0x11d'),_0x365a82[_0xe7ba('0x27')]+_0xe7ba('0x120'));return{'isValid':![],'message':_0xe7ba('0x121')};}}if(!ut[_0xe7ba('0x92')](_0x365a82[_0xe7ba('0x2f')])){ut['logger'](_0xe7ba('0x122'),_0x365a82[_0xe7ba('0x27')]+_0xe7ba('0x123'));return{'isValid':![],'message':'campaign\x20Name:\x20'+_0x365a82[_0xe7ba('0x27')]+_0xe7ba('0x123')};}return{'isValid':!![],'message':_0xe7ba('0x124')};};Preview[_0xe7ba('0xf')][_0xe7ba('0x104')]=function(_0xa7f651,_0x1bbb94,_0x4bc357,_0x3fc744){var _0xc8d663=this;return new BPromise(function(_0x516116,_0x37a435){var _0x252280=_0xa7f651[_0xe7ba('0xab')];var _0xc32668=_0xc8d663['isTrunkReachable'](_0x1bbb94['Trunk'])?util[_0xe7ba('0x55')](_0xe7ba('0x125'),_0x1bbb94[_0xe7ba('0x4d')]['name'],_[_0xe7ba('0xff')](_0x1bbb94[_0xe7ba('0x34')])?'':_0x1bbb94[_0xe7ba('0x34')]['trim']()||'',_0x1bbb94[_0xe7ba('0x126')]>0x0?_0x4bc357[_0xe7ba('0x100')][_0xe7ba('0x127')][_0xe7ba('0x128')](_0x1bbb94[_0xe7ba('0x126')]):_0x4bc357[_0xe7ba('0x100')]['phone']):util[_0xe7ba('0x55')]('SIP/%s/%s%s',_[_0xe7ba('0xff')](_0x1bbb94['TrunkBackup'])?_0x1bbb94['Trunk'][_0xe7ba('0x27')]:_0x1bbb94[_0xe7ba('0x94')][_0xe7ba('0x27')],_['isNil'](_0x1bbb94['dialPrefix'])?'':_0x1bbb94[_0xe7ba('0x34')][_0xe7ba('0x129')]()||'',_0x1bbb94[_0xe7ba('0x126')]>0x0?_0x4bc357[_0xe7ba('0x100')][_0xe7ba('0x127')]['substring'](_0x1bbb94[_0xe7ba('0x126')]):_0x4bc357['Contact'][_0xe7ba('0x127')]);var _0x28bc82=_0xc8d663[_0xe7ba('0x93')](_0x1bbb94[_0xe7ba('0x4d')])?ut[_0xe7ba('0x12a')](_0x1bbb94[_0xe7ba('0x4d')][_0xe7ba('0x4f')],_0x1bbb94[_0xe7ba('0x31')],_0x1bbb94[_0xe7ba('0x12b')]>0x0?ut[_0xe7ba('0x12c')](_0x1bbb94['dialOriginateCallerIdNumber'],_0x1bbb94[_0xe7ba('0x12b')]):_0x1bbb94['dialOriginateCallerIdNumber']):ut[_0xe7ba('0x12a')](_[_0xe7ba('0xff')](_0x1bbb94[_0xe7ba('0x94')])?_0x1bbb94[_0xe7ba('0x4d')]['callerid']:_0x1bbb94[_0xe7ba('0x94')]['callerid'],_0x1bbb94[_0xe7ba('0x31')],_0x1bbb94[_0xe7ba('0x12b')]>0x0?ut['getCallerIdRandom'](_0x1bbb94[_0xe7ba('0x32')],_0x1bbb94[_0xe7ba('0x12b')]):_0x1bbb94['dialOriginateCallerIdNumber']);if(_0x28bc82){_0xa7f651[_0xe7ba('0x12d')]=ut[_0xe7ba('0x12e')](_0x28bc82);_0xa7f651[_0xe7ba('0x12f')]=ut[_0xe7ba('0x130')](_0x28bc82);}var _0x2b2514=ut['addVariables'](_0x1bbb94,_0x4bc357,_0xc32668,_0x28bc82,_0x252280,_0xa7f651);_[_0xe7ba('0x131')](_0xa7f651,ut['toLowerVariables'](_0x2b2514));_0xa7f651[_0xe7ba('0x87')]=moment()[_0xe7ba('0x55')](_0xe7ba('0x88'));ami[_0xe7ba('0x132')](ut[_0xe7ba('0x133')](_0xa7f651,_0x1bbb94,_0x2b2514,_0xa7f651['activeContact'],_0x3fc744))['then'](function(_0x4bc56b){_0x1bbb94['originated']+=0x1;logger[_0xe7ba('0x53')](_0xe7ba('0x134'),_0x252280,_0xe7ba('0xac'),_0x1bbb94[_0xe7ba('0x27')],'originated:\x20',_0x1bbb94[_0xe7ba('0x47')]);_0x516116(_0x4bc56b);})[_0xe7ba('0x73')](function(_0x2edc34){ut['logAgent'](_0xa7f651,0xe,_0xe7ba('0x135'));rpcDb['createAgentHistory'](_0xa7f651,'[originateFailure][logOriginateFailure]');_0x37a435(_0x2edc34);});});};Preview[_0xe7ba('0xf')][_0xe7ba('0x1e')]=function(_0x161590){if(this[_0xe7ba('0x16')][_0x161590[_0xe7ba('0xa7')]]){this[_0xe7ba('0x16')][_0x161590[_0xe7ba('0xa7')]][_0xe7ba('0x72')]=_0x161590['channel'];}};Preview['prototype'][_0xe7ba('0x136')]=function(_0x408e65){var _0x1af296=this;var _0x4b4349=this[_0xe7ba('0x16')][_0x408e65[_0xe7ba('0x137')]];if(_0x4b4349){if(_0x4b4349['lookAgent']&&this[_0xe7ba('0x17')][_0x4b4349['lookAgent']]){ut[_0xe7ba('0x138')](_0x4b4349,this[_0xe7ba('0x17')][_0x4b4349[_0xe7ba('0x102')]]['name'],this[_0xe7ba('0x17')][_0x4b4349[_0xe7ba('0x102')]]['id']);}var _0x33649f=_[_0xe7ba('0x139')](_0x4b4349);_0x33649f[_0xe7ba('0x13a')]=moment()[_0xe7ba('0x55')](_0xe7ba('0x88'));var _0x26421c=_0x1af296[_0xe7ba('0x23')][_0x4b4349['queue']];if(ut[_0xe7ba('0x13b')](_0x408e65[_0xe7ba('0x13c')])){if(_0x4b4349[_0xe7ba('0xa5')]){rpcDb[_0xe7ba('0x114')](_0x4b4349[_0xe7ba('0x13d')]);}if(_0x4b4349[_0xe7ba('0xa6')]){rpcDb['disableContact'](_0x4b4349[_0xe7ba('0x13d')]);}ami['emit'](_0xe7ba('0x13e'),ut[_0xe7ba('0x9a')](_0x4b4349,_0xe7ba('0x13f'),this[_0xe7ba('0x23')][_0x4b4349['queue']]));this[_0xe7ba('0x140')](_0x33649f,_0x26421c,_0x408e65);}else{_0x4b4349['starttime']=moment()['format']('YYYY-MM-DD\x20HH:mm:ss');ut['logAgent'](_0x33649f,0x4,_0xe7ba('0x141'));rpcDb['createAgentHistory'](_0x33649f,_0xe7ba('0x142'));}}};Preview['prototype'][_0xe7ba('0x1b')]=function(_0x32c6b1){var _0x84157f=this;var _0xbc8cca=this[_0xe7ba('0x16')][_0x32c6b1[_0xe7ba('0xa7')]];var _0x59e67a;if(_0xbc8cca){_0x59e67a=this[_0xe7ba('0x23')][_0xbc8cca[_0xe7ba('0x6a')]];logger[_0xe7ba('0x53')](_0xe7ba('0x143'),_0x32c6b1[_0xe7ba('0xa7')],_0xe7ba('0xac'),_0x59e67a[_0xe7ba('0x27')],_0xe7ba('0x6b'),_0x59e67a[_0xe7ba('0x2c')]);}if(this[_0xe7ba('0x16')][_0x32c6b1['linkedid']]&&_0x32c6b1[_0xe7ba('0xa7')]!==_0x32c6b1['uniqueid']){if(_0x32c6b1[_0xe7ba('0x144')]==='16'&&this[_0xe7ba('0x16')][_0x32c6b1['linkedid']][_0xe7ba('0x6c')]){this[_0xe7ba('0x97')](_0x32c6b1,_0x32c6b1[_0xe7ba('0xa7')],_0x32c6b1[_0xe7ba('0x144')]);}else if(this[_0xe7ba('0x16')][_0x32c6b1['linkedid']][_0xe7ba('0x6c')]){logger[_0xe7ba('0x53')](_0xe7ba('0x145'),_0x32c6b1[_0xe7ba('0xa7')],_0x32c6b1[_0xe7ba('0x144')],_0xe7ba('0xac'),_0x59e67a[_0xe7ba('0x27')],_0xe7ba('0x6b'),_0x59e67a[_0xe7ba('0x2c')]);this[_0xe7ba('0x97')](_0x32c6b1,_0x32c6b1['linkedid'],_0x32c6b1['cause']);}}else if(_0xbc8cca&&_['isNil'](_0xbc8cca['statedesc'])&&_0x59e67a[_0xe7ba('0x146')]&&_0x32c6b1['linkedid']===_0x32c6b1['uniqueid']&&_[_0xe7ba('0xff')](_0x32c6b1['reason'])&&_0x32c6b1['cause']==='16'&&_0x32c6b1[_0xe7ba('0x147')]==='6'&&_['isUndefined'](_0xbc8cca[_0xe7ba('0x148')])){if(_0xbc8cca['unlockAgent']){rpcDb[_0xe7ba('0x114')](_0xbc8cca['idContact']);}if(_0xbc8cca[_0xe7ba('0xa6')]){rpcDb[_0xe7ba('0x86')](_0xbc8cca[_0xe7ba('0x13d')]);}_0x32c6b1['reason']='22';this[_0xe7ba('0x140')](_0xbc8cca,_0x59e67a,_0x32c6b1);}else if(_0xbc8cca&&_0xbc8cca[_0xe7ba('0x148')]){if(_0x32c6b1[_0xe7ba('0x144')]==='16'&&this['actions'][_0x32c6b1[_0xe7ba('0xa7')]][_0xe7ba('0x6c')]){logger['info'](_0xe7ba('0x149'),_0x32c6b1[_0xe7ba('0xa7')],_0x32c6b1[_0xe7ba('0x144')],'\x20Queue',_0x59e67a['name'],_0xe7ba('0x6b'),_0x59e67a[_0xe7ba('0x2c')]);this[_0xe7ba('0x97')](_0x32c6b1,_0x32c6b1[_0xe7ba('0xa7')],_0x32c6b1[_0xe7ba('0x144')]);}else if(this[_0xe7ba('0x16')][_0x32c6b1[_0xe7ba('0xa7')]][_0xe7ba('0x6c')]){logger[_0xe7ba('0x53')](_0xe7ba('0x145'),_0x32c6b1[_0xe7ba('0xa7')],_0x32c6b1[_0xe7ba('0x144')],'\x20Queue',_0x59e67a[_0xe7ba('0x27')],_0xe7ba('0x6b'),_0x59e67a[_0xe7ba('0x2c')]);this[_0xe7ba('0x97')](_0x32c6b1,_0x32c6b1[_0xe7ba('0xa7')],_0x32c6b1[_0xe7ba('0x144')]);}}};Preview[_0xe7ba('0xf')][_0xe7ba('0x14a')]=function(_0x52433a){if(this[_0xe7ba('0x16')][_0x52433a[_0xe7ba('0x14b')]]&&_0x52433a[_0xe7ba('0x14b')]!==_0x52433a[_0xe7ba('0x14c')]){this[_0xe7ba('0x97')](_0x52433a,_0x52433a[_0xe7ba('0x14b')],_0x52433a[_0xe7ba('0xe7')]);}};Preview[_0xe7ba('0xf')]['syncHangupRequest']=function(_0x35c32e){if(this[_0xe7ba('0x16')][_0x35c32e[_0xe7ba('0xa7')]]&&_0x35c32e[_0xe7ba('0xa7')]!==_0x35c32e['uniqueid']&&!this[_0xe7ba('0x16')][_0x35c32e[_0xe7ba('0xa7')]][_0xe7ba('0x6c')]){if(_0x35c32e[_0xe7ba('0x144')]==='1'){this['callProgressDetectingCustomer'](_0x35c32e,_0x35c32e['linkedid'],_0x35c32e[_0xe7ba('0x144')]);}}};Preview[_0xe7ba('0xf')]['addVariable']=function(_0x9471fb,_0x44d2f1,_0x121d5e){if(this[_0xe7ba('0x16')][_0x9471fb]){if(_[_0xe7ba('0xff')](this[_0xe7ba('0x16')][_0x9471fb]['variables'])){this[_0xe7ba('0x16')][_0x9471fb][_0xe7ba('0x14d')]={};}this[_0xe7ba('0x16')][_0x9471fb]['variables'][_0x44d2f1]=_0x121d5e;}};Preview[_0xe7ba('0xf')]['syncVarSet']=function(_0x39f1ce){try{if(!_[_0xe7ba('0xff')](_0x39f1ce)){if(ut[_0xe7ba('0x14e')](_[_0xe7ba('0x14f')](_0x39f1ce[_0xe7ba('0x150')])[0x0])){this[_0xe7ba('0x151')](_0x39f1ce[_0xe7ba('0xab')],_[_0xe7ba('0x14f')](_0x39f1ce['variable'])[0x0],_0x39f1ce[_0xe7ba('0x152')]);}}}catch(_0x435266){logger[_0xe7ba('0x153')]('[syncVarSet][Preview]',util[_0xe7ba('0x154')](_0x435266,{'showHidden':![],'depth':null}));}};Preview[_0xe7ba('0xf')][_0xe7ba('0x20')]=function(_0x35ff64){if(_0x35ff64){if(this['actions'][_0x35ff64['transfertargetlinkedid']]){this[_0xe7ba('0x16')][_0x35ff64['transfertargetlinkedid']]['transfer']=!![];}}};Preview[_0xe7ba('0xf')]['syncBlindTransfer']=function(_0x32aef0){if(_0x32aef0){if(this['actions'][_0x32aef0[_0xe7ba('0x155')]]){this['actions'][_0x32aef0[_0xe7ba('0x155')]][_0xe7ba('0x148')]=!![];}}};module['exports']=Preview;