944053f56642d3adad57508af33abfb9f87a0bd6
[motion2.git] / server / services / routing / server / interval.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 _0x279a=['join','stack','util','bluebird','jayson/promise','lodash','../../../config/logger','client','http','request','then','message','rules','info','[%s][INTERVAL]\x20ROUTING\x20STOPPED','push','Command','iftime\x20%s','indexOf','true','[%s][INTERVAL]\x20%s','all','\x20|\x20','when','catch','[%s][INTERVAL]\x20%s\x20%s'];(function(_0x2576d7,_0x167624){var _0x16a08c=function(_0x19de1e){while(--_0x19de1e){_0x2576d7['push'](_0x2576d7['shift']());}};_0x16a08c(++_0x167624);}(_0x279a,0x1bc));var _0xa279=function(_0x14add3,_0x13ce8d){_0x14add3=_0x14add3-0x0;var _0x4a174f=_0x279a[_0x14add3];return _0x4a174f;};'use strict';var util=require(_0xa279('0x0'));var BPromise=require(_0xa279('0x1'));var jayson=require(_0xa279('0x2'));var _=require(_0xa279('0x3'));var logger=require(_0xa279('0x4'))('routing');var client=jayson[_0xa279('0x5')][_0xa279('0x6')]({'port':0x232a});function request(_0x4dabbb,_0x322a20){return new BPromise(function(_0x4d7d3b,_0x10199f){return client[_0xa279('0x7')](_0x4dabbb,_0x322a20)[_0xa279('0x8')](function(_0x361a4f){if(_0x361a4f['error']){return _0x10199f(_0x361a4f['error'][_0xa279('0x9')]);}else{return _0x4d7d3b(_0x361a4f['result']);}})['catch'](function(_0x5e5c28){return _0x10199f(_0x5e5c28);});});}exports['condition']=function(_0x3df407,_0x18bebf,_0x2223a5){return function(_0x575185){if(_0x2223a5[_0xa279('0xa')]&&!_0x2223a5[_0xa279('0xa')][_0x3df407]){logger[_0xa279('0xb')](_0xa279('0xc'),_0x3df407);return _0x575185['stop']();}var _0x43cdfd=[];for(var _0x4790e5=0x0;_0x4790e5<_0x18bebf['length'];_0x4790e5+=0x1){_0x43cdfd[_0xa279('0xd')](request(_0xa279('0xe'),{'command':util['format'](_0xa279('0xf'),_0x18bebf[_0x4790e5])})[_0xa279('0x8')](function(_0x3a97c8){return _0x3a97c8&&_0x3a97c8[_0xa279('0x9')]&&_0x3a97c8['message'][_0xa279('0x10')](_0xa279('0x11'))>=0x0?!![]:![];})['catch'](function(){logger['error'](_0xa279('0x12'),_0x3df407,_0x18bebf[_0x4790e5]);}));}BPromise[_0xa279('0x13')](_0x43cdfd)[_0xa279('0x8')](function(_0x18a9cc){var _0x3c4cb1=_['some'](_0x18a9cc);logger[_0xa279('0xb')]('[%s][INTERVAL]\x20%s\x20%s',_0x3df407,_0x18bebf['join'](_0xa279('0x14')),_0x3c4cb1);_0x575185[_0xa279('0x15')](_0x3c4cb1);})[_0xa279('0x16')](function(_0x102ea0){logger['error'](_0xa279('0x17'),_0x3df407,_0x18bebf[_0xa279('0x18')](_0xa279('0x14')),_0x102ea0[_0xa279('0x19')]);_0x575185['stop']();});};};