a8ccddf45d10eaa3c149340092fee180cdc05d0c
[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 _0x8430=['now','isAfter','isBefore','jayson/promise','bluebird','xdr','info','debug','stringify','request','then','catch','error','stack','GetUser','internal','name','interface','GETUSER|','result','NOTFOUND','getUserByInternal','getUserByName','getVoiceQueueByName','GetVoiceQueue','type','acwTimeout','GETVOICEQUEUEBYNAME|','FOUND','length','addTime','add','format','YYYY-MM-DD\x20HH:mm:ss','diffTime','diff','sumTime'];(function(_0x3e6c96,_0x5b780b){var _0x43a176=function(_0x23c4f6){while(--_0x23c4f6){_0x3e6c96['push'](_0x3e6c96['shift']());}};_0x43a176(++_0x5b780b);}(_0x8430,0x97));var _0x0843=function(_0x322522,_0x4db288){_0x322522=_0x322522-0x0;var _0x293bcf=_0x8430[_0x322522];return _0x293bcf;};'use strict';var jayson=require(_0x0843('0x0'));var moment=require('moment');var BPromise=require(_0x0843('0x1'));var client=jayson['client']['http']({'port':0x2329});var logger=require('../../config/logger')(_0x0843('0x2'));exports[_0x0843('0x3')]=function(_0xd94485){logger[_0x0843('0x3')](_0xd94485);};exports[_0x0843('0x4')]=function(_0x2bd131){logger[_0x0843('0x4')](JSON[_0x0843('0x5')](_0x2bd131));};exports['error']=function(_0x55e26a){logger['error'](_0x55e26a['stack']);};exports[_0x0843('0x6')]=function(_0x4ad5a7,_0x5b8bfc){return client[_0x0843('0x6')](_0x4ad5a7,{'body':_0x5b8bfc})[_0x0843('0x7')](function(_0x199bd7){logger[_0x0843('0x4')](JSON[_0x0843('0x5')](_0x199bd7));})[_0x0843('0x8')](function(_0xb27d1){logger[_0x0843('0x9')](_0xb27d1[_0x0843('0xa')]);});};function getUser(_0x31e6c6){return client[_0x0843('0x6')](_0x0843('0xb'),{'options':{'raw':!![],'attributes':['id',_0x0843('0xc'),_0x0843('0xd'),_0x0843('0xe')],'where':_0x31e6c6,'limit':0x1}})[_0x0843('0x7')](function(_0x231ddd){logger[_0x0843('0x3')](_0x0843('0xf')+JSON['stringify'](_0x31e6c6)+'|'+(_0x231ddd[_0x0843('0x10')]['length']?'FOUND':_0x0843('0x11')));return _0x231ddd[_0x0843('0x10')]['length']?_0x231ddd[_0x0843('0x10')][0x0]:null;});}exports[_0x0843('0x12')]=function(_0x392233){return new BPromise(function(_0xc844fe,_0x27dadc){if(_0x392233){return getUser({'internal':_0x392233})[_0x0843('0x7')](function(_0x658004){return _0xc844fe(_0x658004);})[_0x0843('0x8')](function(_0x5ed2c1){logger[_0x0843('0x9')](_0x5ed2c1[_0x0843('0xa')]);return _0xc844fe(null);});}else{return _0xc844fe(null);}});};exports['getUserByInterface']=function(_0x2da8c7){return new BPromise(function(_0x4f7c9b,_0x31329b){if(_0x2da8c7){return getUser({'interface':_0x2da8c7})[_0x0843('0x7')](function(_0x58c654){return _0x4f7c9b(_0x58c654);})[_0x0843('0x8')](function(_0x3db1c7){logger[_0x0843('0x9')](_0x3db1c7['stack']);return _0x4f7c9b(null);});}else{return _0x4f7c9b(null);}});};exports[_0x0843('0x13')]=function(_0x266d17){return new BPromise(function(_0x3beda9,_0x313ca5){if(_0x266d17){return getUser({'name':_0x266d17})['then'](function(_0x188261){return _0x3beda9(_0x188261);})['catch'](function(_0x118614){logger[_0x0843('0x9')](_0x118614['stack']);return _0x3beda9(null);});}else{return _0x3beda9(null);}});};exports[_0x0843('0x14')]=function(_0x5e19c3){return new BPromise(function(_0x12bc24,_0xd0956f){if(_0x5e19c3){return client['request'](_0x0843('0x15'),{'options':{'raw':!![],'attributes':['id',_0x0843('0xd'),_0x0843('0x16'),'acw',_0x0843('0x17')],'where':{'name':_0x5e19c3},'limit':0x1}})['then'](function(_0x2f9e28){logger[_0x0843('0x3')](_0x0843('0x18')+_0x5e19c3+'|'+(_0x2f9e28[_0x0843('0x10')]['length']?_0x0843('0x19'):_0x0843('0x11')));return _0x12bc24(_0x2f9e28[_0x0843('0x10')][_0x0843('0x1a')]?_0x2f9e28[_0x0843('0x10')][0x0]:null);})['catch'](function(_0x4a22be){logger[_0x0843('0x9')](_0x4a22be['stack']);return _0x12bc24(null);});}else{return _0x12bc24(null);}});};exports[_0x0843('0x1b')]=function(_0x124263,_0x5941a5){return moment(_0x124263)[_0x0843('0x1c')](_0x5941a5,'seconds')[_0x0843('0x1d')](_0x0843('0x1e'));};exports['subtractTime']=function(_0x3b0a13,_0x148bfd){return moment(_0x3b0a13)['subtract'](_0x148bfd,'seconds')[_0x0843('0x1d')](_0x0843('0x1e'));};exports[_0x0843('0x1f')]=function(_0x4d7c8b,_0x251c92){return moment(_0x4d7c8b)[_0x0843('0x20')](moment(_0x251c92),'seconds');};exports[_0x0843('0x21')]=function(_0x26dc97,_0x546f9c){return parseInt(_0x26dc97,0xa)+parseInt(_0x546f9c,0xa);};exports[_0x0843('0x22')]=function(){return moment()[_0x0843('0x1d')]('YYYY-MM-DD\x20HH:mm:ss');};exports[_0x0843('0x23')]=function(_0x395362,_0x4c4d40){if(_0x4c4d40){return moment(_0x395362)[_0x0843('0x23')](_0x4c4d40);}else{return!![];}};exports[_0x0843('0x24')]=function(_0xad6225,_0x24a529){if(_0x24a529){return moment(_0xad6225)['isBefore'](_0x24a529);}else if(_0xad6225){return!![];}else{return![];}};