daddefd946e0638a5eab1be9097f026a0ee4e45e
[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 _0x07f8=['acwTimeout','GETVOICEQUEUEBYNAME|','NOTFOUND','addTime','add','format','subtractTime','seconds','diffTime','YYYY-MM-DD\x20HH:mm:ss','isAfter','isBefore','jayson/promise','moment','bluebird','client','http','xdr','info','debug','error','request','stringify','catch','internal','name','GETUSER|','result','FOUND','length','getUserByInternal','then','stack','getUserByInterface','getVoiceQueueByName','GetVoiceQueue','type'];(function(_0x34bc94,_0x74f0fd){var _0xee41e7=function(_0x424111){while(--_0x424111){_0x34bc94['push'](_0x34bc94['shift']());}};_0xee41e7(++_0x74f0fd);}(_0x07f8,0x134));var _0x807f=function(_0x241ea2,_0x27bfa5){_0x241ea2=_0x241ea2-0x0;var _0xde7556=_0x07f8[_0x241ea2];return _0xde7556;};'use strict';var jayson=require(_0x807f('0x0'));var moment=require(_0x807f('0x1'));var BPromise=require(_0x807f('0x2'));var client=jayson[_0x807f('0x3')][_0x807f('0x4')]({'port':0x2329});var logger=require('../../config/logger')(_0x807f('0x5'));exports[_0x807f('0x6')]=function(_0x16b8cc){logger[_0x807f('0x6')](_0x16b8cc);};exports[_0x807f('0x7')]=function(_0x228b8f){logger[_0x807f('0x7')](JSON['stringify'](_0x228b8f));};exports[_0x807f('0x8')]=function(_0x3ce3a4){logger[_0x807f('0x8')](_0x3ce3a4['stack']);};exports['request']=function(_0x57266e,_0x4f0c83){return client[_0x807f('0x9')](_0x57266e,{'body':_0x4f0c83})['then'](function(_0x1be88a){logger[_0x807f('0x7')](JSON[_0x807f('0xa')](_0x1be88a));})[_0x807f('0xb')](function(_0x38f265){logger[_0x807f('0x8')](_0x38f265['stack']);});};function getUser(_0x230ce4){return client[_0x807f('0x9')]('GetUser',{'options':{'raw':!![],'attributes':['id',_0x807f('0xc'),_0x807f('0xd'),'interface'],'where':_0x230ce4,'limit':0x1}})['then'](function(_0x561e76){logger[_0x807f('0x6')](_0x807f('0xe')+JSON[_0x807f('0xa')](_0x230ce4)+'|'+(_0x561e76[_0x807f('0xf')]['length']?_0x807f('0x10'):'NOTFOUND'));return _0x561e76['result'][_0x807f('0x11')]?_0x561e76[_0x807f('0xf')][0x0]:null;});}exports[_0x807f('0x12')]=function(_0x1cee43){return new BPromise(function(_0x19fd6a,_0x378390){if(_0x1cee43){return getUser({'internal':_0x1cee43})[_0x807f('0x13')](function(_0x59a51d){return _0x19fd6a(_0x59a51d);})[_0x807f('0xb')](function(_0xae1fd6){logger[_0x807f('0x8')](_0xae1fd6[_0x807f('0x14')]);return _0x19fd6a(null);});}else{return _0x19fd6a(null);}});};exports[_0x807f('0x15')]=function(_0x398258){return new BPromise(function(_0x5d8c91,_0x3078a6){if(_0x398258){return getUser({'interface':_0x398258})[_0x807f('0x13')](function(_0x5971fe){return _0x5d8c91(_0x5971fe);})[_0x807f('0xb')](function(_0x4b454a){logger[_0x807f('0x8')](_0x4b454a[_0x807f('0x14')]);return _0x5d8c91(null);});}else{return _0x5d8c91(null);}});};exports['getUserByName']=function(_0x45c3c8){return new BPromise(function(_0xc7e608,_0x2a2a3b){if(_0x45c3c8){return getUser({'name':_0x45c3c8})[_0x807f('0x13')](function(_0x3fe15f){return _0xc7e608(_0x3fe15f);})[_0x807f('0xb')](function(_0x3f04fd){logger[_0x807f('0x8')](_0x3f04fd[_0x807f('0x14')]);return _0xc7e608(null);});}else{return _0xc7e608(null);}});};exports[_0x807f('0x16')]=function(_0x5d7ca1){return new BPromise(function(_0x32241a,_0x109407){if(_0x5d7ca1){return client[_0x807f('0x9')](_0x807f('0x17'),{'options':{'raw':!![],'attributes':['id',_0x807f('0xd'),_0x807f('0x18'),'acw',_0x807f('0x19')],'where':{'name':_0x5d7ca1},'limit':0x1}})[_0x807f('0x13')](function(_0x59ea63){logger[_0x807f('0x6')](_0x807f('0x1a')+_0x5d7ca1+'|'+(_0x59ea63['result'][_0x807f('0x11')]?_0x807f('0x10'):_0x807f('0x1b')));return _0x32241a(_0x59ea63[_0x807f('0xf')][_0x807f('0x11')]?_0x59ea63[_0x807f('0xf')][0x0]:null);})[_0x807f('0xb')](function(_0x82d6d9){logger['error'](_0x82d6d9['stack']);return _0x32241a(null);});}else{return _0x32241a(null);}});};exports[_0x807f('0x1c')]=function(_0x2089e0,_0x47686d){return moment(_0x2089e0)[_0x807f('0x1d')](_0x47686d,'seconds')[_0x807f('0x1e')]('YYYY-MM-DD\x20HH:mm:ss');};exports[_0x807f('0x1f')]=function(_0x3c812e,_0x624ff4){return moment(_0x3c812e)['subtract'](_0x624ff4,_0x807f('0x20'))['format']('YYYY-MM-DD\x20HH:mm:ss');};exports[_0x807f('0x21')]=function(_0x3db56a,_0x336192){return moment(_0x3db56a)['diff'](moment(_0x336192),_0x807f('0x20'));};exports['sumTime']=function(_0x131f95,_0x1e2005){return parseInt(_0x131f95,0xa)+parseInt(_0x1e2005,0xa);};exports['now']=function(){return moment()['format'](_0x807f('0x22'));};exports[_0x807f('0x23')]=function(_0x243d66,_0x1c9071){if(_0x1c9071){return moment(_0x243d66)[_0x807f('0x23')](_0x1c9071);}else{return!![];}};exports['isBefore']=function(_0xfa4385,_0x45c14c){if(_0x45c14c){return moment(_0xfa4385)[_0x807f('0x24')](_0x45c14c);}else if(_0xfa4385){return!![];}else{return![];}};