Built motion from commit (unavailable).|2.5.7
[motion2.git] / server / api / pm2 / pm2.controller.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 _0xd864=['hasOwnProperty','Unknown\x20status','destroy','delete','Unknown\x20id','lodash','../../config/pm2','../../config/logger','api','path','child_process','bluebird','sendStatus','status','json','error','stack','name','npm\x20install','info','index','motion2','length','then','show','params','catch','create','body','join','../../files/plugins','script','cwd','chdir','dirname','start','dump','send','Missing\x20name\x20and/or\x20path','update','restart'];(function(_0x235c0c,_0x48cab7){var _0x5e1129=function(_0x6a570c){while(--_0x6a570c){_0x235c0c['push'](_0x235c0c['shift']());}};_0x5e1129(++_0x48cab7);}(_0xd864,0xd2));var _0x4d86=function(_0x392df9,_0x12d8c0){_0x392df9=_0x392df9-0x0;var _0xba1f51=_0xd864[_0x392df9];return _0xba1f51;};'use strict';var _=require(_0x4d86('0x0'));var pm2=require(_0x4d86('0x1'));var logger=require(_0x4d86('0x2'))(_0x4d86('0x3'));var path=require(_0x4d86('0x4'));var exec=require(_0x4d86('0x5'))['exec'];var BPromise=require(_0x4d86('0x6'));function handleEntityNotFound(_0x49b26b,_0x364e4e){return function(_0x44c7c8){if(!_0x44c7c8){_0x49b26b[_0x4d86('0x7')](0x194);;}return _0x44c7c8;};}function respondWithResult(_0x2689d8,_0x53cc57){_0x53cc57=_0x53cc57||0xc8;return function(_0x2fb3ae){if(_0x2fb3ae){return _0x2689d8[_0x4d86('0x8')](_0x53cc57)[_0x4d86('0x9')](_0x2fb3ae);}return null;};}function handleError(_0x4ce081,_0x39ce33){_0x39ce33=_0x39ce33||0x1f4;return function(_0x3d2683){logger[_0x4d86('0xa')](_0x3d2683[_0x4d86('0xb')]);if(_0x3d2683[_0x4d86('0xc')]){delete _0x3d2683[_0x4d86('0xc')];}_0x4ce081[_0x4d86('0x8')](_0x39ce33)['send'](_0x3d2683);};}function execChildProcess(){return new BPromise(function(_0x48f68d,_0x58453e){exec(_0x4d86('0xd'),function(_0x14f7bb,_0x514b75,_0x9ef59e){logger[_0x4d86('0xe')](_0x514b75);logger['info'](_0x9ef59e);if(_0x14f7bb){logger[_0x4d86('0xa')](_0x14f7bb);return _0x58453e(_0x14f7bb);}return _0x48f68d(_0x514b75);});});}exports[_0x4d86('0xf')]=function(_0x1d884d,_0x2c1197){return pm2['list']()['then'](function(_0x32c494){if(_0x32c494){var _0x586658=_['reject'](_0x32c494,function(_0x37b205){return _0x37b205[_0x4d86('0xc')]==='express'||_0x37b205[_0x4d86('0xc')]===_0x4d86('0x10');});return{'rows':_0x586658,'count':_0x586658[_0x4d86('0x11')]};}return null;})[_0x4d86('0x12')](respondWithResult(_0x2c1197,null))['catch'](handleError(_0x2c1197,null));};exports[_0x4d86('0x13')]=function(_0x77cb33,_0x1360f3){return pm2['describe'](_0x77cb33[_0x4d86('0x14')]['id'])[_0x4d86('0x12')](respondWithResult(_0x1360f3,null))[_0x4d86('0x12')](handleEntityNotFound(_0x1360f3,null))[_0x4d86('0x15')](handleError(_0x1360f3,null));};exports[_0x4d86('0x16')]=function(_0x261f35,_0x54b82f){if(_0x261f35[_0x4d86('0x17')][_0x4d86('0xc')]&&_0x261f35['body']['script']){var _0xf2853b=path[_0x4d86('0x18')](__dirname,_0x4d86('0x19'),_0x261f35[_0x4d86('0x17')][_0x4d86('0x1a')]);var _0x53a9cf=process[_0x4d86('0x1b')]();process[_0x4d86('0x1c')](path[_0x4d86('0x1d')](_0xf2853b));return execChildProcess()['then'](function(_0x5306d1){process[_0x4d86('0x1c')](_0x53a9cf);return pm2[_0x4d86('0x1e')]({'name':_0x261f35[_0x4d86('0x17')][_0x4d86('0xc')],'script':_0xf2853b});})[_0x4d86('0x12')](function(_0x487a95){pm2[_0x4d86('0x1f')]();return _0x487a95[0x0];})[_0x4d86('0x12')](respondWithResult(_0x54b82f,0xc9))['catch'](handleError(_0x54b82f,null));}else{return _0x54b82f[_0x4d86('0x8')](0x1f4)[_0x4d86('0x20')]({'message':_0x4d86('0x21')});}};exports[_0x4d86('0x22')]=function(_0x210c19,_0x487145){if(_0x210c19['body']['id']){delete _0x210c19['body']['id'];}var _0x12296b={'online':_0x4d86('0x23'),'stopped':'stop'};if(_0x12296b[_0x4d86('0x24')](_0x210c19[_0x4d86('0x17')][_0x4d86('0x8')])){return pm2[_0x12296b[_0x210c19[_0x4d86('0x17')]['status']]](_0x210c19['params']['id'])[_0x4d86('0x12')](respondWithResult(_0x487145,0xc8))[_0x4d86('0x15')](handleError(_0x487145,null));}else{return _0x487145[_0x4d86('0x8')](0x1f4)[_0x4d86('0x20')]({'message':_0x4d86('0x25')});}};exports[_0x4d86('0x26')]=function(_0x665f86,_0x2815cc){if(_0x665f86[_0x4d86('0x17')]['id']){delete _0x665f86[_0x4d86('0x17')]['id'];}if(_0x665f86[_0x4d86('0x14')]['id']){return pm2[_0x4d86('0x27')](_0x665f86['params']['id'])[_0x4d86('0x12')](function(_0x593377){pm2[_0x4d86('0x1f')]();return _0x593377[0x0];})[_0x4d86('0x12')](respondWithResult(_0x2815cc,null))[_0x4d86('0x15')](handleError(_0x2815cc,null));}else{return _0x2815cc['status'](0x1f4)[_0x4d86('0x20')]({'message':_0x4d86('0x28')});}};