Built motion from commit 58b0471d.|2.6.29
[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 _0xe6e9=['stringify','result','length','getUserByInternal','found','notfound','[utils][getUserByInternal]','getUserByInterface','[utils][getUserByInterface]\x20interface:%s\x20%s','[utils][getUserByInterface]','[utils][getUserByName]\x20name:%s\x20%s','GetVoiceQueue','type','acwTimeout','[utils][getVoiceQueueByName]\x20name:%s\x20%s','[utils][getVoiceQueueByName]','add','format','YYYY-MM-DD\x20HH:mm:ss','subtractTime','seconds','diffTime','diff','sumTime','isAfter','isBefore','bluebird','jayson/promise','moment','client','http','../../config/logger','xdr','info','inspect','debug','error','request','catch','GetUser','internal','name','interface','then','[utils][getUser]\x20where:%s'];(function(_0x23b214,_0x3ba6f0){var _0x209e5b=function(_0x3561d4){while(--_0x3561d4){_0x23b214['push'](_0x23b214['shift']());}};_0x209e5b(++_0x3ba6f0);}(_0xe6e9,0x182));var _0x9e6e=function(_0x3eae87,_0x214fea){_0x3eae87=_0x3eae87-0x0;var _0x5d5c3f=_0xe6e9[_0x3eae87];return _0x5d5c3f;};'use strict';var BPromise=require(_0x9e6e('0x0'));var jayson=require(_0x9e6e('0x1'));var moment=require(_0x9e6e('0x2'));var util=require('util');var client=jayson[_0x9e6e('0x3')][_0x9e6e('0x4')]({'port':0x2329});var logger=require(_0x9e6e('0x5'))(_0x9e6e('0x6'));exports[_0x9e6e('0x7')]=function(_0x5f4c0b,_0x1f64e8){logger[_0x9e6e('0x7')](_0x5f4c0b,_0x1f64e8?util[_0x9e6e('0x8')](_0x1f64e8,{'showHidden':![],'depth':null}):'');};exports[_0x9e6e('0x9')]=function(_0x174aaa,_0x5eda3e){logger[_0x9e6e('0x9')](_0x174aaa,_0x5eda3e?util[_0x9e6e('0x8')](_0x5eda3e,{'showHidden':![],'depth':null}):'');};exports[_0x9e6e('0xa')]=function(_0x1470be,_0x1ce1b0){logger[_0x9e6e('0xa')](_0x1470be,_0x1ce1b0?util['inspect'](_0x1ce1b0,{'showHidden':![],'depth':null}):'');};exports[_0x9e6e('0xb')]=function(_0x40360d,_0x286351){return client[_0x9e6e('0xb')](_0x40360d,{'body':_0x286351})['then'](function(_0x175ca3){logger[_0x9e6e('0x9')]('[utils][request]\x20name:%s',_0x40360d,_0x175ca3?util[_0x9e6e('0x8')](_0x175ca3,{'showHidden':![],'depth':null}):'');})[_0x9e6e('0xc')](function(_0x1b85f1){logger[_0x9e6e('0xa')]('[utils][request]\x20name:%s',_0x40360d,_0x1b85f1?util[_0x9e6e('0x8')](_0x1b85f1,{'showHidden':![],'depth':null}):'');});};function getUser(_0x2bfcc2){return client[_0x9e6e('0xb')](_0x9e6e('0xd'),{'options':{'raw':!![],'attributes':['id',_0x9e6e('0xe'),_0x9e6e('0xf'),_0x9e6e('0x10')],'where':_0x2bfcc2,'limit':0x1}})[_0x9e6e('0x11')](function(_0x3080b1){logger[_0x9e6e('0x9')](_0x9e6e('0x12'),JSON[_0x9e6e('0x13')](_0x2bfcc2),_0x3080b1?util[_0x9e6e('0x8')](_0x3080b1,{'showHidden':![],'depth':null}):'');return _0x3080b1[_0x9e6e('0x14')][_0x9e6e('0x15')]?_0x3080b1[_0x9e6e('0x14')][0x0]:null;});}exports[_0x9e6e('0x16')]=function(_0x269f51){return new BPromise(function(_0xfd921e,_0x42b1aa){if(_0x269f51){return getUser({'internal':_0x269f51})[_0x9e6e('0x11')](function(_0x5a12de){logger['info']('[utils][getUserByInternal]\x20internal:%s\x20%s',_0x269f51,_0x5a12de?_0x9e6e('0x17'):_0x9e6e('0x18'));return _0xfd921e(_0x5a12de);})[_0x9e6e('0xc')](function(_0x351201){logger[_0x9e6e('0xa')](_0x9e6e('0x19'),_0x351201?util[_0x9e6e('0x8')](_0x351201,{'showHidden':![],'depth':null}):'');return _0xfd921e(null);});}return _0xfd921e(null);});};exports[_0x9e6e('0x1a')]=function(_0x4e66e3){return new BPromise(function(_0x434aa3,_0x379da6){if(_0x4e66e3){return getUser({'interface':_0x4e66e3})[_0x9e6e('0x11')](function(_0x28ae35){logger[_0x9e6e('0x7')](_0x9e6e('0x1b'),_0x4e66e3,_0x28ae35?_0x9e6e('0x17'):'notfound');return _0x434aa3(_0x28ae35);})[_0x9e6e('0xc')](function(_0x4202cd){logger[_0x9e6e('0xa')](_0x9e6e('0x1c'),_0x4202cd?util['inspect'](_0x4202cd,{'showHidden':![],'depth':null}):'');return _0x434aa3(null);});}return _0x434aa3(null);});};exports['getUserByName']=function(_0x1e9b87){return new BPromise(function(_0xb7b794,_0x26e0be){if(_0x1e9b87){return getUser({'name':_0x1e9b87})['then'](function(_0x560815){logger[_0x9e6e('0x7')](_0x9e6e('0x1d'),_0x1e9b87,_0x560815?_0x9e6e('0x17'):_0x9e6e('0x18'));return _0xb7b794(_0x560815);})['catch'](function(_0x4d1616){logger[_0x9e6e('0xa')]('[utils][getUserByName]',_0x4d1616?util[_0x9e6e('0x8')](_0x4d1616,{'showHidden':![],'depth':null}):'');return _0xb7b794(null);});}return _0xb7b794(null);});};exports['getVoiceQueueByName']=function(_0x43b1bf){return new BPromise(function(_0x3130b8,_0x4a0c94){if(_0x43b1bf){return client[_0x9e6e('0xb')](_0x9e6e('0x1e'),{'options':{'raw':!![],'attributes':['id',_0x9e6e('0xf'),_0x9e6e('0x1f'),'acw',_0x9e6e('0x20')],'where':{'name':_0x43b1bf},'limit':0x1}})['then'](function(_0x4b21fb){logger[_0x9e6e('0x9')]('[utils][getVoiceQueueByName]\x20name:%s',_0x43b1bf,_0x4b21fb?util[_0x9e6e('0x8')](_0x4b21fb,{'showHidden':![],'depth':null}):'');logger[_0x9e6e('0x7')](_0x9e6e('0x21'),_0x43b1bf,_0x4b21fb?_0x9e6e('0x17'):'notfound');return _0x3130b8(_0x4b21fb[_0x9e6e('0x14')]['length']?_0x4b21fb[_0x9e6e('0x14')][0x0]:null);})['catch'](function(_0x58fae9){logger[_0x9e6e('0xa')](_0x9e6e('0x22'),_0x58fae9?util[_0x9e6e('0x8')](_0x58fae9,{'showHidden':![],'depth':null}):'');return _0x3130b8(null);});}return _0x3130b8(null);});};exports['addTime']=function(_0x3ed6b3,_0x706be5){return moment(_0x3ed6b3)[_0x9e6e('0x23')](_0x706be5,'seconds')[_0x9e6e('0x24')](_0x9e6e('0x25'));};exports[_0x9e6e('0x26')]=function(_0x4d6c5d,_0x5d02fd){return moment(_0x4d6c5d)['subtract'](_0x5d02fd,_0x9e6e('0x27'))[_0x9e6e('0x24')]('YYYY-MM-DD\x20HH:mm:ss');};exports[_0x9e6e('0x28')]=function(_0x5ba0b4,_0x533684){return moment(_0x5ba0b4)[_0x9e6e('0x29')](moment(_0x533684),_0x9e6e('0x27'));};exports[_0x9e6e('0x2a')]=function(_0x47a72d,_0xf16bbd){return parseInt(_0x47a72d,0xa)+parseInt(_0xf16bbd,0xa);};exports['now']=function(){return moment()['format'](_0x9e6e('0x25'));};exports[_0x9e6e('0x2b')]=function(_0x439e0c,_0x4c0e75){if(_0x4c0e75){return moment(_0x439e0c)[_0x9e6e('0x2b')](_0x4c0e75);}return!![];};exports[_0x9e6e('0x2c')]=function(_0x2a7b0a,_0xab8170){if(_0xab8170){return moment(_0x2a7b0a)[_0x9e6e('0x2c')](_0xab8170);}else if(_0x2a7b0a){return!![];}return![];};