Built motion from commit 753c950e.|2.5.42
[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 _0x3bf0=['[utils][request]\x20name:%s','catch','GetUser','internal','[utils][getUser]\x20where:%s','stringify','result','length','getUserByInternal','[utils][getUserByInternal]\x20internal:%s\x20%s','found','notfound','[utils][getUserByInternal]','getUserByInterface','[utils][getUserByInterface]\x20interface:%s\x20%s','[utils][getUserByInterface]','getUserByName','[utils][getUserByName]','getVoiceQueueByName','name','acw','acwTimeout','[utils][getVoiceQueueByName]\x20name:%s','[utils][getVoiceQueueByName]\x20name:%s\x20%s','[utils][getVoiceQueueByName]','add','seconds','format','YYYY-MM-DD\x20HH:mm:ss','subtract','diffTime','diff','sumTime','now','isBefore','bluebird','jayson/promise','moment','util','client','http','../../config/logger','info','inspect','error','request','then','debug'];(function(_0xb0f7c3,_0x4eae95){var _0x28ea68=function(_0x4395a7){while(--_0x4395a7){_0xb0f7c3['push'](_0xb0f7c3['shift']());}};_0x28ea68(++_0x4eae95);}(_0x3bf0,0x83));var _0x03bf=function(_0x1d1d40,_0xedf59d){_0x1d1d40=_0x1d1d40-0x0;var _0x3db8d9=_0x3bf0[_0x1d1d40];return _0x3db8d9;};'use strict';var BPromise=require(_0x03bf('0x0'));var jayson=require(_0x03bf('0x1'));var moment=require(_0x03bf('0x2'));var util=require(_0x03bf('0x3'));var client=jayson[_0x03bf('0x4')][_0x03bf('0x5')]({'port':0x2329});var logger=require(_0x03bf('0x6'))('xdr');exports[_0x03bf('0x7')]=function(_0x412688,_0x3398b8){logger[_0x03bf('0x7')](_0x412688,_0x3398b8?util[_0x03bf('0x8')](_0x3398b8,{'showHidden':![],'depth':null}):'');};exports['debug']=function(_0x2c37c7,_0xf513cf){logger['debug'](_0x2c37c7,_0xf513cf?util[_0x03bf('0x8')](_0xf513cf,{'showHidden':![],'depth':null}):'');};exports[_0x03bf('0x9')]=function(_0x151297,_0x4c43a1){logger[_0x03bf('0x9')](_0x151297,_0x4c43a1?util[_0x03bf('0x8')](_0x4c43a1,{'showHidden':![],'depth':null}):'');};exports[_0x03bf('0xa')]=function(_0x3baf28,_0x374024){return client[_0x03bf('0xa')](_0x3baf28,{'body':_0x374024})[_0x03bf('0xb')](function(_0x33152f){logger[_0x03bf('0xc')](_0x03bf('0xd'),_0x3baf28,_0x33152f?util[_0x03bf('0x8')](_0x33152f,{'showHidden':![],'depth':null}):'');})[_0x03bf('0xe')](function(_0xfde47c){logger[_0x03bf('0x9')](_0x03bf('0xd'),_0x3baf28,_0xfde47c?util[_0x03bf('0x8')](_0xfde47c,{'showHidden':![],'depth':null}):'');});};function getUser(_0x34af14){return client[_0x03bf('0xa')](_0x03bf('0xf'),{'options':{'raw':!![],'attributes':['id',_0x03bf('0x10'),'name','interface'],'where':_0x34af14,'limit':0x1}})[_0x03bf('0xb')](function(_0x7f2750){logger['debug'](_0x03bf('0x11'),JSON[_0x03bf('0x12')](_0x34af14),_0x7f2750?util[_0x03bf('0x8')](_0x7f2750,{'showHidden':![],'depth':null}):'');return _0x7f2750[_0x03bf('0x13')][_0x03bf('0x14')]?_0x7f2750[_0x03bf('0x13')][0x0]:null;});}exports[_0x03bf('0x15')]=function(_0x316f4b){return new BPromise(function(_0x573dc4,_0x37e8fe){if(_0x316f4b){return getUser({'internal':_0x316f4b})[_0x03bf('0xb')](function(_0x3f7e65){logger[_0x03bf('0x7')](_0x03bf('0x16'),_0x316f4b,_0x3f7e65?_0x03bf('0x17'):_0x03bf('0x18'));return _0x573dc4(_0x3f7e65);})[_0x03bf('0xe')](function(_0x30a7fd){logger[_0x03bf('0x9')](_0x03bf('0x19'),_0x30a7fd?util[_0x03bf('0x8')](_0x30a7fd,{'showHidden':![],'depth':null}):'');return _0x573dc4(null);});}return _0x573dc4(null);});};exports[_0x03bf('0x1a')]=function(_0x22e0e2){return new BPromise(function(_0x51fc81,_0x24d1f){if(_0x22e0e2){return getUser({'interface':_0x22e0e2})[_0x03bf('0xb')](function(_0x5686fb){logger[_0x03bf('0x7')](_0x03bf('0x1b'),_0x22e0e2,_0x5686fb?_0x03bf('0x17'):_0x03bf('0x18'));return _0x51fc81(_0x5686fb);})[_0x03bf('0xe')](function(_0x57c873){logger['error'](_0x03bf('0x1c'),_0x57c873?util[_0x03bf('0x8')](_0x57c873,{'showHidden':![],'depth':null}):'');return _0x51fc81(null);});}return _0x51fc81(null);});};exports[_0x03bf('0x1d')]=function(_0x250850){return new BPromise(function(_0x16c0ab,_0x59378f){if(_0x250850){return getUser({'name':_0x250850})[_0x03bf('0xb')](function(_0x50d1a7){logger[_0x03bf('0x7')]('[utils][getUserByName]\x20name:%s\x20%s',_0x250850,_0x50d1a7?_0x03bf('0x17'):_0x03bf('0x18'));return _0x16c0ab(_0x50d1a7);})['catch'](function(_0x1ba789){logger[_0x03bf('0x9')](_0x03bf('0x1e'),_0x1ba789?util['inspect'](_0x1ba789,{'showHidden':![],'depth':null}):'');return _0x16c0ab(null);});}return _0x16c0ab(null);});};exports[_0x03bf('0x1f')]=function(_0x45a5df){return new BPromise(function(_0x12e554,_0x20e9ba){if(_0x45a5df){return client[_0x03bf('0xa')]('GetVoiceQueue',{'options':{'raw':!![],'attributes':['id',_0x03bf('0x20'),'type',_0x03bf('0x21'),_0x03bf('0x22')],'where':{'name':_0x45a5df},'limit':0x1}})[_0x03bf('0xb')](function(_0x1f7595){logger[_0x03bf('0xc')](_0x03bf('0x23'),_0x45a5df,_0x1f7595?util[_0x03bf('0x8')](_0x1f7595,{'showHidden':![],'depth':null}):'');logger[_0x03bf('0x7')](_0x03bf('0x24'),_0x45a5df,_0x1f7595?'found':_0x03bf('0x18'));return _0x12e554(_0x1f7595[_0x03bf('0x13')][_0x03bf('0x14')]?_0x1f7595['result'][0x0]:null);})[_0x03bf('0xe')](function(_0x352ac4){logger['error'](_0x03bf('0x25'),_0x352ac4?util[_0x03bf('0x8')](_0x352ac4,{'showHidden':![],'depth':null}):'');return _0x12e554(null);});}return _0x12e554(null);});};exports['addTime']=function(_0x4a9466,_0x2b0db7){return moment(_0x4a9466)[_0x03bf('0x26')](_0x2b0db7,_0x03bf('0x27'))[_0x03bf('0x28')](_0x03bf('0x29'));};exports['subtractTime']=function(_0x3beb7a,_0x1b0eed){return moment(_0x3beb7a)[_0x03bf('0x2a')](_0x1b0eed,'seconds')[_0x03bf('0x28')]('YYYY-MM-DD\x20HH:mm:ss');};exports[_0x03bf('0x2b')]=function(_0x3a7603,_0x5b4e42){return moment(_0x3a7603)[_0x03bf('0x2c')](moment(_0x5b4e42),_0x03bf('0x27'));};exports[_0x03bf('0x2d')]=function(_0x53e729,_0x31f05f){return parseInt(_0x53e729,0xa)+parseInt(_0x31f05f,0xa);};exports[_0x03bf('0x2e')]=function(){return moment()[_0x03bf('0x28')](_0x03bf('0x29'));};exports['isAfter']=function(_0xd498f3,_0x5be22f){if(_0x5be22f){return moment(_0xd498f3)['isAfter'](_0x5be22f);}return!![];};exports[_0x03bf('0x2f')]=function(_0x2f6e61,_0x329ab7){if(_0x329ab7){return moment(_0x2f6e61)[_0x03bf('0x2f')](_0x329ab7);}else if(_0x2f6e61){return!![];}return![];};