3306f93a97e70ef98225ba9572804f06e32a1636
[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 _0x9aed=['length','getUserByInternal','[utils][getUserByInternal]\x20internal:%s\x20%s','found','notfound','[utils][getUserByInternal]','getUserByInterface','[utils][getUserByInterface]','getUserByName','[utils][getUserByName]\x20name:%s\x20%s','[utils][getUserByName]','getVoiceQueueByName','type','acwTimeout','[utils][getVoiceQueueByName]\x20name:%s','[utils][getVoiceQueueByName]\x20name:%s\x20%s','addTime','add','seconds','format','YYYY-MM-DD\x20HH:mm:ss','subtractTime','subtract','diff','now','isAfter','isBefore','moment','http','info','inspect','debug','error','request','then','catch','[utils][request]\x20name:%s','GetUser','name','interface','[utils][getUser]\x20where:%s','stringify','result'];(function(_0x28ffb7,_0xc8c396){var _0x151aef=function(_0x2575d3){while(--_0x2575d3){_0x28ffb7['push'](_0x28ffb7['shift']());}};_0x151aef(++_0xc8c396);}(_0x9aed,0x9c));var _0xd9ae=function(_0x7cf016,_0xe1ab59){_0x7cf016=_0x7cf016-0x0;var _0x27d12b=_0x9aed[_0x7cf016];return _0x27d12b;};'use strict';var BPromise=require('bluebird');var jayson=require('jayson/promise');var moment=require(_0xd9ae('0x0'));var util=require('util');var client=jayson['client'][_0xd9ae('0x1')]({'port':0x2329});var logger=require('../../config/logger')('xdr');exports[_0xd9ae('0x2')]=function(_0x2cf7d1,_0x3eca22){logger['info'](_0x2cf7d1,_0x3eca22?util[_0xd9ae('0x3')](_0x3eca22,{'showHidden':![],'depth':null}):'');};exports['debug']=function(_0x39c9e7,_0x344903){logger[_0xd9ae('0x4')](_0x39c9e7,_0x344903?util[_0xd9ae('0x3')](_0x344903,{'showHidden':![],'depth':null}):'');};exports[_0xd9ae('0x5')]=function(_0x4c1f2e,_0x40522c){logger[_0xd9ae('0x5')](_0x4c1f2e,_0x40522c?util[_0xd9ae('0x3')](_0x40522c,{'showHidden':![],'depth':null}):'');};exports[_0xd9ae('0x6')]=function(_0x38850d,_0x496ea3){return client[_0xd9ae('0x6')](_0x38850d,{'body':_0x496ea3})[_0xd9ae('0x7')](function(_0x6573a1){logger[_0xd9ae('0x4')]('[utils][request]\x20name:%s',_0x38850d,_0x6573a1?util[_0xd9ae('0x3')](_0x6573a1,{'showHidden':![],'depth':null}):'');})[_0xd9ae('0x8')](function(_0x415f5c){logger['error'](_0xd9ae('0x9'),_0x38850d,_0x415f5c?util[_0xd9ae('0x3')](_0x415f5c,{'showHidden':![],'depth':null}):'');});};function getUser(_0x1dd9a9){return client['request'](_0xd9ae('0xa'),{'options':{'raw':!![],'attributes':['id','internal',_0xd9ae('0xb'),_0xd9ae('0xc')],'where':_0x1dd9a9,'limit':0x1}})['then'](function(_0x1e485e){logger['debug'](_0xd9ae('0xd'),JSON[_0xd9ae('0xe')](_0x1dd9a9),_0x1e485e?util[_0xd9ae('0x3')](_0x1e485e,{'showHidden':![],'depth':null}):'');return _0x1e485e[_0xd9ae('0xf')][_0xd9ae('0x10')]?_0x1e485e[_0xd9ae('0xf')][0x0]:null;});}exports[_0xd9ae('0x11')]=function(_0x5ef770){return new BPromise(function(_0x140324,_0x136967){if(_0x5ef770){return getUser({'internal':_0x5ef770})[_0xd9ae('0x7')](function(_0xcb375d){logger[_0xd9ae('0x2')](_0xd9ae('0x12'),_0x5ef770,_0xcb375d?_0xd9ae('0x13'):_0xd9ae('0x14'));return _0x140324(_0xcb375d);})[_0xd9ae('0x8')](function(_0xb8a3c3){logger[_0xd9ae('0x5')](_0xd9ae('0x15'),_0xb8a3c3?util[_0xd9ae('0x3')](_0xb8a3c3,{'showHidden':![],'depth':null}):'');return _0x140324(null);});}return _0x140324(null);});};exports[_0xd9ae('0x16')]=function(_0x1adacd){return new BPromise(function(_0x4ab30f,_0x5432c4){if(_0x1adacd){return getUser({'interface':_0x1adacd})[_0xd9ae('0x7')](function(_0x1eca10){logger['info']('[utils][getUserByInterface]\x20interface:%s\x20%s',_0x1adacd,_0x1eca10?_0xd9ae('0x13'):'notfound');return _0x4ab30f(_0x1eca10);})[_0xd9ae('0x8')](function(_0x502053){logger['error'](_0xd9ae('0x17'),_0x502053?util[_0xd9ae('0x3')](_0x502053,{'showHidden':![],'depth':null}):'');return _0x4ab30f(null);});}return _0x4ab30f(null);});};exports[_0xd9ae('0x18')]=function(_0x6360b7){return new BPromise(function(_0x26a4b7,_0x51d80e){if(_0x6360b7){return getUser({'name':_0x6360b7})[_0xd9ae('0x7')](function(_0x5dc790){logger['info'](_0xd9ae('0x19'),_0x6360b7,_0x5dc790?'found':_0xd9ae('0x14'));return _0x26a4b7(_0x5dc790);})['catch'](function(_0x233392){logger[_0xd9ae('0x5')](_0xd9ae('0x1a'),_0x233392?util[_0xd9ae('0x3')](_0x233392,{'showHidden':![],'depth':null}):'');return _0x26a4b7(null);});}return _0x26a4b7(null);});};exports[_0xd9ae('0x1b')]=function(_0x5743d9){return new BPromise(function(_0x497e7a,_0x213fbc){if(_0x5743d9){return client[_0xd9ae('0x6')]('GetVoiceQueue',{'options':{'raw':!![],'attributes':['id',_0xd9ae('0xb'),_0xd9ae('0x1c'),'acw',_0xd9ae('0x1d')],'where':{'name':_0x5743d9},'limit':0x1}})[_0xd9ae('0x7')](function(_0x3f6e90){logger[_0xd9ae('0x4')](_0xd9ae('0x1e'),_0x5743d9,_0x3f6e90?util[_0xd9ae('0x3')](_0x3f6e90,{'showHidden':![],'depth':null}):'');logger['info'](_0xd9ae('0x1f'),_0x5743d9,_0x3f6e90?_0xd9ae('0x13'):'notfound');return _0x497e7a(_0x3f6e90[_0xd9ae('0xf')][_0xd9ae('0x10')]?_0x3f6e90[_0xd9ae('0xf')][0x0]:null);})[_0xd9ae('0x8')](function(_0x2f1e41){logger['error']('[utils][getVoiceQueueByName]',_0x2f1e41?util['inspect'](_0x2f1e41,{'showHidden':![],'depth':null}):'');return _0x497e7a(null);});}return _0x497e7a(null);});};exports[_0xd9ae('0x20')]=function(_0x3a84f8,_0x4c4dc7){return moment(_0x3a84f8)[_0xd9ae('0x21')](_0x4c4dc7,_0xd9ae('0x22'))[_0xd9ae('0x23')](_0xd9ae('0x24'));};exports[_0xd9ae('0x25')]=function(_0x2c8f66,_0x81bead){return moment(_0x2c8f66)[_0xd9ae('0x26')](_0x81bead,'seconds')[_0xd9ae('0x23')](_0xd9ae('0x24'));};exports['diffTime']=function(_0x50fdf7,_0x320e67){return moment(_0x50fdf7)[_0xd9ae('0x27')](moment(_0x320e67),'seconds');};exports['sumTime']=function(_0x2a3a92,_0x3aa617){return parseInt(_0x2a3a92,0xa)+parseInt(_0x3aa617,0xa);};exports[_0xd9ae('0x28')]=function(){return moment()[_0xd9ae('0x23')](_0xd9ae('0x24'));};exports['isAfter']=function(_0x130e0b,_0x4c4fac){if(_0x4c4fac){return moment(_0x130e0b)[_0xd9ae('0x29')](_0x4c4fac);}return!![];};exports[_0xd9ae('0x2a')]=function(_0x315b49,_0x3b9025){if(_0x3b9025){return moment(_0x315b49)['isBefore'](_0x3b9025);}else if(_0x315b49){return!![];}return![];};