d40553c1ec5b19e748318c5679e93b79eda54dc9
[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 _0xdf74=['type','acw','acwTimeout','[utils][getVoiceQueueByName]\x20name:%s','addTime','format','YYYY-MM-DD\x20HH:mm:ss','subtract','seconds','diffTime','diff','sumTime','now','isAfter','isBefore','bluebird','jayson/promise','util','client','http','../../config/logger','xdr','info','inspect','debug','request','then','[utils][request]\x20name:%s','GetUser','internal','name','interface','[utils][getUser]\x20where:%s','stringify','result','length','[utils][getUserByInternal]\x20internal:%s\x20%s','found','notfound','[utils][getUserByInternal]','getUserByInterface','[utils][getUserByInterface]\x20interface:%s\x20%s','catch','[utils][getUserByInterface]','getUserByName','[utils][getUserByName]\x20name:%s\x20%s','error','[utils][getUserByName]','getVoiceQueueByName'];(function(_0x514bd1,_0x25ea3e){var _0x58a281=function(_0x25567a){while(--_0x25567a){_0x514bd1['push'](_0x514bd1['shift']());}};_0x58a281(++_0x25ea3e);}(_0xdf74,0x197));var _0x4df7=function(_0x545090,_0x5eaac6){_0x545090=_0x545090-0x0;var _0x1d5326=_0xdf74[_0x545090];return _0x1d5326;};'use strict';var BPromise=require(_0x4df7('0x0'));var jayson=require(_0x4df7('0x1'));var moment=require('moment');var util=require(_0x4df7('0x2'));var client=jayson[_0x4df7('0x3')][_0x4df7('0x4')]({'port':0x2329});var logger=require(_0x4df7('0x5'))(_0x4df7('0x6'));exports[_0x4df7('0x7')]=function(_0x26e85f,_0x58bd49){logger[_0x4df7('0x7')](_0x26e85f,_0x58bd49?util[_0x4df7('0x8')](_0x58bd49,{'showHidden':![],'depth':null}):'');};exports[_0x4df7('0x9')]=function(_0x365037,_0x4c2142){logger[_0x4df7('0x9')](_0x365037,_0x4c2142?util[_0x4df7('0x8')](_0x4c2142,{'showHidden':![],'depth':null}):'');};exports['error']=function(_0x187fba,_0x429973){logger['error'](_0x187fba,_0x429973?util[_0x4df7('0x8')](_0x429973,{'showHidden':![],'depth':null}):'');};exports['request']=function(_0x337220,_0x15f8b4){return client[_0x4df7('0xa')](_0x337220,{'body':_0x15f8b4})[_0x4df7('0xb')](function(_0x581357){logger['debug'](_0x4df7('0xc'),_0x337220,_0x581357?util[_0x4df7('0x8')](_0x581357,{'showHidden':![],'depth':null}):'');})['catch'](function(_0x4a9643){logger['error'](_0x4df7('0xc'),_0x337220,_0x4a9643?util[_0x4df7('0x8')](_0x4a9643,{'showHidden':![],'depth':null}):'');});};function getUser(_0x1ebbb4){return client[_0x4df7('0xa')](_0x4df7('0xd'),{'options':{'raw':!![],'attributes':['id',_0x4df7('0xe'),_0x4df7('0xf'),_0x4df7('0x10')],'where':_0x1ebbb4,'limit':0x1}})[_0x4df7('0xb')](function(_0x4fda56){logger[_0x4df7('0x9')](_0x4df7('0x11'),JSON[_0x4df7('0x12')](_0x1ebbb4),_0x4fda56?util['inspect'](_0x4fda56,{'showHidden':![],'depth':null}):'');return _0x4fda56[_0x4df7('0x13')][_0x4df7('0x14')]?_0x4fda56['result'][0x0]:null;});}exports['getUserByInternal']=function(_0x12cb59){return new BPromise(function(_0x529db9,_0x54f6c8){if(_0x12cb59){return getUser({'internal':_0x12cb59})[_0x4df7('0xb')](function(_0x3a050f){logger[_0x4df7('0x7')](_0x4df7('0x15'),_0x12cb59,_0x3a050f?_0x4df7('0x16'):_0x4df7('0x17'));return _0x529db9(_0x3a050f);})['catch'](function(_0x24740a){logger['error'](_0x4df7('0x18'),_0x24740a?util[_0x4df7('0x8')](_0x24740a,{'showHidden':![],'depth':null}):'');return _0x529db9(null);});}return _0x529db9(null);});};exports[_0x4df7('0x19')]=function(_0x2e8db6){return new BPromise(function(_0x4bdb4d,_0x21df52){if(_0x2e8db6){return getUser({'interface':_0x2e8db6})[_0x4df7('0xb')](function(_0x3c4051){logger[_0x4df7('0x7')](_0x4df7('0x1a'),_0x2e8db6,_0x3c4051?_0x4df7('0x16'):'notfound');return _0x4bdb4d(_0x3c4051);})[_0x4df7('0x1b')](function(_0x5ce457){logger['error'](_0x4df7('0x1c'),_0x5ce457?util[_0x4df7('0x8')](_0x5ce457,{'showHidden':![],'depth':null}):'');return _0x4bdb4d(null);});}return _0x4bdb4d(null);});};exports[_0x4df7('0x1d')]=function(_0x3d3284){return new BPromise(function(_0x43d4b4,_0x34bd36){if(_0x3d3284){return getUser({'name':_0x3d3284})[_0x4df7('0xb')](function(_0x4cdf6e){logger['info'](_0x4df7('0x1e'),_0x3d3284,_0x4cdf6e?'found':_0x4df7('0x17'));return _0x43d4b4(_0x4cdf6e);})['catch'](function(_0x343e73){logger[_0x4df7('0x1f')](_0x4df7('0x20'),_0x343e73?util[_0x4df7('0x8')](_0x343e73,{'showHidden':![],'depth':null}):'');return _0x43d4b4(null);});}return _0x43d4b4(null);});};exports[_0x4df7('0x21')]=function(_0xa58366){return new BPromise(function(_0x29d555,_0x5e7155){if(_0xa58366){return client[_0x4df7('0xa')]('GetVoiceQueue',{'options':{'raw':!![],'attributes':['id','name',_0x4df7('0x22'),_0x4df7('0x23'),_0x4df7('0x24')],'where':{'name':_0xa58366},'limit':0x1}})[_0x4df7('0xb')](function(_0x216f18){logger['debug'](_0x4df7('0x25'),_0xa58366,_0x216f18?util[_0x4df7('0x8')](_0x216f18,{'showHidden':![],'depth':null}):'');logger['info']('[utils][getVoiceQueueByName]\x20name:%s\x20%s',_0xa58366,_0x216f18?'found':_0x4df7('0x17'));return _0x29d555(_0x216f18['result'][_0x4df7('0x14')]?_0x216f18[_0x4df7('0x13')][0x0]:null);})[_0x4df7('0x1b')](function(_0x2bfd29){logger[_0x4df7('0x1f')]('[utils][getVoiceQueueByName]',_0x2bfd29?util[_0x4df7('0x8')](_0x2bfd29,{'showHidden':![],'depth':null}):'');return _0x29d555(null);});}return _0x29d555(null);});};exports[_0x4df7('0x26')]=function(_0x326bde,_0x144502){return moment(_0x326bde)['add'](_0x144502,'seconds')[_0x4df7('0x27')](_0x4df7('0x28'));};exports['subtractTime']=function(_0x372b4a,_0x3da26f){return moment(_0x372b4a)[_0x4df7('0x29')](_0x3da26f,_0x4df7('0x2a'))[_0x4df7('0x27')](_0x4df7('0x28'));};exports[_0x4df7('0x2b')]=function(_0x27cfa2,_0x41a80a){return moment(_0x27cfa2)[_0x4df7('0x2c')](moment(_0x41a80a),_0x4df7('0x2a'));};exports[_0x4df7('0x2d')]=function(_0x55e983,_0x1e9a9b){return parseInt(_0x55e983,0xa)+parseInt(_0x1e9a9b,0xa);};exports[_0x4df7('0x2e')]=function(){return moment()[_0x4df7('0x27')]('YYYY-MM-DD\x20HH:mm:ss');};exports['isAfter']=function(_0x740a4d,_0xd5d271){if(_0xd5d271){return moment(_0x740a4d)[_0x4df7('0x2f')](_0xd5d271);}return!![];};exports['isBefore']=function(_0x5c6132,_0x36a94a){if(_0x36a94a){return moment(_0x5c6132)[_0x4df7('0x30')](_0x36a94a);}else if(_0x5c6132){return!![];}return![];};