cambios camacho v1
[VSoRC/.git] / src / views / starter.ejs
index 50c1ec63ab58588465f7aa769ff7656407532714..07d5f07c532b8afeb9f955de0d57db1267941d99 100644 (file)
 </header>
 
 <body>
-
   <main>
     <div class="side">
 
       <div class="panel">
         <textarea class="text" rows="20" cols="7" id="comandos" placeholder="Definicion de la red como: h1:s1"></textarea>
         <div class="buttons">
-          <button type="button" name="button" onclick="startvsorc()">Iniciar VSoRC</button>
-          <button type="button" name="button" onclick="stopvsorc()">Detener VSoRC</button>
-          <button type="button" name="button" onclick="startcontroller()">Iniciar controlador</button>
-          <button type="button" name="button" onclick="stopcontroller()">Detener controlador</button>
+          <button id="btnstartvsorc" type="button" name="button" onclick="startvsorc()">Iniciar VSoRC</button>
+          <button id="btnstopvsorc" type="button" name="button" onclick="stopvsorc()">Detener VSoRC</button>
+          <button id="btnstartcontroller" type="button" name="button" onclick="startcontroller()">Iniciar controlador</button>
+          <button id="btnstopcontroller" type="button" name="button" onclick="stopcontroller()">Detener controlador</button>
         </div>
       </div>
 
       <div class="panel">
         <textarea class="text" style="font-size: 12px;" disabled rows="20" cols="7" id="controllerout" placeholder="Salida del controlador"></textarea>
       </div>
+      <div class="panel">
+        <textarea class="text" style="font-size: 12px;" disabled rows="16" cols="7" id="raspberrys" placeholder="Raspberry Pi UP!"></textarea>
+      </div>
+
 
     </div>
 
       let comando = document.getElementById('vsorccommand'); //Donde va escrito el comando para la terminal
       let vsorcout = document.getElementById('vsorcout'); //salida del vsorc
       let controllerout = document.getElementById('controllerout'); //salida del controlador
+      let raspberry = document.getElementById('raspberrys'); //monitor de las rpi disponibles
 
       let timeVsorc = 1000;
-      let timeController = 2000;
-      //Estos time son para especificar cada cuantos ms se pedira leer la data de los archivos aichivo y controllerout
+      let timeController = 1000;
+      let timeping = 5000;
+      //Estos time son para especificar cada cuantos ms se pedira leer la data de los archivos aichivo, controllerout y que raspberry estan activas
 
       let intervalController = null;//Para tener el id del interval para obtener data del controller
       let intervalVsorc = null; //Para tener el id del interval para obtener data del vsorc
 
       intervalVsorc = setInterval(getvsorcdata, timeVsorc);
       intervalController=setInterval(getcontrollerdata, timeController);
+      setInterval(rpiping,timeping);
+      function rpiping() {
+        let xhr = new XMLHttpRequest();
+        xhr.open('GET', '/rpiping', true);
+        xhr.onload = function() {
+          if (xhr.status == 200) { //can use this.status instead
+            //console.log(xhr.responseText);// para ver en la consola
+            raspberry.value=xhr.response;
+            console.log("getting controller data");
+          }
+        }
+        xhr.send();
 
+      }
       function startcontroller() {
         let xhr = new XMLHttpRequest();
         xhr.open('GET', '/startcontroller', true);
         xhr.onload = function() {
           if (xhr.status == 200) { //can use this.status instead
             //console.log(xhr.responseText);// para ver en la consola
-            controllerout.value=xhr.response;
+            let controllerstat = xhr.response.split('^');
+            if(controllerstat[1] === "true"){
+            document.getElementById('btnstopcontroller').disabled = false;
+            document.getElementById('btnstartcontroller').disabled = true;
+            }else{
+              document.getElementById('btnstopcontroller').disabled = true;
+              document.getElementById('btnstartcontroller').disabled = false;
+            }
+            controllerout.value=controllerstat[0];
             console.log("getting controller data");
           }
         }
         xhr.onload = function() {
           if (xhr.status == 200) { //can use this.status instead
             //console.log(xhr.responseText);// para ver en la consola
-            vsorcout.value=xhr.response;
+
+            //strip
+            //cambiar boton con vaina[1]
+            //vsorcout = vaina[0]
+            let vsorcstat = xhr.response.split('^');
+            if(vsorcstat[1] === "true"){
+            document.getElementById('btnstopvsorc').disabled = false;
+            document.getElementById('btnstartvsorc').disabled = true;
+            }else{
+              document.getElementById('btnstopvsorc').disabled = true;
+              document.getElementById('btnstartvsorc').disabled = false;
+            }
+
+            vsorcout.value=vsorcstat[0];
+
             console.log("getting vsorc data");