c599ee64c91b916c55e59e5245b6ae8382e48bb8
[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 _0x7d33=['syncHangup','cause','[syncHangup][talking][cause]','callProgressDetectingCustomer','statedesc','channelstate','destlinkedid','destuniqueid','addVariable','keys','variable','[syncVarSet][Preview]','inspect','transfertargetlinkedid','transfererlinkedid','transfer','exports','util','bluebird','uuid','moment','md5','ioredis','../../../config/logger','preview','./rpcDb','./action','./util/util','defaults','redis','localhost','socket.io-emitter','prototype','tail','finally','sequence','campaignsPreview','voiceQueues','trunks','actions','agents','clockClearZombieChannels','originateresponse','syncOriginateResponse','hangup','bind','hanguprequest','syncHangupRequest','dialend','syncDialEnd','newexten','syncNewExten','varset','syncVarSet','attendedtransfer','syncAttendedTransfer','blindtransfer','syncBlindTransfer','loopCampaigns','emit','answered','available','loggedIn','pTalking','sumBillable','sumDuration','talking','total','type','unmanaged','abandoned','waiting','loggedInDb','dialActive','dialMethod','dialOriginateCallerIdName','dialOriginateCallerIdNumber','outboundAnswerAgiCallsDay','outboundAnswerCallsDay','outboundBlacklistCallsDay','outboundCongestionCallsDay','outboundDropCallsDayACS','outboundDropCallsDayCallersExit','outboundDropCallsDayTimeout','outboundNoAnswerCallsDay','outboundOriginateFailureCallsDay','outboundReCallsDay','outboundUnknownCallsDay','outboundAbandonedCallsDay','predictiveIntervalAvgHoldtime','predictiveIntervalAvgTalktime','predictiveIntervalErlangCalls','predictiveIntervalErlangCallsDroppedCalls','predictiveIntervalPauses','predictiveIntervalTotalCalls','message','originated','erlangCalls','erlangCallToSecond','erlangAbandonmentRate','erlangBusyFactor','startPredictive','startProgressive','Trunk','name','callerid','Interval','stringify','format','voice_queue:save','info','voice:queue:%s','voice_queue_channel:remove','voice_queue_presence:remove','NOT_ACTIVE','logger','[CampaignPreview]\x20Campaign\x20Queue:\x20','\x20is\x20not\x20active','IS_DISACTIVED','\x20is\x20disactive','syncCampaigns','hasOwnProperty','booked','outbound','clearZombieChannels','setMessage','clearZombieChannel','enqueue','isNil','[clearZombieChannels][talking]','Queue','queue','originated:\x20','pTalking:\x20','dialAnswer','contactId','UserId','VoiceQueueId','ListId','Action','status','channel','catch','No\x20such\x20channel','updateOriginated','[clearZombieChannel]','loggerError','[Dialer][checkChannel][pTalking][Preview]','[Dialer][checkChannel][Preview]','recallMe','getContactRecallMe','agentReadyId','then','getDiff','scheduledat','dialRecallMeTimeout','Agent','voicePause','logger2','[RecallMe]','disableContact','starttime','YYYY-MM-DD\x20HH:mm:ss','RecallInQueue','rescheduleContactInQueue','createBody','logCustomer','RecallFailedTimeout','createCustomerHistory','[HistoryRecallClose]','sendMessageOneNotActive','IsNotLoggedIn','isActive','isTrunkReachable','TrunkBackup','ACTIVE','outboundNoSuchCallsDay','countnosuchnumberretry','countglobal','totalGlobal','NoSuchNumber','nosuchnumber','[callProgressDetectingCustomer][logNoSuch]','dialGlobalMaxRetry','Global','[callProgressDetectingCustomer][logNoSuchGlobal]','dialNoSuchNumberMaxRetry','createCustomerFinal','rescheduleContact','dialNoSuchNumberRetryFrequency','unlockAgent','activeContact','linkedid','responsetime','answertime','\x20Queue','custom:agentconnect','buildObj','connect','custom:agentConnectPreview','buildAcw','custom:agentcomplete','complete','Answer','[syncHangup][talking][decrement]','uniqueid','BUSY','Busy','custom:agentbusy','busy','cloneAction','[callProgressDetectingCustomer][logBusyGlobal]','countbusyretry','dialBusyMaxRetry','dialBusyRetryFrequency','countnoanswerretry','custom:agentnoanswer','noanswer','[callProgressDetectingCustomer][logNoAnswer]','[callProgressDetectingCustomer][logNoAnswerGlobal]','dialNoAnswerMaxRetry','scheduledAt','dialNoAnswerRetryFrequency','countcongestionretry','Congestion','custom:agentcongestion','[callProgressDetectingCustomer][logCongestion]','[callProgressDetectingCustomer][logCongestionGlobal]','CANCEL','outboundRejectCallsDay','countagentrejectretry','AgentReject','custom:agentreject','[syncHangupRequest][logAgentReject]','[callProgressDetectingCustomer][logAgentReject]','dialAgentRejectRetryFrequency','Abandoned','[callProgressDetectingCustomer][logAbandoned]','countabandonedetry','dialAbandonedMaxRety','countabandonedretry','countmachineretry','dialstatus','custom:amd','amd','[callProgressDetectingCustomer][hangupInAMD]','[callProgressDetectingCustomer][machine]','decrementTalkink','[default]','cause-txt','[callProgressDetectingCustomer][logUnknown]','[callProgressDetectingCustomer][logUnknownGlobal]','[callProgressDetectingCustomer]','[originated][decrement][callProgressDetectingCustomer]','ANSWER','callProgressDetectingAgent','isUndefined','object','reason','logAgent','createAgentHistory','NoAnswer','[callProgressDetectingAgent][logNoAnswer]','[callProgressDetectingAgent][logBusy]','[callProgressDetectingAgent][logCongestion]','AnswerAGI','[callProgressDetectingAgent][logAnswerAGI]','[originated][decrement][callProgressDetectingAgent]','checkInBlack','Contact','phone','Contact\x20is\x20undefined','lookAgent','execCall','[Preview][execCall][success]','Queue:\x20','custom:agentcalled','Calling','[Preview][execCall][failure]','Call\x20failed','logBlacklist','createHistory','[Blacklist][error]','Contact\x20in\x20black\x20List','active','SIP/%s','reachable','unmonitored','run','execRun','unlock','unlockContact','recallme','isValid','checkIsBlackList','pick','Contact.phone','[Preview][checkIsBlackList]','Call\x20unsuccessful','[Preview][getContactPreview]','validateContact','isEmpty','Empty\x20Contact','[Preview][validateContact][Empty\x20Campaign]','Empty\x20Campaign','[Preview][validateContact][Trunk\x20not\x20work]','campaign\x20Name:\x20','\x20Trunk\x20is\x20not\x20active','\x20Trunk\x20Backup\x20is\x20not\x20active','\x20Not\x20Active','Is\x20Valid','SIP/%s/%s%s','dialPrefix','dialCutDigit','substring','trim','getCallerId','getCallerIdRandom','dialRandomLastDigitCallerIdNumber','originatecalleridname','extractCalleridNumber','addVariables','merge','toLowerVariables','variablesAction','channelAgent','destconnectedlinenum','user:%s','calleridnum','[originated][increment]','[originateFailure][logOriginateFailure]','clone','isFailure','idContact','custom:agentringnoanswer','rejected','[callProgressDetectingAgent][logAnswer]'];(function(_0x14c2af,_0x57f2bb){var _0xa3a7bf=function(_0x5d9a16){while(--_0x5d9a16){_0x14c2af['push'](_0x14c2af['shift']());}};_0xa3a7bf(++_0x57f2bb);}(_0x7d33,0x162));var _0x37d3=function(_0x21823b,_0x19b482){_0x21823b=_0x21823b-0x0;var _0xc4b79=_0x7d33[_0x21823b];return _0xc4b79;};'use strict';var util=require(_0x37d3('0x0'));var _=require('lodash');var BPromise=require(_0x37d3('0x1'));var uuid=require(_0x37d3('0x2'));var moment=require(_0x37d3('0x3'));var md5=require(_0x37d3('0x4'));var Redis=require(_0x37d3('0x5'));var config=require('../../../config/environment');var logger=require(_0x37d3('0x6'))(_0x37d3('0x7'));var loggerAction=require(_0x37d3('0x6'))('actionPreview');var ami=require('../ami');var rpcDb=require(_0x37d3('0x8'));var Action=require(_0x37d3('0x9'));var ut=require(_0x37d3('0xa'));config['redis']=_[_0x37d3('0xb')](config[_0x37d3('0xc')],{'host':_0x37d3('0xd'),'port':0x18eb});var io=require(_0x37d3('0xe'))(new Redis(config[_0x37d3('0xc')]));var Sequence=function(){};Sequence[_0x37d3('0xf')]['enqueue']=function(_0x1543e6){this[_0x37d3('0x10')]=this[_0x37d3('0x10')]?this[_0x37d3('0x10')][_0x37d3('0x11')](_0x1543e6):_0x1543e6();};function Preview(_0x301d2b){this[_0x37d3('0x12')]=new Sequence();this[_0x37d3('0x13')]=_0x301d2b[_0x37d3('0x14')];this[_0x37d3('0x15')]=_0x301d2b[_0x37d3('0x15')];this[_0x37d3('0x16')]={};this['agents']=_0x301d2b[_0x37d3('0x17')];this[_0x37d3('0x18')]=0x0;ami['on'](_0x37d3('0x19'),this[_0x37d3('0x1a')]['bind'](this));ami['on'](_0x37d3('0x1b'),this['syncHangup'][_0x37d3('0x1c')](this));ami['on'](_0x37d3('0x1d'),this[_0x37d3('0x1e')][_0x37d3('0x1c')](this));ami['on'](_0x37d3('0x1f'),this[_0x37d3('0x20')][_0x37d3('0x1c')](this));ami['on'](_0x37d3('0x21'),this[_0x37d3('0x22')][_0x37d3('0x1c')](this));ami['on'](_0x37d3('0x23'),this[_0x37d3('0x24')][_0x37d3('0x1c')](this));ami['on'](_0x37d3('0x25'),this[_0x37d3('0x26')]['bind'](this));ami['on'](_0x37d3('0x27'),this[_0x37d3('0x28')][_0x37d3('0x1c')](this));this[_0x37d3('0x29')](this[_0x37d3('0x13')]);}function emit(_0x1c50f8,_0x5a4515,_0xc6bc5){io['to'](_0x1c50f8)[_0x37d3('0x2a')](_0x5a4515,_0xc6bc5);}function emitCampaignPreview(_0x4c5dfa){if(_0x4c5dfa['type']==='outbound'){var _0x2da4f5={'id':_0x4c5dfa['id'],'name':_0x4c5dfa['name'],'strategy':_0x4c5dfa['strategy'],'answered':_0x4c5dfa[_0x37d3('0x2b')],'available':_0x4c5dfa[_0x37d3('0x2c')],'loggedIn':_0x4c5dfa[_0x37d3('0x2d')],'pTalking':_0x4c5dfa[_0x37d3('0x2e')],'sumBillable':_0x4c5dfa[_0x37d3('0x2f')],'sumDuration':_0x4c5dfa[_0x37d3('0x30')],'sumHoldTime':_0x4c5dfa['sumHoldTime']||0x0,'talking':_0x4c5dfa[_0x37d3('0x31')],'total':_0x4c5dfa[_0x37d3('0x32')],'type':_0x4c5dfa[_0x37d3('0x33')],'unmanaged':_0x4c5dfa[_0x37d3('0x34')],'abandoned':_0x4c5dfa[_0x37d3('0x35')],'waiting':_0x4c5dfa[_0x37d3('0x36')],'loggedInDb':_0x4c5dfa[_0x37d3('0x37')],'dialActive':_0x4c5dfa[_0x37d3('0x38')],'dialMethod':_0x4c5dfa[_0x37d3('0x39')],'dialOriginateCallerIdName':_0x4c5dfa[_0x37d3('0x3a')],'dialOriginateCallerIdNumber':_0x4c5dfa[_0x37d3('0x3b')],'dialOriginateTimeout':_0x4c5dfa['dialOriginateTimeout'],'dialPrefix':_0x4c5dfa['dialPrefix'],'outboundAnswerAgiCallsDay':_0x4c5dfa[_0x37d3('0x3c')],'outboundAnswerCallsDay':_0x4c5dfa[_0x37d3('0x3d')],'outboundBlacklistCallsDay':_0x4c5dfa[_0x37d3('0x3e')],'outboundBusyCallsDay':_0x4c5dfa['outboundBusyCallsDay'],'outboundCongestionCallsDay':_0x4c5dfa[_0x37d3('0x3f')],'outboundDropCallsDayACS':_0x4c5dfa[_0x37d3('0x40')],'outboundDropCallsDayCallersExit':_0x4c5dfa[_0x37d3('0x41')],'outboundDropCallsDayTimeout':_0x4c5dfa[_0x37d3('0x42')],'outboundNoAnswerCallsDay':_0x4c5dfa[_0x37d3('0x43')],'outboundNoSuchCallsDay':_0x4c5dfa['outboundNoSuchCallsDay'],'outboundOriginateFailureCallsDay':_0x4c5dfa[_0x37d3('0x44')],'outboundReCallsDay':_0x4c5dfa[_0x37d3('0x45')],'outboundRejectCallsDay':_0x4c5dfa['outboundRejectCallsDay'],'outboundUnknownCallsDay':_0x4c5dfa[_0x37d3('0x46')],'outboundAbandonedCallsDay':_0x4c5dfa[_0x37d3('0x47')],'predictiveIntervalAnsweredCalls':_0x4c5dfa['predictiveIntervalAnsweredCalls'],'predictiveIntervalAvgHoldtime':_0x4c5dfa[_0x37d3('0x48')],'predictiveIntervalAvgTalktime':_0x4c5dfa[_0x37d3('0x49')],'predictiveIntervalDroppedCallsCallersExit':_0x4c5dfa['predictiveIntervalDroppedCallsCallersExit'],'predictiveIntervalDroppedCallsTimeout':_0x4c5dfa['predictiveIntervalDroppedCallsTimeout'],'predictiveIntervalErlangCalls':_0x4c5dfa[_0x37d3('0x4a')],'predictiveIntervalErlangCallsDroppedCalls':_0x4c5dfa[_0x37d3('0x4b')],'predictiveIntervalHitRate':_0x4c5dfa['predictiveIntervalHitRate'],'predictiveIntervalMultiplicativeFactor':_0x4c5dfa['predictiveIntervalMultiplicativeFactor'],'predictiveIntervalPauses':_0x4c5dfa[_0x37d3('0x4c')],'predictiveIntervalAvailable':_0x4c5dfa['predictiveIntervalAvailable'],'predictiveIntervalTotalCalls':_0x4c5dfa[_0x37d3('0x4d')],'message':_0x4c5dfa[_0x37d3('0x4e')],'originated':_0x4c5dfa[_0x37d3('0x4f')],'erlangCalls':_0x4c5dfa[_0x37d3('0x50')],'erlangCallToSecond':_0x4c5dfa[_0x37d3('0x51')],'erlangAbandonmentRate':_0x4c5dfa[_0x37d3('0x52')],'erlangBusyFactor':_0x4c5dfa[_0x37d3('0x53')],'startPredictive':_0x4c5dfa[_0x37d3('0x54')],'startProgressive':_0x4c5dfa[_0x37d3('0x55')]};if(_0x4c5dfa[_0x37d3('0x56')]){_0x2da4f5[_0x37d3('0x56')]={'id':_0x4c5dfa[_0x37d3('0x56')]['id'],'name':_0x4c5dfa['Trunk'][_0x37d3('0x57')],'active':_0x4c5dfa[_0x37d3('0x56')]['active'],'callerid':_0x4c5dfa[_0x37d3('0x56')][_0x37d3('0x58')]};}if(_0x4c5dfa[_0x37d3('0x59')]){_0x2da4f5[_0x37d3('0x59')]={'id':_0x4c5dfa['Interval']['id'],'name':_0x4c5dfa[_0x37d3('0x59')][_0x37d3('0x57')]};}var _0x57b184=md5(JSON[_0x37d3('0x5a')](_0x2da4f5));if(_0x4c5dfa['md5']!==_0x57b184){_0x4c5dfa['md5']=_0x57b184;emit(util[_0x37d3('0x5b')]('voice:queue:%s',_0x2da4f5[_0x37d3('0x57')]),_0x37d3('0x5c'),_0x2da4f5);}}}function emitVoiceQueueChannelRemove(_0x5036a4){logger[_0x37d3('0x5d')]('[DEBUG]\x20Emit\x20voice_queue_channel:remove\x20event',JSON[_0x37d3('0x5a')](_0x5036a4));emit(util[_0x37d3('0x5b')](_0x37d3('0x5e'),_0x5036a4['name']),_0x37d3('0x5f'),_0x5036a4);io[_0x37d3('0x2a')](_0x37d3('0x60'),_0x5036a4);}function notSendMessagesQueue(_0x450fdf){if(_0x450fdf['sendMessageOneNotActive']){if(_0x450fdf[_0x37d3('0x4f')]===0x0&&_0x450fdf[_0x37d3('0x2e')]===0x0){_0x450fdf['sendMessageOneNotActive']=![];_0x450fdf[_0x37d3('0x2c')]=0x0;_0x450fdf['paused']=0x0;_0x450fdf['message']=_0x37d3('0x61');ut[_0x37d3('0x62')](_0x37d3('0x63'),_0x450fdf['name']+_0x37d3('0x64'));}else{_0x450fdf['message']=_0x37d3('0x65');ut[_0x37d3('0x62')](_0x37d3('0x63'),_0x450fdf[_0x37d3('0x57')]+_0x37d3('0x66'));}emitCampaignPreview(_0x450fdf);}}Preview[_0x37d3('0xf')]['loopCampaigns']=function(){var _0x2f3fef=this;setInterval(function(){_0x2f3fef[_0x37d3('0x67')]();},0x7cf);};Preview[_0x37d3('0xf')][_0x37d3('0x67')]=function(){var _0x414bd2=this[_0x37d3('0x13')];this[_0x37d3('0x18')]+=0x1;for(var _0x2e98ed in _0x414bd2){if(_0x414bd2[_0x37d3('0x68')](_0x2e98ed)&&(_0x414bd2[_0x2e98ed][_0x37d3('0x39')]===_0x37d3('0x7')||_0x414bd2[_0x2e98ed][_0x37d3('0x39')]===_0x37d3('0x69'))&&_0x414bd2[_0x2e98ed][_0x37d3('0x33')]===_0x37d3('0x6a')){if(this[_0x37d3('0x18')]>0x7){this[_0x37d3('0x18')]=0x0;this[_0x37d3('0x6b')]();}}if(_0x414bd2[_0x37d3('0x68')](_0x2e98ed)&&_0x414bd2[_0x2e98ed][_0x37d3('0x39')]==='preview'&&_0x414bd2[_0x2e98ed][_0x37d3('0x33')]==='outbound'){if(_0x414bd2[_0x2e98ed]['dialActive']){this[_0x37d3('0x6c')](_0x414bd2[_0x2e98ed]);this['recallMe'](_0x414bd2[_0x2e98ed]);}else{notSendMessagesQueue(_0x414bd2[_0x2e98ed]);}}}};Preview[_0x37d3('0xf')][_0x37d3('0x6d')]=function(_0x34e260){var _0x512dbc=this;this['sequence'][_0x37d3('0x6e')](function(){if(!_[_0x37d3('0x6f')](_0x512dbc[_0x37d3('0x16')][_0x34e260])){loggerAction['info'](_0x37d3('0x70'),_0x34e260,_0x37d3('0x71'),_0x512dbc['actions'][_0x34e260][_0x37d3('0x72')],_0x37d3('0x73'),JSON[_0x37d3('0x5a')](_0x512dbc[_0x37d3('0x13')][_0x512dbc[_0x37d3('0x16')][_0x34e260][_0x37d3('0x72')]][_0x37d3('0x4f')]),_0x37d3('0x74'),JSON[_0x37d3('0x5a')](_0x512dbc[_0x37d3('0x13')][_0x512dbc[_0x37d3('0x16')][_0x34e260][_0x37d3('0x72')]][_0x37d3('0x2e')]),JSON[_0x37d3('0x5a')](_0x512dbc[_0x37d3('0x16')][_0x34e260][_0x37d3('0x75')]),JSON['stringify'](_['pick'](_0x512dbc[_0x37d3('0x16')][_0x34e260],[_0x37d3('0x76'),_0x37d3('0x77'),_0x37d3('0x78'),_0x37d3('0x79')])));return ami[_0x37d3('0x7a')]({'action':_0x37d3('0x7b'),'channel':_0x512dbc[_0x37d3('0x16')][_0x34e260][_0x37d3('0x7c')]})[_0x37d3('0x7d')](function(_0x3c0fad){if(_0x3c0fad['message']===_0x37d3('0x7e')){setTimeout(function(){if(_0x512dbc['actions'][_0x34e260]){ut[_0x37d3('0x7f')](_0x512dbc[_0x37d3('0x13')][_0x512dbc[_0x37d3('0x16')][_0x34e260]['queue']],_0x37d3('0x80'));if(_0x512dbc[_0x37d3('0x16')][_0x34e260]['dialAnswer']===!![]){ut['decrementTalkink'](_0x512dbc[_0x37d3('0x13')][_0x512dbc[_0x37d3('0x16')][_0x34e260]['queue']],_0x37d3('0x80'));ut[_0x37d3('0x81')](_0x37d3('0x82')+_0x34e260,_0x512dbc[_0x37d3('0x16')][_0x34e260][_0x37d3('0x72')]);}ut['loggerError'](_0x37d3('0x83')+_0x34e260,_0x512dbc['actions'][_0x34e260][_0x37d3('0x72')]);delete _0x512dbc[_0x37d3('0x16')][_0x34e260];}},0x2328);}});}});};Preview[_0x37d3('0xf')]['clearZombieChannels']=function(){var _0x42db6e=this;loggerAction[_0x37d3('0x5d')]('[action]',_['size'](this[_0x37d3('0x16')]));for(var _0xafc012 in this[_0x37d3('0x16')]){if(_0x42db6e['actions'][_0x37d3('0x68')](_0xafc012)){_0x42db6e[_0x37d3('0x6d')](_0xafc012);}}};Preview[_0x37d3('0xf')][_0x37d3('0x84')]=function(_0x5868d7){var _0x2641ae=this;rpcDb[_0x37d3('0x85')](_0x5868d7['id'],ut[_0x37d3('0x86')](this[_0x37d3('0x17')]))[_0x37d3('0x87')](function(_0x3d5d05){if(!_[_0x37d3('0x6f')](_0x3d5d05)){for(var _0x28dcfc=0x0;_0x28dcfc<_0x3d5d05['length'];_0x28dcfc+=0x1){if(ut[_0x37d3('0x88')](_0x3d5d05[_0x28dcfc][_0x37d3('0x89')])<_0x5868d7[_0x37d3('0x8a')]*0x3c){if(_0x3d5d05[_0x28dcfc][_0x37d3('0x8b')]&&!_0x3d5d05[_0x28dcfc]['Agent'][_0x37d3('0x8c')]){_0x2641ae['run'](_0x3d5d05[_0x28dcfc]['id'])[_0x37d3('0x87')](ut[_0x37d3('0x8d')](_0x37d3('0x8e')))[_0x37d3('0x7d')](ut[_0x37d3('0x8d')](_0x37d3('0x8e')));}else{rpcDb[_0x37d3('0x8f')](_0x3d5d05[_0x28dcfc]['id']);}}else{var _0x1850a7=new Action(_0x3d5d05[_0x28dcfc],_0x5868d7);_0x1850a7[_0x37d3('0x90')]=moment()[_0x37d3('0x5b')](_0x37d3('0x91'));_0x5868d7[_0x37d3('0x45')]+=0x1;ut['logCustomer'](_0x1850a7,0x17,_0x37d3('0x92'));if(_0x5868d7['dialRecallInQueue']){rpcDb[_0x37d3('0x93')](ut[_0x37d3('0x94')](_0x3d5d05[_0x28dcfc]));rpcDb['createCustomerHistory'](_0x1850a7,'[HistoryDialRecallInQueue][historyCatch]');}else{ut[_0x37d3('0x95')](_0x1850a7,0x16,_0x37d3('0x96'));rpcDb[_0x37d3('0x97')](_0x1850a7,_0x37d3('0x98'));rpcDb['createCustomerFinal'](_0x1850a7,_0x37d3('0x98'));}}}}})[_0x37d3('0x7d')](ut[_0x37d3('0x8d')]('[getContactRecallMe]'));};Preview['prototype']['setMessage']=function(_0x558e64){_0x558e64[_0x37d3('0x99')]=!![];if(ut[_0x37d3('0x9a')](_0x558e64[_0x37d3('0x2d')])){_0x558e64[_0x37d3('0x4e')]='AGENTS_NOT_LOGGED';}else if(!ut[_0x37d3('0x9b')](_0x558e64[_0x37d3('0x38')])){_0x558e64[_0x37d3('0x4e')]=_0x37d3('0x61');}else if(!this[_0x37d3('0x9c')](_0x558e64[_0x37d3('0x56')])){if(!this[_0x37d3('0x9c')](_0x558e64[_0x37d3('0x9d')])){_0x558e64[_0x37d3('0x4e')]='TRUNK_IS_NOT_REACHABLE';}else{_0x558e64[_0x37d3('0x4e')]=_0x37d3('0x9e');}}else{_0x558e64[_0x37d3('0x4e')]='ACTIVE';}emitCampaignPreview(_0x558e64);};Preview[_0x37d3('0xf')]['callProgressDetectingCustomer']=function(_0x2b3256,_0x23020f,_0x12a08b){var _0x37d176=this;var _0x1e4fce=this[_0x37d3('0x16')][_0x23020f];var _0x442fd0=this[_0x37d3('0x13')][_0x1e4fce[_0x37d3('0x72')]];var _0x29885a;if(_0x442fd0){switch(_0x12a08b){case'1':_0x442fd0[_0x37d3('0x9f')]+=0x1;_0x1e4fce[_0x37d3('0xa0')]+=0x1;_0x1e4fce[_0x37d3('0xa1')]=ut[_0x37d3('0xa2')](_0x1e4fce);ut[_0x37d3('0x95')](_0x1e4fce,0x0,_0x37d3('0xa3'));ami[_0x37d3('0x2a')]('custom:agentnosuchnumber',ut['buildObj'](_0x1e4fce,_0x37d3('0xa4')));rpcDb['createCustomerHistory'](_0x1e4fce,_0x37d3('0xa5'));if(ut[_0x37d3('0xa2')](_0x1e4fce)>=_0x442fd0[_0x37d3('0xa6')]){_0x29885a=ut['cloneAction'](_0x1e4fce,0xf,_0x37d3('0xa7'));rpcDb['createCustomerFinal'](_0x29885a,_0x37d3('0xa8'));}else{if(_0x1e4fce['countnosuchnumberretry']>=_0x442fd0[_0x37d3('0xa9')]){rpcDb[_0x37d3('0xaa')](_0x1e4fce,_0x37d3('0xa8'));}else{rpcDb[_0x37d3('0xab')](ut['scheduledAt'](_0x1e4fce,_0x37d3('0xa0'),_0x442fd0[_0x37d3('0xac')]),_0x1e4fce[_0x37d3('0xad')],_0x1e4fce[_0x37d3('0xae')]);}}delete this['actions'][_0x2b3256[_0x37d3('0xaf')]];break;case'ANSWER':var _0xf4ed0f=moment()[_0x37d3('0x5b')](_0x37d3('0x91'));_0x1e4fce[_0x37d3('0xb0')]=_0xf4ed0f;_0x1e4fce[_0x37d3('0xb1')]=_0xf4ed0f;_0x1e4fce[_0x37d3('0x75')]=!![];_0x442fd0['pTalking']+=0x1;logger[_0x37d3('0x5d')]('[syncHangup][talking][increment]',_0x1e4fce['uniqueid'],_0x37d3('0xb2'),_0x442fd0['name'],'pTalking:\x20',_0x442fd0['pTalking']);ami['emit'](_0x37d3('0xb3'),ut[_0x37d3('0xb4')](_0x1e4fce,_0x37d3('0xb5'),this['campaignsPreview'][_0x1e4fce[_0x37d3('0x72')]]));if(_0x442fd0['acw']){ami[_0x37d3('0x2a')](_0x37d3('0xb6'),ut[_0x37d3('0xb7')](_0x1e4fce));}break;case'16':ami['emit'](_0x37d3('0xb8'),ut[_0x37d3('0xb4')](_0x1e4fce,'complete',this[_0x37d3('0x13')][_0x1e4fce[_0x37d3('0x72')]]));emitVoiceQueueChannelRemove(ut[_0x37d3('0xb4')](_0x1e4fce,_0x37d3('0xb9')));_0x442fd0[_0x37d3('0x3d')]+=0x1;_0x442fd0[_0x37d3('0x32')]+=0x1;_0x442fd0['answered']+=0x1;ut['decrementTalkink'](_0x442fd0,'[16]');_0x1e4fce[_0x37d3('0xa1')]=ut[_0x37d3('0xa2')](_0x1e4fce);ut[_0x37d3('0x95')](_0x1e4fce,0x4,_0x37d3('0xba'));rpcDb['createCustomerHistory'](_0x1e4fce,'[callProgressDetectingCustomer][logAnswer]');rpcDb[_0x37d3('0xaa')](_0x1e4fce,'[callProgressDetectingCustomer][logAnswerGlobal]');rpcDb['crateCustomerReportQueue'](_0x1e4fce);_0x442fd0[_0x37d3('0x30')]+=_0x1e4fce['talktime'];_0x442fd0[_0x37d3('0x2f')]+=_0x1e4fce['talktime'];logger[_0x37d3('0x5d')](_0x37d3('0xbb'),_0x1e4fce[_0x37d3('0xbc')],'\x20Queue',_0x442fd0['name'],_0x37d3('0x74'),_0x442fd0[_0x37d3('0x2e')]);delete this['actions'][_0x2b3256[_0x37d3('0xaf')]];break;case _0x37d3('0xbd'):_0x442fd0['outboundBusyCallsDay']+=0x1;_0x1e4fce['countbusyretry']+=0x1;_0x1e4fce[_0x37d3('0xa1')]=ut[_0x37d3('0xa2')](_0x1e4fce);ut[_0x37d3('0x95')](_0x1e4fce,0x5,_0x37d3('0xbe'));ami[_0x37d3('0x2a')](_0x37d3('0xbf'),ut[_0x37d3('0xb4')](_0x1e4fce,_0x37d3('0xc0')));rpcDb['createCustomerHistory'](_0x1e4fce,'[callProgressDetectingCustomer][logBusy]');if(ut[_0x37d3('0xa2')](_0x1e4fce)>=_0x442fd0[_0x37d3('0xa6')]){_0x29885a=ut[_0x37d3('0xc1')](_0x1e4fce,0xf,_0x37d3('0xa7'));rpcDb['createCustomerFinal'](_0x29885a,_0x37d3('0xc2'));}else{if(_0x1e4fce[_0x37d3('0xc3')]>=_0x442fd0[_0x37d3('0xc4')]){rpcDb[_0x37d3('0xaa')](_0x1e4fce,'[callProgressDetectingCustomer][logBusy]');}else{rpcDb['rescheduleContact'](ut['scheduledAt'](_0x1e4fce,'countbusyretry',_0x442fd0[_0x37d3('0xc5')]),_0x1e4fce[_0x37d3('0xad')],_0x1e4fce['activeContact']);}}break;case'NOANSWER':_0x442fd0[_0x37d3('0x43')]+=0x1;_0x1e4fce[_0x37d3('0xc6')]+=0x1;_0x1e4fce[_0x37d3('0xa1')]=ut['totalGlobal'](_0x1e4fce);ut[_0x37d3('0x95')](_0x1e4fce,0x3,'NoAnswer');ami[_0x37d3('0x2a')](_0x37d3('0xc7'),ut[_0x37d3('0xb4')](_0x1e4fce,_0x37d3('0xc8')));rpcDb[_0x37d3('0x97')](_0x1e4fce,_0x37d3('0xc9'));if(ut['totalGlobal'](_0x1e4fce)>=_0x442fd0[_0x37d3('0xa6')]){_0x29885a=ut[_0x37d3('0xc1')](_0x1e4fce,0xf,'Global');rpcDb[_0x37d3('0xaa')](_0x29885a,_0x37d3('0xca'));}else{if(_0x1e4fce[_0x37d3('0xc6')]>=_0x442fd0[_0x37d3('0xcb')]){rpcDb[_0x37d3('0xaa')](_0x1e4fce,_0x37d3('0xc9'));}else{rpcDb[_0x37d3('0xab')](ut[_0x37d3('0xcc')](_0x1e4fce,_0x37d3('0xc6'),_0x442fd0[_0x37d3('0xcd')]),_0x1e4fce['unlockAgent'],_0x1e4fce[_0x37d3('0xae')]);}}break;case'CONGESTION':_0x442fd0[_0x37d3('0x3f')]+=0x1;_0x1e4fce[_0x37d3('0xce')]+=0x1;_0x1e4fce[_0x37d3('0xa1')]=ut[_0x37d3('0xa2')](_0x1e4fce);ut[_0x37d3('0x95')](_0x1e4fce,0x8,_0x37d3('0xcf'));ami[_0x37d3('0x2a')](_0x37d3('0xd0'),ut[_0x37d3('0xb4')](_0x1e4fce,'congestion'));rpcDb[_0x37d3('0x97')](_0x1e4fce,_0x37d3('0xd1'));if(ut[_0x37d3('0xa2')](_0x1e4fce)>=_0x442fd0[_0x37d3('0xa6')]){_0x29885a=ut['cloneAction'](_0x1e4fce,0xf,'Global');rpcDb['createCustomerFinal'](_0x29885a,_0x37d3('0xd2'));}else{if(_0x1e4fce[_0x37d3('0xce')]>=_0x442fd0['dialCongestionMaxRetry']){rpcDb[_0x37d3('0xaa')](_0x1e4fce,'[callProgressDetectingCustomer][logCongestion]');}else{rpcDb['rescheduleContact'](ut[_0x37d3('0xcc')](_0x1e4fce,'countcongestionretry',_0x442fd0[_0x37d3('0xc5')]),_0x1e4fce[_0x37d3('0xad')],_0x1e4fce[_0x37d3('0xae')]);}}break;case _0x37d3('0xd3'):_0x442fd0[_0x37d3('0xd4')]+=0x1;_0x1e4fce[_0x37d3('0xd5')]+=0x1;_0x1e4fce[_0x37d3('0xa1')]=ut['totalGlobal'](_0x1e4fce);ut[_0x37d3('0x95')](_0x1e4fce,0x14,_0x37d3('0xd6'));ami[_0x37d3('0x2a')](_0x37d3('0xd7'),ut[_0x37d3('0xb4')](_0x1e4fce,'agentreject'));rpcDb[_0x37d3('0x97')](_0x1e4fce,_0x37d3('0xd8'));if(ut[_0x37d3('0xa2')](_0x1e4fce)>=_0x442fd0[_0x37d3('0xa6')]){_0x29885a=ut['cloneAction'](_0x1e4fce,0x14,_0x37d3('0xd6'));rpcDb[_0x37d3('0xaa')](_0x29885a,_0x37d3('0xd9'));}else{if(_0x1e4fce['countagentrejectretry']>=_0x442fd0['dialAgentRejectMaxRetry']){rpcDb['createCustomerFinal'](_0x1e4fce,'[callProgressDetectingCustomer][logAgentReject]');}else{rpcDb[_0x37d3('0xab')](ut['scheduledAt'](_0x1e4fce,_0x37d3('0xd5'),_0x442fd0[_0x37d3('0xda')]),_0x1e4fce[_0x37d3('0xad')],_0x1e4fce[_0x37d3('0xae')]);}}break;case'ABANDONED':_0x442fd0[_0x37d3('0x47')]+=0x1;_0x1e4fce['countabandonedretry']+=0x1;_0x1e4fce[_0x37d3('0xa1')]=ut[_0x37d3('0xa2')](_0x1e4fce);ut[_0x37d3('0x95')](_0x1e4fce,0xb,_0x37d3('0xdb'));rpcDb[_0x37d3('0x97')](_0x1e4fce,_0x37d3('0xdc'));if(ut[_0x37d3('0xa2')](_0x1e4fce)>=_0x442fd0['dialGlobalMaxRetry']){_0x29885a=ut[_0x37d3('0xc1')](_0x1e4fce,0xf,_0x37d3('0xa7'));rpcDb['createCustomerFinal'](_0x29885a,_0x37d3('0xdc'));}else{if(_0x1e4fce[_0x37d3('0xdd')]>=_0x442fd0[_0x37d3('0xde')]){rpcDb[_0x37d3('0xaa')](_0x1e4fce,_0x37d3('0xdc'));}else{rpcDb[_0x37d3('0xab')](ut[_0x37d3('0xcc')](_0x1e4fce,_0x37d3('0xdf'),_0x442fd0['dialAbandonedRetryFrequency']),_0x1e4fce['unlockAgent'],_0x1e4fce[_0x37d3('0xae')]);}}break;case'18':_0x442fd0[_0x37d3('0x46')]+=0x1;_0x1e4fce[_0x37d3('0xe0')]+=0x1;_0x1e4fce[_0x37d3('0xa1')]=ut[_0x37d3('0xa2')](_0x1e4fce);ut[_0x37d3('0x95')](_0x1e4fce,0x12,_0x2b3256['cause-txt']||_0x2b3256[_0x37d3('0xe1')]);ami[_0x37d3('0x2a')](_0x37d3('0xe2'),ut[_0x37d3('0xb4')](_0x1e4fce,_0x37d3('0xe3')));rpcDb[_0x37d3('0x97')](_0x1e4fce,_0x37d3('0xe4'));if(ut[_0x37d3('0xa2')](_0x1e4fce)>=_0x442fd0[_0x37d3('0xa6')]){_0x29885a=ut[_0x37d3('0xc1')](_0x1e4fce,0xf,_0x37d3('0xa7'));rpcDb['createCustomerFinal'](_0x29885a,_0x37d3('0xe4'));}else{rpcDb[_0x37d3('0xaa')](_0x1e4fce,_0x37d3('0xe4'));}delete this[_0x37d3('0x16')][_0x2b3256[_0x37d3('0xaf')]];break;case'19':_0x442fd0[_0x37d3('0x46')]+=0x1;_0x1e4fce[_0x37d3('0xa1')]=ut[_0x37d3('0xa2')](_0x1e4fce);ut[_0x37d3('0x95')](_0x1e4fce,0x13,_0x2b3256['cause-txt']||_0x2b3256[_0x37d3('0xe1')]);ami[_0x37d3('0x2a')]('custom:amd',ut[_0x37d3('0xb4')](_0x1e4fce,_0x37d3('0xe3')));rpcDb[_0x37d3('0x97')](_0x1e4fce,'[callProgressDetectingCustomer][machine]');if(ut[_0x37d3('0xa2')](_0x1e4fce)>=_0x442fd0[_0x37d3('0xa6')]){_0x29885a=ut[_0x37d3('0xc1')](_0x1e4fce,0xf,_0x37d3('0xa7'));rpcDb['createCustomerFinal'](_0x29885a,_0x37d3('0xe5'));}else{rpcDb[_0x37d3('0xaa')](_0x1e4fce,_0x37d3('0xe5'));}delete this[_0x37d3('0x16')][_0x2b3256[_0x37d3('0xaf')]];break;default:if(_0x1e4fce[_0x37d3('0x75')]){ut[_0x37d3('0xe6')](_0x442fd0,_0x37d3('0xe7'));ut[_0x37d3('0x81')]('[Dialer][decrementTalkink][no\x20Hangup][Preview]'+_0x442fd0['name'],_0x2b3256);}_0x442fd0[_0x37d3('0x46')]+=0x1;_0x1e4fce[_0x37d3('0xa1')]=ut[_0x37d3('0xa2')](_0x1e4fce);ut[_0x37d3('0x95')](_0x1e4fce,0xc,_0x2b3256[_0x37d3('0xe8')]||_0x2b3256[_0x37d3('0xe1')]);rpcDb['createCustomerHistory'](_0x1e4fce,_0x37d3('0xe9'));if(ut[_0x37d3('0xa2')](_0x1e4fce)>=_0x442fd0[_0x37d3('0xa6')]){_0x29885a=ut[_0x37d3('0xc1')](_0x1e4fce,0xf,_0x37d3('0xa7'));rpcDb[_0x37d3('0xaa')](_0x29885a,_0x37d3('0xea'));}else{rpcDb[_0x37d3('0xaa')](_0x1e4fce,_0x37d3('0xea'));}delete this[_0x37d3('0x16')][_0x2b3256[_0x37d3('0xaf')]];}if(!(_0x1e4fce['dialAnswer']&&_0x12a08b==='16')){ut[_0x37d3('0x7f')](_0x442fd0,_0x37d3('0xeb'));logger[_0x37d3('0x5d')](_0x37d3('0xec'),_0x1e4fce['uniqueid'],_0x37d3('0xb2'),_0x442fd0[_0x37d3('0x57')],_0x37d3('0x73'),_0x442fd0[_0x37d3('0x4f')]);}if(_0x12a08b!==_0x37d3('0xed')){delete this['actions'][_0x2b3256[_0x37d3('0xaf')]];delete this[_0x37d3('0x16')][_0x2b3256['destlinkedid']];}}};Preview[_0x37d3('0xf')][_0x37d3('0xee')]=function(_0x4f2f8d,_0x10cc09,_0x58dd77){if(_[_0x37d3('0xef')](_0x10cc09)&&_0x37d3('0xf0')!==typeof _0x10cc09){return;}if(_[_0x37d3('0xef')](_0x58dd77)&&_0x37d3('0xf0')!==typeof _0x58dd77){return;}switch(_0x58dd77[_0x37d3('0xf1')]){case'0':ut[_0x37d3('0xf2')](_0x4f2f8d,0x0,'NoSuchNumber');rpcDb[_0x37d3('0xf3')](_0x4f2f8d,'[callProgressDetectingAgent][logNoSuch]');break;case'3':ut['logAgent'](_0x4f2f8d,0x3,_0x37d3('0xf4'));rpcDb[_0x37d3('0xf3')](_0x4f2f8d,_0x37d3('0xf5'));break;case'5':ut[_0x37d3('0xf2')](_0x4f2f8d,0x5,_0x37d3('0xbe'));rpcDb[_0x37d3('0xf3')](_0x4f2f8d,_0x37d3('0xf6'));break;case'8':ut[_0x37d3('0xf2')](_0x4f2f8d,0x8,'Congestion');rpcDb[_0x37d3('0xf3')](_0x4f2f8d,_0x37d3('0xf7'));break;case'22':ut[_0x37d3('0xf2')](_0x4f2f8d,0x16,_0x37d3('0xf8'));rpcDb[_0x37d3('0xf3')](_0x4f2f8d,_0x37d3('0xf9'));break;default:ut[_0x37d3('0xf2')](_0x4f2f8d,0xc,_0x58dd77[_0x37d3('0xf1')]);rpcDb['createAgentHistory'](_0x4f2f8d,_0x37d3('0xf7'));}ut[_0x37d3('0x7f')](_0x10cc09,'[callProgressDetectingAgent]');logger[_0x37d3('0x5d')](_0x37d3('0xfa'),_0x4f2f8d[_0x37d3('0xbc')],'\x20Queue',_0x10cc09[_0x37d3('0x57')],_0x37d3('0x73'),_0x10cc09['originated']);delete this[_0x37d3('0x16')][_0x4f2f8d[_0x37d3('0xbc')]];};Preview[_0x37d3('0xf')][_0x37d3('0xfb')]=function(_0x11b58d,_0x1c0336,_0x5cf785,_0x313f2b,_0x2d336d){var _0x57b5c6=this;return new BPromise(function(_0x29d987,_0x5321f0){if(_[_0x37d3('0x6f')](_0x1c0336)||_['isNil'](_0x1c0336[_0x37d3('0xfc')])||_['isNil'](_0x1c0336[_0x37d3('0xfc')][_0x37d3('0xfd')])||_[_0x37d3('0x6f')](_0x1c0336[_0x37d3('0x78')])){_0x5321f0(ut[_0x37d3('0x4e')](_0x37d3('0xfe'),_0x313f2b,_0x2d336d));return;}var _0x3614fd=uuid['v4']();var _0x4acad1=_0x57b5c6['campaignsPreview'][_0x1c0336['Queue'][_0x37d3('0x57')]];var _0x235e14=_0x5cf785?_0x57b5c6['agents'][_0x5cf785]['id']:undefined;_0x57b5c6[_0x37d3('0x16')][_0x3614fd]=new Action(_0x1c0336,_0x4acad1,_0x3614fd,_0x5cf785,_0x235e14);var _0x2d2ad4=_0x57b5c6[_0x37d3('0x16')][_0x3614fd];_0x2d2ad4['unlockAgent']=_0x313f2b;_0x2d2ad4[_0x37d3('0xae')]=_0x2d336d;_0x2d2ad4[_0x37d3('0xff')]=_0x5cf785;if(_['isEmpty'](_0x11b58d)){_0x57b5c6[_0x37d3('0x100')](_0x2d2ad4,_0x4acad1,_0x1c0336,_0x5cf785)[_0x37d3('0x87')](function(_0x11193f){logger[_0x37d3('0x5d')](_0x37d3('0x101'),_0x37d3('0x102')+_0x2d2ad4[_0x37d3('0x72')]+'\x20IdHopper:\x20'+_0x2d2ad4['idContact'],JSON[_0x37d3('0x5a')](_0x11193f));ami[_0x37d3('0x2a')](_0x37d3('0x103'),ut[_0x37d3('0xb4')](_0x2d2ad4,'called',_0x57b5c6[_0x37d3('0x13')][_0x2d2ad4[_0x37d3('0x72')]]));_0x29d987(ut[_0x37d3('0x4e')](_0x37d3('0x104')));})[_0x37d3('0x7d')](function(_0x4d1973){ut[_0x37d3('0x62')](_0x37d3('0x105'),_0x4d1973);_0x5321f0(ut[_0x37d3('0x4e')](_0x37d3('0x106'),_0x313f2b,_0x2d336d));});}else{_0x4acad1[_0x37d3('0x3e')]+=0x1;ut[_0x37d3('0x107')](_0x2d2ad4);rpcDb[_0x37d3('0x108')](_0x2d2ad4,_0x37d3('0x109'));delete _0x57b5c6[_0x37d3('0x16')][_0x3614fd];_0x5321f0(ut['message'](_0x37d3('0x10a'),_0x313f2b,_0x2d336d));}});};Preview['prototype'][_0x37d3('0x9c')]=function(_0x4f1d12){return!_[_0x37d3('0x6f')](_0x4f1d12)&&!_[_0x37d3('0x6f')](_0x4f1d12['name'])&&!_[_0x37d3('0x6f')](_0x4f1d12[_0x37d3('0x10b')])&&_0x4f1d12['active']&&!_[_0x37d3('0x6f')](this[_0x37d3('0x15')][util[_0x37d3('0x5b')](_0x37d3('0x10c'),_0x4f1d12[_0x37d3('0x57')])])&&!_[_0x37d3('0x6f')](this[_0x37d3('0x15')][util[_0x37d3('0x5b')](_0x37d3('0x10c'),_0x4f1d12['name'])][_0x37d3('0x7b')])&&(this['trunks'][util[_0x37d3('0x5b')](_0x37d3('0x10c'),_0x4f1d12[_0x37d3('0x57')])][_0x37d3('0x7b')]===_0x37d3('0x10d')||this[_0x37d3('0x15')][util[_0x37d3('0x5b')]('SIP/%s',_0x4f1d12['name'])][_0x37d3('0x7b')]===_0x37d3('0x10e'));};Preview[_0x37d3('0xf')][_0x37d3('0x10f')]=function(_0x4670b0,_0x1ec619){var _0x157bd8=this;return new BPromise(function(_0x178e35,_0x183f06){_0x157bd8[_0x37d3('0x110')](_0x4670b0,_0x1ec619)[_0x37d3('0x87')](function(_0x1d3c1a){_0x178e35(_['pick'](_0x1d3c1a,[_0x37d3('0x4e')]));})[_0x37d3('0x7d')](function(_0x261f73){if(_0x261f73[_0x37d3('0x111')]){rpcDb[_0x37d3('0x112')](_0x4670b0);}if(_0x261f73[_0x37d3('0x10b')]){rpcDb[_0x37d3('0x8f')](_0x4670b0);}_0x183f06(_['pick'](_0x261f73,['message']));});});};Preview['prototype']['execRun']=function(_0x334b15,_0x2a301a){var _0x36e975=this;return new BPromise(function(_0xde483c,_0x5d316a){var _0x1827e0,_0x29cb1a;rpcDb['getContactPreview'](_0x334b15)[_0x37d3('0x87')](function(_0x3a54d0){if(!_[_0x37d3('0x6f')](_0x3a54d0[0x0])){_0x29cb1a=_0x3a54d0[0x0]['recallme']?![]:!![];_0x1827e0=_0x3a54d0[0x0][_0x37d3('0x113')]?!![]:![];_0x1827e0=_0x2a301a?!![]:_0x1827e0;}var _0x58cb3b=_0x36e975['validateContact'](_0x3a54d0);if(_0x58cb3b[_0x37d3('0x114')]){rpcDb[_0x37d3('0x115')](_[_0x37d3('0x116')](_0x3a54d0[0x0],['VoiceQueueId',_0x37d3('0x117')]))[_0x37d3('0x87')](function(_0x203ef1){_0x36e975[_0x37d3('0xfb')](_0x203ef1,_0x3a54d0[0x0],_0x2a301a,_0x29cb1a,_0x1827e0)[_0x37d3('0x87')](function(_0x2a83a2){_0xde483c(_0x2a83a2);})[_0x37d3('0x7d')](function(_0x4d3dee){_0x5d316a(_0x4d3dee);});})[_0x37d3('0x7d')](function(_0x3a89c4){ut['logger'](_0x37d3('0x118'),_0x3a89c4);_0x5d316a(ut[_0x37d3('0x4e')](_0x37d3('0x119'),_0x29cb1a,_0x1827e0));});}else{_0x5d316a(ut[_0x37d3('0x4e')](_0x58cb3b['message'],_0x29cb1a,_0x1827e0));}})['catch'](function(_0x34daee){ut[_0x37d3('0x62')](_0x37d3('0x11a'),_0x34daee);_0x5d316a(ut[_0x37d3('0x4e')]('Call\x20unsuccessful',![],!![]));});});};Preview[_0x37d3('0xf')][_0x37d3('0x11b')]=function(_0x4e1e64){if(_[_0x37d3('0x6f')](_0x4e1e64)||_[_0x37d3('0x11c')](_0x4e1e64)||!_[_0x37d3('0x6f')](_0x4e1e64[0x0][_0x37d3('0x8b')])&&_['isNil'](_0x4e1e64[0x0]['Agent'][_0x37d3('0x57')])){ut[_0x37d3('0x62')]('[Preview][validateContact][Empty\x20Contact]',_0x4e1e64);return{'isValid':![],'message':_0x37d3('0x11d')};}var _0x5621c0=this[_0x37d3('0x13')][_0x4e1e64[0x0][_0x37d3('0x71')][_0x37d3('0x57')]];_0x5621c0['message']=_0x37d3('0x9e');if(_['isNil'](_0x5621c0)){ut[_0x37d3('0x62')](_0x37d3('0x11e'),_0x5621c0);return{'isValid':![],'message':_0x37d3('0x11f')};}if(!this[_0x37d3('0x9c')](_0x5621c0[_0x37d3('0x56')])){ut[_0x37d3('0x62')](_0x37d3('0x120'),_0x37d3('0x121')+_0x5621c0[_0x37d3('0x57')]+_0x37d3('0x122'));if(!this[_0x37d3('0x9c')](_0x5621c0['TrunkBackup'])){ut[_0x37d3('0x62')](_0x37d3('0x120'),_0x5621c0['name']+_0x37d3('0x123'));return{'isValid':![],'message':'Trunk\x20not\x20work'};}}if(!ut['isActive'](_0x5621c0[_0x37d3('0x38')])){ut['logger']('[Preview][validateContact][Campaign\x20Active]',_0x5621c0[_0x37d3('0x57')]+_0x37d3('0x124'));return{'isValid':![],'message':_0x37d3('0x121')+_0x5621c0['name']+_0x37d3('0x124')};}return{'isValid':!![],'message':_0x37d3('0x125')};};Preview[_0x37d3('0xf')][_0x37d3('0x100')]=function(_0xd43a1,_0x40bbc2,_0x467f65,_0x4ec431){var _0x547b37=this;return new BPromise(function(_0x28c988,_0x5bb84e){var _0x77b231=_0xd43a1[_0x37d3('0xbc')];var _0xf5a96f=_0x547b37['isTrunkReachable'](_0x40bbc2['Trunk'])?util[_0x37d3('0x5b')](_0x37d3('0x126'),_0x40bbc2['Trunk'][_0x37d3('0x57')],_['isNil'](_0x40bbc2['dialPrefix'])?'':_0x40bbc2[_0x37d3('0x127')]['trim']()||'',_0x40bbc2[_0x37d3('0x128')]>0x0?_0x467f65[_0x37d3('0xfc')]['phone'][_0x37d3('0x129')](_0x40bbc2[_0x37d3('0x128')]):_0x467f65[_0x37d3('0xfc')][_0x37d3('0xfd')]):util[_0x37d3('0x5b')]('SIP/%s/%s%s',_['isNil'](_0x40bbc2[_0x37d3('0x9d')])?_0x40bbc2['Trunk']['name']:_0x40bbc2['TrunkBackup'][_0x37d3('0x57')],_[_0x37d3('0x6f')](_0x40bbc2[_0x37d3('0x127')])?'':_0x40bbc2[_0x37d3('0x127')][_0x37d3('0x12a')]()||'',_0x40bbc2[_0x37d3('0x128')]>0x0?_0x467f65[_0x37d3('0xfc')][_0x37d3('0xfd')][_0x37d3('0x129')](_0x40bbc2[_0x37d3('0x128')]):_0x467f65['Contact'][_0x37d3('0xfd')]);var _0x24d066=_0x547b37['isTrunkReachable'](_0x40bbc2[_0x37d3('0x56')])?ut[_0x37d3('0x12b')](_0x40bbc2[_0x37d3('0x56')][_0x37d3('0x58')],_0x40bbc2['dialOriginateCallerIdName'],_0x40bbc2['dialRandomLastDigitCallerIdNumber']>0x0?ut[_0x37d3('0x12c')](_0x40bbc2[_0x37d3('0x3b')],_0x40bbc2[_0x37d3('0x12d')]):_0x40bbc2[_0x37d3('0x3b')]):ut['getCallerId'](_[_0x37d3('0x6f')](_0x40bbc2[_0x37d3('0x9d')])?_0x40bbc2['Trunk'][_0x37d3('0x58')]:_0x40bbc2['TrunkBackup'][_0x37d3('0x58')],_0x40bbc2[_0x37d3('0x3a')],_0x40bbc2['dialRandomLastDigitCallerIdNumber']>0x0?ut[_0x37d3('0x12c')](_0x40bbc2[_0x37d3('0x3b')],_0x40bbc2[_0x37d3('0x12d')]):_0x40bbc2[_0x37d3('0x3b')]);if(_0x24d066){_0xd43a1[_0x37d3('0x12e')]=ut['extractCalleridName'](_0x24d066);_0xd43a1['originatecalleridnum']=ut[_0x37d3('0x12f')](_0x24d066);}var _0x24e15d=ut[_0x37d3('0x130')](_0x40bbc2,_0x467f65,_0xf5a96f,_0x24d066,_0x77b231,_0xd43a1);_[_0x37d3('0x131')](_0xd43a1,ut[_0x37d3('0x132')](_0x24e15d));_0xd43a1[_0x37d3('0x90')]=moment()[_0x37d3('0x5b')]('YYYY-MM-DD\x20HH:mm:ss');ami[_0x37d3('0x7a')](ut[_0x37d3('0x133')](_0xd43a1,_0x40bbc2,_0x24e15d,_0xd43a1[_0x37d3('0xae')],_0x4ec431))['then'](function(_0x59a1ea){var _0x23c2bc=_0xd43a1[_0x37d3('0x134')];if(!_[_0x37d3('0x6f')](_0x23c2bc)){if(!_[_0x37d3('0x6f')](_0x547b37[_0x37d3('0x17')][_0x23c2bc])){_0x547b37['agents'][_0x23c2bc][_0x37d3('0x135')]=_0xd43a1['calleridnum'];emit(util[_0x37d3('0x5b')](_0x37d3('0x136'),_0x547b37[_0x37d3('0x17')][_0x23c2bc][_0x37d3('0x57')]),'user:agentconnect',{'destaccountcode':_0x547b37[_0x37d3('0x17')][_0x23c2bc]['accountcode'],'destconnectedlinenum':_0xd43a1[_0x37d3('0x137')]});}}_0x40bbc2[_0x37d3('0x4f')]+=0x1;logger['info'](_0x37d3('0x138'),_0x77b231,_0x37d3('0xb2'),_0x40bbc2['name'],_0x37d3('0x73'),_0x40bbc2['originated']);_0x28c988(_0x59a1ea);})['catch'](function(_0x289b94){ut[_0x37d3('0xf2')](_0xd43a1,0xe,'OriginateError');rpcDb[_0x37d3('0xf3')](_0xd43a1,_0x37d3('0x139'));_0x5bb84e(_0x289b94);});});};Preview[_0x37d3('0xf')]['syncNewExten']=function(_0x3dc8bc){if(this[_0x37d3('0x16')][_0x3dc8bc[_0x37d3('0xaf')]]){this['actions'][_0x3dc8bc[_0x37d3('0xaf')]][_0x37d3('0x7c')]=_0x3dc8bc['channel'];}};Preview[_0x37d3('0xf')][_0x37d3('0x1a')]=function(_0x3d58d0){var _0x453ae8=this;var _0x330f44=this[_0x37d3('0x16')][_0x3d58d0['actionid']];if(_0x330f44){if(_0x330f44[_0x37d3('0xff')]&&this[_0x37d3('0x17')][_0x330f44[_0x37d3('0xff')]]){ut['logLookAgent'](_0x330f44,this['agents'][_0x330f44[_0x37d3('0xff')]][_0x37d3('0x57')],this[_0x37d3('0x17')][_0x330f44['lookAgent']]['id']);}var _0x5c5e55=_[_0x37d3('0x13a')](_0x330f44);_0x5c5e55[_0x37d3('0xb0')]=moment()['format'](_0x37d3('0x91'));var _0xd77bcb=_0x453ae8[_0x37d3('0x13')][_0x330f44[_0x37d3('0x72')]];if(ut[_0x37d3('0x13b')](_0x3d58d0['response'])){if(_0x330f44[_0x37d3('0xad')]){rpcDb['unlockContact'](_0x330f44[_0x37d3('0x13c')]);}if(_0x330f44[_0x37d3('0xae')]){rpcDb[_0x37d3('0x8f')](_0x330f44[_0x37d3('0x13c')]);}ami[_0x37d3('0x2a')](_0x37d3('0x13d'),ut[_0x37d3('0xb4')](_0x330f44,_0x37d3('0x13e'),this[_0x37d3('0x13')][_0x330f44[_0x37d3('0x72')]]));this[_0x37d3('0xee')](_0x5c5e55,_0xd77bcb,_0x3d58d0);}else{_0x330f44[_0x37d3('0x90')]=moment()['format'](_0x37d3('0x91'));ut[_0x37d3('0xf2')](_0x5c5e55,0x4,_0x37d3('0xba'));rpcDb['createAgentHistory'](_0x5c5e55,_0x37d3('0x13f'));}}};Preview[_0x37d3('0xf')][_0x37d3('0x140')]=function(_0x1655c5){var _0x44644e=this;var _0x2fcca1=this[_0x37d3('0x16')][_0x1655c5[_0x37d3('0xaf')]];var _0x4f96d2;if(_0x2fcca1){_0x4f96d2=this['campaignsPreview'][_0x2fcca1[_0x37d3('0x72')]];logger[_0x37d3('0x5d')]('[syncHangup][talking]',_0x1655c5[_0x37d3('0xaf')],_0x37d3('0xb2'),_0x4f96d2[_0x37d3('0x57')],_0x37d3('0x74'),_0x4f96d2[_0x37d3('0x2e')]);}if(this[_0x37d3('0x16')][_0x1655c5[_0x37d3('0xaf')]]&&_0x1655c5[_0x37d3('0xaf')]!==_0x1655c5[_0x37d3('0xbc')]){if(_0x1655c5[_0x37d3('0x141')]==='16'&&this[_0x37d3('0x16')][_0x1655c5['linkedid']][_0x37d3('0x75')]){this['callProgressDetectingCustomer'](_0x1655c5,_0x1655c5['linkedid'],_0x1655c5[_0x37d3('0x141')]);}else if(this[_0x37d3('0x16')][_0x1655c5[_0x37d3('0xaf')]][_0x37d3('0x75')]){logger[_0x37d3('0x5d')](_0x37d3('0x142'),_0x1655c5['linkedid'],_0x1655c5[_0x37d3('0x141')],_0x37d3('0xb2'),_0x4f96d2[_0x37d3('0x57')],_0x37d3('0x74'),_0x4f96d2[_0x37d3('0x2e')]);this[_0x37d3('0x143')](_0x1655c5,_0x1655c5[_0x37d3('0xaf')],_0x1655c5['cause']);}}else if(_0x2fcca1&&_['isNil'](_0x2fcca1[_0x37d3('0x144')])&&_0x4f96d2['dialQueueProject']&&_0x1655c5[_0x37d3('0xaf')]===_0x1655c5[_0x37d3('0xbc')]&&_['isNil'](_0x1655c5['reason'])&&_0x1655c5[_0x37d3('0x141')]==='16'&&_0x1655c5[_0x37d3('0x145')]==='6'&&_[_0x37d3('0xef')](_0x2fcca1['transfer'])){if(_0x2fcca1[_0x37d3('0xad')]){rpcDb[_0x37d3('0x112')](_0x2fcca1[_0x37d3('0x13c')]);}if(_0x2fcca1[_0x37d3('0xae')]){rpcDb[_0x37d3('0x8f')](_0x2fcca1[_0x37d3('0x13c')]);}_0x1655c5[_0x37d3('0xf1')]='22';this[_0x37d3('0xee')](_0x2fcca1,_0x4f96d2,_0x1655c5);}else if(_0x2fcca1&&_0x2fcca1['transfer']){if(_0x1655c5[_0x37d3('0x141')]==='16'&&this['actions'][_0x1655c5[_0x37d3('0xaf')]]['dialAnswer']){logger[_0x37d3('0x5d')]('[syncHangup][talking][transfer]',_0x1655c5[_0x37d3('0xaf')],_0x1655c5[_0x37d3('0x141')],_0x37d3('0xb2'),_0x4f96d2['name'],_0x37d3('0x74'),_0x4f96d2[_0x37d3('0x2e')]);this[_0x37d3('0x143')](_0x1655c5,_0x1655c5[_0x37d3('0xaf')],_0x1655c5[_0x37d3('0x141')]);}else if(this[_0x37d3('0x16')][_0x1655c5[_0x37d3('0xaf')]][_0x37d3('0x75')]){logger[_0x37d3('0x5d')](_0x37d3('0x142'),_0x1655c5[_0x37d3('0xaf')],_0x1655c5[_0x37d3('0x141')],_0x37d3('0xb2'),_0x4f96d2['name'],'pTalking:\x20',_0x4f96d2[_0x37d3('0x2e')]);this[_0x37d3('0x143')](_0x1655c5,_0x1655c5['linkedid'],_0x1655c5[_0x37d3('0x141')]);}}};Preview['prototype'][_0x37d3('0x20')]=function(_0x304169){if(this[_0x37d3('0x16')][_0x304169[_0x37d3('0x146')]]&&_0x304169[_0x37d3('0x146')]!==_0x304169[_0x37d3('0x147')]){this[_0x37d3('0x143')](_0x304169,_0x304169[_0x37d3('0x146')],_0x304169[_0x37d3('0xe1')]);}};Preview['prototype'][_0x37d3('0x1e')]=function(_0x233f45){if(this[_0x37d3('0x16')][_0x233f45['linkedid']]&&_0x233f45[_0x37d3('0xaf')]!==_0x233f45['uniqueid']&&!this[_0x37d3('0x16')][_0x233f45[_0x37d3('0xaf')]]['dialAnswer']){if(_0x233f45[_0x37d3('0x141')]==='1'){this[_0x37d3('0x143')](_0x233f45,_0x233f45[_0x37d3('0xaf')],_0x233f45[_0x37d3('0x141')]);}}};Preview['prototype'][_0x37d3('0x148')]=function(_0x4d287e,_0x4a1be1,_0x12b50d){if(this[_0x37d3('0x16')][_0x4d287e]){if(_[_0x37d3('0x6f')](this[_0x37d3('0x16')][_0x4d287e]['variables'])){this[_0x37d3('0x16')][_0x4d287e]['variables']={};}this[_0x37d3('0x16')][_0x4d287e]['variables'][_0x4a1be1]=_0x12b50d;}};Preview[_0x37d3('0xf')]['syncVarSet']=function(_0x4cd5ba){try{if(!_['isNil'](_0x4cd5ba)){if(ut['filterKey'](_[_0x37d3('0x149')](_0x4cd5ba[_0x37d3('0x14a')])[0x0])){this[_0x37d3('0x148')](_0x4cd5ba[_0x37d3('0xbc')],_[_0x37d3('0x149')](_0x4cd5ba['variable'])[0x0],_0x4cd5ba['value']);}}}catch(_0x518596){logger['error'](_0x37d3('0x14b'),util[_0x37d3('0x14c')](_0x518596,{'showHidden':![],'depth':null}));}};Preview[_0x37d3('0xf')][_0x37d3('0x26')]=function(_0x2736f7){if(_0x2736f7){if(this['actions'][_0x2736f7[_0x37d3('0x14d')]]){this[_0x37d3('0x16')][_0x2736f7[_0x37d3('0x14d')]]['transfer']=!![];}}};Preview[_0x37d3('0xf')][_0x37d3('0x28')]=function(_0x470512){if(_0x470512){if(this['actions'][_0x470512[_0x37d3('0x14e')]]){this['actions'][_0x470512[_0x37d3('0x14e')]][_0x37d3('0x14f')]=!![];}}};module[_0x37d3('0x150')]=Preview;