Built motion from commit 3c2ce842.|2.6.31
[motion2.git] / server / services / routing / server / applications / strategy / util.js
index 606cf62..457cf84 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x2630=['online','OFFLINE','Pause','PAUSE','hasOwnProperty','CurrentCapacity','Capacity','toUpperCase','\x20MAXCAPACITY','hideNotification','checkWaitingNotifications','interaction','UserId','some','channel','QueuesWaitingInteractions','capitalize','InteractionId','agents','message','removeWaitingNotification','WaitingInteractions','writeLog','lodash','util','../utils','../../../../../config/logger','routing','redis','defaults','localhost','split','\x20interaction','name','account','body','msg','getMustacheRender','notificationTemplate','I\x20can\x27t\x20render\x20your\x20template','error','format','[%s][QUEUE]\x20%s','emit','notification:%s','remove','debug','isAgentAvailable','BUSY'];(function(_0x3724fc,_0x3149b2){var _0x411165=function(_0x3efb11){while(--_0x3efb11){_0x3724fc['push'](_0x3724fc['shift']());}};_0x411165(++_0x3149b2);}(_0x2630,0x79));var _0x0263=function(_0x1c752d,_0x2ee642){_0x1c752d=_0x1c752d-0x0;var _0xc75291=_0x2630[_0x1c752d];return _0xc75291;};'use strict';var _=require(_0x0263('0x0'));var util=require(_0x0263('0x1'));var utils=require(_0x0263('0x2'));var Redis=require('ioredis');var config=require('../../../../../config/environment');var logger=require(_0x0263('0x3'))(_0x0263('0x4'));config[_0x0263('0x5')]=_[_0x0263('0x6')](config[_0x0263('0x5')],{'host':_0x0263('0x7'),'port':0x18eb});var io=require('socket.io-emitter')(new Redis(config[_0x0263('0x5')]));function sendNotification(_0x1b8949,_0x49f6bd,_0x8053d9,_0xa22866,_0x3f1327,_0x18e639){var _0x445e08=_0x18e639||{};var _0x4b99bf=_0x8053d9[_0x0263('0x8')]('.');var _0x2830bd={'uniqueid':_0x49f6bd,'channel':_0x4b99bf[0x0],'id':_0x4b99bf[0x1],'title':_0x4b99bf[0x0]+_0x0263('0x9'),'interactionId':_0x4b99bf[0x2],'queue':_0x3f1327?_0x3f1327[_0x0263('0xa')]:null,'sound':_0x445e08[_0x0263('0xb')]['notificationSound'],'shake':_0x445e08[_0x0263('0xb')]['notificationShake']};try{if(!_0x445e08[_0x0263('0xc')]){_0x445e08[_0x0263('0xc')]={};}if(_0x3f1327){_0x445e08[_0x0263('0xc')]['queue']=_0x3f1327;}else if(_0x445e08[_0x0263('0xc')]['queue']){delete _0x445e08[_0x0263('0xc')]['queue'];}_0x2830bd[_0x0263('0xd')]=utils[_0x0263('0xe')](_0x445e08[_0x0263('0xb')][_0x0263('0xf')],_0x445e08);}catch(_0x192a23){_0x2830bd[_0x0263('0xd')]=_0x0263('0x10');logger[_0x0263('0x11')](util[_0x0263('0x12')](_0x0263('0x13'),_0x49f6bd,_0x192a23['message']));}io['to'](util['format']('user:%s',_0xa22866['name']))[_0x0263('0x14')](util['format'](_0x0263('0x15'),_0x1b8949?'save':_0x0263('0x16')),_0x2830bd);}function writeLog(_0x4955f1,_0x247658,_0x4e6aa3){return logger[_0x0263('0x17')](util['format']('[%s][QUEUE][AGENT:%s][STATUS:%s]',_0x4955f1,_0x247658[_0x0263('0xa')],_0x4e6aa3));}exports[_0x0263('0x18')]=function(_0x167ee2,_0x40416b,_0x393d9f,_0x1e2311){if(_0x40416b['busy']){writeLog(_0x167ee2,_0x40416b,_0x0263('0x19'));return![];}if(!_0x40416b[_0x0263('0x1a')]){writeLog(_0x167ee2,_0x40416b,_0x0263('0x1b'));return![];}if(_0x40416b[_0x393d9f+_0x0263('0x1c')]){writeLog(_0x167ee2,_0x40416b,_0x0263('0x1d'));return![];}if(_0x1e2311&&_0x40416b[_0x0263('0x1e')](_0x393d9f+'Capacity')&&_0x40416b[_0x0263('0x1e')](_0x393d9f+_0x0263('0x1f'))){if(_0x40416b[_0x393d9f+_0x0263('0x20')]>0x0&&_0x40416b[_0x393d9f+_0x0263('0x1f')]>=_0x40416b[_0x393d9f+_0x0263('0x20')]){writeLog(_0x167ee2,_0x40416b,_0x393d9f[_0x0263('0x21')]()+_0x0263('0x22'));return![];}}return!![];};exports['showNotification']=function(_0x305018,_0x3ec532,_0x41b743,_0x1a15bc,_0x26e66c){return sendNotification(!![],_0x305018,_0x3ec532,_0x41b743,_0x1a15bc,_0x26e66c);};exports[_0x0263('0x23')]=function(_0x3ef70f,_0x2552d2,_0x1e7296,_0x333184,_0x121f50){return sendNotification(![],_0x3ef70f,_0x2552d2,_0x1e7296,_0x333184,_0x121f50);};exports[_0x0263('0x24')]=function(_0x30d1f0,_0x52a2f5,_0x508cfc){var _0x1c331d=_0x52a2f5[_0x0263('0x25')][_0x0263('0x26')];if(!_0x1c331d&&_0x508cfc){_0x1c331d=_0x508cfc['id'];}var _0x4485a8=_[_0x0263('0x27')](_0x30d1f0[_0x52a2f5[_0x0263('0x28')]+_0x0263('0x29')],function(_0x2033ca){var _0x273d6f=_[_0x0263('0x2a')](_0x52a2f5[_0x0263('0x28')])+_0x0263('0x2b');return _0x2033ca[_0x273d6f]===_0x52a2f5[_0x0263('0x25')]['id'];});if(!_0x4485a8&&_0x1c331d&&_0x30d1f0['agents'][_0x1c331d]){_0x4485a8=_[_0x0263('0x27')](_0x30d1f0[_0x0263('0x2c')][_0x1c331d][_0x52a2f5[_0x0263('0x28')]+'WaitingInteractions'],function(_0x313591){return _0x313591['id']===_0x52a2f5['interaction']['id'];});}return _0x4485a8;};exports['saveWaitingNotification']=function(_0x1a01eb,_0x22f86a,_0x281cf4,_0x22db35){if(_0x281cf4&&_0x281cf4['id']&&_0x1a01eb[_0x0263('0x2c')]&&_0x1a01eb['agents'][_0x281cf4['id']]){_0x1a01eb['agents'][_0x281cf4['id']][_0x22db35+'WaitingInteractions'][_0x22f86a[_0x0263('0x2d')]['id']]={'id':_0x22f86a['interaction']['id']};}};exports[_0x0263('0x2e')]=function(_0x106cee,_0x518aa6,_0x5e8e1c,_0x2d661e){if(_0x5e8e1c&&_0x5e8e1c['id']&&_0x106cee[_0x0263('0x2c')]&&_0x106cee[_0x0263('0x2c')][_0x5e8e1c['id']]){delete _0x106cee[_0x0263('0x2c')][_0x5e8e1c['id']][_0x2d661e+_0x0263('0x2f')][_0x518aa6[_0x0263('0x2d')]['id']];}};exports[_0x0263('0x30')]=writeLog;
\ No newline at end of file
+var _0x3bb8=['Pause','PAUSE','Capacity','hasOwnProperty','CurrentCapacity','toUpperCase','\x20MAXCAPACITY','showNotification','hideNotification','checkWaitingNotifications','UserId','some','channel','QueuesWaitingInteractions','capitalize','interaction','agents','WaitingInteractions','saveWaitingNotification','removeWaitingNotification','writeLog','lodash','util','../utils','ioredis','../../../../../config/environment','routing','defaults','redis','localhost','split','name','notificationSound','account','body','queue','notificationTemplate','msg','I\x20can\x27t\x20render\x20your\x20template','error','format','message','user:%s','notification:%s','remove','debug','[%s][QUEUE][AGENT:%s][STATUS:%s]','busy','BUSY','online'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x3bb8,0x173));var _0x83bb=function(_0xc116f3,_0x2e506a){_0xc116f3=_0xc116f3-0x0;var _0x2561ac=_0x3bb8[_0xc116f3];return _0x2561ac;};'use strict';var _=require(_0x83bb('0x0'));var util=require(_0x83bb('0x1'));var utils=require(_0x83bb('0x2'));var Redis=require(_0x83bb('0x3'));var config=require(_0x83bb('0x4'));var logger=require('../../../../../config/logger')(_0x83bb('0x5'));config['redis']=_[_0x83bb('0x6')](config[_0x83bb('0x7')],{'host':_0x83bb('0x8'),'port':0x18eb});var io=require('socket.io-emitter')(new Redis(config['redis']));function sendNotification(_0x353d9b,_0x3bdf48,_0x5df35e,_0x550d1a,_0x3d3fc5,_0x54a1b0){var _0x205d2b=_0x54a1b0||{};var _0xd0a30d=_0x5df35e[_0x83bb('0x9')]('.');var _0x20b5c3={'uniqueid':_0x3bdf48,'channel':_0xd0a30d[0x0],'id':_0xd0a30d[0x1],'title':_0xd0a30d[0x0]+'\x20interaction','interactionId':_0xd0a30d[0x2],'queue':_0x3d3fc5?_0x3d3fc5[_0x83bb('0xa')]:null,'sound':_0x205d2b['account'][_0x83bb('0xb')],'shake':_0x205d2b[_0x83bb('0xc')]['notificationShake']};try{if(!_0x205d2b['body']){_0x205d2b[_0x83bb('0xd')]={};}if(_0x3d3fc5){_0x205d2b[_0x83bb('0xd')]['queue']=_0x3d3fc5;}else if(_0x205d2b['body'][_0x83bb('0xe')]){delete _0x205d2b[_0x83bb('0xd')][_0x83bb('0xe')];}_0x20b5c3['msg']=utils['getMustacheRender'](_0x205d2b[_0x83bb('0xc')][_0x83bb('0xf')],_0x205d2b);}catch(_0x43e71c){_0x20b5c3[_0x83bb('0x10')]=_0x83bb('0x11');logger[_0x83bb('0x12')](util[_0x83bb('0x13')]('[%s][QUEUE]\x20%s',_0x3bdf48,_0x43e71c[_0x83bb('0x14')]));}io['to'](util[_0x83bb('0x13')](_0x83bb('0x15'),_0x550d1a['name']))['emit'](util[_0x83bb('0x13')](_0x83bb('0x16'),_0x353d9b?'save':_0x83bb('0x17')),_0x20b5c3);}function writeLog(_0x17161a,_0x29a2ff,_0x2461a3){return logger[_0x83bb('0x18')](util['format'](_0x83bb('0x19'),_0x17161a,_0x29a2ff[_0x83bb('0xa')],_0x2461a3));}exports['isAgentAvailable']=function(_0x52cadc,_0x26461f,_0x8bd0ef,_0x262eff){if(_0x26461f[_0x83bb('0x1a')]){writeLog(_0x52cadc,_0x26461f,_0x83bb('0x1b'));return![];}if(!_0x26461f[_0x83bb('0x1c')]){writeLog(_0x52cadc,_0x26461f,'OFFLINE');return![];}if(_0x26461f[_0x8bd0ef+_0x83bb('0x1d')]){writeLog(_0x52cadc,_0x26461f,_0x83bb('0x1e'));return![];}if(_0x262eff&&_0x26461f['hasOwnProperty'](_0x8bd0ef+_0x83bb('0x1f'))&&_0x26461f[_0x83bb('0x20')](_0x8bd0ef+'CurrentCapacity')){if(_0x26461f[_0x8bd0ef+'Capacity']>0x0&&_0x26461f[_0x8bd0ef+_0x83bb('0x21')]>=_0x26461f[_0x8bd0ef+'Capacity']){writeLog(_0x52cadc,_0x26461f,_0x8bd0ef[_0x83bb('0x22')]()+_0x83bb('0x23'));return![];}}return!![];};exports[_0x83bb('0x24')]=function(_0x24eef6,_0x29fa80,_0x34efb0,_0x3d8abf,_0x3fc96a){return sendNotification(!![],_0x24eef6,_0x29fa80,_0x34efb0,_0x3d8abf,_0x3fc96a);};exports[_0x83bb('0x25')]=function(_0x39df38,_0x2c35fe,_0x4dab2d,_0x35c257,_0x2c86ee){return sendNotification(![],_0x39df38,_0x2c35fe,_0x4dab2d,_0x35c257,_0x2c86ee);};exports[_0x83bb('0x26')]=function(_0x18d478,_0x33ca19,_0x3ee849){var _0x3f4d43=_0x33ca19['interaction'][_0x83bb('0x27')];if(!_0x3f4d43&&_0x3ee849){_0x3f4d43=_0x3ee849['id'];}var _0x4a9ecf=_[_0x83bb('0x28')](_0x18d478[_0x33ca19[_0x83bb('0x29')]+_0x83bb('0x2a')],function(_0x2f3768){var _0x10cfc5=_[_0x83bb('0x2b')](_0x33ca19[_0x83bb('0x29')])+'InteractionId';return _0x2f3768[_0x10cfc5]===_0x33ca19[_0x83bb('0x2c')]['id'];});if(!_0x4a9ecf&&_0x3f4d43&&_0x18d478[_0x83bb('0x2d')][_0x3f4d43]){_0x4a9ecf=_[_0x83bb('0x28')](_0x18d478[_0x83bb('0x2d')][_0x3f4d43][_0x33ca19[_0x83bb('0x29')]+_0x83bb('0x2e')],function(_0x117fc9){return _0x117fc9['id']===_0x33ca19[_0x83bb('0x2c')]['id'];});}return _0x4a9ecf;};exports[_0x83bb('0x2f')]=function(_0x1fb7f5,_0x30d24a,_0x24085c,_0x234c44){if(_0x24085c&&_0x24085c['id']&&_0x1fb7f5[_0x83bb('0x2d')]&&_0x1fb7f5['agents'][_0x24085c['id']]){_0x1fb7f5[_0x83bb('0x2d')][_0x24085c['id']][_0x234c44+_0x83bb('0x2e')][_0x30d24a[_0x83bb('0x14')]['id']]={'id':_0x30d24a[_0x83bb('0x2c')]['id']};}};exports[_0x83bb('0x30')]=function(_0x84ed71,_0x1cd910,_0x324c2c,_0x30a7b6){if(_0x324c2c&&_0x324c2c['id']&&_0x84ed71[_0x83bb('0x2d')]&&_0x84ed71[_0x83bb('0x2d')][_0x324c2c['id']]){delete _0x84ed71['agents'][_0x324c2c['id']][_0x30a7b6+_0x83bb('0x2e')][_0x1cd910[_0x83bb('0x14')]['id']];}};exports[_0x83bb('0x31')]=writeLog;
\ No newline at end of file