446608bd0e0f82621e0dc70406dd79df86daf16e
[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 _0x5e03=['info','[%s][INTERVAL]\x20%s\x20%s','\x20|\x20','join','stack','bluebird','jayson/promise','../../../config/logger','routing','client','http','request','then','error','message','result','catch','rules','[%s][INTERVAL]\x20ROUTING\x20STOPPED','stop','length','Command','iftime\x20%s','indexOf','all'];(function(_0x422905,_0x3bce3a){var _0x33dc6c=function(_0x4852c9){while(--_0x4852c9){_0x422905['push'](_0x422905['shift']());}};_0x33dc6c(++_0x3bce3a);}(_0x5e03,0xcd));var _0x35e0=function(_0x4a66e3,_0x3e6d39){_0x4a66e3=_0x4a66e3-0x0;var _0x354a46=_0x5e03[_0x4a66e3];return _0x354a46;};'use strict';var util=require('util');var BPromise=require(_0x35e0('0x0'));var jayson=require(_0x35e0('0x1'));var _=require('lodash');var logger=require(_0x35e0('0x2'))(_0x35e0('0x3'));var client=jayson[_0x35e0('0x4')][_0x35e0('0x5')]({'port':0x232a});function request(_0x45648d,_0x5eb0e4){return new BPromise(function(_0x2fd4c7,_0x4266c8){return client[_0x35e0('0x6')](_0x45648d,_0x5eb0e4)[_0x35e0('0x7')](function(_0x36e46b){if(_0x36e46b[_0x35e0('0x8')]){return _0x4266c8(_0x36e46b['error'][_0x35e0('0x9')]);}else{return _0x2fd4c7(_0x36e46b[_0x35e0('0xa')]);}})[_0x35e0('0xb')](function(_0x184517){return _0x4266c8(_0x184517);});});}exports['condition']=function(_0x3e2104,_0x268072,_0x16e27d){return function(_0x21e5c1){if(_0x16e27d[_0x35e0('0xc')]&&!_0x16e27d[_0x35e0('0xc')][_0x3e2104]){logger['info'](_0x35e0('0xd'),_0x3e2104);return _0x21e5c1[_0x35e0('0xe')]();}var _0x166a14=[];for(var _0x53635a=0x0;_0x53635a<_0x268072[_0x35e0('0xf')];_0x53635a+=0x1){_0x166a14['push'](request(_0x35e0('0x10'),{'command':util['format'](_0x35e0('0x11'),_0x268072[_0x53635a])})[_0x35e0('0x7')](function(_0x4a77a3){return _0x4a77a3&&_0x4a77a3[_0x35e0('0x9')]&&_0x4a77a3['message'][_0x35e0('0x12')]('true')>=0x0?!![]:![];})[_0x35e0('0xb')](function(){logger['error']('[%s][INTERVAL]\x20%s',_0x3e2104,_0x268072[_0x53635a]);}));}BPromise[_0x35e0('0x13')](_0x166a14)[_0x35e0('0x7')](function(_0xafa282){var _0x266c28=_['some'](_0xafa282);logger[_0x35e0('0x14')](_0x35e0('0x15'),_0x3e2104,_0x268072['join'](_0x35e0('0x16')),_0x266c28);_0x21e5c1['when'](_0x266c28);})[_0x35e0('0xb')](function(_0x191cc4){logger[_0x35e0('0x8')]('[%s][INTERVAL]\x20%s\x20%s',_0x3e2104,_0x268072[_0x35e0('0x17')](_0x35e0('0x16')),_0x191cc4[_0x35e0('0x18')]);_0x21e5c1[_0x35e0('0xe')]();});};};