Built motion from commit 449495f6.|2.6.27
[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 _0xc311=['[%s][INTERVAL]\x20%s','all','some','[%s][INTERVAL]\x20%s\x20%s','join','when','\x20|\x20','stack','bluebird','jayson/promise','../../../config/logger','routing','client','http','request','error','result','catch','rules','info','stop','push','format','iftime\x20%s','then','message','true'];(function(_0x3efe3f,_0x53804c){var _0x476942=function(_0x238b64){while(--_0x238b64){_0x3efe3f['push'](_0x3efe3f['shift']());}};_0x476942(++_0x53804c);}(_0xc311,0xe0));var _0x1c31=function(_0x8be0a2,_0x512357){_0x8be0a2=_0x8be0a2-0x0;var _0x1c4eff=_0xc311[_0x8be0a2];return _0x1c4eff;};'use strict';var util=require('util');var BPromise=require(_0x1c31('0x0'));var jayson=require(_0x1c31('0x1'));var _=require('lodash');var logger=require(_0x1c31('0x2'))(_0x1c31('0x3'));var client=jayson[_0x1c31('0x4')][_0x1c31('0x5')]({'port':0x232a});function request(_0x222ade,_0x5dc1b8){return new BPromise(function(_0x5cc51e,_0x5df405){return client[_0x1c31('0x6')](_0x222ade,_0x5dc1b8)['then'](function(_0x33ac62){if(_0x33ac62[_0x1c31('0x7')]){return _0x5df405(_0x33ac62[_0x1c31('0x7')]['message']);}else{return _0x5cc51e(_0x33ac62[_0x1c31('0x8')]);}})[_0x1c31('0x9')](function(_0x4a87ea){return _0x5df405(_0x4a87ea);});});}exports['condition']=function(_0x531ee0,_0x368911,_0x241509){return function(_0x5220c8){if(_0x241509[_0x1c31('0xa')]&&!_0x241509['rules'][_0x531ee0]){logger[_0x1c31('0xb')]('[%s][INTERVAL]\x20ROUTING\x20STOPPED',_0x531ee0);return _0x5220c8[_0x1c31('0xc')]();}var _0x2ec945=[];for(var _0xf0ea51=0x0;_0xf0ea51<_0x368911['length'];_0xf0ea51+=0x1){_0x2ec945[_0x1c31('0xd')](request('Command',{'command':util[_0x1c31('0xe')](_0x1c31('0xf'),_0x368911[_0xf0ea51])})[_0x1c31('0x10')](function(_0x475763){return _0x475763&&_0x475763[_0x1c31('0x11')]&&_0x475763[_0x1c31('0x11')]['indexOf'](_0x1c31('0x12'))>=0x0?!![]:![];})[_0x1c31('0x9')](function(){logger[_0x1c31('0x7')](_0x1c31('0x13'),_0x531ee0,_0x368911[_0xf0ea51]);}));}BPromise[_0x1c31('0x14')](_0x2ec945)[_0x1c31('0x10')](function(_0x3ad4ed){var _0x2c39de=_[_0x1c31('0x15')](_0x3ad4ed);logger[_0x1c31('0xb')](_0x1c31('0x16'),_0x531ee0,_0x368911[_0x1c31('0x17')]('\x20|\x20'),_0x2c39de);_0x5220c8[_0x1c31('0x18')](_0x2c39de);})[_0x1c31('0x9')](function(_0x18397e){logger[_0x1c31('0x7')](_0x1c31('0x16'),_0x531ee0,_0x368911[_0x1c31('0x17')](_0x1c31('0x19')),_0x18397e[_0x1c31('0x1a')]);_0x5220c8[_0x1c31('0xc')]();});};};