c20aef41365cca9f85a5316b84d7729c8b5016e4
[motion2.git] / server / services / routing / server / applications / system.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 _0x9d9d=['next','isObject','stringify','shelljs','lodash','./utils','../../../../config/logger','routing','command\x20is\x20a\x20string\x20and\x20it\x20is\x20required','consequence','error','[%s][SYSTEM]\x20%s','map','message','join','[%s][SYSTEM]\x20no\x20command\x20executed,\x20force\x20next','info','exec','replace','isEmpty','body'];(function(_0xd8594f,_0x18f5c7){var _0x26c2c8=function(_0x2ec068){while(--_0x2ec068){_0xd8594f['push'](_0xd8594f['shift']());}};_0x26c2c8(++_0x18f5c7);}(_0x9d9d,0x129));var _0xd9d9=function(_0x26b6f5,_0x277475){_0x26b6f5=_0x26b6f5-0x0;var _0x37d738=_0x9d9d[_0x26b6f5];return _0x37d738;};'use strict';var schema=require('validate');var sh=require(_0xd9d9('0x0'));var _=require(_0xd9d9('0x1'));var utils=require(_0xd9d9('0x2'));var logger=require(_0xd9d9('0x3'))(_0xd9d9('0x4'));var system=schema({'command':{'type':'string','required':!![],'message':_0xd9d9('0x5')}});exports[_0xd9d9('0x6')]=function(_0x403901,_0x36a43b){return function(_0x2eddcc){try{var _0x341c8c={'command':_0x36a43b[0x0]};var _0x315af7=system['validate'](_0x341c8c,{'typecast':!![]});if(_0x315af7['length']){logger[_0xd9d9('0x7')](_0xd9d9('0x8'),_0x403901,_[_0xd9d9('0x9')](_0x315af7,_0xd9d9('0xa'))[_0xd9d9('0xb')](',\x20'));logger['info'](_0xd9d9('0xc'),_0x403901);_0x2eddcc['next']();}else{var _0x3c174d=this;var _0x1a41e4=utils['getMustacheRender'](_0x36a43b[0x0],this);logger[_0xd9d9('0xd')]('[%s][SYSTEM]\x20commnad:\x20%s',_0x403901,_0x1a41e4);sh[_0xd9d9('0xe')](_['trim'](_0x1a41e4),function(_0x2b4fce,_0x248625){logger[_0xd9d9('0xd')]('[%s][SYSTEM]\x20result\x20code:\x20%s',_0x403901,_0x2b4fce);if(_0x2b4fce==0x0){var _0x3842f1=_0x248625[_0xd9d9('0xf')](/(\r\n|\n|\r)/gm,'');if(_['isNil'](_0x36a43b[0x1])||_[_0xd9d9('0x10')](_0x36a43b[0x1])){logger['info']('[%s][SYSTEM]\x20no\x20variable',_0x403901);_0x3c174d[_0xd9d9('0x11')][_0x36a43b[0x1]]=_0x3842f1;}else{logger[_0xd9d9('0xd')]('[%s][SYSTEM]\x20set\x20variable\x20%s:\x20%s',_0x403901,_0x36a43b[0x1],_0x3842f1);_0x3c174d[_0xd9d9('0x11')][_0x36a43b[0x1]]=_0x3842f1;}}_0x2eddcc[_0xd9d9('0x12')]();});}}catch(_0x54ef05){logger[_0xd9d9('0x7')]('[%s][SYSTEM]\x20%s',_0x403901,_[_0xd9d9('0x13')](_0x54ef05)?JSON[_0xd9d9('0x14')](_0x54ef05):_0x54ef05);logger[_0xd9d9('0xd')](_0xd9d9('0xc'),_0x403901);_0x2eddcc[_0xd9d9('0x12')]();}};};