f0bb797d2cf5b286f8632dca0bb983dd28c27476
[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 _0x40ff=['internal','interface','then','GETUSER|','result','FOUND','length','getUserByInternal','getUserByInterface','getUserByName','GetVoiceQueue','type','acw','acwTimeout','GETVOICEQUEUEBYNAME|','add','seconds','YYYY-MM-DD\x20HH:mm:ss','subtractTime','subtract','diffTime','diff','sumTime','now','format','isBefore','jayson/promise','moment','client','http','xdr','info','debug','stringify','error','stack','request','catch'];(function(_0x430c79,_0x530983){var _0xf6d628=function(_0x4e4da6){while(--_0x4e4da6){_0x430c79['push'](_0x430c79['shift']());}};_0xf6d628(++_0x530983);}(_0x40ff,0xd8));var _0xf40f=function(_0x38db93,_0x40a9e7){_0x38db93=_0x38db93-0x0;var _0x27206a=_0x40ff[_0x38db93];return _0x27206a;};'use strict';var jayson=require(_0xf40f('0x0'));var moment=require(_0xf40f('0x1'));var BPromise=require('bluebird');var client=jayson[_0xf40f('0x2')][_0xf40f('0x3')]({'port':0x2329});var logger=require('../../config/logger')(_0xf40f('0x4'));exports['info']=function(_0x485abf){logger[_0xf40f('0x5')](_0x485abf);};exports[_0xf40f('0x6')]=function(_0x2e4369){logger[_0xf40f('0x6')](JSON[_0xf40f('0x7')](_0x2e4369));};exports[_0xf40f('0x8')]=function(_0x4268cb){logger[_0xf40f('0x8')](_0x4268cb[_0xf40f('0x9')]);};exports[_0xf40f('0xa')]=function(_0x1b4fea,_0x48a0b8){return client[_0xf40f('0xa')](_0x1b4fea,{'body':_0x48a0b8})['then'](function(_0x5973fa){logger[_0xf40f('0x6')](JSON[_0xf40f('0x7')](_0x5973fa));})[_0xf40f('0xb')](function(_0x2553c1){logger[_0xf40f('0x8')](_0x2553c1['stack']);});};function getUser(_0x12e2b6){return client[_0xf40f('0xa')]('GetUser',{'options':{'raw':!![],'attributes':['id',_0xf40f('0xc'),'name',_0xf40f('0xd')],'where':_0x12e2b6,'limit':0x1}})[_0xf40f('0xe')](function(_0x40cb2e){logger['info'](_0xf40f('0xf')+JSON[_0xf40f('0x7')](_0x12e2b6)+'|'+(_0x40cb2e[_0xf40f('0x10')]['length']?_0xf40f('0x11'):'NOTFOUND'));return _0x40cb2e[_0xf40f('0x10')][_0xf40f('0x12')]?_0x40cb2e[_0xf40f('0x10')][0x0]:null;});}exports[_0xf40f('0x13')]=function(_0x65c9ae){return new BPromise(function(_0x3b0307,_0x34c1a9){if(_0x65c9ae){return getUser({'internal':_0x65c9ae})['then'](function(_0x2cab80){return _0x3b0307(_0x2cab80);})[_0xf40f('0xb')](function(_0x1467c5){logger[_0xf40f('0x8')](_0x1467c5[_0xf40f('0x9')]);return _0x3b0307(null);});}else{return _0x3b0307(null);}});};exports[_0xf40f('0x14')]=function(_0x378cf9){return new BPromise(function(_0x3b415e,_0x3b9f05){if(_0x378cf9){return getUser({'interface':_0x378cf9})[_0xf40f('0xe')](function(_0x3da4ca){return _0x3b415e(_0x3da4ca);})[_0xf40f('0xb')](function(_0xd8020f){logger['error'](_0xd8020f[_0xf40f('0x9')]);return _0x3b415e(null);});}else{return _0x3b415e(null);}});};exports[_0xf40f('0x15')]=function(_0x79b0e7){return new BPromise(function(_0x2197e4,_0x4afb53){if(_0x79b0e7){return getUser({'name':_0x79b0e7})[_0xf40f('0xe')](function(_0x136676){return _0x2197e4(_0x136676);})[_0xf40f('0xb')](function(_0x35f763){logger[_0xf40f('0x8')](_0x35f763['stack']);return _0x2197e4(null);});}else{return _0x2197e4(null);}});};exports['getVoiceQueueByName']=function(_0x1378af){return new BPromise(function(_0x19fab8,_0x40bee6){if(_0x1378af){return client['request'](_0xf40f('0x16'),{'options':{'raw':!![],'attributes':['id','name',_0xf40f('0x17'),_0xf40f('0x18'),_0xf40f('0x19')],'where':{'name':_0x1378af},'limit':0x1}})['then'](function(_0x3ff7e8){logger[_0xf40f('0x5')](_0xf40f('0x1a')+_0x1378af+'|'+(_0x3ff7e8[_0xf40f('0x10')][_0xf40f('0x12')]?_0xf40f('0x11'):'NOTFOUND'));return _0x19fab8(_0x3ff7e8[_0xf40f('0x10')]['length']?_0x3ff7e8[_0xf40f('0x10')][0x0]:null);})[_0xf40f('0xb')](function(_0x1d18f8){logger[_0xf40f('0x8')](_0x1d18f8[_0xf40f('0x9')]);return _0x19fab8(null);});}else{return _0x19fab8(null);}});};exports['addTime']=function(_0x4cf2c2,_0x219433){return moment(_0x4cf2c2)[_0xf40f('0x1b')](_0x219433,_0xf40f('0x1c'))['format'](_0xf40f('0x1d'));};exports[_0xf40f('0x1e')]=function(_0x2bbb29,_0x646811){return moment(_0x2bbb29)[_0xf40f('0x1f')](_0x646811,_0xf40f('0x1c'))['format']('YYYY-MM-DD\x20HH:mm:ss');};exports[_0xf40f('0x20')]=function(_0x56df57,_0x50fc71){return moment(_0x56df57)[_0xf40f('0x21')](moment(_0x50fc71),_0xf40f('0x1c'));};exports[_0xf40f('0x22')]=function(_0x1dad7f,_0x1aee3b){return parseInt(_0x1dad7f,0xa)+parseInt(_0x1aee3b,0xa);};exports[_0xf40f('0x23')]=function(){return moment()[_0xf40f('0x24')](_0xf40f('0x1d'));};exports['isAfter']=function(_0x338538,_0x3781ce){if(_0x3781ce){return moment(_0x338538)['isAfter'](_0x3781ce);}else{return!![];}};exports[_0xf40f('0x25')]=function(_0x5ded49,_0x17f555){if(_0x17f555){return moment(_0x5ded49)[_0xf40f('0x25')](_0x17f555);}else if(_0x5ded49){return!![];}else{return![];}};