Built motion from commit (unavailable).|2.5.11
[motion2.git] / server / services / routing / server / applications / strategy / util.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 _0x52fc=['../../../../../config/environment','../../../../../config/logger','routing','redis','localhost','socket.io-emitter','user:%s','name','emit','user:save','\x20interaction','account','notificationSound','body','queue','msg','getMustacheRender','notificationTemplate','I\x20can\x27t\x20render\x20your\x20template','error','[%s][QUEUE]\x20%s','message','format','notification:%s','[%s][QUEUE][AGENT:%s][STATUS:%s]','isAgentAvailable','busy','BUSY','online','OFFLINE','PAUSE','hasOwnProperty','Capacity','CurrentCapacity','toUpperCase','\x20MAXCAPACITY','hideNotification','lodash','util','../utils'];(function(_0x2e4e3e,_0x75ae94){var _0x51476b=function(_0x53afdc){while(--_0x53afdc){_0x2e4e3e['push'](_0x2e4e3e['shift']());}};_0x51476b(++_0x75ae94);}(_0x52fc,0xc5));var _0xc52f=function(_0x2e3a88,_0x2958f7){_0x2e3a88=_0x2e3a88-0x0;var _0xf9ae28=_0x52fc[_0x2e3a88];return _0xf9ae28;};'use strict';var _=require(_0xc52f('0x0'));var util=require(_0xc52f('0x1'));var utils=require(_0xc52f('0x2'));var Mustache=require('mustache');var Redis=require('ioredis');var config=require(_0xc52f('0x3'));var logger=require(_0xc52f('0x4'))(_0xc52f('0x5'));config[_0xc52f('0x6')]=_['defaults'](config['redis'],{'host':_0xc52f('0x7'),'port':0x18eb});var io=require(_0xc52f('0x8'))(new Redis(config[_0xc52f('0x6')]));function emit(_0x523425,_0x4cae04,_0x4db523){io['to'](_0x523425)['emit'](_0x4cae04,_0x4db523);}function sendNotification(_0x3d2845,_0x51875b,_0x12a967,_0x52db4a,_0x37a3df,_0x2cd17b){io['to'](util['format'](_0xc52f('0x9'),_0x52db4a[_0xc52f('0xa')]))[_0xc52f('0xb')](_0xc52f('0xc'),_0x52db4a);var _0x4bd6aa=_0x2cd17b||{};var _0xe199cf=_0x12a967['split']('.');var _0x38704e={'uniqueid':_0x51875b,'channel':_0xe199cf[0x0],'id':_0xe199cf[0x1],'title':_0xe199cf[0x0]+_0xc52f('0xd'),'interactionId':_0xe199cf[0x2],'queue':_0x37a3df?_0x37a3df[_0xc52f('0xa')]:null,'sound':_0x4bd6aa[_0xc52f('0xe')][_0xc52f('0xf')],'shake':_0x4bd6aa[_0xc52f('0xe')]['notificationShake']};try{if(!_0x4bd6aa[_0xc52f('0x10')]){_0x4bd6aa[_0xc52f('0x10')]={};}if(_0x37a3df){_0x4bd6aa[_0xc52f('0x10')][_0xc52f('0x11')]=_0x37a3df;}else if(_0x4bd6aa[_0xc52f('0x10')]['queue']){delete _0x4bd6aa[_0xc52f('0x10')][_0xc52f('0x11')];}_0x38704e[_0xc52f('0x12')]=utils[_0xc52f('0x13')](_0x4bd6aa['account'][_0xc52f('0x14')],_0x4bd6aa);}catch(_0x5b3238){_0x38704e[_0xc52f('0x12')]=_0xc52f('0x15');logger[_0xc52f('0x16')](util['format'](_0xc52f('0x17'),_0x51875b,_0x5b3238[_0xc52f('0x18')]));}io['to'](util[_0xc52f('0x19')](_0xc52f('0x9'),_0x52db4a[_0xc52f('0xa')]))['emit'](util[_0xc52f('0x19')](_0xc52f('0x1a'),_0x3d2845?'save':'remove'),_0x38704e);}function writeLog(_0x538290,_0x11a12f,_0x33f6a0){return logger['info'](util[_0xc52f('0x19')](_0xc52f('0x1b'),_0x538290,_0x11a12f[_0xc52f('0xa')],_0x33f6a0));}exports[_0xc52f('0x1c')]=function(_0x2a3009,_0x4d39a3,_0x923475,_0x55d3ec){if(_0x4d39a3[_0xc52f('0x1d')]){writeLog(_0x2a3009,_0x4d39a3,_0xc52f('0x1e'));return![];}if(!_0x4d39a3[_0xc52f('0x1f')]){writeLog(_0x2a3009,_0x4d39a3,_0xc52f('0x20'));return![];}if(_0x4d39a3[_0x923475+'Pause']){writeLog(_0x2a3009,_0x4d39a3,_0xc52f('0x21'));return![];}if(_0x55d3ec&&_0x4d39a3[_0xc52f('0x22')](_0x923475+_0xc52f('0x23'))&&_0x4d39a3[_0xc52f('0x22')](_0x923475+_0xc52f('0x24'))){if(_0x4d39a3[_0x923475+_0xc52f('0x23')]>0x0&&_0x4d39a3[_0x923475+'CurrentCapacity']>=_0x4d39a3[_0x923475+_0xc52f('0x23')]){writeLog(_0x2a3009,_0x4d39a3,_0x923475[_0xc52f('0x25')]()+_0xc52f('0x26'));return![];}}return!![];};exports['showNotification']=function(_0x414025,_0x482fe1,_0x1f2b8e,_0xd4e6a9,_0x3382de){return sendNotification(!![],_0x414025,_0x482fe1,_0x1f2b8e,_0xd4e6a9,_0x3382de);};exports[_0xc52f('0x27')]=function(_0x1a972f,_0x4e4626,_0x32a81a,_0x2d8553,_0x15e67e){return sendNotification(![],_0x1a972f,_0x4e4626,_0x32a81a,_0x2d8553,_0x15e67e);};exports['writeLog']=writeLog;