Built motion from commit fa4c4286.|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 _0x5adb=['request','then','[utils][request]\x20name:%s','name','interface','[utils][getUser]\x20where:%s','stringify','result','getUserByInternal','[utils][getUserByInternal]\x20internal:%s\x20%s','found','notfound','catch','[utils][getUserByInternal]','getUserByInterface','[utils][getUserByInterface]','getUserByName','[utils][getUserByName]\x20name:%s\x20%s','[utils][getUserByName]','getVoiceQueueByName','type','acw','acwTimeout','[utils][getVoiceQueueByName]\x20name:%s','[utils][getVoiceQueueByName]\x20name:%s\x20%s','length','add','seconds','format','YYYY-MM-DD\x20HH:mm:ss','subtractTime','subtract','diffTime','diff','sumTime','now','isAfter','isBefore','jayson/promise','moment','client','../../config/logger','xdr','info','inspect','debug','error'];(function(_0x4980ae,_0xfd65de){var _0x5ec32d=function(_0x4189b4){while(--_0x4189b4){_0x4980ae['push'](_0x4980ae['shift']());}};_0x5ec32d(++_0xfd65de);}(_0x5adb,0x84));var _0xb5ad=function(_0x1cd674,_0x8d3638){_0x1cd674=_0x1cd674-0x0;var _0x27928f=_0x5adb[_0x1cd674];return _0x27928f;};'use strict';var BPromise=require('bluebird');var jayson=require(_0xb5ad('0x0'));var moment=require(_0xb5ad('0x1'));var util=require('util');var client=jayson[_0xb5ad('0x2')]['http']({'port':0x2329});var logger=require(_0xb5ad('0x3'))(_0xb5ad('0x4'));exports[_0xb5ad('0x5')]=function(_0x54ddcf,_0x167704){logger[_0xb5ad('0x5')](_0x54ddcf,_0x167704?util[_0xb5ad('0x6')](_0x167704,{'showHidden':![],'depth':null}):'');};exports[_0xb5ad('0x7')]=function(_0x573f42,_0x2e1095){logger[_0xb5ad('0x7')](_0x573f42,_0x2e1095?util['inspect'](_0x2e1095,{'showHidden':![],'depth':null}):'');};exports[_0xb5ad('0x8')]=function(_0x178dd3,_0x3c4b86){logger['error'](_0x178dd3,_0x3c4b86?util['inspect'](_0x3c4b86,{'showHidden':![],'depth':null}):'');};exports[_0xb5ad('0x9')]=function(_0x504d24,_0x3e2154){return client[_0xb5ad('0x9')](_0x504d24,{'body':_0x3e2154})[_0xb5ad('0xa')](function(_0x2e7827){logger[_0xb5ad('0x7')](_0xb5ad('0xb'),_0x504d24,_0x2e7827?util[_0xb5ad('0x6')](_0x2e7827,{'showHidden':![],'depth':null}):'');})['catch'](function(_0x23f9ed){logger[_0xb5ad('0x8')](_0xb5ad('0xb'),_0x504d24,_0x23f9ed?util[_0xb5ad('0x6')](_0x23f9ed,{'showHidden':![],'depth':null}):'');});};function getUser(_0x455afd){return client['request']('GetUser',{'options':{'raw':!![],'attributes':['id','internal',_0xb5ad('0xc'),_0xb5ad('0xd')],'where':_0x455afd,'limit':0x1}})[_0xb5ad('0xa')](function(_0x10c455){logger[_0xb5ad('0x7')](_0xb5ad('0xe'),JSON[_0xb5ad('0xf')](_0x455afd),_0x10c455?util[_0xb5ad('0x6')](_0x10c455,{'showHidden':![],'depth':null}):'');return _0x10c455[_0xb5ad('0x10')]['length']?_0x10c455[_0xb5ad('0x10')][0x0]:null;});}exports[_0xb5ad('0x11')]=function(_0x36e8d9){return new BPromise(function(_0x4c50c2,_0x362350){if(_0x36e8d9){return getUser({'internal':_0x36e8d9})[_0xb5ad('0xa')](function(_0x5c2f77){logger['info'](_0xb5ad('0x12'),_0x36e8d9,_0x5c2f77?_0xb5ad('0x13'):_0xb5ad('0x14'));return _0x4c50c2(_0x5c2f77);})[_0xb5ad('0x15')](function(_0xcde831){logger['error'](_0xb5ad('0x16'),_0xcde831?util[_0xb5ad('0x6')](_0xcde831,{'showHidden':![],'depth':null}):'');return _0x4c50c2(null);});}return _0x4c50c2(null);});};exports[_0xb5ad('0x17')]=function(_0x454d65){return new BPromise(function(_0x2524c6,_0x31b8ae){if(_0x454d65){return getUser({'interface':_0x454d65})['then'](function(_0x4f8db2){logger[_0xb5ad('0x5')]('[utils][getUserByInterface]\x20interface:%s\x20%s',_0x454d65,_0x4f8db2?_0xb5ad('0x13'):_0xb5ad('0x14'));return _0x2524c6(_0x4f8db2);})[_0xb5ad('0x15')](function(_0x1dd1c5){logger[_0xb5ad('0x8')](_0xb5ad('0x18'),_0x1dd1c5?util[_0xb5ad('0x6')](_0x1dd1c5,{'showHidden':![],'depth':null}):'');return _0x2524c6(null);});}return _0x2524c6(null);});};exports[_0xb5ad('0x19')]=function(_0x19207c){return new BPromise(function(_0x1dee94,_0x270ac){if(_0x19207c){return getUser({'name':_0x19207c})[_0xb5ad('0xa')](function(_0x3df99f){logger['info'](_0xb5ad('0x1a'),_0x19207c,_0x3df99f?_0xb5ad('0x13'):'notfound');return _0x1dee94(_0x3df99f);})[_0xb5ad('0x15')](function(_0x5c1e4d){logger[_0xb5ad('0x8')](_0xb5ad('0x1b'),_0x5c1e4d?util[_0xb5ad('0x6')](_0x5c1e4d,{'showHidden':![],'depth':null}):'');return _0x1dee94(null);});}return _0x1dee94(null);});};exports[_0xb5ad('0x1c')]=function(_0x5c9829){return new BPromise(function(_0x4bb505,_0x2cdde4){if(_0x5c9829){return client['request']('GetVoiceQueue',{'options':{'raw':!![],'attributes':['id',_0xb5ad('0xc'),_0xb5ad('0x1d'),_0xb5ad('0x1e'),_0xb5ad('0x1f')],'where':{'name':_0x5c9829},'limit':0x1}})[_0xb5ad('0xa')](function(_0x421d85){logger[_0xb5ad('0x7')](_0xb5ad('0x20'),_0x5c9829,_0x421d85?util[_0xb5ad('0x6')](_0x421d85,{'showHidden':![],'depth':null}):'');logger['info'](_0xb5ad('0x21'),_0x5c9829,_0x421d85?_0xb5ad('0x13'):'notfound');return _0x4bb505(_0x421d85['result'][_0xb5ad('0x22')]?_0x421d85[_0xb5ad('0x10')][0x0]:null);})['catch'](function(_0x51bf08){logger[_0xb5ad('0x8')]('[utils][getVoiceQueueByName]',_0x51bf08?util[_0xb5ad('0x6')](_0x51bf08,{'showHidden':![],'depth':null}):'');return _0x4bb505(null);});}return _0x4bb505(null);});};exports['addTime']=function(_0x8ba88e,_0x1d1e3d){return moment(_0x8ba88e)[_0xb5ad('0x23')](_0x1d1e3d,_0xb5ad('0x24'))[_0xb5ad('0x25')](_0xb5ad('0x26'));};exports[_0xb5ad('0x27')]=function(_0x505ec8,_0x12e0f8){return moment(_0x505ec8)[_0xb5ad('0x28')](_0x12e0f8,_0xb5ad('0x24'))['format'](_0xb5ad('0x26'));};exports[_0xb5ad('0x29')]=function(_0x20505e,_0x2e9452){return moment(_0x20505e)[_0xb5ad('0x2a')](moment(_0x2e9452),_0xb5ad('0x24'));};exports[_0xb5ad('0x2b')]=function(_0x40623,_0x1cea25){return parseInt(_0x40623,0xa)+parseInt(_0x1cea25,0xa);};exports[_0xb5ad('0x2c')]=function(){return moment()[_0xb5ad('0x25')](_0xb5ad('0x26'));};exports[_0xb5ad('0x2d')]=function(_0x292ba8,_0x4d68a6){if(_0x4d68a6){return moment(_0x292ba8)[_0xb5ad('0x2d')](_0x4d68a6);}return!![];};exports[_0xb5ad('0x2e')]=function(_0x118c02,_0x2ddeb3){if(_0x2ddeb3){return moment(_0x118c02)['isBefore'](_0x2ddeb3);}else if(_0x118c02){return!![];}return![];};