Built motion from commit (unavailable).|2.5.4
[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 _0x604b=['logger2','[RecallMe]','disableContact','YYYY-MM-DD\x20HH:mm:ss','logCustomer','RecallInQueue','dialRecallInQueue','rescheduleContactInQueue','[HistoryDialRecallInQueue][historyCatch]','RecallFailedTimeout','createCustomerHistory','[HistoryRecallClose]','createCustomerFinal','[getContactRecallMe]','IsNotLoggedIn','isActive','isTrunkReachable','TrunkBackup','ACTIVE','callProgressDetectingCustomer','countglobal','totalGlobal','buildObj','nosuchnumber','[callProgressDetectingCustomer][logNoSuch]','dialGlobalMaxRetry','cloneAction','Global','[callProgressDetectingCustomer][logNoSuchGlobal]','countnosuchnumberretry','dialNoSuchNumberMaxRetry','dialNoSuchNumberRetryFrequency','unlockAgent','activeContact','ANSWER','responsetime','answertime','\x20Queue','custom:agentconnect','connect','acw','custom:agentConnectPreview','buildAcw','custom:agentcomplete','complete','[16]','Answer','[callProgressDetectingCustomer][logAnswerGlobal]','crateCustomerReportQueue','talktime','[syncHangup][talking][decrement]','uniqueid','linkedid','countbusyretry','Busy','custom:agentbusy','busy','dialBusyMaxRetry','rescheduleContact','scheduledAt','dialBusyRetryFrequency','NOANSWER','NoAnswer','custom:agentnoanswer','noanswer','[callProgressDetectingCustomer][logNoAnswer]','[callProgressDetectingCustomer][logNoAnswerGlobal]','countnoanswerretry','dialNoAnswerMaxRetry','CONGESTION','Congestion','custom:agentcongestion','congestion','[callProgressDetectingCustomer][logCongestion]','countcongestionretry','dialCongestionMaxRetry','CANCEL','countagentrejectretry','AgentReject','custom:agentreject','[callProgressDetectingCustomer][logAgentReject]','dialAgentRejectMaxRetry','dialAgentRejectRetryFrequency','Abandoned','[callProgressDetectingCustomer][logAbandoned]','countabandonedetry','dialAbandonedMaxRety','dialAbandonedRetryFrequency','cause-txt','dialstatus','[callProgressDetectingCustomer][logUnknown]','[callProgressDetectingCustomer][logUnknownGlobal]','[callProgressDetectingCustomer]','[originated][decrement][callProgressDetectingCustomer]','destlinkedid','callProgressDetectingAgent','isUndefined','object','logAgent','NoSuchNumber','[callProgressDetectingAgent][logNoSuch]','createAgentHistory','[callProgressDetectingAgent][logNoAnswer]','[callProgressDetectingAgent][logBusy]','[callProgressDetectingAgent][logCongestion]','reason','[callProgressDetectingAgent]','[originated][decrement][callProgressDetectingAgent]','checkInBlack','Contact','Contact\x20is\x20undefined','lookAgent','execCall','[Preview][execCall][success]','\x20IdHopper:\x20','idContact','called','Calling','[Preview][execCall][failure]','[Blacklist][error]','Contact\x20in\x20black\x20List','SIP/%s','unmonitored','execRun','unlockContact','pick','getContactPreview','recallme','validateContact','checkIsBlackList','Call\x20unsuccessful','[Preview][getContactPreview]','isEmpty','Agent','[Preview][validateContact][Empty\x20Contact]','Empty\x20Contact','[Preview][validateContact][Empty\x20Campaign]','Empty\x20Campaign','[Preview][validateContact][Trunk\x20not\x20work]','campaign\x20Name:\x20','\x20Trunk\x20is\x20not\x20active','Trunk\x20not\x20work','\x20Not\x20Active','Is\x20Valid','dialPrefix','trim','dialCutDigit','phone','getCallerId','callerid','dialRandomLastDigitCallerIdNumber','getCallerIdRandom','originatecalleridname','extractCalleridName','extractCalleridNumber','addVariables','merge','toLowerVariables','starttime','variablesAction','OriginateError','[originateFailure][logOriginateFailure]','channel','actionid','agents','isFailure','response','custom:agentringnoanswer','rejected','[callProgressDetectingAgent][logAnswer]','[syncHangup][talking]','cause','dialQueueProject','channelstate','transfer','[syncHangup][talking][transfer]','destuniqueid','variables','syncVarSet','keys','variable','value','[syncVarSet][Preview]','inspect','transfertargetlinkedid','transfererlinkedid','exports','util','lodash','bluebird','uuid','moment','md5','ioredis','../../../config/environment','../../../config/logger','preview','actionPreview','../ami','./rpcDb','./action','./util/util','defaults','redis','socket.io-emitter','prototype','tail','sequence','campaignsPreview','voiceQueues','trunks','actions','originateresponse','syncOriginateResponse','bind','syncHangup','hanguprequest','syncHangupRequest','dialend','syncDialEnd','newexten','syncNewExten','varset','attendedtransfer','syncAttendedTransfer','blindtransfer','syncBlindTransfer','loopCampaigns','emit','type','outbound','available','loggedIn','pTalking','sumBillable','sumDuration','sumHoldTime','talking','total','unmanaged','loggedInDb','dialActive','dialMethod','dialOriginateCallerIdName','dialOriginateCallerIdNumber','outboundAnswerAgiCallsDay','outboundAnswerCallsDay','outboundBlacklistCallsDay','outboundBusyCallsDay','outboundCongestionCallsDay','outboundDropCallsDayACS','outboundDropCallsDayCallersExit','outboundDropCallsDayTimeout','outboundNoAnswerCallsDay','outboundNoSuchCallsDay','outboundOriginateFailureCallsDay','outboundReCallsDay','outboundRejectCallsDay','outboundUnknownCallsDay','outboundAbandonedCallsDay','predictiveIntervalAnsweredCalls','predictiveIntervalAvgHoldtime','predictiveIntervalErlangCallsDroppedCalls','predictiveIntervalHitRate','predictiveIntervalPauses','predictiveIntervalAvailable','predictiveIntervalTotalCalls','message','originated','erlangCalls','erlangBusyFactor','startPredictive','startProgressive','Trunk','name','active','Interval','stringify','format','voice_queue:save','[DEBUG]\x20Emit\x20voice_queue_channel:remove\x20event','voice_queue_channel:remove','sendMessageOneNotActive','paused','NOT_ACTIVE','logger','[CampaignPreview]\x20Campaign\x20Queue:\x20','\x20is\x20not\x20active','IS_DISACTIVED','\x20is\x20disactive','syncCampaigns','clockClearZombieChannels','clearZombieChannels','hasOwnProperty','setMessage','recallMe','isNil','info','[clearZombieChannels][talking]','Queue','originated:\x20','queue','pTalking:\x20','contactId','UserId','VoiceQueueId','ListId','Action','status','catch','No\x20such\x20channel','updateOriginated','[clearZombieChannel]','dialAnswer','loggerError','[Dialer][checkChannel][pTalking][Preview]','[Dialer][checkChannel][Preview]','size','getContactRecallMe','agentReadyId','then','length','scheduledat','dialRecallMeTimeout','voicePause','run'];(function(_0x4ad4ab,_0xf3365e){var _0x9c0c73=function(_0x2b2634){while(--_0x2b2634){_0x4ad4ab['push'](_0x4ad4ab['shift']());}};_0x9c0c73(++_0xf3365e);}(_0x604b,0xbb));var _0xb604=function(_0x399db2,_0x5bc04b){_0x399db2=_0x399db2-0x0;var _0x1a38c6=_0x604b[_0x399db2];return _0x1a38c6;};'use strict';var util=require(_0xb604('0x0'));var _=require(_0xb604('0x1'));var BPromise=require(_0xb604('0x2'));var uuid=require(_0xb604('0x3'));var moment=require(_0xb604('0x4'));var md5=require(_0xb604('0x5'));var Redis=require(_0xb604('0x6'));var config=require(_0xb604('0x7'));var logger=require(_0xb604('0x8'))(_0xb604('0x9'));var loggerAction=require(_0xb604('0x8'))(_0xb604('0xa'));var ami=require(_0xb604('0xb'));var rpcDb=require(_0xb604('0xc'));var Action=require(_0xb604('0xd'));var ut=require(_0xb604('0xe'));config['redis']=_[_0xb604('0xf')](config[_0xb604('0x10')],{'host':'localhost','port':0x18eb});var io=require(_0xb604('0x11'))(new Redis(config[_0xb604('0x10')]));var Sequence=function(){};Sequence[_0xb604('0x12')]['enqueue']=function(_0x13013c){this[_0xb604('0x13')]=this[_0xb604('0x13')]?this[_0xb604('0x13')]['finally'](_0x13013c):_0x13013c();};function Preview(_0x5ab82e){this[_0xb604('0x14')]=new Sequence();this[_0xb604('0x15')]=_0x5ab82e[_0xb604('0x16')];this[_0xb604('0x17')]=_0x5ab82e[_0xb604('0x17')];this[_0xb604('0x18')]={};this['agents']=_0x5ab82e['agents'];this['clockClearZombieChannels']=0x0;ami['on'](_0xb604('0x19'),this[_0xb604('0x1a')][_0xb604('0x1b')](this));ami['on']('hangup',this[_0xb604('0x1c')][_0xb604('0x1b')](this));ami['on'](_0xb604('0x1d'),this[_0xb604('0x1e')]['bind'](this));ami['on'](_0xb604('0x1f'),this[_0xb604('0x20')][_0xb604('0x1b')](this));ami['on'](_0xb604('0x21'),this[_0xb604('0x22')][_0xb604('0x1b')](this));ami['on'](_0xb604('0x23'),this['syncVarSet'][_0xb604('0x1b')](this));ami['on'](_0xb604('0x24'),this[_0xb604('0x25')][_0xb604('0x1b')](this));ami['on'](_0xb604('0x26'),this[_0xb604('0x27')][_0xb604('0x1b')](this));this[_0xb604('0x28')](this[_0xb604('0x15')]);}function emit(_0x35ce5d,_0x13ea45,_0x398ffc){io['to'](_0x35ce5d)[_0xb604('0x29')](_0x13ea45,_0x398ffc);}function emitCampaignPreview(_0x11a8f7){if(_0x11a8f7[_0xb604('0x2a')]===_0xb604('0x2b')){var _0x2d8086={'id':_0x11a8f7['id'],'name':_0x11a8f7['name'],'strategy':_0x11a8f7['strategy'],'answered':_0x11a8f7['answered'],'available':_0x11a8f7[_0xb604('0x2c')],'loggedIn':_0x11a8f7[_0xb604('0x2d')],'pTalking':_0x11a8f7[_0xb604('0x2e')],'sumBillable':_0x11a8f7[_0xb604('0x2f')],'sumDuration':_0x11a8f7[_0xb604('0x30')],'sumHoldTime':_0x11a8f7[_0xb604('0x31')]||0x0,'talking':_0x11a8f7[_0xb604('0x32')],'total':_0x11a8f7[_0xb604('0x33')],'type':_0x11a8f7[_0xb604('0x2a')],'unmanaged':_0x11a8f7[_0xb604('0x34')],'abandoned':_0x11a8f7['abandoned'],'waiting':_0x11a8f7['waiting'],'loggedInDb':_0x11a8f7[_0xb604('0x35')],'dialActive':_0x11a8f7[_0xb604('0x36')],'dialMethod':_0x11a8f7[_0xb604('0x37')],'dialOriginateCallerIdName':_0x11a8f7[_0xb604('0x38')],'dialOriginateCallerIdNumber':_0x11a8f7[_0xb604('0x39')],'dialOriginateTimeout':_0x11a8f7['dialOriginateTimeout'],'dialPrefix':_0x11a8f7['dialPrefix'],'outboundAnswerAgiCallsDay':_0x11a8f7[_0xb604('0x3a')],'outboundAnswerCallsDay':_0x11a8f7[_0xb604('0x3b')],'outboundBlacklistCallsDay':_0x11a8f7[_0xb604('0x3c')],'outboundBusyCallsDay':_0x11a8f7[_0xb604('0x3d')],'outboundCongestionCallsDay':_0x11a8f7[_0xb604('0x3e')],'outboundDropCallsDayACS':_0x11a8f7[_0xb604('0x3f')],'outboundDropCallsDayCallersExit':_0x11a8f7[_0xb604('0x40')],'outboundDropCallsDayTimeout':_0x11a8f7[_0xb604('0x41')],'outboundNoAnswerCallsDay':_0x11a8f7[_0xb604('0x42')],'outboundNoSuchCallsDay':_0x11a8f7[_0xb604('0x43')],'outboundOriginateFailureCallsDay':_0x11a8f7[_0xb604('0x44')],'outboundReCallsDay':_0x11a8f7[_0xb604('0x45')],'outboundRejectCallsDay':_0x11a8f7[_0xb604('0x46')],'outboundUnknownCallsDay':_0x11a8f7[_0xb604('0x47')],'outboundAbandonedCallsDay':_0x11a8f7[_0xb604('0x48')],'predictiveIntervalAnsweredCalls':_0x11a8f7[_0xb604('0x49')],'predictiveIntervalAvgHoldtime':_0x11a8f7[_0xb604('0x4a')],'predictiveIntervalAvgTalktime':_0x11a8f7['predictiveIntervalAvgTalktime'],'predictiveIntervalDroppedCallsCallersExit':_0x11a8f7['predictiveIntervalDroppedCallsCallersExit'],'predictiveIntervalDroppedCallsTimeout':_0x11a8f7['predictiveIntervalDroppedCallsTimeout'],'predictiveIntervalErlangCalls':_0x11a8f7['predictiveIntervalErlangCalls'],'predictiveIntervalErlangCallsDroppedCalls':_0x11a8f7[_0xb604('0x4b')],'predictiveIntervalHitRate':_0x11a8f7[_0xb604('0x4c')],'predictiveIntervalMultiplicativeFactor':_0x11a8f7['predictiveIntervalMultiplicativeFactor'],'predictiveIntervalPauses':_0x11a8f7[_0xb604('0x4d')],'predictiveIntervalAvailable':_0x11a8f7[_0xb604('0x4e')],'predictiveIntervalTotalCalls':_0x11a8f7[_0xb604('0x4f')],'message':_0x11a8f7[_0xb604('0x50')],'originated':_0x11a8f7[_0xb604('0x51')],'erlangCalls':_0x11a8f7[_0xb604('0x52')],'erlangCallToSecond':_0x11a8f7['erlangCallToSecond'],'erlangAbandonmentRate':_0x11a8f7['erlangAbandonmentRate'],'erlangBusyFactor':_0x11a8f7[_0xb604('0x53')],'startPredictive':_0x11a8f7[_0xb604('0x54')],'startProgressive':_0x11a8f7[_0xb604('0x55')]};if(_0x11a8f7[_0xb604('0x56')]){_0x2d8086['Trunk']={'id':_0x11a8f7[_0xb604('0x56')]['id'],'name':_0x11a8f7[_0xb604('0x56')][_0xb604('0x57')],'active':_0x11a8f7[_0xb604('0x56')][_0xb604('0x58')],'callerid':_0x11a8f7['Trunk']['callerid']};}if(_0x11a8f7[_0xb604('0x59')]){_0x2d8086[_0xb604('0x59')]={'id':_0x11a8f7[_0xb604('0x59')]['id'],'name':_0x11a8f7[_0xb604('0x59')][_0xb604('0x57')]};}var _0x75c872=md5(JSON[_0xb604('0x5a')](_0x2d8086));if(_0x11a8f7[_0xb604('0x5')]!==_0x75c872){_0x11a8f7[_0xb604('0x5')]=_0x75c872;emit(util[_0xb604('0x5b')]('voice:queue:%s',_0x2d8086[_0xb604('0x57')]),_0xb604('0x5c'),_0x2d8086);}}}function emitVoiceQueueChannelRemove(_0x1969ae){logger['info'](_0xb604('0x5d'),JSON[_0xb604('0x5a')](_0x1969ae));emit(util[_0xb604('0x5b')]('voice:queue:%s',_0x1969ae[_0xb604('0x57')]),_0xb604('0x5e'),_0x1969ae);}function notSendMessagesQueue(_0x265311){if(_0x265311['sendMessageOneNotActive']){if(_0x265311[_0xb604('0x51')]===0x0&&_0x265311[_0xb604('0x2e')]===0x0){_0x265311[_0xb604('0x5f')]=![];_0x265311['available']=0x0;_0x265311[_0xb604('0x60')]=0x0;_0x265311['message']=_0xb604('0x61');ut[_0xb604('0x62')](_0xb604('0x63'),_0x265311['name']+_0xb604('0x64'));}else{_0x265311['message']=_0xb604('0x65');ut[_0xb604('0x62')](_0xb604('0x63'),_0x265311['name']+_0xb604('0x66'));}emitCampaignPreview(_0x265311);}}Preview[_0xb604('0x12')][_0xb604('0x28')]=function(){var _0x131d8f=this;setInterval(function(){_0x131d8f[_0xb604('0x67')]();},0x7cf);};Preview['prototype']['syncCampaigns']=function(){var _0x332c94=this[_0xb604('0x15')];this['clockClearZombieChannels']+=0x1;for(var _0x170e0e in _0x332c94){if(_0x332c94['hasOwnProperty'](_0x170e0e)&&(_0x332c94[_0x170e0e][_0xb604('0x37')]===_0xb604('0x9')||_0x332c94[_0x170e0e][_0xb604('0x37')]==='booked')&&_0x332c94[_0x170e0e][_0xb604('0x2a')]===_0xb604('0x2b')){if(this[_0xb604('0x68')]>0x7){this[_0xb604('0x68')]=0x0;this[_0xb604('0x69')]();}}if(_0x332c94[_0xb604('0x6a')](_0x170e0e)&&_0x332c94[_0x170e0e]['dialMethod']===_0xb604('0x9')&&_0x332c94[_0x170e0e][_0xb604('0x2a')]===_0xb604('0x2b')){if(_0x332c94[_0x170e0e]['dialActive']){this[_0xb604('0x6b')](_0x332c94[_0x170e0e]);this[_0xb604('0x6c')](_0x332c94[_0x170e0e]);}else{notSendMessagesQueue(_0x332c94[_0x170e0e]);}}}};Preview[_0xb604('0x12')]['clearZombieChannel']=function(_0x4c2895){var _0x3cd66b=this;this[_0xb604('0x14')]['enqueue'](function(){if(!_[_0xb604('0x6d')](_0x3cd66b[_0xb604('0x18')][_0x4c2895])){loggerAction[_0xb604('0x6e')](_0xb604('0x6f'),_0x4c2895,_0xb604('0x70'),_0x3cd66b[_0xb604('0x18')][_0x4c2895]['queue'],_0xb604('0x71'),JSON[_0xb604('0x5a')](_0x3cd66b[_0xb604('0x15')][_0x3cd66b[_0xb604('0x18')][_0x4c2895][_0xb604('0x72')]][_0xb604('0x51')]),_0xb604('0x73'),JSON[_0xb604('0x5a')](_0x3cd66b['campaignsPreview'][_0x3cd66b['actions'][_0x4c2895][_0xb604('0x72')]][_0xb604('0x2e')]),JSON[_0xb604('0x5a')](_0x3cd66b[_0xb604('0x18')][_0x4c2895]['dialAnswer']),JSON[_0xb604('0x5a')](_['pick'](_0x3cd66b[_0xb604('0x18')][_0x4c2895],[_0xb604('0x74'),_0xb604('0x75'),_0xb604('0x76'),_0xb604('0x77')])));return ami[_0xb604('0x78')]({'action':_0xb604('0x79'),'channel':_0x3cd66b['actions'][_0x4c2895]['channel']})[_0xb604('0x7a')](function(_0x3ce8c2){if(_0x3ce8c2['message']===_0xb604('0x7b')){setTimeout(function(){if(_0x3cd66b['actions'][_0x4c2895]){ut[_0xb604('0x7c')](_0x3cd66b[_0xb604('0x15')][_0x3cd66b[_0xb604('0x18')][_0x4c2895][_0xb604('0x72')]],_0xb604('0x7d'));if(_0x3cd66b[_0xb604('0x18')][_0x4c2895][_0xb604('0x7e')]===!![]){ut['decrementTalkink'](_0x3cd66b['campaignsPreview'][_0x3cd66b[_0xb604('0x18')][_0x4c2895]['queue']],_0xb604('0x7d'));ut[_0xb604('0x7f')](_0xb604('0x80')+_0x4c2895,_0x3cd66b[_0xb604('0x18')][_0x4c2895]['queue']);}ut[_0xb604('0x7f')](_0xb604('0x81')+_0x4c2895,_0x3cd66b['actions'][_0x4c2895][_0xb604('0x72')]);delete _0x3cd66b[_0xb604('0x18')][_0x4c2895];}},0x2328);}});}});};Preview[_0xb604('0x12')][_0xb604('0x69')]=function(){var _0x30cb1d=this;loggerAction[_0xb604('0x6e')]('[action]',_[_0xb604('0x82')](this[_0xb604('0x18')]));for(var _0x275239 in this[_0xb604('0x18')]){if(_0x30cb1d[_0xb604('0x18')]['hasOwnProperty'](_0x275239)){_0x30cb1d['clearZombieChannel'](_0x275239);}}};Preview[_0xb604('0x12')]['recallMe']=function(_0xb894f1){var _0x2a0a6c=this;rpcDb[_0xb604('0x83')](_0xb894f1['id'],ut[_0xb604('0x84')](this['agents']))[_0xb604('0x85')](function(_0x493e29){if(!_[_0xb604('0x6d')](_0x493e29)){for(var _0x5e33ca=0x0;_0x5e33ca<_0x493e29[_0xb604('0x86')];_0x5e33ca+=0x1){if(ut['getDiff'](_0x493e29[_0x5e33ca][_0xb604('0x87')])<_0xb894f1[_0xb604('0x88')]*0x3c){if(_0x493e29[_0x5e33ca]['Agent']&&!_0x493e29[_0x5e33ca]['Agent'][_0xb604('0x89')]){_0x2a0a6c[_0xb604('0x8a')](_0x493e29[_0x5e33ca]['id'])['then'](ut['logger2']('[RecallMe]'))['catch'](ut[_0xb604('0x8b')](_0xb604('0x8c')));}else{rpcDb[_0xb604('0x8d')](_0x493e29[_0x5e33ca]['id']);}}else{var _0x39ad44=new Action(_0x493e29[_0x5e33ca],_0xb894f1);_0x39ad44['starttime']=moment()['format'](_0xb604('0x8e'));_0xb894f1[_0xb604('0x45')]+=0x1;ut[_0xb604('0x8f')](_0x39ad44,0x17,_0xb604('0x90'));if(_0xb894f1[_0xb604('0x91')]){rpcDb[_0xb604('0x92')](ut['createBody'](_0x493e29[_0x5e33ca]));rpcDb['createCustomerHistory'](_0x39ad44,_0xb604('0x93'));}else{ut[_0xb604('0x8f')](_0x39ad44,0x16,_0xb604('0x94'));rpcDb[_0xb604('0x95')](_0x39ad44,_0xb604('0x96'));rpcDb[_0xb604('0x97')](_0x39ad44,_0xb604('0x96'));}}}}})[_0xb604('0x7a')](ut[_0xb604('0x8b')](_0xb604('0x98')));};Preview[_0xb604('0x12')][_0xb604('0x6b')]=function(_0x5b897f){_0x5b897f[_0xb604('0x5f')]=!![];if(ut[_0xb604('0x99')](_0x5b897f[_0xb604('0x2d')])){_0x5b897f[_0xb604('0x50')]='AGENTS_NOT_LOGGED';}else if(!ut[_0xb604('0x9a')](_0x5b897f[_0xb604('0x36')])){_0x5b897f[_0xb604('0x50')]='NOT_ACTIVE';}else if(!this[_0xb604('0x9b')](_0x5b897f[_0xb604('0x56')])){if(!this[_0xb604('0x9b')](_0x5b897f[_0xb604('0x9c')])){_0x5b897f[_0xb604('0x50')]='TRUNK_IS_NOT_REACHABLE';}else{_0x5b897f[_0xb604('0x50')]=_0xb604('0x9d');}}else{_0x5b897f[_0xb604('0x50')]=_0xb604('0x9d');}emitCampaignPreview(_0x5b897f);};Preview[_0xb604('0x12')][_0xb604('0x9e')]=function(_0x19dbcd,_0x1f5ec4,_0x1689e8){var _0xf34dfc=this;var _0x579250=this[_0xb604('0x18')][_0x1f5ec4];var _0x401f51=this[_0xb604('0x15')][_0x579250[_0xb604('0x72')]];var _0x2d8eee;if(_0x401f51){switch(_0x1689e8){case'1':_0x401f51['outboundNoSuchCallsDay']+=0x1;_0x579250['countnosuchnumberretry']+=0x1;_0x579250[_0xb604('0x9f')]=ut[_0xb604('0xa0')](_0x579250);ut[_0xb604('0x8f')](_0x579250,0x0,'NoSuchNumber');ami[_0xb604('0x29')]('custom:agentnosuchnumber',ut[_0xb604('0xa1')](_0x579250,_0xb604('0xa2')));rpcDb[_0xb604('0x95')](_0x579250,_0xb604('0xa3'));if(ut['totalGlobal'](_0x579250)>=_0x401f51[_0xb604('0xa4')]){_0x2d8eee=ut[_0xb604('0xa5')](_0x579250,0xf,_0xb604('0xa6'));rpcDb[_0xb604('0x97')](_0x2d8eee,_0xb604('0xa7'));}else{if(_0x579250[_0xb604('0xa8')]>=_0x401f51[_0xb604('0xa9')]){rpcDb[_0xb604('0x97')](_0x579250,_0xb604('0xa7'));}else{rpcDb['rescheduleContact'](ut['scheduledAt'](_0x579250,_0xb604('0xa8'),_0x401f51[_0xb604('0xaa')]),_0x579250[_0xb604('0xab')],_0x579250[_0xb604('0xac')]);}}delete this['actions'][_0x19dbcd['linkedid']];break;case _0xb604('0xad'):var _0x3ab649=moment()['format'](_0xb604('0x8e'));_0x579250[_0xb604('0xae')]=_0x3ab649;_0x579250[_0xb604('0xaf')]=_0x3ab649;_0x579250[_0xb604('0x7e')]=!![];_0x401f51[_0xb604('0x2e')]+=0x1;logger[_0xb604('0x6e')]('[syncHangup][talking][increment]',_0x579250['uniqueid'],_0xb604('0xb0'),_0x401f51['name'],'pTalking:\x20',_0x401f51['pTalking']);ami[_0xb604('0x29')](_0xb604('0xb1'),ut[_0xb604('0xa1')](_0x579250,_0xb604('0xb2')));if(_0x401f51[_0xb604('0xb3')]){ami[_0xb604('0x29')](_0xb604('0xb4'),ut[_0xb604('0xb5')](_0x579250));}break;case'16':ami['emit'](_0xb604('0xb6'),ut[_0xb604('0xa1')](_0x579250,'complete'));emitVoiceQueueChannelRemove(ut[_0xb604('0xa1')](_0x579250,_0xb604('0xb7')));_0x401f51[_0xb604('0x3b')]+=0x1;_0x401f51[_0xb604('0x33')]+=0x1;_0x401f51['answered']+=0x1;ut['decrementTalkink'](_0x401f51,_0xb604('0xb8'));_0x579250[_0xb604('0x9f')]=ut[_0xb604('0xa0')](_0x579250);ut['logCustomer'](_0x579250,0x4,_0xb604('0xb9'));rpcDb[_0xb604('0x95')](_0x579250,'[callProgressDetectingCustomer][logAnswer]');rpcDb[_0xb604('0x97')](_0x579250,_0xb604('0xba'));rpcDb[_0xb604('0xbb')](_0x579250);_0x401f51[_0xb604('0x30')]+=_0x579250[_0xb604('0xbc')];_0x401f51['sumBillable']+=_0x579250[_0xb604('0xbc')];logger[_0xb604('0x6e')](_0xb604('0xbd'),_0x579250[_0xb604('0xbe')],'\x20Queue',_0x401f51[_0xb604('0x57')],_0xb604('0x73'),_0x401f51[_0xb604('0x2e')]);delete this['actions'][_0x19dbcd[_0xb604('0xbf')]];break;case'BUSY':_0x401f51[_0xb604('0x3d')]+=0x1;_0x579250[_0xb604('0xc0')]+=0x1;_0x579250[_0xb604('0x9f')]=ut[_0xb604('0xa0')](_0x579250);ut[_0xb604('0x8f')](_0x579250,0x5,_0xb604('0xc1'));ami[_0xb604('0x29')](_0xb604('0xc2'),ut[_0xb604('0xa1')](_0x579250,_0xb604('0xc3')));rpcDb['createCustomerHistory'](_0x579250,'[callProgressDetectingCustomer][logBusy]');if(ut[_0xb604('0xa0')](_0x579250)>=_0x401f51['dialGlobalMaxRetry']){_0x2d8eee=ut['cloneAction'](_0x579250,0xf,_0xb604('0xa6'));rpcDb['createCustomerFinal'](_0x2d8eee,'[callProgressDetectingCustomer][logBusyGlobal]');}else{if(_0x579250[_0xb604('0xc0')]>=_0x401f51[_0xb604('0xc4')]){rpcDb[_0xb604('0x97')](_0x579250,'[callProgressDetectingCustomer][logBusy]');}else{rpcDb[_0xb604('0xc5')](ut[_0xb604('0xc6')](_0x579250,_0xb604('0xc0'),_0x401f51[_0xb604('0xc7')]),_0x579250[_0xb604('0xab')],_0x579250[_0xb604('0xac')]);}}break;case _0xb604('0xc8'):_0x401f51['outboundNoAnswerCallsDay']+=0x1;_0x579250['countnoanswerretry']+=0x1;_0x579250[_0xb604('0x9f')]=ut[_0xb604('0xa0')](_0x579250);ut[_0xb604('0x8f')](_0x579250,0x3,_0xb604('0xc9'));ami['emit'](_0xb604('0xca'),ut['buildObj'](_0x579250,_0xb604('0xcb')));rpcDb[_0xb604('0x95')](_0x579250,_0xb604('0xcc'));if(ut[_0xb604('0xa0')](_0x579250)>=_0x401f51[_0xb604('0xa4')]){_0x2d8eee=ut[_0xb604('0xa5')](_0x579250,0xf,_0xb604('0xa6'));rpcDb[_0xb604('0x97')](_0x2d8eee,_0xb604('0xcd'));}else{if(_0x579250[_0xb604('0xce')]>=_0x401f51[_0xb604('0xcf')]){rpcDb['createCustomerFinal'](_0x579250,_0xb604('0xcc'));}else{rpcDb[_0xb604('0xc5')](ut[_0xb604('0xc6')](_0x579250,_0xb604('0xce'),_0x401f51['dialNoAnswerRetryFrequency']),_0x579250[_0xb604('0xab')],_0x579250[_0xb604('0xac')]);}}break;case _0xb604('0xd0'):_0x401f51[_0xb604('0x3e')]+=0x1;_0x579250['countcongestionretry']+=0x1;_0x579250[_0xb604('0x9f')]=ut[_0xb604('0xa0')](_0x579250);ut[_0xb604('0x8f')](_0x579250,0x8,_0xb604('0xd1'));ami[_0xb604('0x29')](_0xb604('0xd2'),ut['buildObj'](_0x579250,_0xb604('0xd3')));rpcDb[_0xb604('0x95')](_0x579250,_0xb604('0xd4'));if(ut['totalGlobal'](_0x579250)>=_0x401f51[_0xb604('0xa4')]){_0x2d8eee=ut[_0xb604('0xa5')](_0x579250,0xf,_0xb604('0xa6'));rpcDb[_0xb604('0x97')](_0x2d8eee,'[callProgressDetectingCustomer][logCongestionGlobal]');}else{if(_0x579250[_0xb604('0xd5')]>=_0x401f51[_0xb604('0xd6')]){rpcDb[_0xb604('0x97')](_0x579250,'[callProgressDetectingCustomer][logCongestion]');}else{rpcDb[_0xb604('0xc5')](ut['scheduledAt'](_0x579250,'countcongestionretry',_0x401f51[_0xb604('0xc7')]),_0x579250[_0xb604('0xab')],_0x579250[_0xb604('0xac')]);}}break;case _0xb604('0xd7'):_0x401f51[_0xb604('0x46')]+=0x1;_0x579250[_0xb604('0xd8')]+=0x1;_0x579250[_0xb604('0x9f')]=ut['totalGlobal'](_0x579250);ut[_0xb604('0x8f')](_0x579250,0x14,_0xb604('0xd9'));ami[_0xb604('0x29')](_0xb604('0xda'),ut[_0xb604('0xa1')](_0x579250,'agentreject'));rpcDb[_0xb604('0x95')](_0x579250,'[syncHangupRequest][logAgentReject]');if(ut[_0xb604('0xa0')](_0x579250)>=_0x401f51[_0xb604('0xa4')]){_0x2d8eee=ut['cloneAction'](_0x579250,0x14,_0xb604('0xd9'));rpcDb['createCustomerFinal'](_0x2d8eee,_0xb604('0xdb'));}else{if(_0x579250[_0xb604('0xd8')]>=_0x401f51[_0xb604('0xdc')]){rpcDb[_0xb604('0x97')](_0x579250,'[callProgressDetectingCustomer][logAgentReject]');}else{rpcDb[_0xb604('0xc5')](ut[_0xb604('0xc6')](_0x579250,_0xb604('0xd8'),_0x401f51[_0xb604('0xdd')]),_0x579250[_0xb604('0xab')],_0x579250['activeContact']);}}break;case'ABANDONED':_0x401f51['outboundAbandonedCallsDay']+=0x1;_0x579250['countabandonedretry']+=0x1;_0x579250[_0xb604('0x9f')]=ut['totalGlobal'](_0x579250);ut[_0xb604('0x8f')](_0x579250,0xb,_0xb604('0xde'));rpcDb['createCustomerHistory'](_0x579250,_0xb604('0xdf'));if(ut[_0xb604('0xa0')](_0x579250)>=_0x401f51[_0xb604('0xa4')]){_0x2d8eee=ut[_0xb604('0xa5')](_0x579250,0xf,_0xb604('0xa6'));rpcDb[_0xb604('0x97')](_0x2d8eee,_0xb604('0xdf'));}else{if(_0x579250[_0xb604('0xe0')]>=_0x401f51[_0xb604('0xe1')]){rpcDb[_0xb604('0x97')](_0x579250,'[callProgressDetectingCustomer][logAbandoned]');}else{rpcDb['rescheduleContact'](ut['scheduledAt'](_0x579250,'countabandonedretry',_0x401f51[_0xb604('0xe2')]),_0x579250[_0xb604('0xab')],_0x579250['activeContact']);}}break;default:if(_0x579250[_0xb604('0x7e')]){ut['decrementTalkink'](_0x401f51,'[default]');ut[_0xb604('0x7f')]('[Dialer][decrementTalkink][no\x20Hangup][Preview]'+_0x401f51['name'],_0x19dbcd);}_0x401f51[_0xb604('0x47')]+=0x1;_0x579250[_0xb604('0x9f')]=ut[_0xb604('0xa0')](_0x579250);ut[_0xb604('0x8f')](_0x579250,0xc,_0x19dbcd[_0xb604('0xe3')]||_0x19dbcd[_0xb604('0xe4')]);rpcDb['createCustomerHistory'](_0x579250,_0xb604('0xe5'));if(ut[_0xb604('0xa0')](_0x579250)>=_0x401f51[_0xb604('0xa4')]){_0x2d8eee=ut[_0xb604('0xa5')](_0x579250,0xf,_0xb604('0xa6'));rpcDb['createCustomerFinal'](_0x2d8eee,_0xb604('0xe6'));}else{rpcDb['createCustomerFinal'](_0x579250,_0xb604('0xe6'));}delete this[_0xb604('0x18')][_0x19dbcd['linkedid']];}if(!(_0x579250[_0xb604('0x7e')]&&_0x1689e8==='16')){ut[_0xb604('0x7c')](_0x401f51,_0xb604('0xe7'));logger[_0xb604('0x6e')](_0xb604('0xe8'),_0x579250[_0xb604('0xbe')],_0xb604('0xb0'),_0x401f51[_0xb604('0x57')],_0xb604('0x71'),_0x401f51[_0xb604('0x51')]);}if(_0x1689e8!==_0xb604('0xad')){delete this[_0xb604('0x18')][_0x19dbcd['linkedid']];delete this[_0xb604('0x18')][_0x19dbcd[_0xb604('0xe9')]];}}};Preview['prototype'][_0xb604('0xea')]=function(_0x40693b,_0xe25fc2,_0x4adab9){if(_[_0xb604('0xeb')](_0xe25fc2)&&_0xb604('0xec')!==typeof _0xe25fc2){return;}if(_[_0xb604('0xeb')](_0x4adab9)&&_0xb604('0xec')!==typeof _0x4adab9){return;}switch(_0x4adab9['reason']){case'0':ut[_0xb604('0xed')](_0x40693b,0x0,_0xb604('0xee'));rpcDb['createAgentHistory'](_0x40693b,_0xb604('0xef'));break;case'3':ut[_0xb604('0xed')](_0x40693b,0x3,_0xb604('0xc9'));rpcDb[_0xb604('0xf0')](_0x40693b,_0xb604('0xf1'));break;case'5':ut['logAgent'](_0x40693b,0x5,_0xb604('0xc1'));rpcDb['createAgentHistory'](_0x40693b,_0xb604('0xf2'));break;case'8':ut[_0xb604('0xed')](_0x40693b,0x8,'Congestion');rpcDb[_0xb604('0xf0')](_0x40693b,_0xb604('0xf3'));break;case'22':ut[_0xb604('0xed')](_0x40693b,0x16,'AnswerAGI');rpcDb[_0xb604('0xf0')](_0x40693b,'[callProgressDetectingAgent][logAnswerAGI]');break;default:ut[_0xb604('0xed')](_0x40693b,0xc,_0x4adab9[_0xb604('0xf4')]);rpcDb[_0xb604('0xf0')](_0x40693b,_0xb604('0xf3'));}ut['updateOriginated'](_0xe25fc2,_0xb604('0xf5'));logger[_0xb604('0x6e')](_0xb604('0xf6'),_0x40693b['uniqueid'],'\x20Queue',_0xe25fc2[_0xb604('0x57')],_0xb604('0x71'),_0xe25fc2[_0xb604('0x51')]);delete this[_0xb604('0x18')][_0x40693b['uniqueid']];};Preview[_0xb604('0x12')][_0xb604('0xf7')]=function(_0x56ac3c,_0x251050,_0x3f6810,_0x1e0359,_0xa88039){var _0x4e6193=this;return new BPromise(function(_0x505061,_0x3c8a76){if(_[_0xb604('0x6d')](_0x251050)||_[_0xb604('0x6d')](_0x251050[_0xb604('0xf8')])||_['isNil'](_0x251050[_0xb604('0xf8')]['phone'])||_[_0xb604('0x6d')](_0x251050[_0xb604('0x76')])){_0x3c8a76(ut['message'](_0xb604('0xf9'),_0x1e0359,_0xa88039));return;}var _0x4f7945=uuid['v4']();var _0x4f174b=_0x4e6193[_0xb604('0x15')][_0x251050[_0xb604('0x70')][_0xb604('0x57')]];var _0x17f7b3=_0x3f6810?_0x4e6193['agents'][_0x3f6810]['id']:undefined;_0x4e6193[_0xb604('0x18')][_0x4f7945]=new Action(_0x251050,_0x4f174b,_0x4f7945,_0x3f6810,_0x17f7b3);var _0x27741a=_0x4e6193['actions'][_0x4f7945];_0x27741a[_0xb604('0xab')]=_0x1e0359;_0x27741a[_0xb604('0xac')]=_0xa88039;_0x27741a[_0xb604('0xfa')]=_0x3f6810;if(_['isEmpty'](_0x56ac3c)){_0x4e6193[_0xb604('0xfb')](_0x27741a,_0x4f174b,_0x251050,_0x3f6810)[_0xb604('0x85')](function(_0x1181be){logger[_0xb604('0x6e')](_0xb604('0xfc'),'Queue:\x20'+_0x27741a[_0xb604('0x72')]+_0xb604('0xfd')+_0x27741a[_0xb604('0xfe')],JSON[_0xb604('0x5a')](_0x1181be));ami[_0xb604('0x29')]('custom:agentcalled',ut[_0xb604('0xa1')](_0x27741a,_0xb604('0xff')));_0x505061(ut[_0xb604('0x50')](_0xb604('0x100')));})[_0xb604('0x7a')](function(_0x1a2e51){ut[_0xb604('0x62')](_0xb604('0x101'),_0x1a2e51);_0x3c8a76(ut['message']('Call\x20failed',_0x1e0359,_0xa88039));});}else{_0x4f174b['outboundBlacklistCallsDay']+=0x1;ut['logBlacklist'](_0x27741a);rpcDb['createHistory'](_0x27741a,_0xb604('0x102'));delete _0x4e6193[_0xb604('0x18')][_0x4f7945];_0x3c8a76(ut[_0xb604('0x50')](_0xb604('0x103'),_0x1e0359,_0xa88039));}});};Preview[_0xb604('0x12')][_0xb604('0x9b')]=function(_0x2fd99d){return!_[_0xb604('0x6d')](_0x2fd99d)&&!_[_0xb604('0x6d')](_0x2fd99d[_0xb604('0x57')])&&!_['isNil'](_0x2fd99d[_0xb604('0x58')])&&_0x2fd99d[_0xb604('0x58')]&&!_[_0xb604('0x6d')](this[_0xb604('0x17')][util[_0xb604('0x5b')](_0xb604('0x104'),_0x2fd99d['name'])])&&!_[_0xb604('0x6d')](this[_0xb604('0x17')][util['format'](_0xb604('0x104'),_0x2fd99d[_0xb604('0x57')])][_0xb604('0x79')])&&(this['trunks'][util['format']('SIP/%s',_0x2fd99d[_0xb604('0x57')])][_0xb604('0x79')]==='reachable'||this[_0xb604('0x17')][util[_0xb604('0x5b')](_0xb604('0x104'),_0x2fd99d[_0xb604('0x57')])][_0xb604('0x79')]===_0xb604('0x105'));};Preview['prototype'][_0xb604('0x8a')]=function(_0x4c7e0d,_0x3d1431){var _0x518c32=this;return new BPromise(function(_0x382b09,_0x1eb4e1){_0x518c32[_0xb604('0x106')](_0x4c7e0d,_0x3d1431)['then'](function(_0x36537f){_0x382b09(_['pick'](_0x36537f,['message']));})[_0xb604('0x7a')](function(_0x2ee572){if(_0x2ee572['unlock']){rpcDb[_0xb604('0x107')](_0x4c7e0d);}if(_0x2ee572[_0xb604('0x58')]){rpcDb[_0xb604('0x8d')](_0x4c7e0d);}_0x1eb4e1(_[_0xb604('0x108')](_0x2ee572,['message']));});});};Preview[_0xb604('0x12')][_0xb604('0x106')]=function(_0x5d1042,_0x24fe8a){var _0x9af7d2=this;return new BPromise(function(_0x176112,_0x10609d){var _0x3267c5,_0x203ce2;rpcDb[_0xb604('0x109')](_0x5d1042)[_0xb604('0x85')](function(_0x1823bd){if(!_[_0xb604('0x6d')](_0x1823bd[0x0])){_0x203ce2=_0x1823bd[0x0][_0xb604('0x10a')]?![]:!![];_0x3267c5=_0x1823bd[0x0][_0xb604('0x10a')]?!![]:![];_0x3267c5=_0x24fe8a?!![]:_0x3267c5;}var _0x3e2637=_0x9af7d2[_0xb604('0x10b')](_0x1823bd);if(_0x3e2637['isValid']){rpcDb[_0xb604('0x10c')](_[_0xb604('0x108')](_0x1823bd[0x0],['VoiceQueueId','Contact.phone']))[_0xb604('0x85')](function(_0x4edc1b){_0x9af7d2['checkInBlack'](_0x4edc1b,_0x1823bd[0x0],_0x24fe8a,_0x203ce2,_0x3267c5)['then'](function(_0x5602bd){_0x176112(_0x5602bd);})[_0xb604('0x7a')](function(_0x12498a){_0x10609d(_0x12498a);});})[_0xb604('0x7a')](function(_0x32cd84){ut[_0xb604('0x62')]('[Preview][checkIsBlackList]',_0x32cd84);_0x10609d(ut[_0xb604('0x50')](_0xb604('0x10d'),_0x203ce2,_0x3267c5));});}else{_0x10609d(ut[_0xb604('0x50')](_0x3e2637[_0xb604('0x50')],_0x203ce2,_0x3267c5));}})[_0xb604('0x7a')](function(_0x40d578){ut[_0xb604('0x62')](_0xb604('0x10e'),_0x40d578);_0x10609d(ut[_0xb604('0x50')]('Call\x20unsuccessful',![],!![]));});});};Preview['prototype'][_0xb604('0x10b')]=function(_0x37fdda){if(_[_0xb604('0x6d')](_0x37fdda)||_[_0xb604('0x10f')](_0x37fdda)||!_['isNil'](_0x37fdda[0x0][_0xb604('0x110')])&&_[_0xb604('0x6d')](_0x37fdda[0x0]['Agent']['name'])){ut[_0xb604('0x62')](_0xb604('0x111'),_0x37fdda);return{'isValid':![],'message':_0xb604('0x112')};}var _0x565185=this[_0xb604('0x15')][_0x37fdda[0x0][_0xb604('0x70')][_0xb604('0x57')]];_0x565185[_0xb604('0x50')]=_0xb604('0x9d');if(_[_0xb604('0x6d')](_0x565185)){ut[_0xb604('0x62')](_0xb604('0x113'),_0x565185);return{'isValid':![],'message':_0xb604('0x114')};}if(!this[_0xb604('0x9b')](_0x565185['Trunk'])){ut['logger'](_0xb604('0x115'),_0xb604('0x116')+_0x565185['name']+_0xb604('0x117'));if(!this[_0xb604('0x9b')](_0x565185[_0xb604('0x9c')])){ut[_0xb604('0x62')](_0xb604('0x115'),_0x565185[_0xb604('0x57')]+'\x20Trunk\x20Backup\x20is\x20not\x20active');return{'isValid':![],'message':_0xb604('0x118')};}}if(!ut[_0xb604('0x9a')](_0x565185['dialActive'])){ut[_0xb604('0x62')]('[Preview][validateContact][Campaign\x20Active]',_0x565185[_0xb604('0x57')]+_0xb604('0x119'));return{'isValid':![],'message':_0xb604('0x116')+_0x565185[_0xb604('0x57')]+_0xb604('0x119')};}return{'isValid':!![],'message':_0xb604('0x11a')};};Preview[_0xb604('0x12')]['execCall']=function(_0x4fe369,_0x419b1d,_0x3a9a8a,_0x2d9ca1){var _0x5ecfd5=this;return new BPromise(function(_0x9fc156,_0x2866a1){var _0x1d3bb4=_0x4fe369['uniqueid'];var _0x45e917=_0x5ecfd5[_0xb604('0x9b')](_0x419b1d[_0xb604('0x56')])?util[_0xb604('0x5b')]('SIP/%s/%s%s',_0x419b1d['Trunk'][_0xb604('0x57')],_[_0xb604('0x6d')](_0x419b1d[_0xb604('0x11b')])?'':_0x419b1d['dialPrefix'][_0xb604('0x11c')]()||'',_0x419b1d[_0xb604('0x11d')]>0x0?_0x3a9a8a[_0xb604('0xf8')]['phone']['substring'](_0x419b1d[_0xb604('0x11d')]):_0x3a9a8a['Contact'][_0xb604('0x11e')]):util[_0xb604('0x5b')]('SIP/%s/%s%s',_['isNil'](_0x419b1d[_0xb604('0x9c')])?_0x419b1d[_0xb604('0x56')][_0xb604('0x57')]:_0x419b1d['TrunkBackup']['name'],_[_0xb604('0x6d')](_0x419b1d['dialPrefix'])?'':_0x419b1d[_0xb604('0x11b')][_0xb604('0x11c')]()||'',_0x419b1d[_0xb604('0x11d')]>0x0?_0x3a9a8a['Contact'][_0xb604('0x11e')]['substring'](_0x419b1d[_0xb604('0x11d')]):_0x3a9a8a[_0xb604('0xf8')][_0xb604('0x11e')]);var _0x4e105f=_0x5ecfd5['isTrunkReachable'](_0x419b1d[_0xb604('0x56')])?ut[_0xb604('0x11f')](_0x419b1d[_0xb604('0x56')][_0xb604('0x120')],_0x419b1d['dialOriginateCallerIdName'],_0x419b1d[_0xb604('0x121')]>0x0?ut[_0xb604('0x122')](_0x419b1d[_0xb604('0x39')],_0x419b1d[_0xb604('0x121')]):_0x419b1d[_0xb604('0x39')]):ut['getCallerId'](_[_0xb604('0x6d')](_0x419b1d[_0xb604('0x9c')])?_0x419b1d[_0xb604('0x56')]['callerid']:_0x419b1d['TrunkBackup'][_0xb604('0x120')],_0x419b1d[_0xb604('0x38')],_0x419b1d['dialRandomLastDigitCallerIdNumber']>0x0?ut[_0xb604('0x122')](_0x419b1d[_0xb604('0x39')],_0x419b1d[_0xb604('0x121')]):_0x419b1d['dialOriginateCallerIdNumber']);if(_0x4e105f){_0x4fe369[_0xb604('0x123')]=ut[_0xb604('0x124')](_0x4e105f);_0x4fe369['originatecalleridnum']=ut[_0xb604('0x125')](_0x4e105f);}var _0x35a1f8=ut[_0xb604('0x126')](_0x419b1d,_0x3a9a8a,_0x45e917,_0x4e105f,_0x1d3bb4,_0x4fe369);_[_0xb604('0x127')](_0x4fe369,ut[_0xb604('0x128')](_0x35a1f8));_0x4fe369[_0xb604('0x129')]=moment()[_0xb604('0x5b')]('YYYY-MM-DD\x20HH:mm:ss');ami['Action'](ut[_0xb604('0x12a')](_0x4fe369,_0x419b1d,_0x35a1f8,_0x4fe369['activeContact'],_0x2d9ca1))[_0xb604('0x85')](function(_0x4e862a){_0x419b1d['originated']+=0x1;logger['info']('[originated][increment]',_0x1d3bb4,_0xb604('0xb0'),_0x419b1d[_0xb604('0x57')],_0xb604('0x71'),_0x419b1d[_0xb604('0x51')]);_0x9fc156(_0x4e862a);})[_0xb604('0x7a')](function(_0x1e607a){ut['logAgent'](_0x4fe369,0xe,_0xb604('0x12b'));rpcDb[_0xb604('0xf0')](_0x4fe369,_0xb604('0x12c'));_0x2866a1(_0x1e607a);});});};Preview[_0xb604('0x12')][_0xb604('0x22')]=function(_0x4930a4){if(this[_0xb604('0x18')][_0x4930a4[_0xb604('0xbf')]]){this['actions'][_0x4930a4[_0xb604('0xbf')]][_0xb604('0x12d')]=_0x4930a4['channel'];}};Preview[_0xb604('0x12')][_0xb604('0x1a')]=function(_0x462460){var _0x3b4636=this;var _0x2ffb5a=this[_0xb604('0x18')][_0x462460[_0xb604('0x12e')]];if(_0x2ffb5a){if(_0x2ffb5a['lookAgent']&&this[_0xb604('0x12f')][_0x2ffb5a[_0xb604('0xfa')]]){ut['logLookAgent'](_0x2ffb5a,this[_0xb604('0x12f')][_0x2ffb5a[_0xb604('0xfa')]][_0xb604('0x57')],this['agents'][_0x2ffb5a[_0xb604('0xfa')]]['id']);}var _0x5a77fb=_['clone'](_0x2ffb5a);_0x5a77fb[_0xb604('0xae')]=moment()[_0xb604('0x5b')](_0xb604('0x8e'));var _0xee6d5a=_0x3b4636[_0xb604('0x15')][_0x2ffb5a[_0xb604('0x72')]];if(ut[_0xb604('0x130')](_0x462460[_0xb604('0x131')])){if(_0x2ffb5a['unlockAgent']){rpcDb[_0xb604('0x107')](_0x2ffb5a[_0xb604('0xfe')]);}if(_0x2ffb5a[_0xb604('0xac')]){rpcDb[_0xb604('0x8d')](_0x2ffb5a[_0xb604('0xfe')]);}ami['emit'](_0xb604('0x132'),ut['buildObj'](_0x2ffb5a,_0xb604('0x133')));this[_0xb604('0xea')](_0x5a77fb,_0xee6d5a,_0x462460);}else{_0x2ffb5a[_0xb604('0x129')]=moment()[_0xb604('0x5b')](_0xb604('0x8e'));ut['logAgent'](_0x5a77fb,0x4,_0xb604('0xb9'));rpcDb['createAgentHistory'](_0x5a77fb,_0xb604('0x134'));}}};Preview['prototype']['syncHangup']=function(_0x5f4203){var _0x48fb1b=this;var _0x427f01=this[_0xb604('0x18')][_0x5f4203[_0xb604('0xbf')]];var _0x402c51;if(_0x427f01){_0x402c51=this[_0xb604('0x15')][_0x427f01[_0xb604('0x72')]];logger['info'](_0xb604('0x135'),_0x5f4203['linkedid'],_0xb604('0xb0'),_0x402c51[_0xb604('0x57')],_0xb604('0x73'),_0x402c51[_0xb604('0x2e')]);}if(this[_0xb604('0x18')][_0x5f4203[_0xb604('0xbf')]]&&_0x5f4203[_0xb604('0xbf')]!==_0x5f4203[_0xb604('0xbe')]){if(_0x5f4203[_0xb604('0x136')]==='16'&&this[_0xb604('0x18')][_0x5f4203[_0xb604('0xbf')]][_0xb604('0x7e')]){this[_0xb604('0x9e')](_0x5f4203,_0x5f4203[_0xb604('0xbf')],_0x5f4203[_0xb604('0x136')]);}else if(this[_0xb604('0x18')][_0x5f4203[_0xb604('0xbf')]][_0xb604('0x7e')]){logger[_0xb604('0x6e')]('[syncHangup][talking][cause]',_0x5f4203[_0xb604('0xbf')],_0x5f4203[_0xb604('0x136')],_0xb604('0xb0'),_0x402c51[_0xb604('0x57')],_0xb604('0x73'),_0x402c51[_0xb604('0x2e')]);this[_0xb604('0x9e')](_0x5f4203,_0x5f4203[_0xb604('0xbf')],_0x5f4203['cause']);}}else if(_0x427f01&&_[_0xb604('0x6d')](_0x427f01['statedesc'])&&_0x402c51[_0xb604('0x137')]&&_0x5f4203[_0xb604('0xbf')]===_0x5f4203[_0xb604('0xbe')]&&_[_0xb604('0x6d')](_0x5f4203[_0xb604('0xf4')])&&_0x5f4203[_0xb604('0x136')]==='16'&&_0x5f4203[_0xb604('0x138')]==='6'&&_[_0xb604('0xeb')](_0x427f01[_0xb604('0x139')])){if(_0x427f01[_0xb604('0xab')]){rpcDb[_0xb604('0x107')](_0x427f01[_0xb604('0xfe')]);}if(_0x427f01['activeContact']){rpcDb[_0xb604('0x8d')](_0x427f01[_0xb604('0xfe')]);}_0x5f4203[_0xb604('0xf4')]='22';this[_0xb604('0xea')](_0x427f01,_0x402c51,_0x5f4203);}else if(_0x427f01&&_0x427f01[_0xb604('0x139')]){if(_0x5f4203[_0xb604('0x136')]==='16'&&this['actions'][_0x5f4203[_0xb604('0xbf')]][_0xb604('0x7e')]){logger['info'](_0xb604('0x13a'),_0x5f4203[_0xb604('0xbf')],_0x5f4203[_0xb604('0x136')],_0xb604('0xb0'),_0x402c51[_0xb604('0x57')],_0xb604('0x73'),_0x402c51[_0xb604('0x2e')]);this[_0xb604('0x9e')](_0x5f4203,_0x5f4203[_0xb604('0xbf')],_0x5f4203['cause']);}else if(this[_0xb604('0x18')][_0x5f4203[_0xb604('0xbf')]][_0xb604('0x7e')]){logger['info']('[syncHangup][talking][cause]',_0x5f4203[_0xb604('0xbf')],_0x5f4203['cause'],'\x20Queue',_0x402c51[_0xb604('0x57')],_0xb604('0x73'),_0x402c51[_0xb604('0x2e')]);this[_0xb604('0x9e')](_0x5f4203,_0x5f4203[_0xb604('0xbf')],_0x5f4203[_0xb604('0x136')]);}}};Preview[_0xb604('0x12')][_0xb604('0x20')]=function(_0x29de5c){if(this['actions'][_0x29de5c[_0xb604('0xe9')]]&&_0x29de5c[_0xb604('0xe9')]!==_0x29de5c[_0xb604('0x13b')]){this['callProgressDetectingCustomer'](_0x29de5c,_0x29de5c['destlinkedid'],_0x29de5c['dialstatus']);}};Preview[_0xb604('0x12')][_0xb604('0x1e')]=function(_0x3761d0){if(this['actions'][_0x3761d0[_0xb604('0xbf')]]&&_0x3761d0[_0xb604('0xbf')]!==_0x3761d0[_0xb604('0xbe')]&&!this['actions'][_0x3761d0[_0xb604('0xbf')]][_0xb604('0x7e')]){if(_0x3761d0['cause']==='1'){this[_0xb604('0x9e')](_0x3761d0,_0x3761d0['linkedid'],_0x3761d0['cause']);}}};Preview['prototype']['addVariable']=function(_0x3eb880,_0x101fcc,_0xc2df34){if(this[_0xb604('0x18')][_0x3eb880]){if(_[_0xb604('0x6d')](this[_0xb604('0x18')][_0x3eb880][_0xb604('0x13c')])){this[_0xb604('0x18')][_0x3eb880][_0xb604('0x13c')]={};}this[_0xb604('0x18')][_0x3eb880]['variables'][_0x101fcc]=_0xc2df34;}};Preview[_0xb604('0x12')][_0xb604('0x13d')]=function(_0x11663f){try{if(!_['isNil'](_0x11663f)){if(ut['filterKey'](_[_0xb604('0x13e')](_0x11663f[_0xb604('0x13f')])[0x0])){this['addVariable'](_0x11663f[_0xb604('0xbe')],_[_0xb604('0x13e')](_0x11663f[_0xb604('0x13f')])[0x0],_0x11663f[_0xb604('0x140')]);}}}catch(_0x331f16){logger['error'](_0xb604('0x141'),util[_0xb604('0x142')](_0x331f16,{'showHidden':![],'depth':null}));}};Preview[_0xb604('0x12')][_0xb604('0x25')]=function(_0x410a59){if(_0x410a59){if(this[_0xb604('0x18')][_0x410a59[_0xb604('0x143')]]){this[_0xb604('0x18')][_0x410a59[_0xb604('0x143')]][_0xb604('0x139')]=!![];}}};Preview['prototype'][_0xb604('0x27')]=function(_0x38e683){if(_0x38e683){if(this['actions'][_0x38e683[_0xb604('0x144')]]){this[_0xb604('0x18')][_0x38e683[_0xb604('0x144')]][_0xb604('0x139')]=!![];}}};module[_0xb604('0x145')]=Preview;