Built motion from commit b517aaa2a6638133380e4d135c64a80893061362. Version 3.0.0...
[motion-next.git] / server / services / ami / acw / index.js
1 const a1048_0x2ea5=['acw','mandatoryDispositionPause','agents','attended','lodash','isUndefined','acwTimeout','syncAgentConnect','startAcw','info','exports','transfereruniqueid','isNil','[%s][HANGUPATTENDEDTRANSFER:LINKEDID]','moment','interface','diff','seconds','linkedid','saveUnpause','destlinkedid','transfererlinkedid','syncAgentConnectPreview','../ami','name','[TIMER][STOP][AGENT:%s]','Action','[%s][UPDATE][ACWTIME:%s]','syncHangupRequest','update','[%s][UPDATE][ERRORS:%s]','[ACW][syncHangupRequest]\x20%s','ACW','[ACW][syncAgentConnectPreview]\x20%s','updateAcw','syncAgentRingNoAnswer','[%s][BLINDTRANSFER:LINKEDID]','syncAttendedTransfer','savePause','[ACW][STOP]\x20Interface\x20%s\x20doesn\x27t\x20have\x20timer','syncBlindTransfer','getAgent','agentringnoanswer','timer','voiceQueues','all','prototype','mandatoryDisposition','format','custom:agentConnectPreview','channels','then','milliseconds','secondtransfereruniqueid','[%s][HANGUP:UNIQUEID]','message','stringify','uniqueid','attendedtransfer','hangup','finally','lastPauseAt','[%s][TIMER:%s][AGENT:%s][QUEUE:%s]','catch','syncHangup','hanguprequest','transfertargetuniqueid','agentconnect','bind','../rpc/user','autopause','timers','Auto-Pause','[%s][START][AGENT:%s][QUEUE:%s]','queue','[ACW][syncBlindTransfer]\x20%s','error','origtransfereruniqueid','transfereeuniqueid'];(function(_0x4700e0,_0x2ea5d6){const _0x665ba7=function(_0x2d5abf){while(--_0x2d5abf){_0x4700e0['push'](_0x4700e0['shift']());}};_0x665ba7(++_0x2ea5d6);}(a1048_0x2ea5,0x1ca));const a1048_0x665b=function(_0x4700e0,_0x2ea5d6){_0x4700e0=_0x4700e0-0x0;let _0x665ba7=a1048_0x2ea5[_0x4700e0];return _0x665ba7;};const _0x11d354=a1048_0x665b;'use strict';const _=require(_0x11d354('0x14')),moment=require(_0x11d354('0x1e')),ami=require(_0x11d354('0x27')),logger=require('../../../config/logger')('acw'),RpcUser=require(_0x11d354('0x6')),RpcVoiceAgentReport=require('../rpc/voiceAgentReport');function Acw(_0x2d5abf){const _0x276c16=_0x11d354;this[_0x276c16('0x3c')]=_0x2d5abf[_0x276c16('0x3c')],this[_0x276c16('0x12')]=_0x2d5abf['agents'],this[_0x276c16('0x8')]=_0x2d5abf[_0x276c16('0x8')],this[_0x276c16('0x42')]={},ami['on'](_0x276c16('0x4'),this[_0x276c16('0x17')][_0x276c16('0x5')](this)),ami['on'](_0x276c16('0x2'),this[_0x276c16('0x2c')]['bind'](this)),ami['on'](_0x276c16('0x4b'),this[_0x276c16('0x1')][_0x276c16('0x5')](this)),ami['on'](_0x276c16('0x3a'),this[_0x276c16('0x33')]['bind'](this)),ami['on'](_0x276c16('0x4a'),this['syncAttendedTransfer'][_0x276c16('0x5')](this)),ami['on']('blindtransfer',this[_0x276c16('0x38')][_0x276c16('0x5')](this)),ami['on'](_0x276c16('0x41'),this[_0x276c16('0x26')]['bind'](this));}function getDiff(_0x4d3539){const _0xf82150=_0x11d354,_0x2b6e3e=moment()[_0xf82150('0x44')](0x0),_0x5d4dbb=moment(_0x4d3539)[_0xf82150('0x44')](0x0);return _0x2b6e3e[_0xf82150('0x20')](_0x5d4dbb,_0xf82150('0x21'));}Acw['prototype'][_0x11d354('0x18')]=function(_0x18f524){const _0x5ebb83=_0x11d354;try{const _0x7b2390=this,_0x350c4c=this[_0x5ebb83('0x42')][_0x18f524]['interface'],_0x21b63b=this[_0x5ebb83('0x42')][_0x18f524][_0x5ebb83('0xb')],_0x20b428=this[_0x5ebb83('0x3c')][_0x21b63b];let _0x993f22=![],_0x2e16aa=_0x5ebb83('0x30');_0x20b428['mandatoryDisposition']&&(_0x20b428[_0x5ebb83('0x11')][_0x5ebb83('0x28')]&&(_0x993f22=!![],_0x2e16aa=_0x20b428['mandatoryDispositionPause'][_0x5ebb83('0x28')])),ami[_0x5ebb83('0x2a')]({'action':'QueuePause','interface':_0x350c4c,'paused':!![],'reason':_0x2e16aa})[_0x5ebb83('0x43')](function(){const _0x5b376d=_0x5ebb83;if(_0x7b2390[_0x5b376d('0x12')][_0x350c4c])return RpcUser[_0x5b376d('0x39')](_0x7b2390['agents'][_0x350c4c]['id'])[_0x5b376d('0x43')](function(_0x42b6bd){const _0x293eac=_0x5b376d;if(_0x42b6bd&&!_0x42b6bd['voicePause']){logger['info'](_0x293eac('0xa'),_0x18f524,_0x350c4c,_0x21b63b);const _0x50764f=_0x7b2390['channels'][_0x18f524]['attended']&&_0x7b2390['channels'][_0x18f524][_0x293eac('0x24')]?_0x7b2390[_0x293eac('0x42')][_0x18f524][_0x293eac('0x24')]:_0x18f524;return RpcUser[_0x293eac('0x36')](_0x7b2390[_0x293eac('0x12')][_0x350c4c],_0x2e16aa,_0x50764f)[_0x293eac('0x43')](function(){const _0x63efb0=_0x293eac;!_0x993f22&&(_0x7b2390['timers'][_0x350c4c]={},logger[_0x63efb0('0x19')](_0x63efb0('0x4e'),_0x18f524,_0x7b2390[_0x63efb0('0x3c')][_0x21b63b][_0x63efb0('0x16')],_0x350c4c,_0x21b63b),_0x7b2390[_0x63efb0('0x8')][_0x350c4c][_0x63efb0('0x3b')]=setTimeout(_0x7b2390['stopAcw'][_0x63efb0('0x5')](_0x7b2390,_0x350c4c),_0x7b2390['voiceQueues'][_0x21b63b][_0x63efb0('0x16')]*0x3e8),_0x7b2390[_0x63efb0('0x8')][_0x350c4c][_0x63efb0('0x4d')]=moment()[_0x63efb0('0x40')]('YYYY-MM-DD\x20HH:mm:ss'),_0x7b2390[_0x63efb0('0x8')][_0x350c4c]['uniqueid']=_0x18f524,_0x7b2390['timers'][_0x350c4c][_0x63efb0('0xb')]=_0x21b63b,_0x7b2390[_0x63efb0('0x8')][_0x350c4c][_0x63efb0('0x32')]=function(){const _0x21cab4=_0x63efb0,_0x5e363f=getDiff(_0x7b2390[_0x21cab4('0x8')][_0x350c4c][_0x21cab4('0x4d')]);clearTimeout(_0x7b2390[_0x21cab4('0x8')][_0x350c4c][_0x21cab4('0x3b')]),_0x7b2390[_0x21cab4('0x8')][_0x350c4c][_0x21cab4('0x3b')]=![],RpcVoiceAgentReport[_0x21cab4('0x2d')]({'acwtime':_0x5e363f},_0x7b2390[_0x21cab4('0x8')][_0x350c4c][_0x21cab4('0x49')],_0x350c4c)[_0x21cab4('0x43')](function(_0x3b417b){const _0xc5c76c=_0x21cab4;logger[_0xc5c76c('0x19')](_0xc5c76c('0x2b'),_0x18f524,_0x5e363f,_0x3b417b);})[_0x21cab4('0x0')](function(_0x24d440){const _0xc20dcc=_0x21cab4;logger[_0xc20dcc('0xd')](_0xc20dcc('0x2e'),_0x18f524,_0x24d440);}),delete _0x7b2390[_0x21cab4('0x8')][_0x350c4c];});});}else logger['info']('[%s][INPAUSE][AGENT:%s][QUEUE:%s]',_0x18f524,_0x350c4c,_0x21b63b);});})['catch'](function(){const _0x4842ce=_0x5ebb83;logger['error']('[%s][TIMER:%s][AGENT:%s][QUEUE:%s]',_0x18f524,_0x7b2390['voiceQueues'][_0x21b63b][_0x4842ce('0x16')],_0x350c4c,_0x21b63b);})[_0x5ebb83('0x4c')](function(){delete _0x7b2390['channels'][_0x18f524];});}catch(_0x20007b){logger[_0x5ebb83('0xd')]('[ACW][START]\x20%s',_0x20007b[_0x5ebb83('0x47')]);}},Acw['prototype']['stopAcw']=function(_0x167092){const _0x41b650=_0x11d354;try{const _0x2db3de=this;if(_0x2db3de[_0x41b650('0x8')][_0x167092]){_0x2db3de[_0x41b650('0x8')][_0x167092][_0x41b650('0x3b')]=![];const _0x3fe271=_0x2db3de[_0x41b650('0x8')][_0x167092][_0x41b650('0x49')],_0x24d353=_0x2db3de['timers'][_0x167092]['queue'],_0x492b56=_0x2db3de[_0x41b650('0x3c')][_0x24d353][_0x41b650('0x16')];logger[_0x41b650('0x19')](_0x41b650('0x29'),_0x167092),RpcUser[_0x41b650('0x23')](this['agents'][_0x167092]),RpcVoiceAgentReport[_0x41b650('0x2d')]({'acwtime':_0x492b56,'agentacw':!![]},_0x3fe271,_0x167092)[_0x41b650('0x43')](function(_0x332591){const _0x855ecb=_0x41b650;logger[_0x855ecb('0x19')]('[%s][UPDATE][ACWTIME:%s]',_0x3fe271,_0x492b56,_0x332591);})[_0x41b650('0x0')](function(_0x27f208){const _0x8dcfd=_0x41b650;logger['error'](_0x8dcfd('0x2e'),_0x3fe271,_0x27f208);});}else logger[_0x41b650('0xd')](_0x41b650('0x37'),_0x167092),_0x2db3de[_0x41b650('0x8')]&&logger['info']('[ACW][TIMERS]',JSON[_0x41b650('0x48')](_0x2db3de[_0x41b650('0x8')]));}catch(_0x48bad9){logger[_0x41b650('0xd')]('[ACW][STOP]\x20%s',_0x48bad9[_0x41b650('0x47')]);}},Acw[_0x11d354('0x3e')][_0x11d354('0x17')]=function(_0x3766a4){const _0x215394=_0x11d354;try{this[_0x215394('0x3c')][_0x3766a4['queue']]&&(this[_0x215394('0x3c')][_0x3766a4['queue']][_0x215394('0x10')]||this[_0x215394('0x3c')][_0x3766a4[_0x215394('0xb')]][_0x215394('0x3f')])&&(this[_0x215394('0x12')][_0x3766a4[_0x215394('0x1f')]]&&(this[_0x215394('0x42')][_0x3766a4['uniqueid']]={'queue':_0x3766a4[_0x215394('0xb')],'interface':_0x3766a4[_0x215394('0x1f')],'destlinkedid':_0x3766a4[_0x215394('0x24')]}));}catch(_0x1b9c69){logger[_0x215394('0xd')]('[ACW][syncAgentConnect]\x20%s',_0x1b9c69[_0x215394('0x47')]);}},Acw[_0x11d354('0x3e')][_0x11d354('0x26')]=function(_0x1b81dc){const _0x49b886=_0x11d354;try{this[_0x49b886('0x3c')][_0x1b81dc['queue']]&&(this[_0x49b886('0x3c')][_0x1b81dc[_0x49b886('0xb')]][_0x49b886('0x10')]||this['voiceQueues'][_0x1b81dc[_0x49b886('0xb')]]['mandatoryDisposition'])&&(this[_0x49b886('0x12')][_0x1b81dc['interface']]&&(this[_0x49b886('0x42')][_0x1b81dc['uniqueid']]={'queue':_0x1b81dc['queue'],'interface':_0x1b81dc[_0x49b886('0x1f')]}));}catch(_0x4ab3e7){logger['error'](_0x49b886('0x31'),_0x4ab3e7['message']);}},Acw[_0x11d354('0x3e')][_0x11d354('0x2c')]=function(_0x381cc2){const _0x3fd3a9=_0x11d354;try{if(this[_0x3fd3a9('0x42')][_0x381cc2[_0x3fd3a9('0x49')]]&&_['isUndefined'](this[_0x3fd3a9('0x42')][_0x381cc2[_0x3fd3a9('0x49')]][_0x3fd3a9('0x13')]))logger[_0x3fd3a9('0x19')](_0x3fd3a9('0x46'),_0x381cc2['uniqueid']),this[_0x3fd3a9('0x18')](_0x381cc2[_0x3fd3a9('0x49')]);else this[_0x3fd3a9('0x42')][_0x381cc2[_0x3fd3a9('0x22')]]&&_[_0x3fd3a9('0x15')](this['channels'][_0x381cc2[_0x3fd3a9('0x22')]][_0x3fd3a9('0x13')])&&(logger[_0x3fd3a9('0x19')]('[%s][HANGUP:LINKEDID]',_0x381cc2[_0x3fd3a9('0x22')]),this[_0x3fd3a9('0x18')](_0x381cc2[_0x3fd3a9('0x22')]));}catch(_0x4b58fc){logger[_0x3fd3a9('0xd')](_0x3fd3a9('0x2f'),_0x4b58fc[_0x3fd3a9('0x47')]);}},Acw[_0x11d354('0x3e')][_0x11d354('0x1')]=function(_0x188ef8){const _0x451925=_0x11d354;try{if(this['channels'][_0x188ef8[_0x451925('0x49')]]&&this['channels'][_0x188ef8[_0x451925('0x49')]][_0x451925('0x13')])logger[_0x451925('0x19')]('[%s][HANGUPATTENDEDTRANSFER:UNIQUEID]',_0x188ef8[_0x451925('0x49')]),this[_0x451925('0x18')](_0x188ef8[_0x451925('0x49')]);else this['channels'][_0x188ef8[_0x451925('0x22')]]&&this[_0x451925('0x42')][_0x188ef8[_0x451925('0x22')]][_0x451925('0x13')]&&(logger[_0x451925('0x19')](_0x451925('0x1d'),_0x188ef8[_0x451925('0x22')]),this['startAcw'](_0x188ef8['linkedid']));}catch(_0x45c1cd){logger[_0x451925('0xd')]('[ACW][syncHangup]\x20%s',_0x45c1cd[_0x451925('0x47')]);}},Acw[_0x11d354('0x3e')][_0x11d354('0x35')]=function(_0x2a58a8){const _0x210e94=_0x11d354;try{if(!_[_0x210e94('0x1c')](this[_0x210e94('0x42')][_0x2a58a8['transfereeuniqueid']]))this['startAcw'](_0x2a58a8[_0x210e94('0xf')]),this[_0x210e94('0x42')][_0x2a58a8[_0x210e94('0x45')]]&&(this['channels'][_0x2a58a8[_0x210e94('0x45')]][_0x210e94('0x13')]=!![],this['channels'][_0x2a58a8['transfertargetuniqueid']]=this[_0x210e94('0x42')][_0x2a58a8['secondtransfereruniqueid']],delete this[_0x210e94('0x42')][_0x2a58a8[_0x210e94('0x45')]]);else!_[_0x210e94('0x1c')](this[_0x210e94('0x42')][_0x2a58a8[_0x210e94('0x3')]])&&(this[_0x210e94('0x18')](_0x2a58a8[_0x210e94('0x3')]),this['channels'][_0x2a58a8[_0x210e94('0xe')]]&&(this[_0x210e94('0x42')][_0x2a58a8[_0x210e94('0xe')]][_0x210e94('0x13')]=!![],this[_0x210e94('0x42')][_0x2a58a8[_0x210e94('0xf')]]=this['channels'][_0x2a58a8[_0x210e94('0xe')]],delete this[_0x210e94('0x42')][_0x2a58a8[_0x210e94('0xe')]]));}catch(_0x36bca8){logger['error']('[ACW][syncAttendedTransfer]\x20%s',_0x36bca8[_0x210e94('0x47')]);}},Acw['prototype'][_0x11d354('0x38')]=function(_0x17c21f){const _0x12c3d3=_0x11d354;try{if(this['channels'][_0x17c21f[_0x12c3d3('0x1b')]])logger[_0x12c3d3('0x19')]('[%s][BLINDTRANSFER:UNIQUEID]',JSON[_0x12c3d3('0x48')](_0x17c21f[_0x12c3d3('0x1b')])),this[_0x12c3d3('0x18')](_0x17c21f['transfereruniqueid']);else this[_0x12c3d3('0x42')][_0x17c21f['transfererlinkedid']]&&(logger[_0x12c3d3('0x19')](_0x12c3d3('0x34'),JSON[_0x12c3d3('0x48')](_0x17c21f[_0x12c3d3('0x25')])),this[_0x12c3d3('0x18')](_0x17c21f[_0x12c3d3('0x25')]));}catch(_0x54f245){logger[_0x12c3d3('0xd')](_0x12c3d3('0xc'),_0x54f245[_0x12c3d3('0x47')]);}},Acw[_0x11d354('0x3e')][_0x11d354('0x33')]=function(_0x37ed7c){const _0x31aeb1=_0x11d354;try{if(this[_0x31aeb1('0x3c')][_0x37ed7c[_0x31aeb1('0xb')]]&&this['voiceQueues'][_0x37ed7c[_0x31aeb1('0xb')]][_0x31aeb1('0x7')]===_0x31aeb1('0x3d')){if(this['agents'][_0x37ed7c[_0x31aeb1('0x1f')]])return logger[_0x31aeb1('0x19')]('[%s][AUTOPAUSE][AGENT:%s][QUEUE:%]',_0x37ed7c['uniqueid'],_0x37ed7c[_0x31aeb1('0x1f')],_0x37ed7c['queue']),RpcUser['savePause'](this[_0x31aeb1('0x12')][_0x37ed7c['interface']],_0x31aeb1('0x9'),_0x37ed7c[_0x31aeb1('0x49')]);}}catch(_0x542fbc){logger[_0x31aeb1('0xd')]('[ACW][syncAgentRingNoAnswer]\x20%s',_0x542fbc[_0x31aeb1('0x47')]);}},module[_0x11d354('0x1a')]=Acw;