cf1773a66300f3ff865dc6c697aac50001958536
[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 _0x7ec5=['addTime','add','format','YYYY-MM-DD\x20HH:mm:ss','subtractTime','subtract','diff','seconds','sumTime','now','isAfter','isBefore','jayson/promise','moment','client','http','../../config/logger','xdr','info','debug','stringify','error','stack','request','catch','GetUser','internal','name','interface','then','GETUSER|','FOUND','NOTFOUND','result','length','getUserByInternal','getUserByInterface','getUserByName','GetVoiceQueue','acw','acwTimeout','GETVOICEQUEUEBYNAME|'];(function(_0x53f897,_0x539857){var _0x6879f8=function(_0xa3c36){while(--_0xa3c36){_0x53f897['push'](_0x53f897['shift']());}};_0x6879f8(++_0x539857);}(_0x7ec5,0xde));var _0x57ec=function(_0x43444b,_0x8cf95b){_0x43444b=_0x43444b-0x0;var _0x392fe5=_0x7ec5[_0x43444b];return _0x392fe5;};'use strict';var jayson=require(_0x57ec('0x0'));var moment=require(_0x57ec('0x1'));var BPromise=require('bluebird');var client=jayson[_0x57ec('0x2')][_0x57ec('0x3')]({'port':0x2329});var logger=require(_0x57ec('0x4'))(_0x57ec('0x5'));exports[_0x57ec('0x6')]=function(_0x3ed380){logger[_0x57ec('0x6')](_0x3ed380);};exports[_0x57ec('0x7')]=function(_0x410eb2){logger[_0x57ec('0x7')](JSON[_0x57ec('0x8')](_0x410eb2));};exports[_0x57ec('0x9')]=function(_0x316f31){logger[_0x57ec('0x9')](_0x316f31[_0x57ec('0xa')]);};exports[_0x57ec('0xb')]=function(_0x3c226d,_0x2196b4){return client[_0x57ec('0xb')](_0x3c226d,{'body':_0x2196b4})['then'](function(_0x527659){logger['debug'](JSON[_0x57ec('0x8')](_0x527659));})[_0x57ec('0xc')](function(_0x5801eb){logger[_0x57ec('0x9')](_0x5801eb[_0x57ec('0xa')]);});};function getUser(_0x5b9760){return client[_0x57ec('0xb')](_0x57ec('0xd'),{'options':{'raw':!![],'attributes':['id',_0x57ec('0xe'),_0x57ec('0xf'),_0x57ec('0x10')],'where':_0x5b9760,'limit':0x1}})[_0x57ec('0x11')](function(_0x5474f9){logger[_0x57ec('0x6')](_0x57ec('0x12')+JSON['stringify'](_0x5b9760)+'|'+(_0x5474f9['result']['length']?_0x57ec('0x13'):_0x57ec('0x14')));return _0x5474f9[_0x57ec('0x15')][_0x57ec('0x16')]?_0x5474f9['result'][0x0]:null;});}exports[_0x57ec('0x17')]=function(_0x242498){return new BPromise(function(_0x5ae288,_0x4f8826){if(_0x242498){return getUser({'internal':_0x242498})[_0x57ec('0x11')](function(_0xbbaf4){return _0x5ae288(_0xbbaf4);})[_0x57ec('0xc')](function(_0x4cd7b4){logger[_0x57ec('0x9')](_0x4cd7b4[_0x57ec('0xa')]);return _0x5ae288(null);});}else{return _0x5ae288(null);}});};exports[_0x57ec('0x18')]=function(_0x31860f){return new BPromise(function(_0x20fdbc,_0x54da7c){if(_0x31860f){return getUser({'interface':_0x31860f})['then'](function(_0x4a003a){return _0x20fdbc(_0x4a003a);})[_0x57ec('0xc')](function(_0x53cb10){logger[_0x57ec('0x9')](_0x53cb10[_0x57ec('0xa')]);return _0x20fdbc(null);});}else{return _0x20fdbc(null);}});};exports[_0x57ec('0x19')]=function(_0x5e4088){return new BPromise(function(_0x26f3a5,_0x3c4bd2){if(_0x5e4088){return getUser({'name':_0x5e4088})[_0x57ec('0x11')](function(_0x264813){return _0x26f3a5(_0x264813);})[_0x57ec('0xc')](function(_0x80f495){logger[_0x57ec('0x9')](_0x80f495[_0x57ec('0xa')]);return _0x26f3a5(null);});}else{return _0x26f3a5(null);}});};exports['getVoiceQueueByName']=function(_0x5e77e3){return new BPromise(function(_0x278537,_0x165162){if(_0x5e77e3){return client[_0x57ec('0xb')](_0x57ec('0x1a'),{'options':{'raw':!![],'attributes':['id',_0x57ec('0xf'),'type',_0x57ec('0x1b'),_0x57ec('0x1c')],'where':{'name':_0x5e77e3},'limit':0x1}})[_0x57ec('0x11')](function(_0x46689c){logger[_0x57ec('0x6')](_0x57ec('0x1d')+_0x5e77e3+'|'+(_0x46689c[_0x57ec('0x15')][_0x57ec('0x16')]?'FOUND':_0x57ec('0x14')));return _0x278537(_0x46689c['result'][_0x57ec('0x16')]?_0x46689c['result'][0x0]:null);})[_0x57ec('0xc')](function(_0x15216d){logger[_0x57ec('0x9')](_0x15216d['stack']);return _0x278537(null);});}else{return _0x278537(null);}});};exports[_0x57ec('0x1e')]=function(_0x1a9e28,_0x311eef){return moment(_0x1a9e28)[_0x57ec('0x1f')](_0x311eef,'seconds')[_0x57ec('0x20')](_0x57ec('0x21'));};exports[_0x57ec('0x22')]=function(_0x843a03,_0x12deda){return moment(_0x843a03)[_0x57ec('0x23')](_0x12deda,'seconds')[_0x57ec('0x20')]('YYYY-MM-DD\x20HH:mm:ss');};exports['diffTime']=function(_0x5b066e,_0x13c2f8){return moment(_0x5b066e)[_0x57ec('0x24')](moment(_0x13c2f8),_0x57ec('0x25'));};exports[_0x57ec('0x26')]=function(_0x3ad45e,_0x924c7e){return parseInt(_0x3ad45e,0xa)+parseInt(_0x924c7e,0xa);};exports[_0x57ec('0x27')]=function(){return moment()['format']('YYYY-MM-DD\x20HH:mm:ss');};exports[_0x57ec('0x28')]=function(_0xf6ade4,_0x13495e){if(_0x13495e){return moment(_0xf6ade4)[_0x57ec('0x28')](_0x13495e);}else{return!![];}};exports[_0x57ec('0x29')]=function(_0x29224c,_0x37d780){if(_0x37d780){return moment(_0x29224c)[_0x57ec('0x29')](_0x37d780);}else if(_0x29224c){return!![];}else{return![];}};