0369925c6de3714b782c3cd58c6375144611a9ef
[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 _0xc402=['unlockAgent','activeContact','NOANSWER','countnoanswerretry','cloneAction','[callProgressDetectingCustomer][logNoAnswerGlobal]','dialNoAnswerMaxRetry','[callProgressDetectingCustomer][logNoAnswer]','rescheduleContact','dialNoAnswerRetryFrequency','CONGESTION','outboundCongestionCallsDay','countcongestionretry','Congestion','[callProgressDetectingCustomer][logCongestion]','[callProgressDetectingCustomer][logCongestionGlobal]','dialCongestionMaxRetry','CANCEL','AgentReject','idContact','[default]','[Dialer][decrementTalkink][no\x20Hangup][Preview]','cause-txt','[callProgressDetectingCustomer][logUnknownGlobal]','[callProgressDetectingCustomer]','[originated][decrement][callProgressDetectingCustomer]','destlinkedid','isUndefined','object','reason','logAgent','NoSuchNumber','createAgentHistory','NoAnswer','[callProgressDetectingAgent][logNoAnswer]','[callProgressDetectingAgent][logBusy]','AnswerAGI','[callProgressDetectingAgent][logAnswerAGI]','[callProgressDetectingAgent][logCongestion]','[callProgressDetectingAgent]','[originated][decrement][callProgressDetectingAgent]','checkInBlack','Contact','phone','Contact\x20is\x20undefined','lookAgent','isEmpty','execCall','[Preview][execCall][success]','\x20IdHopper:\x20','custom:agentcalled','called','Calling','[Preview][execCall][failure]','Call\x20failed','outboundBlacklistCallsDay','logBlacklist','createHistory','[Blacklist][error]','Contact\x20in\x20black\x20List','SIP/%s','reachable','unmonitored','execRun','unlock','unlockContact','disableContact','getContactPreview','recallme','validateContact','checkIsBlackList','Call\x20unsuccessful','[Preview][getContactPreview]','[Preview][validateContact][Empty\x20Contact]','Empty\x20Campaign','[Preview][validateContact][Trunk\x20not\x20work]','\x20Trunk\x20is\x20not\x20active','Trunk\x20not\x20work','[Preview][validateContact][Campaign\x20Active]','\x20Not\x20Active','campaign\x20Name:\x20','Is\x20Valid','trim','dialCutDigit','SIP/%s/%s%s','substring','getCallerId','callerid','dialOriginateCallerIdName','dialRandomLastDigitCallerIdNumber','getCallerIdRandom','extractCalleridName','originatecalleridnum','extractCalleridNumber','addVariables','merge','toLowerVariables','variablesAction','[originated][increment]','OriginateError','[originateFailure][logOriginateFailure]','actionid','logLookAgent','clone','isFailure','response','custom:agentringnoanswer','rejected','callProgressDetectingAgent','cause','[syncHangup][talking][cause]','statedesc','dialQueueProject','channelstate','transfer','[syncHangup][talking][transfer]','syncDialEnd','dialstatus','variables','variable','addVariable','keys','value','[syncVarSet][Preview]','inspect','syncAttendedTransfer','transfererlinkedid','exports','uuid','moment','md5','ioredis','../../../config/environment','../../../config/logger','preview','actionPreview','../ami','./action','./util/util','redis','defaults','localhost','socket.io-emitter','enqueue','tail','finally','sequence','campaignsPreview','trunks','actions','agents','originateresponse','syncOriginateResponse','bind','hangup','syncHangup','hanguprequest','syncHangupRequest','dialend','newexten','syncNewExten','varset','syncVarSet','blindtransfer','syncBlindTransfer','type','strategy','answered','available','loggedIn','sumBillable','sumDuration','sumHoldTime','talking','total','unmanaged','loggedInDb','dialActive','dialMethod','dialOriginateCallerIdNumber','dialPrefix','outboundAnswerCallsDay','outboundBusyCallsDay','outboundDropCallsDayACS','outboundDropCallsDayCallersExit','outboundDropCallsDayTimeout','outboundNoAnswerCallsDay','outboundNoSuchCallsDay','outboundReCallsDay','outboundRejectCallsDay','outboundUnknownCallsDay','predictiveIntervalAnsweredCalls','predictiveIntervalAvgHoldtime','predictiveIntervalDroppedCallsTimeout','predictiveIntervalErlangCalls','predictiveIntervalHitRate','predictiveIntervalPauses','predictiveIntervalTotalCalls','message','originated','erlangCalls','erlangAbandonmentRate','erlangBusyFactor','startPredictive','startProgressive','Trunk','name','active','Interval','stringify','format','voice:queue:%s','voice_queue:save','info','[DEBUG]\x20Emit\x20voice_queue_channel:remove\x20event','voice_queue_channel:remove','sendMessageOneNotActive','logger','[CampaignPreview]\x20Campaign\x20Queue:\x20','\x20is\x20not\x20active','\x20is\x20disactive','prototype','loopCampaigns','syncCampaigns','clockClearZombieChannels','hasOwnProperty','booked','outbound','clearZombieChannels','recallMe','clearZombieChannel','isNil','[clearZombieChannels][talking]','Queue','originated:\x20','queue','pTalking','dialAnswer','pick','contactId','UserId','VoiceQueueId','ListId','Action','status','channel','updateOriginated','[clearZombieChannel]','loggerError','[Dialer][checkChannel][pTalking][Preview]','[Dialer][checkChannel][Preview]','[action]','size','getContactRecallMe','agentReadyId','scheduledat','Agent','voicePause','run','then','logger2','[RecallMe]','catch','starttime','YYYY-MM-DD\x20HH:mm:ss','logCustomer','dialRecallInQueue','rescheduleContactInQueue','createBody','createCustomerHistory','[HistoryRecallClose]','createCustomerFinal','[getContactRecallMe]','setMessage','IsNotLoggedIn','AGENTS_NOT_LOGGED','isActive','NOT_ACTIVE','isTrunkReachable','TrunkBackup','TRUNK_IS_NOT_REACHABLE','ACTIVE','callProgressDetectingCustomer','countglobal','totalGlobal','dialGlobalMaxRetry','Global','[callProgressDetectingCustomer][logNoSuchGlobal]','linkedid','ANSWER','responsetime','answertime','[syncHangup][talking][increment]','uniqueid','pTalking:\x20','emit','custom:agentconnect','buildObj','acw','custom:agentConnectPreview','buildAcw','custom:agentcomplete','complete','decrementTalkink','[16]','Answer','[callProgressDetectingCustomer][logAnswer]','[callProgressDetectingCustomer][logAnswerGlobal]','crateCustomerReportQueue','talktime','[syncHangup][talking][decrement]','\x20Queue','countbusyretry','Busy','[callProgressDetectingCustomer][logBusy]','[callProgressDetectingCustomer][logBusyGlobal]','dialBusyMaxRetry','scheduledAt','dialBusyRetryFrequency'];(function(_0x1fd675,_0x165dfe){var _0x16b554=function(_0x5761ff){while(--_0x5761ff){_0x1fd675['push'](_0x1fd675['shift']());}};_0x16b554(++_0x165dfe);}(_0xc402,0x1bf));var _0x2c40=function(_0x479d57,_0x326f0b){_0x479d57=_0x479d57-0x0;var _0x4dfacb=_0xc402[_0x479d57];return _0x4dfacb;};'use strict';var util=require('util');var _=require('lodash');var BPromise=require('bluebird');var uuid=require(_0x2c40('0x0'));var moment=require(_0x2c40('0x1'));var md5=require(_0x2c40('0x2'));var Redis=require(_0x2c40('0x3'));var config=require(_0x2c40('0x4'));var logger=require(_0x2c40('0x5'))(_0x2c40('0x6'));var loggerAction=require(_0x2c40('0x5'))(_0x2c40('0x7'));var ami=require(_0x2c40('0x8'));var rpcDb=require('./rpcDb');var Action=require(_0x2c40('0x9'));var ut=require(_0x2c40('0xa'));config[_0x2c40('0xb')]=_[_0x2c40('0xc')](config['redis'],{'host':_0x2c40('0xd'),'port':0x18eb});var io=require(_0x2c40('0xe'))(new Redis(config[_0x2c40('0xb')]));var Sequence=function(){};Sequence['prototype'][_0x2c40('0xf')]=function(_0x5ce02e){this[_0x2c40('0x10')]=this[_0x2c40('0x10')]?this[_0x2c40('0x10')][_0x2c40('0x11')](_0x5ce02e):_0x5ce02e();};function Preview(_0x9e5696){this[_0x2c40('0x12')]=new Sequence();this[_0x2c40('0x13')]=_0x9e5696['voiceQueues'];this['trunks']=_0x9e5696[_0x2c40('0x14')];this[_0x2c40('0x15')]={};this[_0x2c40('0x16')]=_0x9e5696['agents'];this['clockClearZombieChannels']=0x0;ami['on'](_0x2c40('0x17'),this[_0x2c40('0x18')][_0x2c40('0x19')](this));ami['on'](_0x2c40('0x1a'),this[_0x2c40('0x1b')][_0x2c40('0x19')](this));ami['on'](_0x2c40('0x1c'),this[_0x2c40('0x1d')][_0x2c40('0x19')](this));ami['on'](_0x2c40('0x1e'),this['syncDialEnd'][_0x2c40('0x19')](this));ami['on'](_0x2c40('0x1f'),this[_0x2c40('0x20')][_0x2c40('0x19')](this));ami['on'](_0x2c40('0x21'),this[_0x2c40('0x22')]['bind'](this));ami['on']('attendedtransfer',this['syncAttendedTransfer'][_0x2c40('0x19')](this));ami['on'](_0x2c40('0x23'),this[_0x2c40('0x24')][_0x2c40('0x19')](this));this['loopCampaigns'](this[_0x2c40('0x13')]);}function emit(_0x1882da,_0x24f2b2,_0xa608c7){io['to'](_0x1882da)['emit'](_0x24f2b2,_0xa608c7);}function emitCampaignPreview(_0x215be6){if(_0x215be6[_0x2c40('0x25')]==='outbound'){var _0x238bf6={'id':_0x215be6['id'],'name':_0x215be6['name'],'strategy':_0x215be6[_0x2c40('0x26')],'answered':_0x215be6[_0x2c40('0x27')],'available':_0x215be6[_0x2c40('0x28')],'loggedIn':_0x215be6[_0x2c40('0x29')],'pTalking':_0x215be6['pTalking'],'sumBillable':_0x215be6[_0x2c40('0x2a')],'sumDuration':_0x215be6[_0x2c40('0x2b')],'sumHoldTime':_0x215be6[_0x2c40('0x2c')]||0x0,'talking':_0x215be6[_0x2c40('0x2d')],'total':_0x215be6[_0x2c40('0x2e')],'type':_0x215be6['type'],'unmanaged':_0x215be6[_0x2c40('0x2f')],'abandoned':_0x215be6['abandoned'],'waiting':_0x215be6['waiting'],'loggedInDb':_0x215be6[_0x2c40('0x30')],'dialActive':_0x215be6[_0x2c40('0x31')],'dialMethod':_0x215be6[_0x2c40('0x32')],'dialOriginateCallerIdName':_0x215be6['dialOriginateCallerIdName'],'dialOriginateCallerIdNumber':_0x215be6[_0x2c40('0x33')],'dialOriginateTimeout':_0x215be6['dialOriginateTimeout'],'dialPrefix':_0x215be6[_0x2c40('0x34')],'outboundAnswerAgiCallsDay':_0x215be6['outboundAnswerAgiCallsDay'],'outboundAnswerCallsDay':_0x215be6[_0x2c40('0x35')],'outboundBlacklistCallsDay':_0x215be6['outboundBlacklistCallsDay'],'outboundBusyCallsDay':_0x215be6[_0x2c40('0x36')],'outboundCongestionCallsDay':_0x215be6['outboundCongestionCallsDay'],'outboundDropCallsDayACS':_0x215be6[_0x2c40('0x37')],'outboundDropCallsDayCallersExit':_0x215be6[_0x2c40('0x38')],'outboundDropCallsDayTimeout':_0x215be6[_0x2c40('0x39')],'outboundNoAnswerCallsDay':_0x215be6[_0x2c40('0x3a')],'outboundNoSuchCallsDay':_0x215be6[_0x2c40('0x3b')],'outboundOriginateFailureCallsDay':_0x215be6['outboundOriginateFailureCallsDay'],'outboundReCallsDay':_0x215be6[_0x2c40('0x3c')],'outboundRejectCallsDay':_0x215be6[_0x2c40('0x3d')],'outboundUnknownCallsDay':_0x215be6[_0x2c40('0x3e')],'predictiveIntervalAnsweredCalls':_0x215be6[_0x2c40('0x3f')],'predictiveIntervalAvgHoldtime':_0x215be6[_0x2c40('0x40')],'predictiveIntervalAvgTalktime':_0x215be6['predictiveIntervalAvgTalktime'],'predictiveIntervalDroppedCallsCallersExit':_0x215be6['predictiveIntervalDroppedCallsCallersExit'],'predictiveIntervalDroppedCallsTimeout':_0x215be6[_0x2c40('0x41')],'predictiveIntervalErlangCalls':_0x215be6[_0x2c40('0x42')],'predictiveIntervalErlangCallsDroppedCalls':_0x215be6['predictiveIntervalErlangCallsDroppedCalls'],'predictiveIntervalHitRate':_0x215be6[_0x2c40('0x43')],'predictiveIntervalMultiplicativeFactor':_0x215be6['predictiveIntervalMultiplicativeFactor'],'predictiveIntervalPauses':_0x215be6[_0x2c40('0x44')],'predictiveIntervalAvailable':_0x215be6['predictiveIntervalAvailable'],'predictiveIntervalTotalCalls':_0x215be6[_0x2c40('0x45')],'message':_0x215be6[_0x2c40('0x46')],'originated':_0x215be6[_0x2c40('0x47')],'erlangCalls':_0x215be6[_0x2c40('0x48')],'erlangCallToSecond':_0x215be6['erlangCallToSecond'],'erlangAbandonmentRate':_0x215be6[_0x2c40('0x49')],'erlangBusyFactor':_0x215be6[_0x2c40('0x4a')],'startPredictive':_0x215be6[_0x2c40('0x4b')],'startProgressive':_0x215be6[_0x2c40('0x4c')]};if(_0x215be6[_0x2c40('0x4d')]){_0x238bf6['Trunk']={'id':_0x215be6[_0x2c40('0x4d')]['id'],'name':_0x215be6[_0x2c40('0x4d')][_0x2c40('0x4e')],'active':_0x215be6['Trunk'][_0x2c40('0x4f')],'callerid':_0x215be6['Trunk']['callerid']};}if(_0x215be6[_0x2c40('0x50')]){_0x238bf6[_0x2c40('0x50')]={'id':_0x215be6[_0x2c40('0x50')]['id'],'name':_0x215be6[_0x2c40('0x50')]['name']};}var _0x235dd7=md5(JSON[_0x2c40('0x51')](_0x238bf6));if(_0x215be6[_0x2c40('0x2')]!==_0x235dd7){_0x215be6[_0x2c40('0x2')]=_0x235dd7;emit(util[_0x2c40('0x52')](_0x2c40('0x53'),_0x238bf6[_0x2c40('0x4e')]),_0x2c40('0x54'),_0x238bf6);}}}function emitVoiceQueueChannelRemove(_0x2ddecc){logger[_0x2c40('0x55')](_0x2c40('0x56'),JSON[_0x2c40('0x51')](_0x2ddecc));emit(util['format'](_0x2c40('0x53'),_0x2ddecc['name']),_0x2c40('0x57'),_0x2ddecc);}function notSendMessagesQueue(_0x280a4b){if(_0x280a4b[_0x2c40('0x58')]){if(_0x280a4b['originated']===0x0&&_0x280a4b['pTalking']===0x0){_0x280a4b['sendMessageOneNotActive']=![];_0x280a4b[_0x2c40('0x28')]=0x0;_0x280a4b['paused']=0x0;_0x280a4b[_0x2c40('0x46')]='NOT_ACTIVE';ut[_0x2c40('0x59')](_0x2c40('0x5a'),_0x280a4b['name']+_0x2c40('0x5b'));}else{_0x280a4b[_0x2c40('0x46')]='IS_DISACTIVED';ut[_0x2c40('0x59')](_0x2c40('0x5a'),_0x280a4b[_0x2c40('0x4e')]+_0x2c40('0x5c'));}emitCampaignPreview(_0x280a4b);}}Preview[_0x2c40('0x5d')][_0x2c40('0x5e')]=function(){var _0x448d08=this;setInterval(function(){_0x448d08['syncCampaigns']();},0x7cf);};Preview[_0x2c40('0x5d')][_0x2c40('0x5f')]=function(){var _0x4c4024=this[_0x2c40('0x13')];this[_0x2c40('0x60')]+=0x1;for(var _0x55223b in _0x4c4024){if(_0x4c4024[_0x2c40('0x61')](_0x55223b)&&(_0x4c4024[_0x55223b][_0x2c40('0x32')]===_0x2c40('0x6')||_0x4c4024[_0x55223b][_0x2c40('0x32')]===_0x2c40('0x62'))&&_0x4c4024[_0x55223b]['type']===_0x2c40('0x63')){if(this[_0x2c40('0x60')]>0x7){this['clockClearZombieChannels']=0x0;this[_0x2c40('0x64')]();}}if(_0x4c4024[_0x2c40('0x61')](_0x55223b)&&_0x4c4024[_0x55223b]['dialMethod']===_0x2c40('0x6')&&_0x4c4024[_0x55223b][_0x2c40('0x25')]===_0x2c40('0x63')){if(_0x4c4024[_0x55223b][_0x2c40('0x31')]){this['setMessage'](_0x4c4024[_0x55223b]);this[_0x2c40('0x65')](_0x4c4024[_0x55223b]);}else{notSendMessagesQueue(_0x4c4024[_0x55223b]);}}}};Preview['prototype'][_0x2c40('0x66')]=function(_0x14dbb7){var _0x598d22=this;this['sequence'][_0x2c40('0xf')](function(){if(!_[_0x2c40('0x67')](_0x598d22[_0x2c40('0x15')][_0x14dbb7])){loggerAction[_0x2c40('0x55')](_0x2c40('0x68'),_0x14dbb7,_0x2c40('0x69'),_0x598d22[_0x2c40('0x15')][_0x14dbb7]['queue'],_0x2c40('0x6a'),JSON[_0x2c40('0x51')](_0x598d22['campaignsPreview'][_0x598d22[_0x2c40('0x15')][_0x14dbb7][_0x2c40('0x6b')]][_0x2c40('0x47')]),'pTalking:\x20',JSON['stringify'](_0x598d22[_0x2c40('0x13')][_0x598d22[_0x2c40('0x15')][_0x14dbb7][_0x2c40('0x6b')]][_0x2c40('0x6c')]),JSON[_0x2c40('0x51')](_0x598d22['actions'][_0x14dbb7][_0x2c40('0x6d')]),JSON[_0x2c40('0x51')](_[_0x2c40('0x6e')](_0x598d22[_0x2c40('0x15')][_0x14dbb7],[_0x2c40('0x6f'),_0x2c40('0x70'),_0x2c40('0x71'),_0x2c40('0x72')])));return ami[_0x2c40('0x73')]({'action':_0x2c40('0x74'),'channel':_0x598d22[_0x2c40('0x15')][_0x14dbb7][_0x2c40('0x75')]})['catch'](function(_0x4192ca){if(_0x4192ca[_0x2c40('0x46')]==='No\x20such\x20channel'){setTimeout(function(){if(_0x598d22[_0x2c40('0x15')][_0x14dbb7]){ut[_0x2c40('0x76')](_0x598d22[_0x2c40('0x13')][_0x598d22[_0x2c40('0x15')][_0x14dbb7]['queue']],_0x2c40('0x77'));if(_0x598d22[_0x2c40('0x15')][_0x14dbb7][_0x2c40('0x6d')]===!![]){ut['decrementTalkink'](_0x598d22[_0x2c40('0x13')][_0x598d22[_0x2c40('0x15')][_0x14dbb7]['queue']],'[clearZombieChannel]');ut[_0x2c40('0x78')](_0x2c40('0x79')+_0x14dbb7,_0x598d22[_0x2c40('0x15')][_0x14dbb7][_0x2c40('0x6b')]);}ut[_0x2c40('0x78')](_0x2c40('0x7a')+_0x14dbb7,_0x598d22[_0x2c40('0x15')][_0x14dbb7]['queue']);delete _0x598d22[_0x2c40('0x15')][_0x14dbb7];}},0x2328);}});}});};Preview['prototype'][_0x2c40('0x64')]=function(){var _0x44c521=this;loggerAction[_0x2c40('0x55')](_0x2c40('0x7b'),_[_0x2c40('0x7c')](this[_0x2c40('0x15')]));for(var _0x3ae705 in this[_0x2c40('0x15')]){if(_0x44c521['actions']['hasOwnProperty'](_0x3ae705)){_0x44c521[_0x2c40('0x66')](_0x3ae705);}}};Preview[_0x2c40('0x5d')][_0x2c40('0x65')]=function(_0x293b06){var _0x5602c7=this;rpcDb[_0x2c40('0x7d')](_0x293b06['id'],ut[_0x2c40('0x7e')](this[_0x2c40('0x16')]))['then'](function(_0x51235e){if(!_[_0x2c40('0x67')](_0x51235e)){for(var _0x145fad=0x0;_0x145fad<_0x51235e['length'];_0x145fad+=0x1){if(ut['getDiff'](_0x51235e[_0x145fad][_0x2c40('0x7f')])<_0x293b06['dialRecallMeTimeout']*0x3c){if(_0x51235e[_0x145fad][_0x2c40('0x80')]&&!_0x51235e[_0x145fad]['Agent'][_0x2c40('0x81')]){_0x5602c7[_0x2c40('0x82')](_0x51235e[_0x145fad]['id'])[_0x2c40('0x83')](ut[_0x2c40('0x84')](_0x2c40('0x85')))[_0x2c40('0x86')](ut[_0x2c40('0x84')](_0x2c40('0x85')));}else{rpcDb['disableContact'](_0x51235e[_0x145fad]['id']);}}else{var _0x74e7cc=new Action(_0x51235e[_0x145fad],_0x293b06);_0x74e7cc[_0x2c40('0x87')]=moment()[_0x2c40('0x52')](_0x2c40('0x88'));_0x293b06[_0x2c40('0x3c')]+=0x1;ut[_0x2c40('0x89')](_0x74e7cc,0x17,'RecallInQueue');if(_0x293b06[_0x2c40('0x8a')]){rpcDb[_0x2c40('0x8b')](ut[_0x2c40('0x8c')](_0x51235e[_0x145fad]));rpcDb[_0x2c40('0x8d')](_0x74e7cc,'[HistoryDialRecallInQueue][historyCatch]');}else{ut[_0x2c40('0x89')](_0x74e7cc,0x16,'RecallFailedTimeout');rpcDb[_0x2c40('0x8d')](_0x74e7cc,_0x2c40('0x8e'));rpcDb[_0x2c40('0x8f')](_0x74e7cc,_0x2c40('0x8e'));}}}}})[_0x2c40('0x86')](ut[_0x2c40('0x84')](_0x2c40('0x90')));};Preview['prototype'][_0x2c40('0x91')]=function(_0x2fc7dd){_0x2fc7dd[_0x2c40('0x58')]=!![];if(ut[_0x2c40('0x92')](_0x2fc7dd[_0x2c40('0x29')])){_0x2fc7dd['message']=_0x2c40('0x93');}else if(!ut[_0x2c40('0x94')](_0x2fc7dd['dialActive'])){_0x2fc7dd[_0x2c40('0x46')]=_0x2c40('0x95');}else if(!this['isTrunkReachable'](_0x2fc7dd[_0x2c40('0x4d')])){if(!this[_0x2c40('0x96')](_0x2fc7dd[_0x2c40('0x97')])){_0x2fc7dd['message']=_0x2c40('0x98');}else{_0x2fc7dd[_0x2c40('0x46')]=_0x2c40('0x99');}}else{_0x2fc7dd[_0x2c40('0x46')]=_0x2c40('0x99');}emitCampaignPreview(_0x2fc7dd);};Preview[_0x2c40('0x5d')][_0x2c40('0x9a')]=function(_0x3cf275,_0x1192e0,_0x28e462){var _0x10ba4b=this;var _0x483aeb=this[_0x2c40('0x15')][_0x1192e0];var _0x35ace3=this[_0x2c40('0x13')][_0x483aeb[_0x2c40('0x6b')]];var _0x53b3cd;if(_0x35ace3){switch(_0x28e462){case'1':_0x35ace3['outboundNoSuchCallsDay']+=0x1;_0x483aeb[_0x2c40('0x9b')]=ut[_0x2c40('0x9c')](_0x483aeb);ut['logCustomer'](_0x483aeb,0x0,'NoSuchNumber');rpcDb[_0x2c40('0x8d')](_0x483aeb,'[callProgressDetectingCustomer][logNoSuch]');if(ut[_0x2c40('0x9c')](_0x483aeb)>=_0x35ace3[_0x2c40('0x9d')]){_0x53b3cd=ut['cloneAction'](_0x483aeb,0xf,_0x2c40('0x9e'));rpcDb[_0x2c40('0x8f')](_0x53b3cd,_0x2c40('0x9f'));}else{rpcDb[_0x2c40('0x8f')](_0x483aeb,'[callProgressDetectingCustomer][logNoSuchGlobal]');}delete this[_0x2c40('0x15')][_0x3cf275[_0x2c40('0xa0')]];break;case _0x2c40('0xa1'):var _0x564190=moment()[_0x2c40('0x52')](_0x2c40('0x88'));_0x483aeb[_0x2c40('0xa2')]=_0x564190;_0x483aeb[_0x2c40('0xa3')]=_0x564190;_0x483aeb[_0x2c40('0x6d')]=!![];_0x35ace3[_0x2c40('0x6c')]+=0x1;logger['info'](_0x2c40('0xa4'),_0x483aeb[_0x2c40('0xa5')],'\x20Queue',_0x35ace3['name'],_0x2c40('0xa6'),_0x35ace3[_0x2c40('0x6c')]);ami[_0x2c40('0xa7')](_0x2c40('0xa8'),ut[_0x2c40('0xa9')](_0x483aeb,'connect'));if(_0x35ace3[_0x2c40('0xaa')]){ami[_0x2c40('0xa7')](_0x2c40('0xab'),ut[_0x2c40('0xac')](_0x483aeb));}break;case'16':ami[_0x2c40('0xa7')](_0x2c40('0xad'),ut[_0x2c40('0xa9')](_0x483aeb,'complete'));emitVoiceQueueChannelRemove(ut[_0x2c40('0xa9')](_0x483aeb,_0x2c40('0xae')));_0x35ace3[_0x2c40('0x35')]+=0x1;_0x35ace3['total']+=0x1;_0x35ace3['answered']+=0x1;ut[_0x2c40('0xaf')](_0x35ace3,_0x2c40('0xb0'));_0x483aeb['countglobal']=ut[_0x2c40('0x9c')](_0x483aeb);ut[_0x2c40('0x89')](_0x483aeb,0x4,_0x2c40('0xb1'));rpcDb[_0x2c40('0x8d')](_0x483aeb,_0x2c40('0xb2'));rpcDb[_0x2c40('0x8f')](_0x483aeb,_0x2c40('0xb3'));rpcDb[_0x2c40('0xb4')](_0x483aeb);_0x35ace3[_0x2c40('0x2b')]+=_0x483aeb[_0x2c40('0xb5')];_0x35ace3[_0x2c40('0x2a')]+=_0x483aeb['talktime'];logger[_0x2c40('0x55')](_0x2c40('0xb6'),_0x483aeb['uniqueid'],_0x2c40('0xb7'),_0x35ace3[_0x2c40('0x4e')],_0x2c40('0xa6'),_0x35ace3[_0x2c40('0x6c')]);delete this[_0x2c40('0x15')][_0x3cf275[_0x2c40('0xa0')]];break;case'BUSY':_0x35ace3['outboundBusyCallsDay']+=0x1;_0x483aeb[_0x2c40('0xb8')]+=0x1;_0x483aeb['countglobal']=ut[_0x2c40('0x9c')](_0x483aeb);ut['logCustomer'](_0x483aeb,0x5,_0x2c40('0xb9'));rpcDb[_0x2c40('0x8d')](_0x483aeb,_0x2c40('0xba'));if(ut['totalGlobal'](_0x483aeb)>=_0x35ace3[_0x2c40('0x9d')]){_0x53b3cd=ut['cloneAction'](_0x483aeb,0xf,_0x2c40('0x9e'));rpcDb[_0x2c40('0x8f')](_0x53b3cd,_0x2c40('0xbb'));}else{if(_0x483aeb[_0x2c40('0xb8')]>=_0x35ace3[_0x2c40('0xbc')]){rpcDb[_0x2c40('0x8f')](_0x483aeb,_0x2c40('0xba'));}else{rpcDb['rescheduleContact'](ut[_0x2c40('0xbd')](_0x483aeb,_0x2c40('0xb8'),_0x35ace3[_0x2c40('0xbe')]),_0x483aeb[_0x2c40('0xbf')],_0x483aeb[_0x2c40('0xc0')]);}}break;case _0x2c40('0xc1'):_0x35ace3[_0x2c40('0x3a')]+=0x1;_0x483aeb[_0x2c40('0xc2')]+=0x1;_0x483aeb[_0x2c40('0x9b')]=ut[_0x2c40('0x9c')](_0x483aeb);ut['logCustomer'](_0x483aeb,0x3,'NoAnswer');rpcDb[_0x2c40('0x8d')](_0x483aeb,'[callProgressDetectingCustomer][logNoAnswer]');if(ut[_0x2c40('0x9c')](_0x483aeb)>=_0x35ace3[_0x2c40('0x9d')]){_0x53b3cd=ut[_0x2c40('0xc3')](_0x483aeb,0xf,_0x2c40('0x9e'));rpcDb[_0x2c40('0x8f')](_0x53b3cd,_0x2c40('0xc4'));}else{if(_0x483aeb['countnoanswerretry']>=_0x35ace3[_0x2c40('0xc5')]){rpcDb[_0x2c40('0x8f')](_0x483aeb,_0x2c40('0xc6'));}else{rpcDb[_0x2c40('0xc7')](ut[_0x2c40('0xbd')](_0x483aeb,_0x2c40('0xc2'),_0x35ace3[_0x2c40('0xc8')]),_0x483aeb['unlockAgent'],_0x483aeb['activeContact']);}}break;case _0x2c40('0xc9'):_0x35ace3[_0x2c40('0xca')]+=0x1;_0x483aeb[_0x2c40('0xcb')]+=0x1;_0x483aeb[_0x2c40('0x9b')]=ut[_0x2c40('0x9c')](_0x483aeb);ut[_0x2c40('0x89')](_0x483aeb,0x8,_0x2c40('0xcc'));rpcDb[_0x2c40('0x8d')](_0x483aeb,_0x2c40('0xcd'));if(ut[_0x2c40('0x9c')](_0x483aeb)>=_0x35ace3[_0x2c40('0x9d')]){_0x53b3cd=ut[_0x2c40('0xc3')](_0x483aeb,0xf,'Global');rpcDb[_0x2c40('0x8f')](_0x53b3cd,_0x2c40('0xce'));}else{if(_0x483aeb['countcongestionretry']>=_0x35ace3[_0x2c40('0xcf')]){rpcDb[_0x2c40('0x8f')](_0x483aeb,'[callProgressDetectingCustomer][logCongestion]');}else{rpcDb[_0x2c40('0xc7')](ut[_0x2c40('0xbd')](_0x483aeb,_0x2c40('0xcb'),_0x35ace3['dialBusyRetryFrequency']),_0x483aeb[_0x2c40('0xbf')],_0x483aeb['activeContact']);}}break;case _0x2c40('0xd0'):_0x35ace3[_0x2c40('0x3d')]+=0x1;_0x483aeb[_0x2c40('0x9b')]=ut[_0x2c40('0x9c')](_0x483aeb);ut[_0x2c40('0x89')](_0x483aeb,0x14,_0x2c40('0xd1'));rpcDb['createCustomerHistory'](_0x483aeb,'[syncHangupRequest][logAgentReject]');if(_0x483aeb['unlockAgent']){rpcDb['unlockContact'](_0x483aeb[_0x2c40('0xd2')]);}if(_0x483aeb[_0x2c40('0xc0')]){rpcDb['disableContact'](_0x483aeb[_0x2c40('0xd2')]);}break;default:if(_0x483aeb['dialAnswer']){ut[_0x2c40('0xaf')](_0x35ace3,_0x2c40('0xd3'));ut['loggerError'](_0x2c40('0xd4')+_0x35ace3[_0x2c40('0x4e')],_0x3cf275);}_0x35ace3[_0x2c40('0x3e')]+=0x1;_0x483aeb['countglobal']=ut[_0x2c40('0x9c')](_0x483aeb);ut[_0x2c40('0x89')](_0x483aeb,0xc,_0x3cf275[_0x2c40('0xd5')]||_0x3cf275['dialstatus']);rpcDb['createCustomerHistory'](_0x483aeb,'[callProgressDetectingCustomer][logUnknown]');if(ut[_0x2c40('0x9c')](_0x483aeb)>=_0x35ace3[_0x2c40('0x9d')]){_0x53b3cd=ut['cloneAction'](_0x483aeb,0xf,_0x2c40('0x9e'));rpcDb[_0x2c40('0x8f')](_0x53b3cd,_0x2c40('0xd6'));}else{rpcDb[_0x2c40('0x8f')](_0x483aeb,_0x2c40('0xd6'));}delete this[_0x2c40('0x15')][_0x3cf275[_0x2c40('0xa0')]];}if(!(_0x483aeb['dialAnswer']&&_0x28e462==='16')){ut['updateOriginated'](_0x35ace3,_0x2c40('0xd7'));logger[_0x2c40('0x55')](_0x2c40('0xd8'),_0x483aeb[_0x2c40('0xa5')],_0x2c40('0xb7'),_0x35ace3[_0x2c40('0x4e')],_0x2c40('0x6a'),_0x35ace3[_0x2c40('0x47')]);}if(_0x28e462!==_0x2c40('0xa1')){delete this[_0x2c40('0x15')][_0x3cf275[_0x2c40('0xa0')]];delete this[_0x2c40('0x15')][_0x3cf275[_0x2c40('0xd9')]];}}};Preview[_0x2c40('0x5d')]['callProgressDetectingAgent']=function(_0x1f4ed0,_0x5d12af,_0x1e29d1){if(_[_0x2c40('0xda')](_0x5d12af)&&_0x2c40('0xdb')!==typeof _0x5d12af){return;}if(_[_0x2c40('0xda')](_0x1e29d1)&&'object'!==typeof _0x1e29d1){return;}switch(_0x1e29d1[_0x2c40('0xdc')]){case'0':ut[_0x2c40('0xdd')](_0x1f4ed0,0x0,_0x2c40('0xde'));rpcDb[_0x2c40('0xdf')](_0x1f4ed0,'[callProgressDetectingAgent][logNoSuch]');break;case'3':ut[_0x2c40('0xdd')](_0x1f4ed0,0x3,_0x2c40('0xe0'));rpcDb[_0x2c40('0xdf')](_0x1f4ed0,_0x2c40('0xe1'));break;case'5':ut[_0x2c40('0xdd')](_0x1f4ed0,0x5,'Busy');rpcDb[_0x2c40('0xdf')](_0x1f4ed0,_0x2c40('0xe2'));break;case'8':ut[_0x2c40('0xdd')](_0x1f4ed0,0x8,_0x2c40('0xcc'));rpcDb[_0x2c40('0xdf')](_0x1f4ed0,'[callProgressDetectingAgent][logCongestion]');break;case'22':ut[_0x2c40('0xdd')](_0x1f4ed0,0x16,_0x2c40('0xe3'));rpcDb[_0x2c40('0xdf')](_0x1f4ed0,_0x2c40('0xe4'));break;default:ut['logAgent'](_0x1f4ed0,0xc,_0x1e29d1[_0x2c40('0xdc')]);rpcDb[_0x2c40('0xdf')](_0x1f4ed0,_0x2c40('0xe5'));}ut[_0x2c40('0x76')](_0x5d12af,_0x2c40('0xe6'));logger[_0x2c40('0x55')](_0x2c40('0xe7'),_0x1f4ed0[_0x2c40('0xa5')],_0x2c40('0xb7'),_0x5d12af[_0x2c40('0x4e')],_0x2c40('0x6a'),_0x5d12af['originated']);delete this[_0x2c40('0x15')][_0x1f4ed0[_0x2c40('0xa5')]];};Preview['prototype'][_0x2c40('0xe8')]=function(_0xd679a3,_0x483106,_0x5a008e,_0x2b0326,_0x1d95fe){var _0x2ee656=this;return new BPromise(function(_0x5690e8,_0x9c9af7){if(_['isNil'](_0x483106)||_[_0x2c40('0x67')](_0x483106[_0x2c40('0xe9')])||_[_0x2c40('0x67')](_0x483106[_0x2c40('0xe9')][_0x2c40('0xea')])||_['isNil'](_0x483106[_0x2c40('0x71')])){_0x9c9af7(ut[_0x2c40('0x46')](_0x2c40('0xeb'),_0x2b0326,_0x1d95fe));return;}var _0x137ce8=uuid['v4']();var _0x183385=_0x2ee656['campaignsPreview'][_0x483106[_0x2c40('0x69')][_0x2c40('0x4e')]];var _0x55c64c=_0x5a008e?_0x2ee656[_0x2c40('0x16')][_0x5a008e]['id']:undefined;_0x2ee656[_0x2c40('0x15')][_0x137ce8]=new Action(_0x483106,_0x183385,_0x137ce8,_0x5a008e,_0x55c64c);var _0x310f38=_0x2ee656[_0x2c40('0x15')][_0x137ce8];_0x310f38['unlockAgent']=_0x2b0326;_0x310f38[_0x2c40('0xc0')]=_0x1d95fe;_0x310f38[_0x2c40('0xec')]=_0x5a008e;if(_[_0x2c40('0xed')](_0xd679a3)){_0x2ee656[_0x2c40('0xee')](_0x310f38,_0x183385,_0x483106,_0x5a008e)['then'](function(_0x4480ab){logger[_0x2c40('0x55')](_0x2c40('0xef'),'Queue:\x20'+_0x310f38[_0x2c40('0x6b')]+_0x2c40('0xf0')+_0x310f38[_0x2c40('0xd2')],JSON[_0x2c40('0x51')](_0x4480ab));ami[_0x2c40('0xa7')](_0x2c40('0xf1'),ut[_0x2c40('0xa9')](_0x310f38,_0x2c40('0xf2')));_0x5690e8(ut[_0x2c40('0x46')](_0x2c40('0xf3')));})['catch'](function(_0x1f49d5){ut[_0x2c40('0x59')](_0x2c40('0xf4'),_0x1f49d5);_0x9c9af7(ut[_0x2c40('0x46')](_0x2c40('0xf5'),_0x2b0326,_0x1d95fe));});}else{_0x183385[_0x2c40('0xf6')]+=0x1;ut[_0x2c40('0xf7')](_0x310f38);rpcDb[_0x2c40('0xf8')](_0x310f38,_0x2c40('0xf9'));delete _0x2ee656[_0x2c40('0x15')][_0x137ce8];_0x9c9af7(ut[_0x2c40('0x46')](_0x2c40('0xfa'),_0x2b0326,_0x1d95fe));}});};Preview[_0x2c40('0x5d')]['isTrunkReachable']=function(_0xe5a16c){return!_['isNil'](_0xe5a16c)&&!_[_0x2c40('0x67')](_0xe5a16c[_0x2c40('0x4e')])&&!_[_0x2c40('0x67')](_0xe5a16c['active'])&&_0xe5a16c['active']&&!_[_0x2c40('0x67')](this[_0x2c40('0x14')][util[_0x2c40('0x52')](_0x2c40('0xfb'),_0xe5a16c[_0x2c40('0x4e')])])&&!_[_0x2c40('0x67')](this[_0x2c40('0x14')][util[_0x2c40('0x52')]('SIP/%s',_0xe5a16c[_0x2c40('0x4e')])][_0x2c40('0x74')])&&(this[_0x2c40('0x14')][util[_0x2c40('0x52')](_0x2c40('0xfb'),_0xe5a16c[_0x2c40('0x4e')])][_0x2c40('0x74')]===_0x2c40('0xfc')||this[_0x2c40('0x14')][util[_0x2c40('0x52')](_0x2c40('0xfb'),_0xe5a16c[_0x2c40('0x4e')])]['status']===_0x2c40('0xfd'));};Preview[_0x2c40('0x5d')][_0x2c40('0x82')]=function(_0x2b2403,_0x54aa8d){var _0x313b9a=this;return new BPromise(function(_0x33cda4,_0x5be1db){_0x313b9a[_0x2c40('0xfe')](_0x2b2403,_0x54aa8d)['then'](function(_0xef0562){_0x33cda4(_[_0x2c40('0x6e')](_0xef0562,[_0x2c40('0x46')]));})['catch'](function(_0x286c4c){if(_0x286c4c[_0x2c40('0xff')]){rpcDb[_0x2c40('0x100')](_0x2b2403);}if(_0x286c4c[_0x2c40('0x4f')]){rpcDb[_0x2c40('0x101')](_0x2b2403);}_0x5be1db(_[_0x2c40('0x6e')](_0x286c4c,['message']));});});};Preview[_0x2c40('0x5d')][_0x2c40('0xfe')]=function(_0x40403c,_0x18ce8b){var _0x357f98=this;return new BPromise(function(_0x465128,_0x57bb6f){var _0x445b12,_0x4af53b;rpcDb[_0x2c40('0x102')](_0x40403c)[_0x2c40('0x83')](function(_0x5ed007){if(!_[_0x2c40('0x67')](_0x5ed007[0x0])){_0x4af53b=_0x5ed007[0x0]['recallme']?![]:!![];_0x445b12=_0x5ed007[0x0][_0x2c40('0x103')]?!![]:![];_0x445b12=_0x18ce8b?!![]:_0x445b12;}var _0x38cfe0=_0x357f98[_0x2c40('0x104')](_0x5ed007);if(_0x38cfe0['isValid']){rpcDb[_0x2c40('0x105')](_[_0x2c40('0x6e')](_0x5ed007[0x0],[_0x2c40('0x71'),'Contact.phone']))[_0x2c40('0x83')](function(_0x4860ce){_0x357f98['checkInBlack'](_0x4860ce,_0x5ed007[0x0],_0x18ce8b,_0x4af53b,_0x445b12)[_0x2c40('0x83')](function(_0x955103){_0x465128(_0x955103);})[_0x2c40('0x86')](function(_0xc749fc){_0x57bb6f(_0xc749fc);});})[_0x2c40('0x86')](function(_0x466e8c){ut[_0x2c40('0x59')]('[Preview][checkIsBlackList]',_0x466e8c);_0x57bb6f(ut[_0x2c40('0x46')](_0x2c40('0x106'),_0x4af53b,_0x445b12));});}else{_0x57bb6f(ut[_0x2c40('0x46')](_0x38cfe0[_0x2c40('0x46')],_0x4af53b,_0x445b12));}})[_0x2c40('0x86')](function(_0x1d08db){ut[_0x2c40('0x59')](_0x2c40('0x107'),_0x1d08db);_0x57bb6f(ut['message'](_0x2c40('0x106'),![],!![]));});});};Preview['prototype'][_0x2c40('0x104')]=function(_0x44e145){if(_[_0x2c40('0x67')](_0x44e145)||_['isEmpty'](_0x44e145)||!_[_0x2c40('0x67')](_0x44e145[0x0]['Agent'])&&_[_0x2c40('0x67')](_0x44e145[0x0][_0x2c40('0x80')][_0x2c40('0x4e')])){ut[_0x2c40('0x59')](_0x2c40('0x108'),_0x44e145);return{'isValid':![],'message':'Empty\x20Contact'};}var _0x2f572c=this['campaignsPreview'][_0x44e145[0x0][_0x2c40('0x69')][_0x2c40('0x4e')]];_0x2f572c[_0x2c40('0x46')]='ACTIVE';if(_[_0x2c40('0x67')](_0x2f572c)){ut['logger']('[Preview][validateContact][Empty\x20Campaign]',_0x2f572c);return{'isValid':![],'message':_0x2c40('0x109')};}if(!this[_0x2c40('0x96')](_0x2f572c[_0x2c40('0x4d')])){ut[_0x2c40('0x59')](_0x2c40('0x10a'),'campaign\x20Name:\x20'+_0x2f572c['name']+_0x2c40('0x10b'));if(!this['isTrunkReachable'](_0x2f572c['TrunkBackup'])){ut['logger']('[Preview][validateContact][Trunk\x20not\x20work]',_0x2f572c[_0x2c40('0x4e')]+'\x20Trunk\x20Backup\x20is\x20not\x20active');return{'isValid':![],'message':_0x2c40('0x10c')};}}if(!ut['isActive'](_0x2f572c[_0x2c40('0x31')])){ut[_0x2c40('0x59')](_0x2c40('0x10d'),_0x2f572c[_0x2c40('0x4e')]+_0x2c40('0x10e'));return{'isValid':![],'message':_0x2c40('0x10f')+_0x2f572c[_0x2c40('0x4e')]+'\x20Not\x20Active'};}return{'isValid':!![],'message':_0x2c40('0x110')};};Preview[_0x2c40('0x5d')][_0x2c40('0xee')]=function(_0x58dc49,_0x54b9b2,_0x47d6cd,_0x1f51a8){var _0x7f2d9b=this;return new BPromise(function(_0x30ac5a,_0x1f42a7){var _0xc16374=_0x58dc49['uniqueid'];var _0x399bbb=_0x7f2d9b[_0x2c40('0x96')](_0x54b9b2[_0x2c40('0x4d')])?util[_0x2c40('0x52')]('SIP/%s/%s%s',_0x54b9b2[_0x2c40('0x4d')][_0x2c40('0x4e')],_['isNil'](_0x54b9b2['dialPrefix'])?'':_0x54b9b2[_0x2c40('0x34')][_0x2c40('0x111')]()||'',_0x54b9b2[_0x2c40('0x112')]>0x0?_0x47d6cd[_0x2c40('0xe9')]['phone']['substring'](_0x54b9b2[_0x2c40('0x112')]):_0x47d6cd[_0x2c40('0xe9')][_0x2c40('0xea')]):util[_0x2c40('0x52')](_0x2c40('0x113'),_['isNil'](_0x54b9b2[_0x2c40('0x97')])?_0x54b9b2[_0x2c40('0x4d')][_0x2c40('0x4e')]:_0x54b9b2[_0x2c40('0x97')][_0x2c40('0x4e')],_[_0x2c40('0x67')](_0x54b9b2[_0x2c40('0x34')])?'':_0x54b9b2['dialPrefix'][_0x2c40('0x111')]()||'',_0x54b9b2[_0x2c40('0x112')]>0x0?_0x47d6cd[_0x2c40('0xe9')][_0x2c40('0xea')][_0x2c40('0x114')](_0x54b9b2[_0x2c40('0x112')]):_0x47d6cd[_0x2c40('0xe9')][_0x2c40('0xea')]);var _0x364207=_0x7f2d9b['isTrunkReachable'](_0x54b9b2['Trunk'])?ut[_0x2c40('0x115')](_0x54b9b2[_0x2c40('0x4d')][_0x2c40('0x116')],_0x54b9b2[_0x2c40('0x117')],_0x54b9b2[_0x2c40('0x118')]>0x0?ut[_0x2c40('0x119')](_0x54b9b2['dialOriginateCallerIdNumber'],_0x54b9b2[_0x2c40('0x118')]):_0x54b9b2[_0x2c40('0x33')]):ut[_0x2c40('0x115')](_[_0x2c40('0x67')](_0x54b9b2[_0x2c40('0x97')])?_0x54b9b2[_0x2c40('0x4d')][_0x2c40('0x116')]:_0x54b9b2[_0x2c40('0x97')][_0x2c40('0x116')],_0x54b9b2[_0x2c40('0x117')],_0x54b9b2[_0x2c40('0x118')]>0x0?ut['getCallerIdRandom'](_0x54b9b2[_0x2c40('0x33')],_0x54b9b2[_0x2c40('0x118')]):_0x54b9b2['dialOriginateCallerIdNumber']);if(_0x364207){_0x58dc49['originatecalleridname']=ut[_0x2c40('0x11a')](_0x364207);_0x58dc49[_0x2c40('0x11b')]=ut[_0x2c40('0x11c')](_0x364207);}var _0xa18d4d=ut[_0x2c40('0x11d')](_0x54b9b2,_0x47d6cd,_0x399bbb,_0x364207,_0xc16374,_0x58dc49);_[_0x2c40('0x11e')](_0x58dc49,ut[_0x2c40('0x11f')](_0xa18d4d));_0x58dc49[_0x2c40('0x87')]=moment()[_0x2c40('0x52')](_0x2c40('0x88'));ami[_0x2c40('0x73')](ut[_0x2c40('0x120')](_0x58dc49,_0x54b9b2,_0xa18d4d,_0x58dc49['activeContact'],_0x1f51a8))['then'](function(_0x28ecd9){_0x54b9b2[_0x2c40('0x47')]+=0x1;logger[_0x2c40('0x55')](_0x2c40('0x121'),_0xc16374,_0x2c40('0xb7'),_0x54b9b2[_0x2c40('0x4e')],_0x2c40('0x6a'),_0x54b9b2[_0x2c40('0x47')]);_0x30ac5a(_0x28ecd9);})['catch'](function(_0x3f95a8){ut['logAgent'](_0x58dc49,0xe,_0x2c40('0x122'));rpcDb['createAgentHistory'](_0x58dc49,_0x2c40('0x123'));_0x1f42a7(_0x3f95a8);});});};Preview[_0x2c40('0x5d')][_0x2c40('0x20')]=function(_0x2da133){if(this[_0x2c40('0x15')][_0x2da133[_0x2c40('0xa0')]]){this[_0x2c40('0x15')][_0x2da133['linkedid']][_0x2c40('0x75')]=_0x2da133[_0x2c40('0x75')];}};Preview[_0x2c40('0x5d')][_0x2c40('0x18')]=function(_0x4c0fde){var _0x1eee12=this;var _0x116f8e=this[_0x2c40('0x15')][_0x4c0fde[_0x2c40('0x124')]];if(_0x116f8e){if(_0x116f8e['lookAgent']&&this[_0x2c40('0x16')][_0x116f8e['lookAgent']]){ut[_0x2c40('0x125')](_0x116f8e,this[_0x2c40('0x16')][_0x116f8e[_0x2c40('0xec')]][_0x2c40('0x4e')],this[_0x2c40('0x16')][_0x116f8e[_0x2c40('0xec')]]['id']);}var _0x5dd32f=_[_0x2c40('0x126')](_0x116f8e);_0x5dd32f[_0x2c40('0xa2')]=moment()['format'](_0x2c40('0x88'));var _0x42e4f0=_0x1eee12['campaignsPreview'][_0x116f8e['queue']];if(ut[_0x2c40('0x127')](_0x4c0fde[_0x2c40('0x128')])){if(_0x116f8e['unlockAgent']){rpcDb['unlockContact'](_0x116f8e[_0x2c40('0xd2')]);}if(_0x116f8e[_0x2c40('0xc0')]){rpcDb['disableContact'](_0x116f8e[_0x2c40('0xd2')]);}ami[_0x2c40('0xa7')](_0x2c40('0x129'),ut[_0x2c40('0xa9')](_0x116f8e,_0x2c40('0x12a')));this[_0x2c40('0x12b')](_0x5dd32f,_0x42e4f0,_0x4c0fde);}else{_0x116f8e[_0x2c40('0x87')]=moment()[_0x2c40('0x52')](_0x2c40('0x88'));ut[_0x2c40('0xdd')](_0x5dd32f,0x4,_0x2c40('0xb1'));rpcDb[_0x2c40('0xdf')](_0x5dd32f,'[callProgressDetectingAgent][logAnswer]');}}};Preview[_0x2c40('0x5d')][_0x2c40('0x1b')]=function(_0x1b054f){var _0x4c3254=this;var _0x1ec0db=this['actions'][_0x1b054f['linkedid']];var _0xbaa646;if(_0x1ec0db){_0xbaa646=this['campaignsPreview'][_0x1ec0db[_0x2c40('0x6b')]];logger['info']('[syncHangup][talking]',_0x1b054f[_0x2c40('0xa0')],_0x2c40('0xb7'),_0xbaa646[_0x2c40('0x4e')],_0x2c40('0xa6'),_0xbaa646['pTalking']);}if(this[_0x2c40('0x15')][_0x1b054f[_0x2c40('0xa0')]]&&_0x1b054f[_0x2c40('0xa0')]!==_0x1b054f['uniqueid']){if(_0x1b054f[_0x2c40('0x12c')]==='16'&&this[_0x2c40('0x15')][_0x1b054f[_0x2c40('0xa0')]][_0x2c40('0x6d')]){this[_0x2c40('0x9a')](_0x1b054f,_0x1b054f[_0x2c40('0xa0')],_0x1b054f['cause']);}else if(this[_0x2c40('0x15')][_0x1b054f['linkedid']][_0x2c40('0x6d')]){logger[_0x2c40('0x55')](_0x2c40('0x12d'),_0x1b054f[_0x2c40('0xa0')],_0x1b054f[_0x2c40('0x12c')],_0x2c40('0xb7'),_0xbaa646[_0x2c40('0x4e')],_0x2c40('0xa6'),_0xbaa646['pTalking']);this['callProgressDetectingCustomer'](_0x1b054f,_0x1b054f[_0x2c40('0xa0')],_0x1b054f[_0x2c40('0x12c')]);}}else if(_0x1ec0db&&_[_0x2c40('0x67')](_0x1ec0db[_0x2c40('0x12e')])&&_0xbaa646[_0x2c40('0x12f')]&&_0x1b054f[_0x2c40('0xa0')]===_0x1b054f[_0x2c40('0xa5')]&&_['isNil'](_0x1b054f['reason'])&&_0x1b054f[_0x2c40('0x12c')]==='16'&&_0x1b054f[_0x2c40('0x130')]==='6'&&_[_0x2c40('0xda')](_0x1ec0db[_0x2c40('0x131')])){if(_0x1ec0db[_0x2c40('0xbf')]){rpcDb['unlockContact'](_0x1ec0db[_0x2c40('0xd2')]);}if(_0x1ec0db[_0x2c40('0xc0')]){rpcDb['disableContact'](_0x1ec0db[_0x2c40('0xd2')]);}_0x1b054f[_0x2c40('0xdc')]='22';this['callProgressDetectingAgent'](_0x1ec0db,_0xbaa646,_0x1b054f);}else if(_0x1ec0db&&_0x1ec0db[_0x2c40('0x131')]){if(_0x1b054f['cause']==='16'&&this[_0x2c40('0x15')][_0x1b054f[_0x2c40('0xa0')]][_0x2c40('0x6d')]){logger[_0x2c40('0x55')](_0x2c40('0x132'),_0x1b054f[_0x2c40('0xa0')],_0x1b054f[_0x2c40('0x12c')],_0x2c40('0xb7'),_0xbaa646['name'],'pTalking:\x20',_0xbaa646['pTalking']);this[_0x2c40('0x9a')](_0x1b054f,_0x1b054f[_0x2c40('0xa0')],_0x1b054f[_0x2c40('0x12c')]);}else if(this[_0x2c40('0x15')][_0x1b054f[_0x2c40('0xa0')]][_0x2c40('0x6d')]){logger['info'](_0x2c40('0x12d'),_0x1b054f['linkedid'],_0x1b054f[_0x2c40('0x12c')],_0x2c40('0xb7'),_0xbaa646[_0x2c40('0x4e')],'pTalking:\x20',_0xbaa646[_0x2c40('0x6c')]);this[_0x2c40('0x9a')](_0x1b054f,_0x1b054f[_0x2c40('0xa0')],_0x1b054f[_0x2c40('0x12c')]);}}};Preview[_0x2c40('0x5d')][_0x2c40('0x133')]=function(_0x5aed4d){if(this[_0x2c40('0x15')][_0x5aed4d[_0x2c40('0xd9')]]&&_0x5aed4d[_0x2c40('0xd9')]!==_0x5aed4d['destuniqueid']){this['callProgressDetectingCustomer'](_0x5aed4d,_0x5aed4d[_0x2c40('0xd9')],_0x5aed4d[_0x2c40('0x134')]);}};Preview['prototype'][_0x2c40('0x1d')]=function(_0x394634){if(this[_0x2c40('0x15')][_0x394634['linkedid']]&&_0x394634[_0x2c40('0xa0')]!==_0x394634['uniqueid']&&!this[_0x2c40('0x15')][_0x394634[_0x2c40('0xa0')]][_0x2c40('0x6d')]){if(_0x394634[_0x2c40('0x12c')]==='1'){this[_0x2c40('0x9a')](_0x394634,_0x394634[_0x2c40('0xa0')],_0x394634[_0x2c40('0x12c')]);}}};Preview[_0x2c40('0x5d')]['addVariable']=function(_0x593bb6,_0x41cfa8,_0x2fb886){if(this[_0x2c40('0x15')][_0x593bb6]){if(_['isNil'](this[_0x2c40('0x15')][_0x593bb6][_0x2c40('0x135')])){this['actions'][_0x593bb6][_0x2c40('0x135')]={};}this[_0x2c40('0x15')][_0x593bb6][_0x2c40('0x135')][_0x41cfa8]=_0x2fb886;}};Preview['prototype'][_0x2c40('0x22')]=function(_0x1b5aff){try{if(!_[_0x2c40('0x67')](_0x1b5aff)){if(ut['filterKey'](_['keys'](_0x1b5aff[_0x2c40('0x136')])[0x0])){this[_0x2c40('0x137')](_0x1b5aff[_0x2c40('0xa5')],_[_0x2c40('0x138')](_0x1b5aff[_0x2c40('0x136')])[0x0],_0x1b5aff[_0x2c40('0x139')]);}}}catch(_0x5b8401){logger['error'](_0x2c40('0x13a'),util[_0x2c40('0x13b')](_0x5b8401,{'showHidden':![],'depth':null}));}};Preview[_0x2c40('0x5d')][_0x2c40('0x13c')]=function(_0x3a2a9e){if(_0x3a2a9e){if(this[_0x2c40('0x15')][_0x3a2a9e['transfertargetlinkedid']]){this[_0x2c40('0x15')][_0x3a2a9e['transfertargetlinkedid']][_0x2c40('0x131')]=!![];}}};Preview['prototype'][_0x2c40('0x24')]=function(_0x5a5983){if(_0x5a5983){if(this[_0x2c40('0x15')][_0x5a5983[_0x2c40('0x13d')]]){this[_0x2c40('0x15')][_0x5a5983['transfererlinkedid']][_0x2c40('0x131')]=!![];}}};module[_0x2c40('0x13e')]=Preview;