8c81cf7138cbaa41f2feb07f0ad3ceab7bf8d9d4
[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 _0x2292=['[utils][getVoiceQueueByName]\x20name:%s\x20%s','[utils][getVoiceQueueByName]','addTime','add','seconds','format','YYYY-MM-DD\x20HH:mm:ss','subtract','diffTime','diff','sumTime','now','isAfter','isBefore','bluebird','jayson/promise','moment','client','http','../../config/logger','xdr','info','inspect','error','request','then','debug','catch','[utils][request]\x20name:%s','GetUser','internal','name','[utils][getUser]\x20where:%s','stringify','result','length','getUserByInternal','found','notfound','[utils][getUserByInternal]','getUserByInterface','[utils][getUserByInterface]\x20interface:%s\x20%s','[utils][getUserByInterface]','[utils][getUserByName]\x20name:%s\x20%s','getVoiceQueueByName','GetVoiceQueue','type','acw','acwTimeout'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x2292,0xa1));var _0x2229=function(_0x18ab2a,_0x4debcd){_0x18ab2a=_0x18ab2a-0x0;var _0x16dcee=_0x2292[_0x18ab2a];return _0x16dcee;};'use strict';var BPromise=require(_0x2229('0x0'));var jayson=require(_0x2229('0x1'));var moment=require(_0x2229('0x2'));var util=require('util');var client=jayson[_0x2229('0x3')][_0x2229('0x4')]({'port':0x2329});var logger=require(_0x2229('0x5'))(_0x2229('0x6'));exports['info']=function(_0x7ac718,_0x10eff5){logger[_0x2229('0x7')](_0x7ac718,_0x10eff5?util[_0x2229('0x8')](_0x10eff5,{'showHidden':![],'depth':null}):'');};exports['debug']=function(_0x42a124,_0x1d7369){logger['debug'](_0x42a124,_0x1d7369?util[_0x2229('0x8')](_0x1d7369,{'showHidden':![],'depth':null}):'');};exports[_0x2229('0x9')]=function(_0xe7f1e5,_0x526f09){logger[_0x2229('0x9')](_0xe7f1e5,_0x526f09?util[_0x2229('0x8')](_0x526f09,{'showHidden':![],'depth':null}):'');};exports[_0x2229('0xa')]=function(_0x272fee,_0x44074e){return client[_0x2229('0xa')](_0x272fee,{'body':_0x44074e})[_0x2229('0xb')](function(_0x4a3bf5){logger[_0x2229('0xc')]('[utils][request]\x20name:%s',_0x272fee,_0x4a3bf5?util[_0x2229('0x8')](_0x4a3bf5,{'showHidden':![],'depth':null}):'');})[_0x2229('0xd')](function(_0x408182){logger[_0x2229('0x9')](_0x2229('0xe'),_0x272fee,_0x408182?util[_0x2229('0x8')](_0x408182,{'showHidden':![],'depth':null}):'');});};function getUser(_0x246cc1){return client[_0x2229('0xa')](_0x2229('0xf'),{'options':{'raw':!![],'attributes':['id',_0x2229('0x10'),_0x2229('0x11'),'interface'],'where':_0x246cc1,'limit':0x1}})['then'](function(_0x3856ae){logger[_0x2229('0xc')](_0x2229('0x12'),JSON[_0x2229('0x13')](_0x246cc1),_0x3856ae?util[_0x2229('0x8')](_0x3856ae,{'showHidden':![],'depth':null}):'');return _0x3856ae[_0x2229('0x14')][_0x2229('0x15')]?_0x3856ae['result'][0x0]:null;});}exports[_0x2229('0x16')]=function(_0xde09c9){return new BPromise(function(_0x3c2718,_0x50d33b){if(_0xde09c9){return getUser({'internal':_0xde09c9})['then'](function(_0x2312f7){logger[_0x2229('0x7')]('[utils][getUserByInternal]\x20internal:%s\x20%s',_0xde09c9,_0x2312f7?_0x2229('0x17'):_0x2229('0x18'));return _0x3c2718(_0x2312f7);})[_0x2229('0xd')](function(_0x719091){logger[_0x2229('0x9')](_0x2229('0x19'),_0x719091?util[_0x2229('0x8')](_0x719091,{'showHidden':![],'depth':null}):'');return _0x3c2718(null);});}return _0x3c2718(null);});};exports[_0x2229('0x1a')]=function(_0x337e8d){return new BPromise(function(_0x4f951e,_0x16bba3){if(_0x337e8d){return getUser({'interface':_0x337e8d})['then'](function(_0x8c7c50){logger[_0x2229('0x7')](_0x2229('0x1b'),_0x337e8d,_0x8c7c50?'found':_0x2229('0x18'));return _0x4f951e(_0x8c7c50);})[_0x2229('0xd')](function(_0x3d67d2){logger[_0x2229('0x9')](_0x2229('0x1c'),_0x3d67d2?util[_0x2229('0x8')](_0x3d67d2,{'showHidden':![],'depth':null}):'');return _0x4f951e(null);});}return _0x4f951e(null);});};exports['getUserByName']=function(_0x4aa1ab){return new BPromise(function(_0x2fbdb9,_0x1e049e){if(_0x4aa1ab){return getUser({'name':_0x4aa1ab})[_0x2229('0xb')](function(_0x3f077c){logger['info'](_0x2229('0x1d'),_0x4aa1ab,_0x3f077c?_0x2229('0x17'):'notfound');return _0x2fbdb9(_0x3f077c);})[_0x2229('0xd')](function(_0x4dbcf0){logger[_0x2229('0x9')]('[utils][getUserByName]',_0x4dbcf0?util[_0x2229('0x8')](_0x4dbcf0,{'showHidden':![],'depth':null}):'');return _0x2fbdb9(null);});}return _0x2fbdb9(null);});};exports[_0x2229('0x1e')]=function(_0x3323c3){return new BPromise(function(_0x1d3d51,_0xb86403){if(_0x3323c3){return client[_0x2229('0xa')](_0x2229('0x1f'),{'options':{'raw':!![],'attributes':['id','name',_0x2229('0x20'),_0x2229('0x21'),_0x2229('0x22')],'where':{'name':_0x3323c3},'limit':0x1}})[_0x2229('0xb')](function(_0x472ec2){logger[_0x2229('0xc')]('[utils][getVoiceQueueByName]\x20name:%s',_0x3323c3,_0x472ec2?util[_0x2229('0x8')](_0x472ec2,{'showHidden':![],'depth':null}):'');logger[_0x2229('0x7')](_0x2229('0x23'),_0x3323c3,_0x472ec2?_0x2229('0x17'):'notfound');return _0x1d3d51(_0x472ec2[_0x2229('0x14')][_0x2229('0x15')]?_0x472ec2[_0x2229('0x14')][0x0]:null);})['catch'](function(_0x38a254){logger[_0x2229('0x9')](_0x2229('0x24'),_0x38a254?util[_0x2229('0x8')](_0x38a254,{'showHidden':![],'depth':null}):'');return _0x1d3d51(null);});}return _0x1d3d51(null);});};exports[_0x2229('0x25')]=function(_0x296ef3,_0x587f1d){return moment(_0x296ef3)[_0x2229('0x26')](_0x587f1d,_0x2229('0x27'))[_0x2229('0x28')](_0x2229('0x29'));};exports['subtractTime']=function(_0x291d86,_0x5504f5){return moment(_0x291d86)[_0x2229('0x2a')](_0x5504f5,_0x2229('0x27'))[_0x2229('0x28')](_0x2229('0x29'));};exports[_0x2229('0x2b')]=function(_0xdd5477,_0x5bd40c){return moment(_0xdd5477)[_0x2229('0x2c')](moment(_0x5bd40c),_0x2229('0x27'));};exports[_0x2229('0x2d')]=function(_0x52ac59,_0x18811b){return parseInt(_0x52ac59,0xa)+parseInt(_0x18811b,0xa);};exports[_0x2229('0x2e')]=function(){return moment()['format'](_0x2229('0x29'));};exports[_0x2229('0x2f')]=function(_0x2810a8,_0x146be6){if(_0x146be6){return moment(_0x2810a8)['isAfter'](_0x146be6);}return!![];};exports[_0x2229('0x30')]=function(_0x5510bf,_0x327fb6){if(_0x327fb6){return moment(_0x5510bf)[_0x2229('0x30')](_0x327fb6);}else if(_0x5510bf){return!![];}return![];};