cf9f31b020fdf6c3d0caf1f43128d5cbb6f1f449
[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 _0x40d9=['diffTime','diff','sumTime','now','isAfter','isBefore','moment','bluebird','client','http','xdr','info','debug','stringify','error','stack','request','then','catch','internal','name','interface','GETUSER|','result','length','FOUND','getUserByInternal','getUserByInterface','getVoiceQueueByName','acw','acwTimeout','GETVOICEQUEUEBYNAME|','addTime','add','seconds','format','YYYY-MM-DD\x20HH:mm:ss'];(function(_0x1c21b0,_0x20a651){var _0x3bdc02=function(_0x175ac3){while(--_0x175ac3){_0x1c21b0['push'](_0x1c21b0['shift']());}};_0x3bdc02(++_0x20a651);}(_0x40d9,0x1e7));var _0x940d=function(_0x386adf,_0x174b7a){_0x386adf=_0x386adf-0x0;var _0x1e44a6=_0x40d9[_0x386adf];return _0x1e44a6;};'use strict';var jayson=require('jayson/promise');var moment=require(_0x940d('0x0'));var BPromise=require(_0x940d('0x1'));var client=jayson[_0x940d('0x2')][_0x940d('0x3')]({'port':0x2329});var logger=require('../../config/logger')(_0x940d('0x4'));exports[_0x940d('0x5')]=function(_0x1e1b84){logger[_0x940d('0x5')](_0x1e1b84);};exports[_0x940d('0x6')]=function(_0x19b087){logger[_0x940d('0x6')](JSON[_0x940d('0x7')](_0x19b087));};exports['error']=function(_0x1beba9){logger[_0x940d('0x8')](_0x1beba9[_0x940d('0x9')]);};exports[_0x940d('0xa')]=function(_0x2b168a,_0x31f8dc){return client['request'](_0x2b168a,{'body':_0x31f8dc})[_0x940d('0xb')](function(_0x5d6183){logger['debug'](JSON[_0x940d('0x7')](_0x5d6183));})[_0x940d('0xc')](function(_0x13c5c7){logger[_0x940d('0x8')](_0x13c5c7[_0x940d('0x9')]);});};function getUser(_0x46a6fe){return client[_0x940d('0xa')]('GetUser',{'options':{'raw':!![],'attributes':['id',_0x940d('0xd'),_0x940d('0xe'),_0x940d('0xf')],'where':_0x46a6fe,'limit':0x1}})[_0x940d('0xb')](function(_0x43f6e5){logger[_0x940d('0x5')](_0x940d('0x10')+JSON[_0x940d('0x7')](_0x46a6fe)+'|'+(_0x43f6e5[_0x940d('0x11')][_0x940d('0x12')]?_0x940d('0x13'):'NOTFOUND'));return _0x43f6e5[_0x940d('0x11')][_0x940d('0x12')]?_0x43f6e5['result'][0x0]:null;});}exports[_0x940d('0x14')]=function(_0x1e06fb){return new BPromise(function(_0x5acdd9,_0x509602){if(_0x1e06fb){return getUser({'internal':_0x1e06fb})[_0x940d('0xb')](function(_0x5a5c39){return _0x5acdd9(_0x5a5c39);})[_0x940d('0xc')](function(_0x1d8ed){logger[_0x940d('0x8')](_0x1d8ed[_0x940d('0x9')]);return _0x5acdd9(null);});}else{return _0x5acdd9(null);}});};exports[_0x940d('0x15')]=function(_0x5d6e06){return new BPromise(function(_0x316782,_0x2382fe){if(_0x5d6e06){return getUser({'interface':_0x5d6e06})['then'](function(_0x4aea36){return _0x316782(_0x4aea36);})[_0x940d('0xc')](function(_0x1dca6d){logger[_0x940d('0x8')](_0x1dca6d[_0x940d('0x9')]);return _0x316782(null);});}else{return _0x316782(null);}});};exports['getUserByName']=function(_0x3be46c){return new BPromise(function(_0x627e31,_0x1e693b){if(_0x3be46c){return getUser({'name':_0x3be46c})[_0x940d('0xb')](function(_0x3ad9e9){return _0x627e31(_0x3ad9e9);})[_0x940d('0xc')](function(_0x18f499){logger[_0x940d('0x8')](_0x18f499[_0x940d('0x9')]);return _0x627e31(null);});}else{return _0x627e31(null);}});};exports[_0x940d('0x16')]=function(_0x256f67){return new BPromise(function(_0x2ad0b0,_0x1f6adb){if(_0x256f67){return client['request']('GetVoiceQueue',{'options':{'raw':!![],'attributes':['id',_0x940d('0xe'),'type',_0x940d('0x17'),_0x940d('0x18')],'where':{'name':_0x256f67},'limit':0x1}})[_0x940d('0xb')](function(_0x336b88){logger[_0x940d('0x5')](_0x940d('0x19')+_0x256f67+'|'+(_0x336b88['result']['length']?'FOUND':'NOTFOUND'));return _0x2ad0b0(_0x336b88[_0x940d('0x11')][_0x940d('0x12')]?_0x336b88[_0x940d('0x11')][0x0]:null);})[_0x940d('0xc')](function(_0x8140df){logger['error'](_0x8140df[_0x940d('0x9')]);return _0x2ad0b0(null);});}else{return _0x2ad0b0(null);}});};exports[_0x940d('0x1a')]=function(_0x17312f,_0x33428c){return moment(_0x17312f)[_0x940d('0x1b')](_0x33428c,_0x940d('0x1c'))[_0x940d('0x1d')](_0x940d('0x1e'));};exports['subtractTime']=function(_0x2afad1,_0x55f4a8){return moment(_0x2afad1)['subtract'](_0x55f4a8,_0x940d('0x1c'))[_0x940d('0x1d')](_0x940d('0x1e'));};exports[_0x940d('0x1f')]=function(_0x71dcc3,_0x5c2fba){return moment(_0x71dcc3)[_0x940d('0x20')](moment(_0x5c2fba),_0x940d('0x1c'));};exports[_0x940d('0x21')]=function(_0x191cc0,_0xf15d1a){return parseInt(_0x191cc0,0xa)+parseInt(_0xf15d1a,0xa);};exports[_0x940d('0x22')]=function(){return moment()[_0x940d('0x1d')](_0x940d('0x1e'));};exports['isAfter']=function(_0x1eb897,_0x1b87cd){if(_0x1b87cd){return moment(_0x1eb897)[_0x940d('0x23')](_0x1b87cd);}else{return!![];}};exports[_0x940d('0x24')]=function(_0x471053,_0x5d9438){if(_0x5d9438){return moment(_0x471053)[_0x940d('0x24')](_0x5d9438);}else if(_0x471053){return!![];}else{return![];}};