Built motion from commit (unavailable).|2.4.18
[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 _0xe879=['../../config/logger','xdr','info','debug','stringify','error','request','catch','GetUser','name','interface','then','result','length','FOUND','NOTFOUND','getUserByInternal','stack','getUserByInterface','getUserByName','getVoiceQueueByName','type','acw','acwTimeout','GETVOICEQUEUEBYNAME|','addTime','add','seconds','format','YYYY-MM-DD\x20HH:mm:ss','subtractTime','diffTime','diff','now','isAfter','isBefore','jayson/promise','moment','bluebird','client'];(function(_0xe89c4b,_0x34d241){var _0x390e4e=function(_0x40c4b7){while(--_0x40c4b7){_0xe89c4b['push'](_0xe89c4b['shift']());}};_0x390e4e(++_0x34d241);}(_0xe879,0x114));var _0x9e87=function(_0x2e5981,_0xe4e846){_0x2e5981=_0x2e5981-0x0;var _0x6e4fef=_0xe879[_0x2e5981];return _0x6e4fef;};'use strict';var jayson=require(_0x9e87('0x0'));var moment=require(_0x9e87('0x1'));var BPromise=require(_0x9e87('0x2'));var client=jayson[_0x9e87('0x3')]['http']({'port':0x2329});var logger=require(_0x9e87('0x4'))(_0x9e87('0x5'));exports['info']=function(_0x3bb347){logger[_0x9e87('0x6')](_0x3bb347);};exports[_0x9e87('0x7')]=function(_0x29f279){logger[_0x9e87('0x7')](JSON[_0x9e87('0x8')](_0x29f279));};exports['error']=function(_0x1912d5){logger[_0x9e87('0x9')](_0x1912d5['stack']);};exports[_0x9e87('0xa')]=function(_0x23cc18,_0x317e1c){return client[_0x9e87('0xa')](_0x23cc18,{'body':_0x317e1c})['then'](function(_0x32f910){logger[_0x9e87('0x7')](JSON[_0x9e87('0x8')](_0x32f910));})[_0x9e87('0xb')](function(_0x14ffb5){logger[_0x9e87('0x9')](_0x14ffb5['stack']);});};function getUser(_0x48fb82){return client[_0x9e87('0xa')](_0x9e87('0xc'),{'options':{'raw':!![],'attributes':['id','internal',_0x9e87('0xd'),_0x9e87('0xe')],'where':_0x48fb82,'limit':0x1}})[_0x9e87('0xf')](function(_0x1cd865){logger['info']('GETUSER|'+JSON[_0x9e87('0x8')](_0x48fb82)+'|'+(_0x1cd865[_0x9e87('0x10')][_0x9e87('0x11')]?_0x9e87('0x12'):_0x9e87('0x13')));return _0x1cd865[_0x9e87('0x10')][_0x9e87('0x11')]?_0x1cd865[_0x9e87('0x10')][0x0]:null;});}exports[_0x9e87('0x14')]=function(_0x5d9158){return new BPromise(function(_0x2c815d,_0x4038fd){if(_0x5d9158){return getUser({'internal':_0x5d9158})[_0x9e87('0xf')](function(_0x2e316e){return _0x2c815d(_0x2e316e);})[_0x9e87('0xb')](function(_0x3700ca){logger[_0x9e87('0x9')](_0x3700ca[_0x9e87('0x15')]);return _0x2c815d(null);});}else{return _0x2c815d(null);}});};exports[_0x9e87('0x16')]=function(_0x300b8e){return new BPromise(function(_0x1c5e21,_0x270ac6){if(_0x300b8e){return getUser({'interface':_0x300b8e})[_0x9e87('0xf')](function(_0x16eb87){return _0x1c5e21(_0x16eb87);})[_0x9e87('0xb')](function(_0x2d619a){logger[_0x9e87('0x9')](_0x2d619a['stack']);return _0x1c5e21(null);});}else{return _0x1c5e21(null);}});};exports[_0x9e87('0x17')]=function(_0x18115a){return new BPromise(function(_0x48608d,_0x25efcf){if(_0x18115a){return getUser({'name':_0x18115a})[_0x9e87('0xf')](function(_0x1f8f1d){return _0x48608d(_0x1f8f1d);})[_0x9e87('0xb')](function(_0x1e2be1){logger[_0x9e87('0x9')](_0x1e2be1['stack']);return _0x48608d(null);});}else{return _0x48608d(null);}});};exports[_0x9e87('0x18')]=function(_0x4af674){return new BPromise(function(_0x4ea798,_0x3efa2e){if(_0x4af674){return client[_0x9e87('0xa')]('GetVoiceQueue',{'options':{'raw':!![],'attributes':['id',_0x9e87('0xd'),_0x9e87('0x19'),_0x9e87('0x1a'),_0x9e87('0x1b')],'where':{'name':_0x4af674},'limit':0x1}})[_0x9e87('0xf')](function(_0xe0553d){logger['info'](_0x9e87('0x1c')+_0x4af674+'|'+(_0xe0553d[_0x9e87('0x10')][_0x9e87('0x11')]?_0x9e87('0x12'):_0x9e87('0x13')));return _0x4ea798(_0xe0553d['result'][_0x9e87('0x11')]?_0xe0553d[_0x9e87('0x10')][0x0]:null);})['catch'](function(_0x1bc325){logger[_0x9e87('0x9')](_0x1bc325[_0x9e87('0x15')]);return _0x4ea798(null);});}else{return _0x4ea798(null);}});};exports[_0x9e87('0x1d')]=function(_0x5b8d59,_0x1fca08){return moment(_0x5b8d59)[_0x9e87('0x1e')](_0x1fca08,_0x9e87('0x1f'))[_0x9e87('0x20')](_0x9e87('0x21'));};exports[_0x9e87('0x22')]=function(_0x4310c2,_0xc62ed5){return moment(_0x4310c2)['subtract'](_0xc62ed5,_0x9e87('0x1f'))[_0x9e87('0x20')]('YYYY-MM-DD\x20HH:mm:ss');};exports[_0x9e87('0x23')]=function(_0xb87a01,_0x22f303){return moment(_0xb87a01)[_0x9e87('0x24')](moment(_0x22f303),_0x9e87('0x1f'));};exports['sumTime']=function(_0x4f7b39,_0x4a2a9a){return parseInt(_0x4f7b39,0xa)+parseInt(_0x4a2a9a,0xa);};exports[_0x9e87('0x25')]=function(){return moment()[_0x9e87('0x20')](_0x9e87('0x21'));};exports[_0x9e87('0x26')]=function(_0x168c5f,_0x1c226e){if(_0x1c226e){return moment(_0x168c5f)['isAfter'](_0x1c226e);}else{return!![];}};exports[_0x9e87('0x27')]=function(_0x560afa,_0x2f503e){if(_0x2f503e){return moment(_0x560afa)[_0x9e87('0x27')](_0x2f503e);}else if(_0x560afa){return!![];}else{return![];}};