Primeros pasos en la pagina de estadisticas, para esto en index.js cree una nueva...
[VSoRC/.git] / src / routes / index.js
index c44e2cdbae7665d09104a2918976a09f5cef77d5..cbb21a373b5b46cd6a31b08084547ac0e36ffae0 100644 (file)
@@ -71,6 +71,17 @@ router.get('/gettopo', (req, res) => {
   });
 });
 
+router.get('/listswitch', (req, res) => {
+  var sys = require('sys')
+  var exec = require('child_process').exec;
+  var child;
+  child = exec("curl localhost:8080/data?list=switches", function(error, stdout, stderr) {
+    console.log("listswitch");
+    console.log(stdout);
+    res.send(stdout);
+  });
+});
+
 
 router.get('/startcontroller', (req, res) => {
   var sys = require('sys')
@@ -93,13 +104,35 @@ router.get('/stopcontroller', (req, res) => {
 });
 
 router.get('/startvsorc', (req, res) => {
+  var sys = require('sys')
+  var exec = require('child_process').exec;
+  var child0;//needs a mkfifo named fifo to exist
+  var child1;
+  var child2;
+  var answer;
+  //controlar que solo se haga un arranque por vez y agregar el exec 3>fifo
+  child0 = exec("cd /home/pi && mkfifo fifo && touch aichivo", function(error, stdout, stderr) {
+    console.log(stdout + stderr);
+    answer+=stdout;
+  });
+  child1 = exec("exec 3>fifo", function(error, stdout, stderr) {
+    console.log(stdout + stderr);
+    answer+=stdout;
+  });//add disown?
+  child2 = exec("cd /home/pi && cat fifo | sudo ./clusterGRE.py > aichivo 2>&1 &", function(error, stdout, stderr) {
+    console.log(stdout + stderr);
+    answer+=stdout;
+  });
+  res.send(answer);
+});
+
+router.get('/stopvsorc', (req,res) =>{
   var sys = require('sys')
   var exec = require('child_process').exec;
   var child;
-  child = exec("cd /home/pi && cat fifo | sudo ./clusterGRE.py > aichivo 2>&1 ", function(error, stdout, stderr) {
+  child = exec("cd /home/pi && exec 3>&- && rm fifo aichivo", function(error, stdout, stderr) {
     console.log(stdout);
     res.send(stdout);
-  });
+  });//esto cierra el fifo, lo cual cierra el programa
 });
-
 module.exports = router;