21bf3a0393c9ec3123e825721b47dccccc0e89bc
[motion2.git] / server / services / xdr / utils.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 _0xbd0c=['GetUser','internal','name','interface','[utils][getUser]\x20where:%s','stringify','result','length','getUserByInternal','[utils][getUserByInternal]\x20internal:%s\x20%s','found','notfound','catch','[utils][getUserByInternal]','getUserByInterface','[utils][getUserByInterface]\x20interface:%s\x20%s','[utils][getUserByInterface]','getUserByName','[utils][getUserByName]\x20name:%s\x20%s','getVoiceQueueByName','GetVoiceQueue','type','acw','acwTimeout','[utils][getVoiceQueueByName]\x20name:%s\x20%s','[utils][getVoiceQueueByName]','addTime','add','seconds','format','YYYY-MM-DD\x20HH:mm:ss','subtractTime','subtract','diffTime','diff','sumTime','now','isAfter','isBefore','jayson/promise','moment','../../config/logger','info','debug','inspect','error','request','then','[utils][request]\x20name:%s'];(function(_0x460f2c,_0x5647dd){var _0x101433=function(_0x2ccde5){while(--_0x2ccde5){_0x460f2c['push'](_0x460f2c['shift']());}};_0x101433(++_0x5647dd);}(_0xbd0c,0x11c));var _0xcbd0=function(_0x4cf98e,_0xba4b79){_0x4cf98e=_0x4cf98e-0x0;var _0x1623ac=_0xbd0c[_0x4cf98e];return _0x1623ac;};'use strict';var BPromise=require('bluebird');var jayson=require(_0xcbd0('0x0'));var moment=require(_0xcbd0('0x1'));var util=require('util');var client=jayson['client']['http']({'port':0x2329});var logger=require(_0xcbd0('0x2'))('xdr');exports[_0xcbd0('0x3')]=function(_0x317405,_0x24dbd5){logger[_0xcbd0('0x3')](_0x317405,_0x24dbd5?util['inspect'](_0x24dbd5,{'showHidden':![],'depth':null}):'');};exports[_0xcbd0('0x4')]=function(_0x30116d,_0x51a50c){logger['debug'](_0x30116d,_0x51a50c?util[_0xcbd0('0x5')](_0x51a50c,{'showHidden':![],'depth':null}):'');};exports[_0xcbd0('0x6')]=function(_0x520146,_0x1b9e22){logger[_0xcbd0('0x6')](_0x520146,_0x1b9e22?util['inspect'](_0x1b9e22,{'showHidden':![],'depth':null}):'');};exports['request']=function(_0x4d8ed2,_0x51671b){return client[_0xcbd0('0x7')](_0x4d8ed2,{'body':_0x51671b})[_0xcbd0('0x8')](function(_0x11190f){logger[_0xcbd0('0x4')](_0xcbd0('0x9'),_0x4d8ed2,_0x11190f?util[_0xcbd0('0x5')](_0x11190f,{'showHidden':![],'depth':null}):'');})['catch'](function(_0x4b9729){logger['error'](_0xcbd0('0x9'),_0x4d8ed2,_0x4b9729?util['inspect'](_0x4b9729,{'showHidden':![],'depth':null}):'');});};function getUser(_0x227ac1){return client[_0xcbd0('0x7')](_0xcbd0('0xa'),{'options':{'raw':!![],'attributes':['id',_0xcbd0('0xb'),_0xcbd0('0xc'),_0xcbd0('0xd')],'where':_0x227ac1,'limit':0x1}})['then'](function(_0x3cd7cb){logger['debug'](_0xcbd0('0xe'),JSON[_0xcbd0('0xf')](_0x227ac1),_0x3cd7cb?util['inspect'](_0x3cd7cb,{'showHidden':![],'depth':null}):'');return _0x3cd7cb[_0xcbd0('0x10')][_0xcbd0('0x11')]?_0x3cd7cb[_0xcbd0('0x10')][0x0]:null;});}exports[_0xcbd0('0x12')]=function(_0x715274){return new BPromise(function(_0x392e0f,_0x50f25a){if(_0x715274){return getUser({'internal':_0x715274})[_0xcbd0('0x8')](function(_0x34c091){logger[_0xcbd0('0x3')](_0xcbd0('0x13'),_0x715274,_0x34c091?_0xcbd0('0x14'):_0xcbd0('0x15'));return _0x392e0f(_0x34c091);})[_0xcbd0('0x16')](function(_0x5369b2){logger[_0xcbd0('0x6')](_0xcbd0('0x17'),_0x5369b2?util['inspect'](_0x5369b2,{'showHidden':![],'depth':null}):'');return _0x392e0f(null);});}return _0x392e0f(null);});};exports[_0xcbd0('0x18')]=function(_0x35256c){return new BPromise(function(_0x3d7585,_0x4b1cfb){if(_0x35256c){return getUser({'interface':_0x35256c})[_0xcbd0('0x8')](function(_0x71336b){logger[_0xcbd0('0x3')](_0xcbd0('0x19'),_0x35256c,_0x71336b?'found':_0xcbd0('0x15'));return _0x3d7585(_0x71336b);})[_0xcbd0('0x16')](function(_0x1372df){logger[_0xcbd0('0x6')](_0xcbd0('0x1a'),_0x1372df?util[_0xcbd0('0x5')](_0x1372df,{'showHidden':![],'depth':null}):'');return _0x3d7585(null);});}return _0x3d7585(null);});};exports[_0xcbd0('0x1b')]=function(_0x24c2c4){return new BPromise(function(_0x9b349f,_0x429032){if(_0x24c2c4){return getUser({'name':_0x24c2c4})[_0xcbd0('0x8')](function(_0x1552ca){logger['info'](_0xcbd0('0x1c'),_0x24c2c4,_0x1552ca?_0xcbd0('0x14'):_0xcbd0('0x15'));return _0x9b349f(_0x1552ca);})['catch'](function(_0x436d08){logger[_0xcbd0('0x6')]('[utils][getUserByName]',_0x436d08?util['inspect'](_0x436d08,{'showHidden':![],'depth':null}):'');return _0x9b349f(null);});}return _0x9b349f(null);});};exports[_0xcbd0('0x1d')]=function(_0x2365b8){return new BPromise(function(_0x41ae30,_0x7dfedb){if(_0x2365b8){return client['request'](_0xcbd0('0x1e'),{'options':{'raw':!![],'attributes':['id',_0xcbd0('0xc'),_0xcbd0('0x1f'),_0xcbd0('0x20'),_0xcbd0('0x21')],'where':{'name':_0x2365b8},'limit':0x1}})[_0xcbd0('0x8')](function(_0x102edc){logger[_0xcbd0('0x4')]('[utils][getVoiceQueueByName]\x20name:%s',_0x2365b8,_0x102edc?util[_0xcbd0('0x5')](_0x102edc,{'showHidden':![],'depth':null}):'');logger[_0xcbd0('0x3')](_0xcbd0('0x22'),_0x2365b8,_0x102edc?_0xcbd0('0x14'):_0xcbd0('0x15'));return _0x41ae30(_0x102edc[_0xcbd0('0x10')][_0xcbd0('0x11')]?_0x102edc[_0xcbd0('0x10')][0x0]:null);})[_0xcbd0('0x16')](function(_0x169374){logger[_0xcbd0('0x6')](_0xcbd0('0x23'),_0x169374?util[_0xcbd0('0x5')](_0x169374,{'showHidden':![],'depth':null}):'');return _0x41ae30(null);});}return _0x41ae30(null);});};exports[_0xcbd0('0x24')]=function(_0xc6ac96,_0x2e8280){return moment(_0xc6ac96)[_0xcbd0('0x25')](_0x2e8280,_0xcbd0('0x26'))[_0xcbd0('0x27')](_0xcbd0('0x28'));};exports[_0xcbd0('0x29')]=function(_0x576df7,_0x7173d9){return moment(_0x576df7)[_0xcbd0('0x2a')](_0x7173d9,'seconds')[_0xcbd0('0x27')]('YYYY-MM-DD\x20HH:mm:ss');};exports[_0xcbd0('0x2b')]=function(_0x214ec3,_0x91b5ff){return moment(_0x214ec3)[_0xcbd0('0x2c')](moment(_0x91b5ff),_0xcbd0('0x26'));};exports[_0xcbd0('0x2d')]=function(_0x106216,_0x36ec74){return parseInt(_0x106216,0xa)+parseInt(_0x36ec74,0xa);};exports[_0xcbd0('0x2e')]=function(){return moment()[_0xcbd0('0x27')](_0xcbd0('0x28'));};exports[_0xcbd0('0x2f')]=function(_0x3c3c1d,_0x22d034){if(_0x22d034){return moment(_0x3c3c1d)[_0xcbd0('0x2f')](_0x22d034);}return!![];};exports[_0xcbd0('0x30')]=function(_0x314b90,_0x14ecb7){if(_0x14ecb7){return moment(_0x314b90)['isBefore'](_0x14ecb7);}else if(_0x314b90){return!![];}return![];};