Built motion from commit 639a1a7f.|2.6.19
[motion2.git] / server / services / routing / server / applications / strategy / util.js
index 832383c..2c0deb2 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xcd84=['capitalize','InteractionId','interaction','agents','WaitingInteractions','message','writeLog','lodash','util','../utils','../../../../../config/environment','../../../../../config/logger','routing','redis','defaults','localhost','socket.io-emitter','format','name','emit','user:save','split','\x20interaction','account','notificationSound','notificationShake','body','queue','msg','error','[%s][QUEUE]\x20%s','user:%s','notification:%s','save','remove','debug','[%s][QUEUE][AGENT:%s][STATUS:%s]','online','OFFLINE','Pause','hasOwnProperty','Capacity','CurrentCapacity','toUpperCase','\x20MAXCAPACITY','showNotification','UserId','some','channel','QueuesWaitingInteractions'];(function(_0x361cce,_0x54639b){var _0x439918=function(_0x3b8262){while(--_0x3b8262){_0x361cce['push'](_0x361cce['shift']());}};_0x439918(++_0x54639b);}(_0xcd84,0x197));var _0x4cd8=function(_0x220a43,_0x439334){_0x220a43=_0x220a43-0x0;var _0x2a05c0=_0xcd84[_0x220a43];return _0x2a05c0;};'use strict';var _=require(_0x4cd8('0x0'));var util=require(_0x4cd8('0x1'));var utils=require(_0x4cd8('0x2'));var Redis=require('ioredis');var config=require(_0x4cd8('0x3'));var logger=require(_0x4cd8('0x4'))(_0x4cd8('0x5'));config[_0x4cd8('0x6')]=_[_0x4cd8('0x7')](config[_0x4cd8('0x6')],{'host':_0x4cd8('0x8'),'port':0x18eb});var io=require(_0x4cd8('0x9'))(new Redis(config[_0x4cd8('0x6')]));function sendNotification(_0x6acb64,_0x21bc09,_0x37f51d,_0x28c9ac,_0x1482fb,_0x497fdd){io['to'](util[_0x4cd8('0xa')]('user:%s',_0x28c9ac[_0x4cd8('0xb')]))[_0x4cd8('0xc')](_0x4cd8('0xd'),_0x28c9ac);var _0x6fadb4=_0x497fdd||{};var _0x2ab955=_0x37f51d[_0x4cd8('0xe')]('.');var _0x416f4e={'uniqueid':_0x21bc09,'channel':_0x2ab955[0x0],'id':_0x2ab955[0x1],'title':_0x2ab955[0x0]+_0x4cd8('0xf'),'interactionId':_0x2ab955[0x2],'queue':_0x1482fb?_0x1482fb[_0x4cd8('0xb')]:null,'sound':_0x6fadb4[_0x4cd8('0x10')][_0x4cd8('0x11')],'shake':_0x6fadb4[_0x4cd8('0x10')][_0x4cd8('0x12')]};try{if(!_0x6fadb4['body']){_0x6fadb4[_0x4cd8('0x13')]={};}if(_0x1482fb){_0x6fadb4[_0x4cd8('0x13')][_0x4cd8('0x14')]=_0x1482fb;}else if(_0x6fadb4[_0x4cd8('0x13')][_0x4cd8('0x14')]){delete _0x6fadb4[_0x4cd8('0x13')]['queue'];}_0x416f4e[_0x4cd8('0x15')]=utils['getMustacheRender'](_0x6fadb4[_0x4cd8('0x10')]['notificationTemplate'],_0x6fadb4);}catch(_0x2f2a10){_0x416f4e[_0x4cd8('0x15')]='I\x20can\x27t\x20render\x20your\x20template';logger[_0x4cd8('0x16')](util[_0x4cd8('0xa')](_0x4cd8('0x17'),_0x21bc09,_0x2f2a10['message']));}io['to'](util[_0x4cd8('0xa')](_0x4cd8('0x18'),_0x28c9ac['name']))[_0x4cd8('0xc')](util[_0x4cd8('0xa')](_0x4cd8('0x19'),_0x6acb64?_0x4cd8('0x1a'):_0x4cd8('0x1b')),_0x416f4e);}function writeLog(_0x3d4075,_0x120bad,_0xebdc83){return logger[_0x4cd8('0x1c')](util['format'](_0x4cd8('0x1d'),_0x3d4075,_0x120bad[_0x4cd8('0xb')],_0xebdc83));}exports['isAgentAvailable']=function(_0x857e14,_0x382f6b,_0x77abee,_0x3eff04){if(_0x382f6b['busy']){writeLog(_0x857e14,_0x382f6b,'BUSY');return![];}if(!_0x382f6b[_0x4cd8('0x1e')]){writeLog(_0x857e14,_0x382f6b,_0x4cd8('0x1f'));return![];}if(_0x382f6b[_0x77abee+_0x4cd8('0x20')]){writeLog(_0x857e14,_0x382f6b,'PAUSE');return![];}if(_0x3eff04&&_0x382f6b[_0x4cd8('0x21')](_0x77abee+'Capacity')&&_0x382f6b[_0x4cd8('0x21')](_0x77abee+'CurrentCapacity')){if(_0x382f6b[_0x77abee+_0x4cd8('0x22')]>0x0&&_0x382f6b[_0x77abee+_0x4cd8('0x23')]>=_0x382f6b[_0x77abee+'Capacity']){writeLog(_0x857e14,_0x382f6b,_0x77abee[_0x4cd8('0x24')]()+_0x4cd8('0x25'));return![];}}return!![];};exports[_0x4cd8('0x26')]=function(_0x3d67f9,_0xef4afc,_0x1ba7c0,_0x338054,_0x3a4bed){return sendNotification(!![],_0x3d67f9,_0xef4afc,_0x1ba7c0,_0x338054,_0x3a4bed);};exports['hideNotification']=function(_0x3a25ff,_0x3772c1,_0x17c192,_0x31f00c,_0x5c40e0){return sendNotification(![],_0x3a25ff,_0x3772c1,_0x17c192,_0x31f00c,_0x5c40e0);};exports['checkWaitingNotifications']=function(_0x107475,_0x283b28,_0x3744aa){var _0x584863=_0x283b28['interaction'][_0x4cd8('0x27')];if(!_0x584863&&_0x3744aa){_0x584863=_0x3744aa['id'];}var _0x49940f=_[_0x4cd8('0x28')](_0x107475[_0x283b28[_0x4cd8('0x29')]+_0x4cd8('0x2a')],function(_0x2f71a2){var _0x9ffeeb=_[_0x4cd8('0x2b')](_0x283b28['channel'])+_0x4cd8('0x2c');return _0x2f71a2[_0x9ffeeb]===_0x283b28[_0x4cd8('0x2d')]['id'];});if(!_0x49940f&&_0x584863){_0x49940f=_[_0x4cd8('0x28')](_0x107475[_0x4cd8('0x2e')][_0x584863][_0x283b28['channel']+_0x4cd8('0x2f')],function(_0x24e48d){return _0x24e48d['id']===_0x283b28[_0x4cd8('0x2d')]['id'];});}return _0x49940f;};exports['saveWaitingNotification']=function(_0x46e269,_0x13a1bc,_0x31cb55,_0x3dea2a){_0x46e269['agents'][_0x31cb55['id']][_0x3dea2a+'WaitingInteractions'][_0x13a1bc['message']['id']]={'id':_0x13a1bc[_0x4cd8('0x2d')]['id']};};exports['removeWaitingNotification']=function(_0x47f503,_0x45c04b,_0x38df1c,_0x99d595){delete _0x47f503[_0x4cd8('0x2e')][_0x38df1c['id']][_0x99d595+_0x4cd8('0x2f')][_0x45c04b[_0x4cd8('0x30')]['id']];};exports[_0x4cd8('0x31')]=writeLog;
\ No newline at end of file
+var _0xdcc4=['PAUSE','Capacity','hasOwnProperty','CurrentCapacity','toUpperCase','\x20MAXCAPACITY','checkWaitingNotifications','UserId','channel','capitalize','InteractionId','interaction','agents','some','WaitingInteractions','saveWaitingNotification','removeWaitingNotification','writeLog','lodash','util','../utils','ioredis','../../../../../config/environment','routing','redis','defaults','localhost','socket.io-emitter','user:%s','name','emit','user:save','split','account','notificationShake','body','queue','msg','notificationTemplate','I\x20can\x27t\x20render\x20your\x20template','error','[%s][QUEUE]\x20%s','message','format','save','remove','debug','[%s][QUEUE][AGENT:%s][STATUS:%s]','isAgentAvailable','busy','BUSY','online','OFFLINE','Pause'];(function(_0x3d1895,_0x1c207b){var _0x5b6663=function(_0x50ca20){while(--_0x50ca20){_0x3d1895['push'](_0x3d1895['shift']());}};_0x5b6663(++_0x1c207b);}(_0xdcc4,0xea));var _0x4dcc=function(_0x13f741,_0x113a37){_0x13f741=_0x13f741-0x0;var _0x1be8f5=_0xdcc4[_0x13f741];return _0x1be8f5;};'use strict';var _=require(_0x4dcc('0x0'));var util=require(_0x4dcc('0x1'));var utils=require(_0x4dcc('0x2'));var Redis=require(_0x4dcc('0x3'));var config=require(_0x4dcc('0x4'));var logger=require('../../../../../config/logger')(_0x4dcc('0x5'));config[_0x4dcc('0x6')]=_[_0x4dcc('0x7')](config[_0x4dcc('0x6')],{'host':_0x4dcc('0x8'),'port':0x18eb});var io=require(_0x4dcc('0x9'))(new Redis(config['redis']));function sendNotification(_0x1f8ef7,_0x5561be,_0x3392ef,_0x1634f2,_0x461e9c,_0x165bf5){io['to'](util['format'](_0x4dcc('0xa'),_0x1634f2[_0x4dcc('0xb')]))[_0x4dcc('0xc')](_0x4dcc('0xd'),_0x1634f2);var _0x7ad844=_0x165bf5||{};var _0x227f00=_0x3392ef[_0x4dcc('0xe')]('.');var _0x43e361={'uniqueid':_0x5561be,'channel':_0x227f00[0x0],'id':_0x227f00[0x1],'title':_0x227f00[0x0]+'\x20interaction','interactionId':_0x227f00[0x2],'queue':_0x461e9c?_0x461e9c[_0x4dcc('0xb')]:null,'sound':_0x7ad844[_0x4dcc('0xf')]['notificationSound'],'shake':_0x7ad844[_0x4dcc('0xf')][_0x4dcc('0x10')]};try{if(!_0x7ad844['body']){_0x7ad844[_0x4dcc('0x11')]={};}if(_0x461e9c){_0x7ad844[_0x4dcc('0x11')][_0x4dcc('0x12')]=_0x461e9c;}else if(_0x7ad844[_0x4dcc('0x11')][_0x4dcc('0x12')]){delete _0x7ad844[_0x4dcc('0x11')][_0x4dcc('0x12')];}_0x43e361[_0x4dcc('0x13')]=utils['getMustacheRender'](_0x7ad844['account'][_0x4dcc('0x14')],_0x7ad844);}catch(_0x407072){_0x43e361[_0x4dcc('0x13')]=_0x4dcc('0x15');logger[_0x4dcc('0x16')](util['format'](_0x4dcc('0x17'),_0x5561be,_0x407072[_0x4dcc('0x18')]));}io['to'](util['format']('user:%s',_0x1634f2['name']))[_0x4dcc('0xc')](util[_0x4dcc('0x19')]('notification:%s',_0x1f8ef7?_0x4dcc('0x1a'):_0x4dcc('0x1b')),_0x43e361);}function writeLog(_0x25157f,_0x548f24,_0x27cb11){return logger[_0x4dcc('0x1c')](util[_0x4dcc('0x19')](_0x4dcc('0x1d'),_0x25157f,_0x548f24[_0x4dcc('0xb')],_0x27cb11));}exports[_0x4dcc('0x1e')]=function(_0x44ae9e,_0x3c6d3b,_0x1b2834,_0x1ed6d0){if(_0x3c6d3b[_0x4dcc('0x1f')]){writeLog(_0x44ae9e,_0x3c6d3b,_0x4dcc('0x20'));return![];}if(!_0x3c6d3b[_0x4dcc('0x21')]){writeLog(_0x44ae9e,_0x3c6d3b,_0x4dcc('0x22'));return![];}if(_0x3c6d3b[_0x1b2834+_0x4dcc('0x23')]){writeLog(_0x44ae9e,_0x3c6d3b,_0x4dcc('0x24'));return![];}if(_0x1ed6d0&&_0x3c6d3b['hasOwnProperty'](_0x1b2834+_0x4dcc('0x25'))&&_0x3c6d3b[_0x4dcc('0x26')](_0x1b2834+_0x4dcc('0x27'))){if(_0x3c6d3b[_0x1b2834+'Capacity']>0x0&&_0x3c6d3b[_0x1b2834+_0x4dcc('0x27')]>=_0x3c6d3b[_0x1b2834+'Capacity']){writeLog(_0x44ae9e,_0x3c6d3b,_0x1b2834[_0x4dcc('0x28')]()+_0x4dcc('0x29'));return![];}}return!![];};exports['showNotification']=function(_0x3853ae,_0x2afff8,_0x4fb23c,_0x388cc2,_0x288514){return sendNotification(!![],_0x3853ae,_0x2afff8,_0x4fb23c,_0x388cc2,_0x288514);};exports['hideNotification']=function(_0x488bf3,_0x110911,_0x1aac81,_0x160805,_0x562d1f){return sendNotification(![],_0x488bf3,_0x110911,_0x1aac81,_0x160805,_0x562d1f);};exports[_0x4dcc('0x2a')]=function(_0x5c2464,_0x2ffac7,_0x279524){var _0x45b0d5=_0x2ffac7['interaction'][_0x4dcc('0x2b')];if(!_0x45b0d5&&_0x279524){_0x45b0d5=_0x279524['id'];}var _0x4dd2e6=_['some'](_0x5c2464[_0x2ffac7[_0x4dcc('0x2c')]+'QueuesWaitingInteractions'],function(_0x39ce82){var _0x213c95=_[_0x4dcc('0x2d')](_0x2ffac7[_0x4dcc('0x2c')])+_0x4dcc('0x2e');return _0x39ce82[_0x213c95]===_0x2ffac7[_0x4dcc('0x2f')]['id'];});if(!_0x4dd2e6&&_0x45b0d5&&_0x5c2464[_0x4dcc('0x30')][_0x45b0d5]){_0x4dd2e6=_[_0x4dcc('0x31')](_0x5c2464[_0x4dcc('0x30')][_0x45b0d5][_0x2ffac7[_0x4dcc('0x2c')]+_0x4dcc('0x32')],function(_0x5686a9){return _0x5686a9['id']===_0x2ffac7['interaction']['id'];});}return _0x4dd2e6;};exports[_0x4dcc('0x33')]=function(_0x53e80a,_0x3a88ac,_0x445087,_0x3656fe){if(_0x445087&&_0x445087['id']&&_0x53e80a[_0x4dcc('0x30')]&&_0x53e80a[_0x4dcc('0x30')][_0x445087['id']]){_0x53e80a[_0x4dcc('0x30')][_0x445087['id']][_0x3656fe+_0x4dcc('0x32')][_0x3a88ac[_0x4dcc('0x18')]['id']]={'id':_0x3a88ac['interaction']['id']};}};exports[_0x4dcc('0x34')]=function(_0x5698b8,_0x6722ca,_0x53b522,_0x333fb8){if(_0x53b522&&_0x53b522['id']&&_0x5698b8['agents']&&_0x5698b8[_0x4dcc('0x30')][_0x53b522['id']]){delete _0x5698b8[_0x4dcc('0x30')][_0x53b522['id']][_0x333fb8+_0x4dcc('0x32')][_0x6722ca[_0x4dcc('0x18')]['id']];}};exports[_0x4dcc('0x35')]=writeLog;
\ No newline at end of file