Built motion from commit 9d0783e6.|2.6.13
[motion2.git] / server / services / routing / server / applications / strategy / util.js
index 353bc9e..b8ddb47 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x8f9a=['capitalize','InteractionId','WaitingInteractions','agents','removeWaitingNotification','writeLog','lodash','util','../utils','../../../../../config/environment','routing','defaults','redis','localhost','socket.io-emitter','format','user:%s','user:save','\x20interaction','name','account','notificationSound','notificationShake','body','queue','getMustacheRender','notificationTemplate','I\x20can\x27t\x20render\x20your\x20template','message','emit','notification:%s','save','[%s][QUEUE][AGENT:%s][STATUS:%s]','online','OFFLINE','PAUSE','hasOwnProperty','Capacity','\x20MAXCAPACITY','showNotification','hideNotification','interaction','UserId','some','channel','QueuesWaitingInteractions'];(function(_0x2c1c8,_0x4a52b0){var _0x495de6=function(_0x44c5cc){while(--_0x44c5cc){_0x2c1c8['push'](_0x2c1c8['shift']());}};_0x495de6(++_0x4a52b0);}(_0x8f9a,0x176));var _0xa8f9=function(_0x5207d3,_0x1b67d4){_0x5207d3=_0x5207d3-0x0;var _0x36785c=_0x8f9a[_0x5207d3];return _0x36785c;};'use strict';var _=require(_0xa8f9('0x0'));var util=require(_0xa8f9('0x1'));var utils=require(_0xa8f9('0x2'));var Redis=require('ioredis');var config=require(_0xa8f9('0x3'));var logger=require('../../../../../config/logger')(_0xa8f9('0x4'));config['redis']=_[_0xa8f9('0x5')](config[_0xa8f9('0x6')],{'host':_0xa8f9('0x7'),'port':0x18eb});var io=require(_0xa8f9('0x8'))(new Redis(config['redis']));function sendNotification(_0x4cb21b,_0x4a3039,_0x269b2d,_0x9ecafc,_0x7da7d1,_0x1c0d33){io['to'](util[_0xa8f9('0x9')](_0xa8f9('0xa'),_0x9ecafc['name']))['emit'](_0xa8f9('0xb'),_0x9ecafc);var _0x35d272=_0x1c0d33||{};var _0x1239b9=_0x269b2d['split']('.');var _0x32ce62={'uniqueid':_0x4a3039,'channel':_0x1239b9[0x0],'id':_0x1239b9[0x1],'title':_0x1239b9[0x0]+_0xa8f9('0xc'),'interactionId':_0x1239b9[0x2],'queue':_0x7da7d1?_0x7da7d1[_0xa8f9('0xd')]:null,'sound':_0x35d272[_0xa8f9('0xe')][_0xa8f9('0xf')],'shake':_0x35d272[_0xa8f9('0xe')][_0xa8f9('0x10')]};try{if(!_0x35d272[_0xa8f9('0x11')]){_0x35d272[_0xa8f9('0x11')]={};}if(_0x7da7d1){_0x35d272[_0xa8f9('0x11')][_0xa8f9('0x12')]=_0x7da7d1;}else if(_0x35d272[_0xa8f9('0x11')]['queue']){delete _0x35d272[_0xa8f9('0x11')][_0xa8f9('0x12')];}_0x32ce62['msg']=utils[_0xa8f9('0x13')](_0x35d272[_0xa8f9('0xe')][_0xa8f9('0x14')],_0x35d272);}catch(_0x30c0bd){_0x32ce62['msg']=_0xa8f9('0x15');logger['error'](util[_0xa8f9('0x9')]('[%s][QUEUE]\x20%s',_0x4a3039,_0x30c0bd[_0xa8f9('0x16')]));}io['to'](util['format']('user:%s',_0x9ecafc[_0xa8f9('0xd')]))[_0xa8f9('0x17')](util[_0xa8f9('0x9')](_0xa8f9('0x18'),_0x4cb21b?_0xa8f9('0x19'):'remove'),_0x32ce62);}function writeLog(_0x511d30,_0xeca131,_0x3f3c73){return logger['debug'](util[_0xa8f9('0x9')](_0xa8f9('0x1a'),_0x511d30,_0xeca131['name'],_0x3f3c73));}exports['isAgentAvailable']=function(_0x1222b3,_0x788c33,_0x5f2655,_0x28c670){if(_0x788c33['busy']){writeLog(_0x1222b3,_0x788c33,'BUSY');return![];}if(!_0x788c33[_0xa8f9('0x1b')]){writeLog(_0x1222b3,_0x788c33,_0xa8f9('0x1c'));return![];}if(_0x788c33[_0x5f2655+'Pause']){writeLog(_0x1222b3,_0x788c33,_0xa8f9('0x1d'));return![];}if(_0x28c670&&_0x788c33['hasOwnProperty'](_0x5f2655+'Capacity')&&_0x788c33[_0xa8f9('0x1e')](_0x5f2655+'CurrentCapacity')){if(_0x788c33[_0x5f2655+_0xa8f9('0x1f')]>0x0&&_0x788c33[_0x5f2655+'CurrentCapacity']>=_0x788c33[_0x5f2655+_0xa8f9('0x1f')]){writeLog(_0x1222b3,_0x788c33,_0x5f2655['toUpperCase']()+_0xa8f9('0x20'));return![];}}return!![];};exports[_0xa8f9('0x21')]=function(_0x226cc5,_0xd2f296,_0x18a468,_0x31fc07,_0x303f7e){return sendNotification(!![],_0x226cc5,_0xd2f296,_0x18a468,_0x31fc07,_0x303f7e);};exports[_0xa8f9('0x22')]=function(_0x2cedcb,_0x5be5d8,_0x5790a3,_0x13b504,_0x4831b5){return sendNotification(![],_0x2cedcb,_0x5be5d8,_0x5790a3,_0x13b504,_0x4831b5);};exports['checkWaitingNotifications']=function(_0x1f08d0,_0x58d205,_0x169f49){var _0x1416fa=_0x58d205[_0xa8f9('0x23')][_0xa8f9('0x24')];if(!_0x1416fa&&_0x169f49){_0x1416fa=_0x169f49['id'];}var _0x28df47=_[_0xa8f9('0x25')](_0x1f08d0[_0x58d205[_0xa8f9('0x26')]+_0xa8f9('0x27')],function(_0x381ad1){var _0x49212b=_[_0xa8f9('0x28')](_0x58d205[_0xa8f9('0x26')])+_0xa8f9('0x29');return _0x381ad1[_0x49212b]===_0x58d205['interaction']['id'];});if(!_0x28df47&&_0x1416fa){_0x28df47=_[_0xa8f9('0x25')](_0x1f08d0['agents'][_0x1416fa][_0x58d205['channel']+_0xa8f9('0x2a')],function(_0x1a2c24){return _0x1a2c24['id']===_0x58d205[_0xa8f9('0x23')]['id'];});}return _0x28df47;};exports['saveWaitingNotification']=function(_0x2a3226,_0xd17255,_0x56127a,_0xea195e){_0x2a3226[_0xa8f9('0x2b')][_0x56127a['id']][_0xea195e+_0xa8f9('0x2a')][_0xd17255[_0xa8f9('0x16')]['id']]={'id':_0xd17255['interaction']['id']};};exports[_0xa8f9('0x2c')]=function(_0x2b53ef,_0x558752,_0x48b350,_0x488776){delete _0x2b53ef[_0xa8f9('0x2b')][_0x48b350['id']][_0x488776+'WaitingInteractions'][_0x558752[_0xa8f9('0x16')]['id']];};exports[_0xa8f9('0x2d')]=writeLog;
\ No newline at end of file
+var _0x588f=['notificationShake','body','queue','msg','notificationTemplate','I\x20can\x27t\x20render\x20your\x20template','error','[%s][QUEUE]\x20%s','message','notification:%s','save','remove','[%s][QUEUE][AGENT:%s][STATUS:%s]','busy','BUSY','OFFLINE','Pause','PAUSE','Capacity','hasOwnProperty','CurrentCapacity','showNotification','checkWaitingNotifications','UserId','some','InteractionId','agents','channel','saveWaitingNotification','WaitingInteractions','interaction','removeWaitingNotification','lodash','util','../utils','ioredis','../../../../../config/environment','../../../../../config/logger','redis','defaults','localhost','socket.io-emitter','format','user:%s','name','emit','split','\x20interaction','notificationSound','account'];(function(_0x243b59,_0x3f9495){var _0x3e1676=function(_0x354052){while(--_0x354052){_0x243b59['push'](_0x243b59['shift']());}};_0x3e1676(++_0x3f9495);}(_0x588f,0x84));var _0xf588=function(_0x517586,_0xc97d01){_0x517586=_0x517586-0x0;var _0x4d7494=_0x588f[_0x517586];return _0x4d7494;};'use strict';var _=require(_0xf588('0x0'));var util=require(_0xf588('0x1'));var utils=require(_0xf588('0x2'));var Redis=require(_0xf588('0x3'));var config=require(_0xf588('0x4'));var logger=require(_0xf588('0x5'))('routing');config[_0xf588('0x6')]=_[_0xf588('0x7')](config[_0xf588('0x6')],{'host':_0xf588('0x8'),'port':0x18eb});var io=require(_0xf588('0x9'))(new Redis(config[_0xf588('0x6')]));function sendNotification(_0x2e16c6,_0x2ee265,_0x48f4f0,_0x33307,_0x23ff11,_0x41918c){io['to'](util[_0xf588('0xa')](_0xf588('0xb'),_0x33307[_0xf588('0xc')]))[_0xf588('0xd')]('user:save',_0x33307);var _0x774fc7=_0x41918c||{};var _0x4dd30f=_0x48f4f0[_0xf588('0xe')]('.');var _0x5caf4a={'uniqueid':_0x2ee265,'channel':_0x4dd30f[0x0],'id':_0x4dd30f[0x1],'title':_0x4dd30f[0x0]+_0xf588('0xf'),'interactionId':_0x4dd30f[0x2],'queue':_0x23ff11?_0x23ff11[_0xf588('0xc')]:null,'sound':_0x774fc7['account'][_0xf588('0x10')],'shake':_0x774fc7[_0xf588('0x11')][_0xf588('0x12')]};try{if(!_0x774fc7[_0xf588('0x13')]){_0x774fc7[_0xf588('0x13')]={};}if(_0x23ff11){_0x774fc7[_0xf588('0x13')][_0xf588('0x14')]=_0x23ff11;}else if(_0x774fc7[_0xf588('0x13')][_0xf588('0x14')]){delete _0x774fc7['body']['queue'];}_0x5caf4a[_0xf588('0x15')]=utils['getMustacheRender'](_0x774fc7[_0xf588('0x11')][_0xf588('0x16')],_0x774fc7);}catch(_0x75c6ba){_0x5caf4a[_0xf588('0x15')]=_0xf588('0x17');logger[_0xf588('0x18')](util[_0xf588('0xa')](_0xf588('0x19'),_0x2ee265,_0x75c6ba[_0xf588('0x1a')]));}io['to'](util['format'](_0xf588('0xb'),_0x33307[_0xf588('0xc')]))[_0xf588('0xd')](util[_0xf588('0xa')](_0xf588('0x1b'),_0x2e16c6?_0xf588('0x1c'):_0xf588('0x1d')),_0x5caf4a);}function writeLog(_0x83d2aa,_0x198c9b,_0x2a8eee){return logger['debug'](util['format'](_0xf588('0x1e'),_0x83d2aa,_0x198c9b[_0xf588('0xc')],_0x2a8eee));}exports['isAgentAvailable']=function(_0xc3fc9f,_0x126749,_0x3a32f5,_0xcc59d3){if(_0x126749[_0xf588('0x1f')]){writeLog(_0xc3fc9f,_0x126749,_0xf588('0x20'));return![];}if(!_0x126749['online']){writeLog(_0xc3fc9f,_0x126749,_0xf588('0x21'));return![];}if(_0x126749[_0x3a32f5+_0xf588('0x22')]){writeLog(_0xc3fc9f,_0x126749,_0xf588('0x23'));return![];}if(_0xcc59d3&&_0x126749['hasOwnProperty'](_0x3a32f5+_0xf588('0x24'))&&_0x126749[_0xf588('0x25')](_0x3a32f5+_0xf588('0x26'))){if(_0x126749[_0x3a32f5+_0xf588('0x24')]>0x0&&_0x126749[_0x3a32f5+_0xf588('0x26')]>=_0x126749[_0x3a32f5+_0xf588('0x24')]){writeLog(_0xc3fc9f,_0x126749,_0x3a32f5['toUpperCase']()+'\x20MAXCAPACITY');return![];}}return!![];};exports[_0xf588('0x27')]=function(_0x137ca0,_0x571a65,_0xdcca9d,_0x1fdcff,_0x4920a7){return sendNotification(!![],_0x137ca0,_0x571a65,_0xdcca9d,_0x1fdcff,_0x4920a7);};exports['hideNotification']=function(_0x399a0b,_0x1c864f,_0x3eb7cc,_0x1001ee,_0x556fca){return sendNotification(![],_0x399a0b,_0x1c864f,_0x3eb7cc,_0x1001ee,_0x556fca);};exports[_0xf588('0x28')]=function(_0xa2dd14,_0x507a0e,_0x1f4b31){var _0x4fe450=_0x507a0e['interaction'][_0xf588('0x29')];if(!_0x4fe450&&_0x1f4b31){_0x4fe450=_0x1f4b31['id'];}var _0x41f388=_[_0xf588('0x2a')](_0xa2dd14[_0x507a0e['channel']+'QueuesWaitingInteractions'],function(_0x436022){var _0x2827bf=_['capitalize'](_0x507a0e['channel'])+_0xf588('0x2b');return _0x436022[_0x2827bf]===_0x507a0e['interaction']['id'];});if(!_0x41f388&&_0x4fe450){_0x41f388=_[_0xf588('0x2a')](_0xa2dd14[_0xf588('0x2c')][_0x4fe450][_0x507a0e[_0xf588('0x2d')]+'WaitingInteractions'],function(_0x4c78fc){return _0x4c78fc['id']===_0x507a0e['interaction']['id'];});}return _0x41f388;};exports[_0xf588('0x2e')]=function(_0x4cabc3,_0x4ed118,_0x87f963,_0xa676cf){_0x4cabc3['agents'][_0x87f963['id']][_0xa676cf+_0xf588('0x2f')][_0x4ed118[_0xf588('0x1a')]['id']]={'id':_0x4ed118[_0xf588('0x30')]['id']};};exports[_0xf588('0x31')]=function(_0x11c1c6,_0x540502,_0x37d4da,_0x4e1233){delete _0x11c1c6[_0xf588('0x2c')][_0x37d4da['id']][_0x4e1233+_0xf588('0x2f')][_0x540502[_0xf588('0x1a')]['id']];};exports['writeLog']=writeLog;
\ No newline at end of file