bc011a7b479fb1cbbdc50cc0c76c42794f7c1797
[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 _0xa859=['body','[%s][SYSTEM]\x20set\x20variable\x20%s:\x20%s','isObject','stringify','validate','shelljs','lodash','./utils','../../../../config/logger','string','consequence','length','[%s][SYSTEM]\x20%s','map','join','info','[%s][SYSTEM]\x20no\x20command\x20executed,\x20force\x20next','next','[%s][SYSTEM]\x20commnad:\x20%s','exec','replace','isEmpty','[%s][SYSTEM]\x20no\x20variable'];(function(_0x165b1d,_0x5ec634){var _0x20de45=function(_0x37602d){while(--_0x37602d){_0x165b1d['push'](_0x165b1d['shift']());}};_0x20de45(++_0x5ec634);}(_0xa859,0x77));var _0x9a85=function(_0x1de5b5,_0x451ac3){_0x1de5b5=_0x1de5b5-0x0;var _0x6fbf06=_0xa859[_0x1de5b5];return _0x6fbf06;};'use strict';var schema=require(_0x9a85('0x0'));var sh=require(_0x9a85('0x1'));var _=require(_0x9a85('0x2'));var utils=require(_0x9a85('0x3'));var logger=require(_0x9a85('0x4'))('routing');var system=schema({'command':{'type':_0x9a85('0x5'),'required':!![],'message':'command\x20is\x20a\x20string\x20and\x20it\x20is\x20required'}});exports[_0x9a85('0x6')]=function(_0x3050c3,_0x5fad41){return function(_0x351d16){try{var _0x57d7e5={'command':_0x5fad41[0x0]};var _0x5582e6=system['validate'](_0x57d7e5,{'typecast':!![]});if(_0x5582e6[_0x9a85('0x7')]){logger['error'](_0x9a85('0x8'),_0x3050c3,_[_0x9a85('0x9')](_0x5582e6,'message')[_0x9a85('0xa')](',\x20'));logger[_0x9a85('0xb')](_0x9a85('0xc'),_0x3050c3);_0x351d16[_0x9a85('0xd')]();}else{var _0xbf8e15=this;var _0x25ca18=utils['getMustacheRender'](_0x5fad41[0x0],this);logger[_0x9a85('0xb')](_0x9a85('0xe'),_0x3050c3,_0x25ca18);sh[_0x9a85('0xf')](_['trim'](_0x25ca18),function(_0x7ed85d,_0x1f8931){logger['info']('[%s][SYSTEM]\x20result\x20code:\x20%s',_0x3050c3,_0x7ed85d);if(_0x7ed85d==0x0){var _0x262b0b=_0x1f8931[_0x9a85('0x10')](/(\r\n|\n|\r)/gm,'');if(_['isNil'](_0x5fad41[0x1])||_[_0x9a85('0x11')](_0x5fad41[0x1])){logger[_0x9a85('0xb')](_0x9a85('0x12'),_0x3050c3);_0xbf8e15[_0x9a85('0x13')][_0x5fad41[0x1]]=_0x262b0b;}else{logger[_0x9a85('0xb')](_0x9a85('0x14'),_0x3050c3,_0x5fad41[0x1],_0x262b0b);_0xbf8e15[_0x9a85('0x13')][_0x5fad41[0x1]]=_0x262b0b;}}_0x351d16['next']();});}}catch(_0x178628){logger['error']('[%s][SYSTEM]\x20%s',_0x3050c3,_[_0x9a85('0x15')](_0x178628)?JSON[_0x9a85('0x16')](_0x178628):_0x178628);logger[_0x9a85('0xb')]('[%s][SYSTEM]\x20no\x20command\x20executed,\x20force\x20next',_0x3050c3);_0x351d16['next']();}};};