14a5b3417daae529417dc29f696571881e2894c2
[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 _0x008a=['error','request','then','[utils][request]\x20name:%s','catch','GetUser','internal','name','interface','result','length','getUserByInternal','notfound','getUserByInterface','[utils][getUserByInterface]\x20interface:%s\x20%s','found','getUserByName','getVoiceQueueByName','GetVoiceQueue','type','acw','acwTimeout','[utils][getVoiceQueueByName]','addTime','add','seconds','format','subtract','YYYY-MM-DD\x20HH:mm:ss','diffTime','diff','sumTime','now','isAfter','isBefore','bluebird','jayson/promise','moment','util','client','http','../../config/logger','xdr','info','inspect','debug'];(function(_0x374302,_0x68aeb){var _0x16431f=function(_0x39c238){while(--_0x39c238){_0x374302['push'](_0x374302['shift']());}};_0x16431f(++_0x68aeb);}(_0x008a,0x1ef));var _0xa008=function(_0x39142a,_0x451b6a){_0x39142a=_0x39142a-0x0;var _0x271ddf=_0x008a[_0x39142a];return _0x271ddf;};'use strict';var BPromise=require(_0xa008('0x0'));var jayson=require(_0xa008('0x1'));var moment=require(_0xa008('0x2'));var util=require(_0xa008('0x3'));var client=jayson[_0xa008('0x4')][_0xa008('0x5')]({'port':0x2329});var logger=require(_0xa008('0x6'))(_0xa008('0x7'));exports[_0xa008('0x8')]=function(_0x1883d4,_0x5eff15){logger[_0xa008('0x8')](_0x1883d4,_0x5eff15?util[_0xa008('0x9')](_0x5eff15,{'showHidden':![],'depth':null}):'');};exports[_0xa008('0xa')]=function(_0x4699a6,_0x33c5ef){logger['debug'](_0x4699a6,_0x33c5ef?util[_0xa008('0x9')](_0x33c5ef,{'showHidden':![],'depth':null}):'');};exports['error']=function(_0xab19ca,_0x461349){logger[_0xa008('0xb')](_0xab19ca,_0x461349?util[_0xa008('0x9')](_0x461349,{'showHidden':![],'depth':null}):'');};exports['request']=function(_0x4f8aa9,_0x40aadc){return client[_0xa008('0xc')](_0x4f8aa9,{'body':_0x40aadc})[_0xa008('0xd')](function(_0x3a3bc9){logger[_0xa008('0xa')](_0xa008('0xe'),_0x4f8aa9,_0x3a3bc9?util[_0xa008('0x9')](_0x3a3bc9,{'showHidden':![],'depth':null}):'');})[_0xa008('0xf')](function(_0x3e57cb){logger[_0xa008('0xb')](_0xa008('0xe'),_0x4f8aa9,_0x3e57cb?util[_0xa008('0x9')](_0x3e57cb,{'showHidden':![],'depth':null}):'');});};function getUser(_0x3c9e0e){return client[_0xa008('0xc')](_0xa008('0x10'),{'options':{'raw':!![],'attributes':['id',_0xa008('0x11'),_0xa008('0x12'),_0xa008('0x13')],'where':_0x3c9e0e,'limit':0x1}})[_0xa008('0xd')](function(_0xfa6065){logger[_0xa008('0xa')]('[utils][getUser]\x20where:%s',JSON['stringify'](_0x3c9e0e),_0xfa6065?util[_0xa008('0x9')](_0xfa6065,{'showHidden':![],'depth':null}):'');return _0xfa6065[_0xa008('0x14')][_0xa008('0x15')]?_0xfa6065[_0xa008('0x14')][0x0]:null;});}exports[_0xa008('0x16')]=function(_0x5c32fd){return new BPromise(function(_0x225e9a,_0x3e492c){if(_0x5c32fd){return getUser({'internal':_0x5c32fd})['then'](function(_0x379f7b){logger[_0xa008('0x8')]('[utils][getUserByInternal]\x20internal:%s\x20%s',_0x5c32fd,_0x379f7b?'found':_0xa008('0x17'));return _0x225e9a(_0x379f7b);})['catch'](function(_0x370678){logger[_0xa008('0xb')]('[utils][getUserByInternal]',_0x370678?util['inspect'](_0x370678,{'showHidden':![],'depth':null}):'');return _0x225e9a(null);});}return _0x225e9a(null);});};exports[_0xa008('0x18')]=function(_0x5523f2){return new BPromise(function(_0x5c5ec8,_0x235c2f){if(_0x5523f2){return getUser({'interface':_0x5523f2})[_0xa008('0xd')](function(_0x5cdac0){logger['info'](_0xa008('0x19'),_0x5523f2,_0x5cdac0?_0xa008('0x1a'):_0xa008('0x17'));return _0x5c5ec8(_0x5cdac0);})[_0xa008('0xf')](function(_0x35ced8){logger['error']('[utils][getUserByInterface]',_0x35ced8?util[_0xa008('0x9')](_0x35ced8,{'showHidden':![],'depth':null}):'');return _0x5c5ec8(null);});}return _0x5c5ec8(null);});};exports[_0xa008('0x1b')]=function(_0xd403cf){return new BPromise(function(_0x3f44d3,_0x19b885){if(_0xd403cf){return getUser({'name':_0xd403cf})[_0xa008('0xd')](function(_0x443702){logger[_0xa008('0x8')]('[utils][getUserByName]\x20name:%s\x20%s',_0xd403cf,_0x443702?_0xa008('0x1a'):_0xa008('0x17'));return _0x3f44d3(_0x443702);})[_0xa008('0xf')](function(_0x555b21){logger[_0xa008('0xb')]('[utils][getUserByName]',_0x555b21?util[_0xa008('0x9')](_0x555b21,{'showHidden':![],'depth':null}):'');return _0x3f44d3(null);});}return _0x3f44d3(null);});};exports[_0xa008('0x1c')]=function(_0x4c9837){return new BPromise(function(_0x224efd,_0x33f88a){if(_0x4c9837){return client['request'](_0xa008('0x1d'),{'options':{'raw':!![],'attributes':['id',_0xa008('0x12'),_0xa008('0x1e'),_0xa008('0x1f'),_0xa008('0x20')],'where':{'name':_0x4c9837},'limit':0x1}})[_0xa008('0xd')](function(_0x3786bb){logger[_0xa008('0xa')]('[utils][getVoiceQueueByName]\x20name:%s',_0x4c9837,_0x3786bb?util[_0xa008('0x9')](_0x3786bb,{'showHidden':![],'depth':null}):'');logger[_0xa008('0x8')]('[utils][getVoiceQueueByName]\x20name:%s\x20%s',_0x4c9837,_0x3786bb?_0xa008('0x1a'):'notfound');return _0x224efd(_0x3786bb['result'][_0xa008('0x15')]?_0x3786bb['result'][0x0]:null);})[_0xa008('0xf')](function(_0x114d14){logger['error'](_0xa008('0x21'),_0x114d14?util[_0xa008('0x9')](_0x114d14,{'showHidden':![],'depth':null}):'');return _0x224efd(null);});}return _0x224efd(null);});};exports[_0xa008('0x22')]=function(_0x3b5149,_0x36f885){return moment(_0x3b5149)[_0xa008('0x23')](_0x36f885,_0xa008('0x24'))[_0xa008('0x25')]('YYYY-MM-DD\x20HH:mm:ss');};exports['subtractTime']=function(_0x13bc2c,_0x3bc658){return moment(_0x13bc2c)[_0xa008('0x26')](_0x3bc658,_0xa008('0x24'))[_0xa008('0x25')](_0xa008('0x27'));};exports[_0xa008('0x28')]=function(_0x356810,_0x28f446){return moment(_0x356810)[_0xa008('0x29')](moment(_0x28f446),_0xa008('0x24'));};exports[_0xa008('0x2a')]=function(_0xda73b5,_0x52f111){return parseInt(_0xda73b5,0xa)+parseInt(_0x52f111,0xa);};exports[_0xa008('0x2b')]=function(){return moment()['format']('YYYY-MM-DD\x20HH:mm:ss');};exports['isAfter']=function(_0xa914ef,_0x2c5a9c){if(_0x2c5a9c){return moment(_0xa914ef)[_0xa008('0x2c')](_0x2c5a9c);}return!![];};exports[_0xa008('0x2d')]=function(_0xadc7ca,_0x2d4532){if(_0x2d4532){return moment(_0xadc7ca)['isBefore'](_0x2d4532);}else if(_0xadc7ca){return!![];}return![];};