Built motion from commit 10af8726.|2.6.34
[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 _0x6385=['getUserByInternal','[utils][getUserByInternal]\x20internal:%s\x20%s','found','notfound','catch','[utils][getUserByInternal]','getUserByInterface','[utils][getUserByInterface]\x20interface:%s\x20%s','[utils][getUserByInterface]','getUserByName','[utils][getUserByName]\x20name:%s\x20%s','name','type','acw','acwTimeout','debug','[utils][getVoiceQueueByName]\x20name:%s','[utils][getVoiceQueueByName]\x20name:%s\x20%s','[utils][getVoiceQueueByName]','add','format','YYYY-MM-DD\x20HH:mm:ss','subtractTime','subtract','seconds','diffTime','sumTime','isAfter','isBefore','bluebird','util','client','http','xdr','info','inspect','error','request','[utils][request]\x20name:%s','internal','then','[utils][getUser]\x20where:%s','result','length'];(function(_0x55e08b,_0x421620){var _0xd1a7ff=function(_0x58c7ff){while(--_0x58c7ff){_0x55e08b['push'](_0x55e08b['shift']());}};_0xd1a7ff(++_0x421620);}(_0x6385,0xf9));var _0x5638=function(_0x3e0763,_0x3d12be){_0x3e0763=_0x3e0763-0x0;var _0x351ca2=_0x6385[_0x3e0763];return _0x351ca2;};'use strict';var BPromise=require(_0x5638('0x0'));var jayson=require('jayson/promise');var moment=require('moment');var util=require(_0x5638('0x1'));var client=jayson[_0x5638('0x2')][_0x5638('0x3')]({'port':0x2329});var logger=require('../../config/logger')(_0x5638('0x4'));exports[_0x5638('0x5')]=function(_0x206d27,_0xf7c4a6){logger['info'](_0x206d27,_0xf7c4a6?util[_0x5638('0x6')](_0xf7c4a6,{'showHidden':![],'depth':null}):'');};exports['debug']=function(_0x160031,_0x4c7d44){logger['debug'](_0x160031,_0x4c7d44?util[_0x5638('0x6')](_0x4c7d44,{'showHidden':![],'depth':null}):'');};exports[_0x5638('0x7')]=function(_0x197c1c,_0x169d7d){logger['error'](_0x197c1c,_0x169d7d?util['inspect'](_0x169d7d,{'showHidden':![],'depth':null}):'');};exports[_0x5638('0x8')]=function(_0x1e200f,_0xc6f54a){return client[_0x5638('0x8')](_0x1e200f,{'body':_0xc6f54a})['then'](function(_0x3304f9){logger['debug'](_0x5638('0x9'),_0x1e200f,_0x3304f9?util[_0x5638('0x6')](_0x3304f9,{'showHidden':![],'depth':null}):'');})['catch'](function(_0x146b54){logger['error']('[utils][request]\x20name:%s',_0x1e200f,_0x146b54?util['inspect'](_0x146b54,{'showHidden':![],'depth':null}):'');});};function getUser(_0xf5af0a){return client['request']('GetUser',{'options':{'raw':!![],'attributes':['id',_0x5638('0xa'),'name','interface'],'where':_0xf5af0a,'limit':0x1}})[_0x5638('0xb')](function(_0x523be0){logger['debug'](_0x5638('0xc'),JSON['stringify'](_0xf5af0a),_0x523be0?util[_0x5638('0x6')](_0x523be0,{'showHidden':![],'depth':null}):'');return _0x523be0[_0x5638('0xd')][_0x5638('0xe')]?_0x523be0[_0x5638('0xd')][0x0]:null;});}exports[_0x5638('0xf')]=function(_0x175ab0){return new BPromise(function(_0x41744d,_0x5a18b4){if(_0x175ab0){return getUser({'internal':_0x175ab0})[_0x5638('0xb')](function(_0x5dd506){logger[_0x5638('0x5')](_0x5638('0x10'),_0x175ab0,_0x5dd506?_0x5638('0x11'):_0x5638('0x12'));return _0x41744d(_0x5dd506);})[_0x5638('0x13')](function(_0x3d199b){logger[_0x5638('0x7')](_0x5638('0x14'),_0x3d199b?util['inspect'](_0x3d199b,{'showHidden':![],'depth':null}):'');return _0x41744d(null);});}return _0x41744d(null);});};exports[_0x5638('0x15')]=function(_0xef8a22){return new BPromise(function(_0x5eaed3,_0x540a6a){if(_0xef8a22){return getUser({'interface':_0xef8a22})[_0x5638('0xb')](function(_0x29b870){logger['info'](_0x5638('0x16'),_0xef8a22,_0x29b870?_0x5638('0x11'):_0x5638('0x12'));return _0x5eaed3(_0x29b870);})[_0x5638('0x13')](function(_0x3a7ffc){logger['error'](_0x5638('0x17'),_0x3a7ffc?util[_0x5638('0x6')](_0x3a7ffc,{'showHidden':![],'depth':null}):'');return _0x5eaed3(null);});}return _0x5eaed3(null);});};exports[_0x5638('0x18')]=function(_0x2886c1){return new BPromise(function(_0x2f5a1b,_0x5c8a51){if(_0x2886c1){return getUser({'name':_0x2886c1})[_0x5638('0xb')](function(_0x2f2694){logger[_0x5638('0x5')](_0x5638('0x19'),_0x2886c1,_0x2f2694?_0x5638('0x11'):'notfound');return _0x2f5a1b(_0x2f2694);})['catch'](function(_0x57e502){logger[_0x5638('0x7')]('[utils][getUserByName]',_0x57e502?util[_0x5638('0x6')](_0x57e502,{'showHidden':![],'depth':null}):'');return _0x2f5a1b(null);});}return _0x2f5a1b(null);});};exports['getVoiceQueueByName']=function(_0x363a99){return new BPromise(function(_0x1fefdd,_0x2173a1){if(_0x363a99){return client[_0x5638('0x8')]('GetVoiceQueue',{'options':{'raw':!![],'attributes':['id',_0x5638('0x1a'),_0x5638('0x1b'),_0x5638('0x1c'),_0x5638('0x1d')],'where':{'name':_0x363a99},'limit':0x1}})['then'](function(_0x59b95b){logger[_0x5638('0x1e')](_0x5638('0x1f'),_0x363a99,_0x59b95b?util[_0x5638('0x6')](_0x59b95b,{'showHidden':![],'depth':null}):'');logger[_0x5638('0x5')](_0x5638('0x20'),_0x363a99,_0x59b95b?_0x5638('0x11'):'notfound');return _0x1fefdd(_0x59b95b['result'][_0x5638('0xe')]?_0x59b95b[_0x5638('0xd')][0x0]:null);})[_0x5638('0x13')](function(_0x280072){logger[_0x5638('0x7')](_0x5638('0x21'),_0x280072?util['inspect'](_0x280072,{'showHidden':![],'depth':null}):'');return _0x1fefdd(null);});}return _0x1fefdd(null);});};exports['addTime']=function(_0x3fbf0e,_0x2c4701){return moment(_0x3fbf0e)[_0x5638('0x22')](_0x2c4701,'seconds')[_0x5638('0x23')](_0x5638('0x24'));};exports[_0x5638('0x25')]=function(_0x54a9df,_0x5d0444){return moment(_0x54a9df)[_0x5638('0x26')](_0x5d0444,_0x5638('0x27'))[_0x5638('0x23')](_0x5638('0x24'));};exports[_0x5638('0x28')]=function(_0x1c05bf,_0x167383){return moment(_0x1c05bf)['diff'](moment(_0x167383),_0x5638('0x27'));};exports[_0x5638('0x29')]=function(_0x3c6e8b,_0x263b19){return parseInt(_0x3c6e8b,0xa)+parseInt(_0x263b19,0xa);};exports['now']=function(){return moment()[_0x5638('0x23')](_0x5638('0x24'));};exports[_0x5638('0x2a')]=function(_0x4007e2,_0x3d1fa4){if(_0x3d1fa4){return moment(_0x4007e2)[_0x5638('0x2a')](_0x3d1fa4);}return!![];};exports[_0x5638('0x2b')]=function(_0x3fdb10,_0x364890){if(_0x364890){return moment(_0x3fdb10)[_0x5638('0x2b')](_0x364890);}else if(_0x3fdb10){return!![];}return![];};