Built motion from commit f7863d46.|2.5.41
[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 _0x950a=['outboundDropCallsDayTimeout','outboundNoAnswerCallsDay','outboundNoSuchCallsDay','outboundOriginateFailureCallsDay','outboundReCallsDay','outboundRejectCallsDay','outboundUnknownCallsDay','outboundAbandonedCallsDay','predictiveIntervalAnsweredCalls','predictiveIntervalAvgHoldtime','predictiveIntervalDroppedCallsCallersExit','predictiveIntervalErlangCallsDroppedCalls','predictiveIntervalMultiplicativeFactor','predictiveIntervalPauses','predictiveIntervalAvailable','predictiveIntervalTotalCalls','originated','erlangCallToSecond','erlangAbandonmentRate','startProgressive','Trunk','Interval','stringify','format','info','voice:queue:%s','voice_queue_channel:remove','sendMessageOneNotActive','available','paused','message','logger','[CampaignPreview]\x20Campaign\x20Queue:\x20','\x20is\x20not\x20active','IS_DISACTIVED','\x20is\x20disactive','syncCampaigns','hasOwnProperty','dialMethod','preview','booked','clearZombieChannels','outbound','recallMe','clearZombieChannel','enqueue','isNil','Queue','queue','originated:\x20','pTalking:\x20','pick','contactId','UserId','VoiceQueueId','ListId','status','channel','No\x20such\x20channel','updateOriginated','[clearZombieChannel]','dialAnswer','decrementTalkink','loggerError','[Dialer][checkChannel][Preview]','[action]','size','agentReadyId','then','length','scheduledat','dialRecallMeTimeout','Agent','voicePause','logger2','[RecallMe]','catch','disableContact','YYYY-MM-DD\x20HH:mm:ss','logCustomer','rescheduleContactInQueue','createBody','createCustomerHistory','RecallFailedTimeout','[HistoryRecallClose]','createCustomerFinal','[getContactRecallMe]','setMessage','IsNotLoggedIn','AGENTS_NOT_LOGGED','isActive','NOT_ACTIVE','isTrunkReachable','TrunkBackup','ACTIVE','callProgressDetectingCustomer','countnosuchnumberretry','countglobal','totalGlobal','NoSuchNumber','custom:agentnosuchnumber','buildObj','nosuchnumber','[callProgressDetectingCustomer][logNoSuch]','dialGlobalMaxRetry','cloneAction','Global','[callProgressDetectingCustomer][logNoSuchGlobal]','dialNoSuchNumberMaxRetry','rescheduleContact','scheduledAt','dialNoSuchNumberRetryFrequency','unlockAgent','activeContact','linkedid','ANSWER','responsetime','answertime','custom:agentconnect','connect','acw','buildAcw','custom:agentcomplete','complete','[16]','Answer','[callProgressDetectingCustomer][logAnswer]','[callProgressDetectingCustomer][logAnswerGlobal]','crateCustomerReportQueue','talktime','BUSY','countbusyretry','custom:agentbusy','busy','[callProgressDetectingCustomer][logBusy]','[callProgressDetectingCustomer][logBusyGlobal]','dialBusyMaxRetry','dialBusyRetryFrequency','NOANSWER','countnoanswerretry','custom:agentnoanswer','noanswer','[callProgressDetectingCustomer][logNoAnswer]','[callProgressDetectingCustomer][logNoAnswerGlobal]','dialNoAnswerMaxRetry','CONGESTION','Congestion','custom:agentcongestion','congestion','[callProgressDetectingCustomer][logCongestionGlobal]','countcongestionretry','dialCongestionMaxRetry','CANCEL','AgentReject','custom:agentreject','[callProgressDetectingCustomer][logAgentReject]','countagentrejectretry','ABANDONED','countabandonedretry','[callProgressDetectingCustomer][logAbandoned]','countabandonedetry','dialAbandonedMaxRety','dialAbandonedRetryFrequency','countmachineretry','cause-txt','dialstatus','amd','[callProgressDetectingCustomer][hangupInAMD]','custom:amd','[callProgressDetectingCustomer][machine]','[default]','[Dialer][decrementTalkink][no\x20Hangup][Preview]','[callProgressDetectingCustomer][logUnknown]','[callProgressDetectingCustomer][logUnknownGlobal]','[originated][decrement][callProgressDetectingCustomer]','uniqueid','\x20Queue','isUndefined','reason','logAgent','createAgentHistory','NoAnswer','[callProgressDetectingAgent][logNoAnswer]','Busy','[callProgressDetectingAgent][logBusy]','[callProgressDetectingAgent][logCongestion]','AnswerAGI','[callProgressDetectingAgent][logAnswerAGI]','[callProgressDetectingAgent]','[originated][decrement][callProgressDetectingAgent]','checkInBlack','Contact','phone','lookAgent','isEmpty','\x20IdHopper:\x20','idContact','custom:agentcalled','called','[Preview][execCall][failure]','Call\x20failed','logBlacklist','createHistory','[Blacklist][error]','active','SIP/%s','unmonitored','run','execRun','unlock','getContactPreview','recallme','validateContact','isValid','checkIsBlackList','Contact.phone','Call\x20unsuccessful','[Preview][getContactPreview]','[Preview][validateContact][Empty\x20Contact]','Empty\x20Campaign','[Preview][validateContact][Trunk\x20not\x20work]','\x20Trunk\x20is\x20not\x20active','\x20Trunk\x20Backup\x20is\x20not\x20active','Trunk\x20not\x20work','\x20Not\x20Active','campaign\x20Name:\x20','Is\x20Valid','execCall','dialCutDigit','SIP/%s/%s%s','trim','substring','getCallerId','callerid','dialRandomLastDigitCallerIdNumber','getCallerIdRandom','originatecalleridname','extractCalleridNumber','addVariables','merge','toLowerVariables','starttime','Action','variablesAction','[originated][increment]','OriginateError','[originateFailure][logOriginateFailure]','actionid','logLookAgent','clone','isFailure','response','rejected','[callProgressDetectingAgent][logAnswer]','cause','[syncHangup][talking][cause]','statedesc','dialQueueProject','channelstate','transfer','callProgressDetectingAgent','[syncHangup][talking][transfer]','destlinkedid','destuniqueid','addVariable','variables','variable','keys','value','[syncVarSet][Preview]','inspect','transfertargetlinkedid','transfererlinkedid','util','lodash','bluebird','uuid','md5','ioredis','../../../config/environment','../../../config/logger','actionPreview','./rpcDb','./action','defaults','redis','localhost','socket.io-emitter','prototype','tail','finally','sequence','voiceQueues','trunks','actions','agents','clockClearZombieChannels','originateresponse','syncOriginateResponse','hangup','syncHangup','bind','syncHangupRequest','dialend','newexten','syncNewExten','varset','syncVarSet','attendedtransfer','syncAttendedTransfer','blindtransfer','syncBlindTransfer','campaignsPreview','emit','type','name','strategy','answered','loggedIn','pTalking','sumBillable','sumDuration','sumHoldTime','talking','total','unmanaged','abandoned','waiting','loggedInDb','dialActive','dialOriginateCallerIdName','dialOriginateCallerIdNumber','dialOriginateTimeout','dialPrefix','outboundAnswerAgiCallsDay','outboundAnswerCallsDay','outboundBlacklistCallsDay','outboundCongestionCallsDay','outboundDropCallsDayACS'];(function(_0x26d942,_0x37761b){var _0xe6a07e=function(_0x5c1398){while(--_0x5c1398){_0x26d942['push'](_0x26d942['shift']());}};_0xe6a07e(++_0x37761b);}(_0x950a,0x111));var _0xa950=function(_0x10acb2,_0x3ca870){_0x10acb2=_0x10acb2-0x0;var _0x186379=_0x950a[_0x10acb2];return _0x186379;};'use strict';var util=require(_0xa950('0x0'));var _=require(_0xa950('0x1'));var BPromise=require(_0xa950('0x2'));var uuid=require(_0xa950('0x3'));var moment=require('moment');var md5=require(_0xa950('0x4'));var Redis=require(_0xa950('0x5'));var config=require(_0xa950('0x6'));var logger=require(_0xa950('0x7'))('preview');var loggerAction=require(_0xa950('0x7'))(_0xa950('0x8'));var ami=require('../ami');var rpcDb=require(_0xa950('0x9'));var Action=require(_0xa950('0xa'));var ut=require('./util/util');config['redis']=_[_0xa950('0xb')](config[_0xa950('0xc')],{'host':_0xa950('0xd'),'port':0x18eb});var io=require(_0xa950('0xe'))(new Redis(config[_0xa950('0xc')]));var Sequence=function(){};Sequence[_0xa950('0xf')]['enqueue']=function(_0x523f3c){this['tail']=this[_0xa950('0x10')]?this['tail'][_0xa950('0x11')](_0x523f3c):_0x523f3c();};function Preview(_0x3c66c7){this[_0xa950('0x12')]=new Sequence();this['campaignsPreview']=_0x3c66c7[_0xa950('0x13')];this['trunks']=_0x3c66c7[_0xa950('0x14')];this[_0xa950('0x15')]={};this[_0xa950('0x16')]=_0x3c66c7['agents'];this[_0xa950('0x17')]=0x0;ami['on'](_0xa950('0x18'),this[_0xa950('0x19')]['bind'](this));ami['on'](_0xa950('0x1a'),this[_0xa950('0x1b')][_0xa950('0x1c')](this));ami['on']('hanguprequest',this[_0xa950('0x1d')][_0xa950('0x1c')](this));ami['on'](_0xa950('0x1e'),this['syncDialEnd'][_0xa950('0x1c')](this));ami['on'](_0xa950('0x1f'),this[_0xa950('0x20')][_0xa950('0x1c')](this));ami['on'](_0xa950('0x21'),this[_0xa950('0x22')][_0xa950('0x1c')](this));ami['on'](_0xa950('0x23'),this[_0xa950('0x24')][_0xa950('0x1c')](this));ami['on'](_0xa950('0x25'),this[_0xa950('0x26')][_0xa950('0x1c')](this));this['loopCampaigns'](this[_0xa950('0x27')]);}function emit(_0x1a10fe,_0x50abe1,_0x1f9894){io['to'](_0x1a10fe)[_0xa950('0x28')](_0x50abe1,_0x1f9894);}function emitCampaignPreview(_0x53a657){if(_0x53a657[_0xa950('0x29')]==='outbound'){var _0x2eda79={'id':_0x53a657['id'],'name':_0x53a657[_0xa950('0x2a')],'strategy':_0x53a657[_0xa950('0x2b')],'answered':_0x53a657[_0xa950('0x2c')],'available':_0x53a657['available'],'loggedIn':_0x53a657[_0xa950('0x2d')],'pTalking':_0x53a657[_0xa950('0x2e')],'sumBillable':_0x53a657[_0xa950('0x2f')],'sumDuration':_0x53a657[_0xa950('0x30')],'sumHoldTime':_0x53a657[_0xa950('0x31')]||0x0,'talking':_0x53a657[_0xa950('0x32')],'total':_0x53a657[_0xa950('0x33')],'type':_0x53a657[_0xa950('0x29')],'unmanaged':_0x53a657[_0xa950('0x34')],'abandoned':_0x53a657[_0xa950('0x35')],'waiting':_0x53a657[_0xa950('0x36')],'loggedInDb':_0x53a657[_0xa950('0x37')],'dialActive':_0x53a657[_0xa950('0x38')],'dialMethod':_0x53a657['dialMethod'],'dialOriginateCallerIdName':_0x53a657[_0xa950('0x39')],'dialOriginateCallerIdNumber':_0x53a657[_0xa950('0x3a')],'dialOriginateTimeout':_0x53a657[_0xa950('0x3b')],'dialPrefix':_0x53a657[_0xa950('0x3c')],'outboundAnswerAgiCallsDay':_0x53a657[_0xa950('0x3d')],'outboundAnswerCallsDay':_0x53a657[_0xa950('0x3e')],'outboundBlacklistCallsDay':_0x53a657[_0xa950('0x3f')],'outboundBusyCallsDay':_0x53a657['outboundBusyCallsDay'],'outboundCongestionCallsDay':_0x53a657[_0xa950('0x40')],'outboundDropCallsDayACS':_0x53a657[_0xa950('0x41')],'outboundDropCallsDayCallersExit':_0x53a657['outboundDropCallsDayCallersExit'],'outboundDropCallsDayTimeout':_0x53a657[_0xa950('0x42')],'outboundNoAnswerCallsDay':_0x53a657[_0xa950('0x43')],'outboundNoSuchCallsDay':_0x53a657[_0xa950('0x44')],'outboundOriginateFailureCallsDay':_0x53a657[_0xa950('0x45')],'outboundReCallsDay':_0x53a657[_0xa950('0x46')],'outboundRejectCallsDay':_0x53a657[_0xa950('0x47')],'outboundUnknownCallsDay':_0x53a657[_0xa950('0x48')],'outboundAbandonedCallsDay':_0x53a657[_0xa950('0x49')],'predictiveIntervalAnsweredCalls':_0x53a657[_0xa950('0x4a')],'predictiveIntervalAvgHoldtime':_0x53a657[_0xa950('0x4b')],'predictiveIntervalAvgTalktime':_0x53a657['predictiveIntervalAvgTalktime'],'predictiveIntervalDroppedCallsCallersExit':_0x53a657[_0xa950('0x4c')],'predictiveIntervalDroppedCallsTimeout':_0x53a657['predictiveIntervalDroppedCallsTimeout'],'predictiveIntervalErlangCalls':_0x53a657['predictiveIntervalErlangCalls'],'predictiveIntervalErlangCallsDroppedCalls':_0x53a657[_0xa950('0x4d')],'predictiveIntervalHitRate':_0x53a657['predictiveIntervalHitRate'],'predictiveIntervalMultiplicativeFactor':_0x53a657[_0xa950('0x4e')],'predictiveIntervalPauses':_0x53a657[_0xa950('0x4f')],'predictiveIntervalAvailable':_0x53a657[_0xa950('0x50')],'predictiveIntervalTotalCalls':_0x53a657[_0xa950('0x51')],'message':_0x53a657['message'],'originated':_0x53a657[_0xa950('0x52')],'erlangCalls':_0x53a657['erlangCalls'],'erlangCallToSecond':_0x53a657[_0xa950('0x53')],'erlangAbandonmentRate':_0x53a657[_0xa950('0x54')],'erlangBusyFactor':_0x53a657['erlangBusyFactor'],'startPredictive':_0x53a657['startPredictive'],'startProgressive':_0x53a657[_0xa950('0x55')]};if(_0x53a657[_0xa950('0x56')]){_0x2eda79[_0xa950('0x56')]={'id':_0x53a657[_0xa950('0x56')]['id'],'name':_0x53a657[_0xa950('0x56')][_0xa950('0x2a')],'active':_0x53a657['Trunk']['active'],'callerid':_0x53a657[_0xa950('0x56')]['callerid']};}if(_0x53a657[_0xa950('0x57')]){_0x2eda79[_0xa950('0x57')]={'id':_0x53a657[_0xa950('0x57')]['id'],'name':_0x53a657[_0xa950('0x57')][_0xa950('0x2a')]};}var _0xe3aeb=md5(JSON[_0xa950('0x58')](_0x2eda79));if(_0x53a657[_0xa950('0x4')]!==_0xe3aeb){_0x53a657[_0xa950('0x4')]=_0xe3aeb;emit(util[_0xa950('0x59')]('voice:queue:%s',_0x2eda79[_0xa950('0x2a')]),'voice_queue:save',_0x2eda79);}}}function emitVoiceQueueChannelRemove(_0x371091){logger[_0xa950('0x5a')]('[DEBUG]\x20Emit\x20voice_queue_channel:remove\x20event',JSON['stringify'](_0x371091));emit(util[_0xa950('0x59')](_0xa950('0x5b'),_0x371091['name']),_0xa950('0x5c'),_0x371091);io[_0xa950('0x28')]('voice_queue_presence:remove',_0x371091);}function notSendMessagesQueue(_0x213a58){if(_0x213a58[_0xa950('0x5d')]){if(_0x213a58[_0xa950('0x52')]===0x0&&_0x213a58[_0xa950('0x2e')]===0x0){_0x213a58[_0xa950('0x5d')]=![];_0x213a58[_0xa950('0x5e')]=0x0;_0x213a58[_0xa950('0x5f')]=0x0;_0x213a58[_0xa950('0x60')]='NOT_ACTIVE';ut[_0xa950('0x61')](_0xa950('0x62'),_0x213a58['name']+_0xa950('0x63'));}else{_0x213a58[_0xa950('0x60')]=_0xa950('0x64');ut['logger'](_0xa950('0x62'),_0x213a58[_0xa950('0x2a')]+_0xa950('0x65'));}emitCampaignPreview(_0x213a58);}}Preview['prototype']['loopCampaigns']=function(){var _0x3d5f95=this;setInterval(function(){_0x3d5f95[_0xa950('0x66')]();},0x7cf);};Preview[_0xa950('0xf')]['syncCampaigns']=function(){var _0x49a235=this['campaignsPreview'];this[_0xa950('0x17')]+=0x1;for(var _0x413f5e in _0x49a235){if(_0x49a235[_0xa950('0x67')](_0x413f5e)&&(_0x49a235[_0x413f5e][_0xa950('0x68')]===_0xa950('0x69')||_0x49a235[_0x413f5e]['dialMethod']===_0xa950('0x6a'))&&_0x49a235[_0x413f5e][_0xa950('0x29')]==='outbound'){if(this['clockClearZombieChannels']>0x7){this[_0xa950('0x17')]=0x0;this[_0xa950('0x6b')]();}}if(_0x49a235['hasOwnProperty'](_0x413f5e)&&_0x49a235[_0x413f5e]['dialMethod']==='preview'&&_0x49a235[_0x413f5e]['type']===_0xa950('0x6c')){if(_0x49a235[_0x413f5e][_0xa950('0x38')]){this['setMessage'](_0x49a235[_0x413f5e]);if(_0x49a235[_0x413f5e]['dialPreviewAutoRecallMe'])this[_0xa950('0x6d')](_0x49a235[_0x413f5e]);}else{notSendMessagesQueue(_0x49a235[_0x413f5e]);}}}};Preview['prototype'][_0xa950('0x6e')]=function(_0x3cbd16){var _0x1fdb52=this;this[_0xa950('0x12')][_0xa950('0x6f')](function(){if(!_[_0xa950('0x70')](_0x1fdb52[_0xa950('0x15')][_0x3cbd16])){loggerAction[_0xa950('0x5a')]('[clearZombieChannels][talking]',_0x3cbd16,_0xa950('0x71'),_0x1fdb52['actions'][_0x3cbd16][_0xa950('0x72')],_0xa950('0x73'),JSON[_0xa950('0x58')](_0x1fdb52[_0xa950('0x27')][_0x1fdb52[_0xa950('0x15')][_0x3cbd16][_0xa950('0x72')]][_0xa950('0x52')]),_0xa950('0x74'),JSON[_0xa950('0x58')](_0x1fdb52['campaignsPreview'][_0x1fdb52[_0xa950('0x15')][_0x3cbd16][_0xa950('0x72')]][_0xa950('0x2e')]),JSON[_0xa950('0x58')](_0x1fdb52[_0xa950('0x15')][_0x3cbd16]['dialAnswer']),JSON[_0xa950('0x58')](_[_0xa950('0x75')](_0x1fdb52[_0xa950('0x15')][_0x3cbd16],[_0xa950('0x76'),_0xa950('0x77'),_0xa950('0x78'),_0xa950('0x79')])));return ami['Action']({'action':_0xa950('0x7a'),'channel':_0x1fdb52[_0xa950('0x15')][_0x3cbd16][_0xa950('0x7b')]})['catch'](function(_0x54c917){if(_0x54c917[_0xa950('0x60')]===_0xa950('0x7c')){setTimeout(function(){if(_0x1fdb52[_0xa950('0x15')][_0x3cbd16]){ut[_0xa950('0x7d')](_0x1fdb52[_0xa950('0x27')][_0x1fdb52[_0xa950('0x15')][_0x3cbd16][_0xa950('0x72')]],_0xa950('0x7e'));if(_0x1fdb52['actions'][_0x3cbd16][_0xa950('0x7f')]===!![]){ut[_0xa950('0x80')](_0x1fdb52[_0xa950('0x27')][_0x1fdb52[_0xa950('0x15')][_0x3cbd16][_0xa950('0x72')]],'[clearZombieChannel]');ut[_0xa950('0x81')]('[Dialer][checkChannel][pTalking][Preview]'+_0x3cbd16,_0x1fdb52[_0xa950('0x15')][_0x3cbd16][_0xa950('0x72')]);}ut[_0xa950('0x81')](_0xa950('0x82')+_0x3cbd16,_0x1fdb52[_0xa950('0x15')][_0x3cbd16][_0xa950('0x72')]);delete _0x1fdb52['actions'][_0x3cbd16];}},0x2328);}});}});};Preview['prototype']['clearZombieChannels']=function(){var _0x41e086=this;loggerAction[_0xa950('0x5a')](_0xa950('0x83'),_[_0xa950('0x84')](this[_0xa950('0x15')]));for(var _0x34220e in this[_0xa950('0x15')]){if(_0x41e086[_0xa950('0x15')]['hasOwnProperty'](_0x34220e)){_0x41e086[_0xa950('0x6e')](_0x34220e);}}};Preview['prototype'][_0xa950('0x6d')]=function(_0x4e0fdc){var _0x3dddea=this;rpcDb['getContactRecallMe'](_0x4e0fdc['id'],ut[_0xa950('0x85')](this['agents']))[_0xa950('0x86')](function(_0x3e536e){if(!_[_0xa950('0x70')](_0x3e536e)){for(var _0x3d6e1b=0x0;_0x3d6e1b<_0x3e536e[_0xa950('0x87')];_0x3d6e1b+=0x1){if(ut['getDiff'](_0x3e536e[_0x3d6e1b][_0xa950('0x88')])<_0x4e0fdc[_0xa950('0x89')]*0x3c){if(_0x3e536e[_0x3d6e1b][_0xa950('0x8a')]&&!_0x3e536e[_0x3d6e1b][_0xa950('0x8a')][_0xa950('0x8b')]){_0x3dddea['run'](_0x3e536e[_0x3d6e1b]['id'])[_0xa950('0x86')](ut[_0xa950('0x8c')](_0xa950('0x8d')))[_0xa950('0x8e')](ut[_0xa950('0x8c')]('[RecallMe]'));}else{rpcDb[_0xa950('0x8f')](_0x3e536e[_0x3d6e1b]['id']);}}else{var _0x4b9c8d=new Action(_0x3e536e[_0x3d6e1b],_0x4e0fdc);_0x4b9c8d['starttime']=moment()[_0xa950('0x59')](_0xa950('0x90'));_0x4e0fdc[_0xa950('0x46')]+=0x1;ut[_0xa950('0x91')](_0x4b9c8d,0x17,'RecallInQueue');if(_0x4e0fdc['dialRecallInQueue']){rpcDb[_0xa950('0x92')](ut[_0xa950('0x93')](_0x3e536e[_0x3d6e1b]));rpcDb[_0xa950('0x94')](_0x4b9c8d,'[HistoryDialRecallInQueue][historyCatch]');}else{ut[_0xa950('0x91')](_0x4b9c8d,0x16,_0xa950('0x95'));rpcDb[_0xa950('0x94')](_0x4b9c8d,_0xa950('0x96'));rpcDb[_0xa950('0x97')](_0x4b9c8d,_0xa950('0x96'));}}}}})[_0xa950('0x8e')](ut[_0xa950('0x8c')](_0xa950('0x98')));};Preview['prototype'][_0xa950('0x99')]=function(_0x57a070){_0x57a070[_0xa950('0x5d')]=!![];if(ut[_0xa950('0x9a')](_0x57a070[_0xa950('0x2d')])){_0x57a070[_0xa950('0x60')]=_0xa950('0x9b');}else if(!ut[_0xa950('0x9c')](_0x57a070[_0xa950('0x38')])){_0x57a070[_0xa950('0x60')]=_0xa950('0x9d');}else if(!this[_0xa950('0x9e')](_0x57a070[_0xa950('0x56')])){if(!this[_0xa950('0x9e')](_0x57a070[_0xa950('0x9f')])){_0x57a070['message']='TRUNK_IS_NOT_REACHABLE';}else{_0x57a070[_0xa950('0x60')]=_0xa950('0xa0');}}else{_0x57a070[_0xa950('0x60')]=_0xa950('0xa0');}emitCampaignPreview(_0x57a070);};Preview[_0xa950('0xf')][_0xa950('0xa1')]=function(_0x22efe1,_0x513341,_0x3e7805){var _0x411e90=this;var _0x297be4=this[_0xa950('0x15')][_0x513341];var _0x6e253a=this[_0xa950('0x27')][_0x297be4[_0xa950('0x72')]];var _0x3df858;if(_0x6e253a){switch(_0x3e7805){case'1':_0x6e253a['outboundNoSuchCallsDay']+=0x1;_0x297be4[_0xa950('0xa2')]+=0x1;_0x297be4[_0xa950('0xa3')]=ut[_0xa950('0xa4')](_0x297be4);ut[_0xa950('0x91')](_0x297be4,0x0,_0xa950('0xa5'));ami['emit'](_0xa950('0xa6'),ut[_0xa950('0xa7')](_0x297be4,_0xa950('0xa8')));rpcDb[_0xa950('0x94')](_0x297be4,_0xa950('0xa9'));if(ut['totalGlobal'](_0x297be4)>=_0x6e253a[_0xa950('0xaa')]){_0x3df858=ut[_0xa950('0xab')](_0x297be4,0xf,_0xa950('0xac'));rpcDb['createCustomerFinal'](_0x3df858,_0xa950('0xad'));}else{if(_0x297be4[_0xa950('0xa2')]>=_0x6e253a[_0xa950('0xae')]){rpcDb[_0xa950('0x97')](_0x297be4,'[callProgressDetectingCustomer][logNoSuchGlobal]');}else{rpcDb[_0xa950('0xaf')](ut[_0xa950('0xb0')](_0x297be4,'countnosuchnumberretry',_0x6e253a[_0xa950('0xb1')]),_0x297be4[_0xa950('0xb2')],_0x297be4[_0xa950('0xb3')]);}}delete this[_0xa950('0x15')][_0x22efe1[_0xa950('0xb4')]];break;case _0xa950('0xb5'):var _0x17b60c=moment()[_0xa950('0x59')](_0xa950('0x90'));_0x297be4[_0xa950('0xb6')]=_0x17b60c;_0x297be4[_0xa950('0xb7')]=_0x17b60c;_0x297be4[_0xa950('0x7f')]=!![];_0x6e253a[_0xa950('0x2e')]+=0x1;logger['info']('[syncHangup][talking][increment]',_0x297be4['uniqueid'],'\x20Queue',_0x6e253a[_0xa950('0x2a')],_0xa950('0x74'),_0x6e253a[_0xa950('0x2e')]);ami['emit'](_0xa950('0xb8'),ut[_0xa950('0xa7')](_0x297be4,_0xa950('0xb9'),this[_0xa950('0x27')][_0x297be4[_0xa950('0x72')]]));if(_0x6e253a[_0xa950('0xba')]){ami[_0xa950('0x28')]('custom:agentConnectPreview',ut[_0xa950('0xbb')](_0x297be4));}break;case'16':ami[_0xa950('0x28')](_0xa950('0xbc'),ut[_0xa950('0xa7')](_0x297be4,_0xa950('0xbd'),this[_0xa950('0x27')][_0x297be4[_0xa950('0x72')]]));emitVoiceQueueChannelRemove(ut['buildObj'](_0x297be4,_0xa950('0xbd')));_0x6e253a[_0xa950('0x3e')]+=0x1;_0x6e253a['total']+=0x1;_0x6e253a[_0xa950('0x2c')]+=0x1;ut[_0xa950('0x80')](_0x6e253a,_0xa950('0xbe'));_0x297be4[_0xa950('0xa3')]=ut[_0xa950('0xa4')](_0x297be4);ut[_0xa950('0x91')](_0x297be4,0x4,_0xa950('0xbf'));rpcDb['createCustomerHistory'](_0x297be4,_0xa950('0xc0'));rpcDb[_0xa950('0x97')](_0x297be4,_0xa950('0xc1'));rpcDb[_0xa950('0xc2')](_0x297be4);_0x6e253a[_0xa950('0x30')]+=_0x297be4[_0xa950('0xc3')];_0x6e253a['sumBillable']+=_0x297be4[_0xa950('0xc3')];logger[_0xa950('0x5a')]('[syncHangup][talking][decrement]',_0x297be4['uniqueid'],'\x20Queue',_0x6e253a['name'],_0xa950('0x74'),_0x6e253a[_0xa950('0x2e')]);delete this['actions'][_0x22efe1[_0xa950('0xb4')]];break;case _0xa950('0xc4'):_0x6e253a['outboundBusyCallsDay']+=0x1;_0x297be4[_0xa950('0xc5')]+=0x1;_0x297be4[_0xa950('0xa3')]=ut[_0xa950('0xa4')](_0x297be4);ut['logCustomer'](_0x297be4,0x5,'Busy');ami[_0xa950('0x28')](_0xa950('0xc6'),ut[_0xa950('0xa7')](_0x297be4,_0xa950('0xc7')));rpcDb[_0xa950('0x94')](_0x297be4,_0xa950('0xc8'));if(ut[_0xa950('0xa4')](_0x297be4)>=_0x6e253a[_0xa950('0xaa')]){_0x3df858=ut[_0xa950('0xab')](_0x297be4,0xf,_0xa950('0xac'));rpcDb[_0xa950('0x97')](_0x3df858,_0xa950('0xc9'));}else{if(_0x297be4['countbusyretry']>=_0x6e253a[_0xa950('0xca')]){rpcDb['createCustomerFinal'](_0x297be4,_0xa950('0xc8'));}else{rpcDb[_0xa950('0xaf')](ut['scheduledAt'](_0x297be4,_0xa950('0xc5'),_0x6e253a[_0xa950('0xcb')]),_0x297be4['unlockAgent'],_0x297be4[_0xa950('0xb3')]);}}break;case _0xa950('0xcc'):_0x6e253a['outboundNoAnswerCallsDay']+=0x1;_0x297be4[_0xa950('0xcd')]+=0x1;_0x297be4['countglobal']=ut[_0xa950('0xa4')](_0x297be4);ut[_0xa950('0x91')](_0x297be4,0x3,'NoAnswer');ami[_0xa950('0x28')](_0xa950('0xce'),ut[_0xa950('0xa7')](_0x297be4,_0xa950('0xcf')));rpcDb[_0xa950('0x94')](_0x297be4,_0xa950('0xd0'));if(ut[_0xa950('0xa4')](_0x297be4)>=_0x6e253a[_0xa950('0xaa')]){_0x3df858=ut['cloneAction'](_0x297be4,0xf,_0xa950('0xac'));rpcDb[_0xa950('0x97')](_0x3df858,_0xa950('0xd1'));}else{if(_0x297be4[_0xa950('0xcd')]>=_0x6e253a[_0xa950('0xd2')]){rpcDb[_0xa950('0x97')](_0x297be4,'[callProgressDetectingCustomer][logNoAnswer]');}else{rpcDb[_0xa950('0xaf')](ut[_0xa950('0xb0')](_0x297be4,'countnoanswerretry',_0x6e253a['dialNoAnswerRetryFrequency']),_0x297be4[_0xa950('0xb2')],_0x297be4[_0xa950('0xb3')]);}}break;case _0xa950('0xd3'):_0x6e253a[_0xa950('0x40')]+=0x1;_0x297be4['countcongestionretry']+=0x1;_0x297be4['countglobal']=ut[_0xa950('0xa4')](_0x297be4);ut[_0xa950('0x91')](_0x297be4,0x8,_0xa950('0xd4'));ami[_0xa950('0x28')](_0xa950('0xd5'),ut[_0xa950('0xa7')](_0x297be4,_0xa950('0xd6')));rpcDb[_0xa950('0x94')](_0x297be4,'[callProgressDetectingCustomer][logCongestion]');if(ut[_0xa950('0xa4')](_0x297be4)>=_0x6e253a[_0xa950('0xaa')]){_0x3df858=ut['cloneAction'](_0x297be4,0xf,_0xa950('0xac'));rpcDb[_0xa950('0x97')](_0x3df858,_0xa950('0xd7'));}else{if(_0x297be4[_0xa950('0xd8')]>=_0x6e253a[_0xa950('0xd9')]){rpcDb['createCustomerFinal'](_0x297be4,'[callProgressDetectingCustomer][logCongestion]');}else{rpcDb[_0xa950('0xaf')](ut[_0xa950('0xb0')](_0x297be4,'countcongestionretry',_0x6e253a[_0xa950('0xcb')]),_0x297be4['unlockAgent'],_0x297be4[_0xa950('0xb3')]);}}break;case _0xa950('0xda'):_0x6e253a[_0xa950('0x47')]+=0x1;_0x297be4['countagentrejectretry']+=0x1;_0x297be4['countglobal']=ut[_0xa950('0xa4')](_0x297be4);ut['logCustomer'](_0x297be4,0x14,_0xa950('0xdb'));ami[_0xa950('0x28')](_0xa950('0xdc'),ut[_0xa950('0xa7')](_0x297be4,'agentreject'));rpcDb[_0xa950('0x94')](_0x297be4,'[syncHangupRequest][logAgentReject]');if(ut[_0xa950('0xa4')](_0x297be4)>=_0x6e253a[_0xa950('0xaa')]){_0x3df858=ut['cloneAction'](_0x297be4,0x14,_0xa950('0xdb'));rpcDb['createCustomerFinal'](_0x3df858,_0xa950('0xdd'));}else{if(_0x297be4[_0xa950('0xde')]>=_0x6e253a['dialAgentRejectMaxRetry']){rpcDb[_0xa950('0x97')](_0x297be4,_0xa950('0xdd'));}else{rpcDb[_0xa950('0xaf')](ut[_0xa950('0xb0')](_0x297be4,'countagentrejectretry',_0x6e253a['dialAgentRejectRetryFrequency']),_0x297be4[_0xa950('0xb2')],_0x297be4[_0xa950('0xb3')]);}}break;case _0xa950('0xdf'):_0x6e253a[_0xa950('0x49')]+=0x1;_0x297be4[_0xa950('0xe0')]+=0x1;_0x297be4[_0xa950('0xa3')]=ut[_0xa950('0xa4')](_0x297be4);ut[_0xa950('0x91')](_0x297be4,0xb,'Abandoned');rpcDb['createCustomerHistory'](_0x297be4,_0xa950('0xe1'));if(ut[_0xa950('0xa4')](_0x297be4)>=_0x6e253a[_0xa950('0xaa')]){_0x3df858=ut[_0xa950('0xab')](_0x297be4,0xf,'Global');rpcDb[_0xa950('0x97')](_0x3df858,'[callProgressDetectingCustomer][logAbandoned]');}else{if(_0x297be4[_0xa950('0xe2')]>=_0x6e253a[_0xa950('0xe3')]){rpcDb['createCustomerFinal'](_0x297be4,_0xa950('0xe1'));}else{rpcDb['rescheduleContact'](ut[_0xa950('0xb0')](_0x297be4,_0xa950('0xe0'),_0x6e253a[_0xa950('0xe4')]),_0x297be4[_0xa950('0xb2')],_0x297be4['activeContact']);}}break;case'18':_0x6e253a[_0xa950('0x48')]+=0x1;_0x297be4[_0xa950('0xe5')]+=0x1;_0x297be4['countglobal']=ut[_0xa950('0xa4')](_0x297be4);ut[_0xa950('0x91')](_0x297be4,0x12,_0x22efe1[_0xa950('0xe6')]||_0x22efe1[_0xa950('0xe7')]);ami[_0xa950('0x28')]('custom:amd',ut[_0xa950('0xa7')](_0x297be4,_0xa950('0xe8')));rpcDb[_0xa950('0x94')](_0x297be4,_0xa950('0xe9'));if(ut['totalGlobal'](_0x297be4)>=_0x6e253a['dialGlobalMaxRetry']){_0x3df858=ut[_0xa950('0xab')](_0x297be4,0xf,'Global');rpcDb['createCustomerFinal'](_0x3df858,'[callProgressDetectingCustomer][hangupInAMD]');}else{rpcDb[_0xa950('0x97')](_0x297be4,'[callProgressDetectingCustomer][hangupInAMD]');}delete this[_0xa950('0x15')][_0x22efe1[_0xa950('0xb4')]];break;case'19':_0x6e253a['outboundUnknownCallsDay']+=0x1;_0x297be4[_0xa950('0xa3')]=ut['totalGlobal'](_0x297be4);ut[_0xa950('0x91')](_0x297be4,0x13,_0x22efe1[_0xa950('0xe6')]||_0x22efe1[_0xa950('0xe7')]);ami[_0xa950('0x28')](_0xa950('0xea'),ut['buildObj'](_0x297be4,_0xa950('0xe8')));rpcDb[_0xa950('0x94')](_0x297be4,'[callProgressDetectingCustomer][machine]');if(ut['totalGlobal'](_0x297be4)>=_0x6e253a[_0xa950('0xaa')]){_0x3df858=ut[_0xa950('0xab')](_0x297be4,0xf,'Global');rpcDb['createCustomerFinal'](_0x3df858,_0xa950('0xeb'));}else{rpcDb['createCustomerFinal'](_0x297be4,_0xa950('0xeb'));}delete this['actions'][_0x22efe1[_0xa950('0xb4')]];break;default:if(_0x297be4[_0xa950('0x7f')]){ut[_0xa950('0x80')](_0x6e253a,_0xa950('0xec'));ut[_0xa950('0x81')](_0xa950('0xed')+_0x6e253a['name'],_0x22efe1);}_0x6e253a[_0xa950('0x48')]+=0x1;_0x297be4[_0xa950('0xa3')]=ut[_0xa950('0xa4')](_0x297be4);ut[_0xa950('0x91')](_0x297be4,0xc,_0x22efe1[_0xa950('0xe6')]||_0x22efe1[_0xa950('0xe7')]);rpcDb[_0xa950('0x94')](_0x297be4,_0xa950('0xee'));if(ut['totalGlobal'](_0x297be4)>=_0x6e253a[_0xa950('0xaa')]){_0x3df858=ut['cloneAction'](_0x297be4,0xf,'Global');rpcDb[_0xa950('0x97')](_0x3df858,_0xa950('0xef'));}else{rpcDb[_0xa950('0x97')](_0x297be4,'[callProgressDetectingCustomer][logUnknownGlobal]');}delete this[_0xa950('0x15')][_0x22efe1[_0xa950('0xb4')]];}if(!(_0x297be4['dialAnswer']&&_0x3e7805==='16')){ut[_0xa950('0x7d')](_0x6e253a,'[callProgressDetectingCustomer]');logger[_0xa950('0x5a')](_0xa950('0xf0'),_0x297be4[_0xa950('0xf1')],_0xa950('0xf2'),_0x6e253a['name'],_0xa950('0x73'),_0x6e253a['originated']);}if(_0x3e7805!=='ANSWER'){delete this[_0xa950('0x15')][_0x22efe1[_0xa950('0xb4')]];delete this['actions'][_0x22efe1['destlinkedid']];}}};Preview['prototype']['callProgressDetectingAgent']=function(_0x26db29,_0x54fdd9,_0x61869a){if(_['isUndefined'](_0x54fdd9)&&'object'!==typeof _0x54fdd9){return;}if(_[_0xa950('0xf3')](_0x61869a)&&'object'!==typeof _0x61869a){return;}switch(_0x61869a[_0xa950('0xf4')]){case'0':ut[_0xa950('0xf5')](_0x26db29,0x0,_0xa950('0xa5'));rpcDb[_0xa950('0xf6')](_0x26db29,'[callProgressDetectingAgent][logNoSuch]');break;case'3':ut[_0xa950('0xf5')](_0x26db29,0x3,_0xa950('0xf7'));rpcDb['createAgentHistory'](_0x26db29,_0xa950('0xf8'));break;case'5':ut[_0xa950('0xf5')](_0x26db29,0x5,_0xa950('0xf9'));rpcDb[_0xa950('0xf6')](_0x26db29,_0xa950('0xfa'));break;case'8':ut['logAgent'](_0x26db29,0x8,_0xa950('0xd4'));rpcDb[_0xa950('0xf6')](_0x26db29,_0xa950('0xfb'));break;case'22':ut[_0xa950('0xf5')](_0x26db29,0x16,_0xa950('0xfc'));rpcDb[_0xa950('0xf6')](_0x26db29,_0xa950('0xfd'));break;default:ut[_0xa950('0xf5')](_0x26db29,0xc,_0x61869a['reason']);rpcDb[_0xa950('0xf6')](_0x26db29,_0xa950('0xfb'));}ut[_0xa950('0x7d')](_0x54fdd9,_0xa950('0xfe'));logger[_0xa950('0x5a')](_0xa950('0xff'),_0x26db29[_0xa950('0xf1')],_0xa950('0xf2'),_0x54fdd9[_0xa950('0x2a')],_0xa950('0x73'),_0x54fdd9[_0xa950('0x52')]);delete this[_0xa950('0x15')][_0x26db29[_0xa950('0xf1')]];};Preview[_0xa950('0xf')][_0xa950('0x100')]=function(_0x5b213b,_0x2ffb5c,_0x55cee6,_0x445c0c,_0x4ccc64){var _0x2ee7b4=this;return new BPromise(function(_0x5e7fec,_0x4a684f){if(_[_0xa950('0x70')](_0x2ffb5c)||_[_0xa950('0x70')](_0x2ffb5c[_0xa950('0x101')])||_[_0xa950('0x70')](_0x2ffb5c['Contact'][_0xa950('0x102')])||_['isNil'](_0x2ffb5c['VoiceQueueId'])){_0x4a684f(ut[_0xa950('0x60')]('Contact\x20is\x20undefined',_0x445c0c,_0x4ccc64));return;}var _0x34d520=uuid['v4']();var _0x567b27=_0x2ee7b4['campaignsPreview'][_0x2ffb5c['Queue'][_0xa950('0x2a')]];var _0x1d5cd5=_0x55cee6?_0x2ee7b4[_0xa950('0x16')][_0x55cee6]['id']:undefined;_0x2ee7b4['actions'][_0x34d520]=new Action(_0x2ffb5c,_0x567b27,_0x34d520,_0x55cee6,_0x1d5cd5);var _0x3a4378=_0x2ee7b4['actions'][_0x34d520];_0x3a4378[_0xa950('0xb2')]=_0x445c0c;_0x3a4378[_0xa950('0xb3')]=_0x4ccc64;_0x3a4378[_0xa950('0x103')]=_0x55cee6;if(_[_0xa950('0x104')](_0x5b213b)){_0x2ee7b4['execCall'](_0x3a4378,_0x567b27,_0x2ffb5c,_0x55cee6)[_0xa950('0x86')](function(_0x1425ae){logger[_0xa950('0x5a')]('[Preview][execCall][success]','Queue:\x20'+_0x3a4378['queue']+_0xa950('0x105')+_0x3a4378[_0xa950('0x106')],JSON[_0xa950('0x58')](_0x1425ae));ami[_0xa950('0x28')](_0xa950('0x107'),ut[_0xa950('0xa7')](_0x3a4378,_0xa950('0x108'),_0x2ee7b4[_0xa950('0x27')][_0x3a4378[_0xa950('0x72')]]));_0x5e7fec(ut[_0xa950('0x60')]('Calling'));})[_0xa950('0x8e')](function(_0x1ba837){ut[_0xa950('0x61')](_0xa950('0x109'),_0x1ba837);_0x4a684f(ut[_0xa950('0x60')](_0xa950('0x10a'),_0x445c0c,_0x4ccc64));});}else{_0x567b27[_0xa950('0x3f')]+=0x1;ut[_0xa950('0x10b')](_0x3a4378);rpcDb[_0xa950('0x10c')](_0x3a4378,_0xa950('0x10d'));delete _0x2ee7b4[_0xa950('0x15')][_0x34d520];_0x4a684f(ut[_0xa950('0x60')]('Contact\x20in\x20black\x20List',_0x445c0c,_0x4ccc64));}});};Preview[_0xa950('0xf')]['isTrunkReachable']=function(_0x5600d3){return!_[_0xa950('0x70')](_0x5600d3)&&!_[_0xa950('0x70')](_0x5600d3[_0xa950('0x2a')])&&!_['isNil'](_0x5600d3[_0xa950('0x10e')])&&_0x5600d3[_0xa950('0x10e')]&&!_[_0xa950('0x70')](this[_0xa950('0x14')][util[_0xa950('0x59')](_0xa950('0x10f'),_0x5600d3[_0xa950('0x2a')])])&&!_[_0xa950('0x70')](this[_0xa950('0x14')][util['format']('SIP/%s',_0x5600d3[_0xa950('0x2a')])][_0xa950('0x7a')])&&(this[_0xa950('0x14')][util[_0xa950('0x59')](_0xa950('0x10f'),_0x5600d3[_0xa950('0x2a')])][_0xa950('0x7a')]==='reachable'||this[_0xa950('0x14')][util[_0xa950('0x59')](_0xa950('0x10f'),_0x5600d3['name'])][_0xa950('0x7a')]===_0xa950('0x110'));};Preview['prototype'][_0xa950('0x111')]=function(_0xcb37d7,_0x3e7476){var _0x3a35d8=this;return new BPromise(function(_0x2a1a0e,_0x26f847){_0x3a35d8[_0xa950('0x112')](_0xcb37d7,_0x3e7476)[_0xa950('0x86')](function(_0x3a81a8){_0x2a1a0e(_[_0xa950('0x75')](_0x3a81a8,[_0xa950('0x60')]));})['catch'](function(_0x201856){if(_0x201856[_0xa950('0x113')]){rpcDb['unlockContact'](_0xcb37d7);}if(_0x201856['active']){rpcDb[_0xa950('0x8f')](_0xcb37d7);}_0x26f847(_['pick'](_0x201856,['message']));});});};Preview[_0xa950('0xf')][_0xa950('0x112')]=function(_0x1dc1b4,_0x1b8342){var _0x23b787=this;return new BPromise(function(_0x53dfee,_0x415b38){var _0x28e96e,_0x269109;rpcDb[_0xa950('0x114')](_0x1dc1b4)[_0xa950('0x86')](function(_0xdb368b){if(!_[_0xa950('0x70')](_0xdb368b[0x0])){_0x269109=_0xdb368b[0x0][_0xa950('0x115')]?![]:!![];_0x28e96e=_0xdb368b[0x0][_0xa950('0x115')]?!![]:![];_0x28e96e=_0x1b8342?!![]:_0x28e96e;}var _0x2b6f53=_0x23b787[_0xa950('0x116')](_0xdb368b);if(_0x2b6f53[_0xa950('0x117')]){rpcDb[_0xa950('0x118')](_[_0xa950('0x75')](_0xdb368b[0x0],['VoiceQueueId',_0xa950('0x119')]))[_0xa950('0x86')](function(_0x39b406){_0x23b787[_0xa950('0x100')](_0x39b406,_0xdb368b[0x0],_0x1b8342,_0x269109,_0x28e96e)[_0xa950('0x86')](function(_0x3eb493){_0x53dfee(_0x3eb493);})[_0xa950('0x8e')](function(_0x56dc97){_0x415b38(_0x56dc97);});})[_0xa950('0x8e')](function(_0x52f2fb){ut['logger']('[Preview][checkIsBlackList]',_0x52f2fb);_0x415b38(ut[_0xa950('0x60')](_0xa950('0x11a'),_0x269109,_0x28e96e));});}else{_0x415b38(ut[_0xa950('0x60')](_0x2b6f53['message'],_0x269109,_0x28e96e));}})[_0xa950('0x8e')](function(_0xf0d4f9){ut['logger'](_0xa950('0x11b'),_0xf0d4f9);_0x415b38(ut[_0xa950('0x60')](_0xa950('0x11a'),![],!![]));});});};Preview[_0xa950('0xf')][_0xa950('0x116')]=function(_0x20612c){if(_['isNil'](_0x20612c)||_[_0xa950('0x104')](_0x20612c)||!_[_0xa950('0x70')](_0x20612c[0x0][_0xa950('0x8a')])&&_[_0xa950('0x70')](_0x20612c[0x0][_0xa950('0x8a')][_0xa950('0x2a')])){ut[_0xa950('0x61')](_0xa950('0x11c'),_0x20612c);return{'isValid':![],'message':'Empty\x20Contact'};}var _0x2df1e3=this[_0xa950('0x27')][_0x20612c[0x0][_0xa950('0x71')][_0xa950('0x2a')]];_0x2df1e3['message']='ACTIVE';if(_[_0xa950('0x70')](_0x2df1e3)){ut[_0xa950('0x61')]('[Preview][validateContact][Empty\x20Campaign]',_0x2df1e3);return{'isValid':![],'message':_0xa950('0x11d')};}if(!this['isTrunkReachable'](_0x2df1e3[_0xa950('0x56')])){ut[_0xa950('0x61')](_0xa950('0x11e'),'campaign\x20Name:\x20'+_0x2df1e3[_0xa950('0x2a')]+_0xa950('0x11f'));if(!this[_0xa950('0x9e')](_0x2df1e3[_0xa950('0x9f')])){ut[_0xa950('0x61')]('[Preview][validateContact][Trunk\x20not\x20work]',_0x2df1e3[_0xa950('0x2a')]+_0xa950('0x120'));return{'isValid':![],'message':_0xa950('0x121')};}}if(!ut[_0xa950('0x9c')](_0x2df1e3[_0xa950('0x38')])){ut['logger']('[Preview][validateContact][Campaign\x20Active]',_0x2df1e3[_0xa950('0x2a')]+_0xa950('0x122'));return{'isValid':![],'message':_0xa950('0x123')+_0x2df1e3['name']+_0xa950('0x122')};}return{'isValid':!![],'message':_0xa950('0x124')};};Preview[_0xa950('0xf')][_0xa950('0x125')]=function(_0xb49ce0,_0x3972f2,_0x3c4d4e,_0x3c17fd){var _0x6a0dfa=this;return new BPromise(function(_0x37cd61,_0x4ecc18){var _0x588c0c=_0xb49ce0[_0xa950('0xf1')];var _0x12bd1f=_0x6a0dfa[_0xa950('0x9e')](_0x3972f2[_0xa950('0x56')])?util[_0xa950('0x59')]('SIP/%s/%s%s',_0x3972f2[_0xa950('0x56')]['name'],_[_0xa950('0x70')](_0x3972f2['dialPrefix'])?'':_0x3972f2[_0xa950('0x3c')]['trim']()||'',_0x3972f2['dialCutDigit']>0x0?_0x3c4d4e[_0xa950('0x101')][_0xa950('0x102')]['substring'](_0x3972f2[_0xa950('0x126')]):_0x3c4d4e[_0xa950('0x101')]['phone']):util[_0xa950('0x59')](_0xa950('0x127'),_[_0xa950('0x70')](_0x3972f2[_0xa950('0x9f')])?_0x3972f2[_0xa950('0x56')]['name']:_0x3972f2[_0xa950('0x9f')][_0xa950('0x2a')],_[_0xa950('0x70')](_0x3972f2[_0xa950('0x3c')])?'':_0x3972f2[_0xa950('0x3c')][_0xa950('0x128')]()||'',_0x3972f2[_0xa950('0x126')]>0x0?_0x3c4d4e[_0xa950('0x101')]['phone'][_0xa950('0x129')](_0x3972f2[_0xa950('0x126')]):_0x3c4d4e[_0xa950('0x101')][_0xa950('0x102')]);var _0xd873c6=_0x6a0dfa[_0xa950('0x9e')](_0x3972f2[_0xa950('0x56')])?ut[_0xa950('0x12a')](_0x3972f2[_0xa950('0x56')][_0xa950('0x12b')],_0x3972f2[_0xa950('0x39')],_0x3972f2[_0xa950('0x12c')]>0x0?ut[_0xa950('0x12d')](_0x3972f2['dialOriginateCallerIdNumber'],_0x3972f2[_0xa950('0x12c')]):_0x3972f2[_0xa950('0x3a')]):ut[_0xa950('0x12a')](_[_0xa950('0x70')](_0x3972f2[_0xa950('0x9f')])?_0x3972f2[_0xa950('0x56')][_0xa950('0x12b')]:_0x3972f2[_0xa950('0x9f')][_0xa950('0x12b')],_0x3972f2[_0xa950('0x39')],_0x3972f2[_0xa950('0x12c')]>0x0?ut['getCallerIdRandom'](_0x3972f2[_0xa950('0x3a')],_0x3972f2['dialRandomLastDigitCallerIdNumber']):_0x3972f2[_0xa950('0x3a')]);if(_0xd873c6){_0xb49ce0[_0xa950('0x12e')]=ut['extractCalleridName'](_0xd873c6);_0xb49ce0['originatecalleridnum']=ut[_0xa950('0x12f')](_0xd873c6);}var _0x4de2b0=ut[_0xa950('0x130')](_0x3972f2,_0x3c4d4e,_0x12bd1f,_0xd873c6,_0x588c0c,_0xb49ce0);_[_0xa950('0x131')](_0xb49ce0,ut[_0xa950('0x132')](_0x4de2b0));_0xb49ce0[_0xa950('0x133')]=moment()[_0xa950('0x59')](_0xa950('0x90'));ami[_0xa950('0x134')](ut[_0xa950('0x135')](_0xb49ce0,_0x3972f2,_0x4de2b0,_0xb49ce0['activeContact'],_0x3c17fd))[_0xa950('0x86')](function(_0xaeddb6){_0x3972f2['originated']+=0x1;logger[_0xa950('0x5a')](_0xa950('0x136'),_0x588c0c,_0xa950('0xf2'),_0x3972f2[_0xa950('0x2a')],'originated:\x20',_0x3972f2['originated']);_0x37cd61(_0xaeddb6);})[_0xa950('0x8e')](function(_0x5450e6){ut[_0xa950('0xf5')](_0xb49ce0,0xe,_0xa950('0x137'));rpcDb[_0xa950('0xf6')](_0xb49ce0,_0xa950('0x138'));_0x4ecc18(_0x5450e6);});});};Preview[_0xa950('0xf')]['syncNewExten']=function(_0x244fc7){if(this[_0xa950('0x15')][_0x244fc7['linkedid']]){this[_0xa950('0x15')][_0x244fc7[_0xa950('0xb4')]][_0xa950('0x7b')]=_0x244fc7['channel'];}};Preview[_0xa950('0xf')][_0xa950('0x19')]=function(_0x14360d){var _0x3113ec=this;var _0x4450b2=this[_0xa950('0x15')][_0x14360d[_0xa950('0x139')]];if(_0x4450b2){if(_0x4450b2[_0xa950('0x103')]&&this[_0xa950('0x16')][_0x4450b2[_0xa950('0x103')]]){ut[_0xa950('0x13a')](_0x4450b2,this[_0xa950('0x16')][_0x4450b2[_0xa950('0x103')]]['name'],this[_0xa950('0x16')][_0x4450b2['lookAgent']]['id']);}var _0x436b5=_[_0xa950('0x13b')](_0x4450b2);_0x436b5[_0xa950('0xb6')]=moment()[_0xa950('0x59')](_0xa950('0x90'));var _0x105344=_0x3113ec['campaignsPreview'][_0x4450b2[_0xa950('0x72')]];if(ut[_0xa950('0x13c')](_0x14360d[_0xa950('0x13d')])){if(_0x4450b2[_0xa950('0xb2')]){rpcDb['unlockContact'](_0x4450b2[_0xa950('0x106')]);}if(_0x4450b2['activeContact']){rpcDb[_0xa950('0x8f')](_0x4450b2[_0xa950('0x106')]);}ami[_0xa950('0x28')]('custom:agentringnoanswer',ut[_0xa950('0xa7')](_0x4450b2,_0xa950('0x13e'),this[_0xa950('0x27')][_0x4450b2[_0xa950('0x72')]]));this['callProgressDetectingAgent'](_0x436b5,_0x105344,_0x14360d);}else{_0x4450b2[_0xa950('0x133')]=moment()[_0xa950('0x59')](_0xa950('0x90'));ut[_0xa950('0xf5')](_0x436b5,0x4,_0xa950('0xbf'));rpcDb[_0xa950('0xf6')](_0x436b5,_0xa950('0x13f'));}}};Preview['prototype'][_0xa950('0x1b')]=function(_0x1cea0f){var _0x554377=this;var _0x4fda9e=this[_0xa950('0x15')][_0x1cea0f[_0xa950('0xb4')]];var _0x37d86c;if(_0x4fda9e){_0x37d86c=this['campaignsPreview'][_0x4fda9e[_0xa950('0x72')]];logger[_0xa950('0x5a')]('[syncHangup][talking]',_0x1cea0f[_0xa950('0xb4')],'\x20Queue',_0x37d86c[_0xa950('0x2a')],_0xa950('0x74'),_0x37d86c['pTalking']);}if(this[_0xa950('0x15')][_0x1cea0f[_0xa950('0xb4')]]&&_0x1cea0f[_0xa950('0xb4')]!==_0x1cea0f[_0xa950('0xf1')]){if(_0x1cea0f[_0xa950('0x140')]==='16'&&this[_0xa950('0x15')][_0x1cea0f[_0xa950('0xb4')]][_0xa950('0x7f')]){this[_0xa950('0xa1')](_0x1cea0f,_0x1cea0f[_0xa950('0xb4')],_0x1cea0f['cause']);}else if(this[_0xa950('0x15')][_0x1cea0f[_0xa950('0xb4')]][_0xa950('0x7f')]){logger[_0xa950('0x5a')](_0xa950('0x141'),_0x1cea0f[_0xa950('0xb4')],_0x1cea0f[_0xa950('0x140')],'\x20Queue',_0x37d86c['name'],_0xa950('0x74'),_0x37d86c[_0xa950('0x2e')]);this['callProgressDetectingCustomer'](_0x1cea0f,_0x1cea0f['linkedid'],_0x1cea0f[_0xa950('0x140')]);}}else if(_0x4fda9e&&_[_0xa950('0x70')](_0x4fda9e[_0xa950('0x142')])&&_0x37d86c[_0xa950('0x143')]&&_0x1cea0f[_0xa950('0xb4')]===_0x1cea0f['uniqueid']&&_[_0xa950('0x70')](_0x1cea0f['reason'])&&_0x1cea0f['cause']==='16'&&_0x1cea0f[_0xa950('0x144')]==='6'&&_[_0xa950('0xf3')](_0x4fda9e[_0xa950('0x145')])){if(_0x4fda9e['unlockAgent']){rpcDb['unlockContact'](_0x4fda9e[_0xa950('0x106')]);}if(_0x4fda9e[_0xa950('0xb3')]){rpcDb[_0xa950('0x8f')](_0x4fda9e['idContact']);}_0x1cea0f[_0xa950('0xf4')]='22';this[_0xa950('0x146')](_0x4fda9e,_0x37d86c,_0x1cea0f);}else if(_0x4fda9e&&_0x4fda9e[_0xa950('0x145')]){if(_0x1cea0f[_0xa950('0x140')]==='16'&&this[_0xa950('0x15')][_0x1cea0f[_0xa950('0xb4')]]['dialAnswer']){logger[_0xa950('0x5a')](_0xa950('0x147'),_0x1cea0f[_0xa950('0xb4')],_0x1cea0f[_0xa950('0x140')],_0xa950('0xf2'),_0x37d86c['name'],_0xa950('0x74'),_0x37d86c['pTalking']);this[_0xa950('0xa1')](_0x1cea0f,_0x1cea0f[_0xa950('0xb4')],_0x1cea0f[_0xa950('0x140')]);}else if(this[_0xa950('0x15')][_0x1cea0f[_0xa950('0xb4')]]['dialAnswer']){logger['info'](_0xa950('0x141'),_0x1cea0f[_0xa950('0xb4')],_0x1cea0f[_0xa950('0x140')],'\x20Queue',_0x37d86c[_0xa950('0x2a')],_0xa950('0x74'),_0x37d86c[_0xa950('0x2e')]);this[_0xa950('0xa1')](_0x1cea0f,_0x1cea0f[_0xa950('0xb4')],_0x1cea0f['cause']);}}};Preview[_0xa950('0xf')]['syncDialEnd']=function(_0x3d1823){if(this[_0xa950('0x15')][_0x3d1823[_0xa950('0x148')]]&&_0x3d1823[_0xa950('0x148')]!==_0x3d1823[_0xa950('0x149')]){this[_0xa950('0xa1')](_0x3d1823,_0x3d1823[_0xa950('0x148')],_0x3d1823[_0xa950('0xe7')]);}};Preview['prototype'][_0xa950('0x1d')]=function(_0x106a95){if(this[_0xa950('0x15')][_0x106a95[_0xa950('0xb4')]]&&_0x106a95[_0xa950('0xb4')]!==_0x106a95[_0xa950('0xf1')]&&!this['actions'][_0x106a95['linkedid']]['dialAnswer']){if(_0x106a95[_0xa950('0x140')]==='1'){this[_0xa950('0xa1')](_0x106a95,_0x106a95[_0xa950('0xb4')],_0x106a95[_0xa950('0x140')]);}}};Preview[_0xa950('0xf')][_0xa950('0x14a')]=function(_0x537aca,_0x4f520f,_0x4dc9b4){if(this['actions'][_0x537aca]){if(_[_0xa950('0x70')](this[_0xa950('0x15')][_0x537aca][_0xa950('0x14b')])){this[_0xa950('0x15')][_0x537aca][_0xa950('0x14b')]={};}this[_0xa950('0x15')][_0x537aca]['variables'][_0x4f520f]=_0x4dc9b4;}};Preview[_0xa950('0xf')][_0xa950('0x22')]=function(_0x3401a5){try{if(!_[_0xa950('0x70')](_0x3401a5)){if(ut['filterKey'](_['keys'](_0x3401a5[_0xa950('0x14c')])[0x0])){this['addVariable'](_0x3401a5[_0xa950('0xf1')],_[_0xa950('0x14d')](_0x3401a5['variable'])[0x0],_0x3401a5[_0xa950('0x14e')]);}}}catch(_0x3f1b38){logger['error'](_0xa950('0x14f'),util[_0xa950('0x150')](_0x3f1b38,{'showHidden':![],'depth':null}));}};Preview[_0xa950('0xf')][_0xa950('0x24')]=function(_0x34ff3d){if(_0x34ff3d){if(this['actions'][_0x34ff3d['transfertargetlinkedid']]){this[_0xa950('0x15')][_0x34ff3d[_0xa950('0x151')]][_0xa950('0x145')]=!![];}}};Preview[_0xa950('0xf')][_0xa950('0x26')]=function(_0x12405f){if(_0x12405f){if(this[_0xa950('0x15')][_0x12405f['transfererlinkedid']]){this[_0xa950('0x15')][_0x12405f[_0xa950('0x152')]][_0xa950('0x145')]=!![];}}};module['exports']=Preview;