c687d1091062833e0b0b7721caac3828369dcd7e
[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 _0xc017=['YYYY-MM-DD\x20HH:mm:ss','subtractTime','subtract','format','sumTime','now','isAfter','isBefore','jayson/promise','bluebird','client','../../config/logger','xdr','debug','stringify','error','request','then','catch','stack','GetUser','internal','name','info','GETUSER|','result','length','getUserByInternal','getUserByName','getVoiceQueueByName','GetVoiceQueue','type','acw','FOUND','NOTFOUND','addTime','add','seconds'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0xc017,0x1d0));var _0x7c01=function(_0x3d1bdc,_0x5f0da5){_0x3d1bdc=_0x3d1bdc-0x0;var _0x36050f=_0xc017[_0x3d1bdc];return _0x36050f;};'use strict';var jayson=require(_0x7c01('0x0'));var moment=require('moment');var BPromise=require(_0x7c01('0x1'));var client=jayson[_0x7c01('0x2')]['http']({'port':0x2329});var logger=require(_0x7c01('0x3'))(_0x7c01('0x4'));exports['info']=function(_0x161887){logger['info'](_0x161887);};exports[_0x7c01('0x5')]=function(_0x3f35ec){logger[_0x7c01('0x5')](JSON[_0x7c01('0x6')](_0x3f35ec));};exports[_0x7c01('0x7')]=function(_0xe42965){logger[_0x7c01('0x7')](_0xe42965['stack']);};exports[_0x7c01('0x8')]=function(_0x3c72fb,_0x2f5611){return client['request'](_0x3c72fb,{'body':_0x2f5611})[_0x7c01('0x9')](function(_0x3f6046){logger['debug'](JSON[_0x7c01('0x6')](_0x3f6046));})[_0x7c01('0xa')](function(_0x472003){logger['error'](_0x472003[_0x7c01('0xb')]);});};function getUser(_0x35ab76){return client['request'](_0x7c01('0xc'),{'options':{'raw':!![],'attributes':['id',_0x7c01('0xd'),_0x7c01('0xe'),'interface'],'where':_0x35ab76,'limit':0x1}})[_0x7c01('0x9')](function(_0x2df4d6){logger[_0x7c01('0xf')](_0x7c01('0x10')+JSON[_0x7c01('0x6')](_0x35ab76)+'|'+(_0x2df4d6[_0x7c01('0x11')][_0x7c01('0x12')]?'FOUND':'NOTFOUND'));return _0x2df4d6[_0x7c01('0x11')][_0x7c01('0x12')]?_0x2df4d6[_0x7c01('0x11')][0x0]:null;});}exports[_0x7c01('0x13')]=function(_0x37b1ae){return new BPromise(function(_0x409ab9,_0x389184){if(_0x37b1ae){return getUser({'internal':_0x37b1ae})['then'](function(_0x422463){return _0x409ab9(_0x422463);})[_0x7c01('0xa')](function(_0x2bcf56){logger[_0x7c01('0x7')](_0x2bcf56[_0x7c01('0xb')]);return _0x409ab9(null);});}else{return _0x409ab9(null);}});};exports['getUserByInterface']=function(_0xb4749a){return new BPromise(function(_0x440124,_0x209efb){if(_0xb4749a){return getUser({'interface':_0xb4749a})[_0x7c01('0x9')](function(_0x5830ff){return _0x440124(_0x5830ff);})[_0x7c01('0xa')](function(_0x126565){logger[_0x7c01('0x7')](_0x126565[_0x7c01('0xb')]);return _0x440124(null);});}else{return _0x440124(null);}});};exports[_0x7c01('0x14')]=function(_0x2692b1){return new BPromise(function(_0x249a36,_0x243efc){if(_0x2692b1){return getUser({'name':_0x2692b1})[_0x7c01('0x9')](function(_0x3fbea1){return _0x249a36(_0x3fbea1);})[_0x7c01('0xa')](function(_0x583ce0){logger['error'](_0x583ce0[_0x7c01('0xb')]);return _0x249a36(null);});}else{return _0x249a36(null);}});};exports[_0x7c01('0x15')]=function(_0x28901d){return new BPromise(function(_0x6b5918,_0x3f459b){if(_0x28901d){return client[_0x7c01('0x8')](_0x7c01('0x16'),{'options':{'raw':!![],'attributes':['id',_0x7c01('0xe'),_0x7c01('0x17'),_0x7c01('0x18'),'acwTimeout'],'where':{'name':_0x28901d},'limit':0x1}})[_0x7c01('0x9')](function(_0x3da164){logger[_0x7c01('0xf')]('GETVOICEQUEUEBYNAME|'+_0x28901d+'|'+(_0x3da164['result'][_0x7c01('0x12')]?_0x7c01('0x19'):_0x7c01('0x1a')));return _0x6b5918(_0x3da164[_0x7c01('0x11')]['length']?_0x3da164['result'][0x0]:null);})[_0x7c01('0xa')](function(_0x1220a6){logger[_0x7c01('0x7')](_0x1220a6['stack']);return _0x6b5918(null);});}else{return _0x6b5918(null);}});};exports[_0x7c01('0x1b')]=function(_0x474fb0,_0x4f7a08){return moment(_0x474fb0)[_0x7c01('0x1c')](_0x4f7a08,_0x7c01('0x1d'))['format'](_0x7c01('0x1e'));};exports[_0x7c01('0x1f')]=function(_0x365b5a,_0x125c5d){return moment(_0x365b5a)[_0x7c01('0x20')](_0x125c5d,_0x7c01('0x1d'))[_0x7c01('0x21')](_0x7c01('0x1e'));};exports['diffTime']=function(_0x28675c,_0x5848e5){return moment(_0x28675c)['diff'](moment(_0x5848e5),_0x7c01('0x1d'));};exports[_0x7c01('0x22')]=function(_0x238549,_0x545f67){return parseInt(_0x238549,0xa)+parseInt(_0x545f67,0xa);};exports[_0x7c01('0x23')]=function(){return moment()['format'](_0x7c01('0x1e'));};exports['isAfter']=function(_0x21ac94,_0x53aafc){if(_0x53aafc){return moment(_0x21ac94)[_0x7c01('0x24')](_0x53aafc);}else{return!![];}};exports[_0x7c01('0x25')]=function(_0x261f9b,_0x463edd){if(_0x463edd){return moment(_0x261f9b)[_0x7c01('0x25')](_0x463edd);}else if(_0x261f9b){return!![];}else{return![];}};