From 560455a8c98e8a8ee374f50812c9915f32f7d18c Mon Sep 17 00:00:00 2001 From: OpenGnSys Support Team Date: Mon, 27 May 2019 13:05:06 +0200 Subject: #915 adapt web console to use new REST API in OgAdmServer Use new REST API in ogAdmServer. This allows us to start removing the old SockHidra code. --- admin/WebConsole/principal/ecoconsola.php | 43 ++++--------------------------- admin/WebConsole/principal/sondeo.php | 30 +++------------------ 2 files changed, 9 insertions(+), 64 deletions(-) (limited to 'admin/WebConsole/principal') diff --git a/admin/WebConsole/principal/ecoconsola.php b/admin/WebConsole/principal/ecoconsola.php index 5832e8e9..26ea1b61 100644 --- a/admin/WebConsole/principal/ecoconsola.php +++ b/admin/WebConsole/principal/ecoconsola.php @@ -15,6 +15,7 @@ include_once("../includes/comunes.php"); include_once("../includes/CreaComando.php"); include_once("../includes/RecopilaIpesMacs.php"); + include_once('../includes/restfunctions.php'); //________________________________________________________________________________________________________ $ambito=0; $idambito=0; @@ -29,18 +30,6 @@ if (!$cmd) Header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D. //________________________________________________________________________________________________________ - switch($sw){ - case 1: // Envío del código de scrip - $funcion="nfn=ConsolaRemota".chr(13); - $atributos="scp=".rawurlencode($comando).chr(13); - break; - case 2: // Recupera el archivo de eco - $funcion="nfn=EcoConsola".chr(13); // Nombre de la función que procesa la petición - $atributos=chr(13); - } - $aplicacion=""; // Ámbito de aplicación (cadena de ipes separadas por ";" y de identificadores de ordenadores por "," - $acciones=""; // Cadena de identificadores de acciones separadas por ";" para seguimiento - //________________________________________________________________________________________________________ // Ámbito de aplicación de la petición //________________________________________________________________________________________________________ $cadenaid=""; @@ -48,34 +37,12 @@ $cadenamac=""; RecopilaIpesMacs($cmd,$ambito,$idambito); // Ámbito de aplicación - $aplicacion="ido=".$cadenaid.chr(13)."iph=".$cadenaip.chr(13); //________________________________________________________________________________________________________ // Envio al servidor de la petición //________________________________________________________________________________________________________ - $resul=false; - $trama=""; - $shidra=new SockHidra($servidorhidra,$hidraport); - if ($shidra->conectar()){ // Se ha establecido la conexión con el servidor hidra - $parametros=$funcion.$aplicacion.$atributos.$acciones; - $resul=$shidra->envia_peticion($parametros); - if($resul) - $trama=$shidra->recibe_respuesta(); - $shidra->desconectar(); - } - if($resul){ - $hlonprm=hexdec(substr($trama,$LONCABECERA,$LONHEXPRM)); - $parametros=substr($trama,$LONCABECERA+$LONHEXPRM,$hlonprm); - $ValorParametros=extrae_parametros($parametros,chr(13),'='); - switch($sw){ - case 1: // Envío del código de scrip - $trama_notificacion=$ValorParametros["res"]; - echo $trama_notificacion; // Devuelve respuesta - break; - case 2: // Recupera el archivo de eco - $trama_notificacion=$ValorParametros["res"]; - echo $trama_notificacion; // Devuelve respuesta - } - - } + + $trama_notificacion = shell($sw, $cadenaip, $comando); + + echo $trama_notificacion; diff --git a/admin/WebConsole/principal/sondeo.php b/admin/WebConsole/principal/sondeo.php index ca3e8b5e..90493d58 100644 --- a/admin/WebConsole/principal/sondeo.php +++ b/admin/WebConsole/principal/sondeo.php @@ -46,36 +46,14 @@ $cadenamac=""; RecopilaIpesMacs($cmd,$ambito,$idambito); // Ámbito de aplicación - $aplicacion="ido=".$cadenaid.chr(13)."iph=".$cadenaip.chr(13); - // Envio al servidor de la petición - //________________________________________________________________________________________________________ - $resul=false; - $trama=""; - $trama_notificacion=""; - $shidra=new SockHidra($servidorhidra,$hidraport); - if ($shidra->conectar()){ // Se ha establecido la conexión con el servidor hidra - $parametros="nfn=".$funcion.chr(13); - $parametros.=$aplicacion; - $parametros.=$atributos; - $parametros.=$acciones; - $resul=$shidra->envia_peticion($parametros); - if($resul) - $trama=$shidra->recibe_respuesta(); - $shidra->desconectar(); - } - if($resul){ - $hlonprm=hexdec(substr($trama,$LONCABECERA,$LONHEXPRM)); - $parametros=substr($trama,$LONCABECERA+$LONHEXPRM,$hlonprm); - $ValorParametros=extrae_parametros($parametros,chr(13),'='); - if (isset ($ValorParametros["tso"])) { - $trama_notificacion=$ValorParametros["tso"]; - } - } + $ips = explode (';', $cadenaip); + + $trama_notificacion = clients($sw, $ips); // Send REST requests to new OGAgent clients. $urls = array(); // Compose array of REST URLs. - foreach (explode (';', $cadenaip) as $ip) { + foreach ($ips as $ip) { $urls[$ip] = "https://$ip:8000/opengnsys/status"; } // Launch concurrent requests. -- cgit v1.2.3-18-g5258 From dc827546044e8df83adc0bb10536c2f85d6039f3 Mon Sep 17 00:00:00 2001 From: Javier Sánchez Parra Date: Thu, 30 May 2019 15:28:20 +0200 Subject: #915 adapt web console to use new stop command in REST API SocketHidra "purgar" has been replaced by POST /stop. --- admin/WebConsole/principal/purgar.php | 21 ++------------------- 1 file changed, 2 insertions(+), 19 deletions(-) (limited to 'admin/WebConsole/principal') diff --git a/admin/WebConsole/principal/purgar.php b/admin/WebConsole/principal/purgar.php index bc945ffd..aef8aebe 100644 --- a/admin/WebConsole/principal/purgar.php +++ b/admin/WebConsole/principal/purgar.php @@ -15,6 +15,7 @@ include_once("../includes/comunes.php"); include_once("../includes/CreaComando.php"); include_once("../includes/RecopilaIpesMacs.php"); + include_once('../includes/restfunctions.php'); //________________________________________________________________________________________________________ $ambito=0; $idambito=0; @@ -41,23 +42,5 @@ //________________________________________________________________________________________________________ // Envio al servidor de la petición //________________________________________________________________________________________________________ - $trama=""; - $shidra=new SockHidra($servidorhidra,$hidraport); - if ($shidra->conectar()){ // Se ha establecido la conexión con el servidor hidra - $parametros="nfn=".$funcion.chr(13); - $parametros.=$aplicacion; - $parametros.=$atributos; - $parametros.=$acciones; - $shidra->envia_comando($parametros); - $trama=$shidra->recibe_respuesta(); - $shidra->desconectar(); - $hlonprm=hexdec(substr($trama,$LONCABECERA,$LONHEXPRM)); - $parametros=substr($trama,$LONCABECERA+$LONHEXPRM,$hlonprm); - $ValorParametros=extrae_parametros($parametros,chr(13),'='); - $trama_notificacion=$ValorParametros["res"]; - echo $trama_notificacion; // Devuelve respuesta - } - else - echo "0"; // Error de conexión - + echo stop($cadenaip) === 0 ? "0" : "1"; -- cgit v1.2.3-18-g5258 From c9cfd44a967e6be22f07ce3622cf261e51590705 Mon Sep 17 00:00:00 2001 From: Javier Sánchez Parra Date: Thu, 30 May 2019 15:47:52 +0200 Subject: #915 adapt web console to use new refresh command in REST API SocketHidra "actualizar" has been replaced by POST /refresh. --- admin/WebConsole/principal/actualizar.php | 21 ++------------------- 1 file changed, 2 insertions(+), 19 deletions(-) (limited to 'admin/WebConsole/principal') diff --git a/admin/WebConsole/principal/actualizar.php b/admin/WebConsole/principal/actualizar.php index 63f2d1b3..500b0b89 100644 --- a/admin/WebConsole/principal/actualizar.php +++ b/admin/WebConsole/principal/actualizar.php @@ -15,6 +15,7 @@ include_once("../includes/comunes.php"); include_once("../includes/CreaComando.php"); include_once("../includes/RecopilaIpesMacs.php"); + include_once('../includes/restfunctions.php'); //________________________________________________________________________________________________________ $ambito=0; $idambito=0; @@ -41,23 +42,5 @@ //________________________________________________________________________________________________________ // Envio al servidor de la petición //________________________________________________________________________________________________________ - $trama=""; - $shidra=new SockHidra($servidorhidra,$hidraport); - if ($shidra->conectar()){ // Se ha establecido la conexión con el servidor hidra - $parametros="nfn=".$funcion.chr(13); - $parametros.=$aplicacion; - $parametros.=$atributos; - $parametros.=$acciones; - $shidra->envia_comando($parametros); - $trama=$shidra->recibe_respuesta(); - $shidra->desconectar(); - $hlonprm=hexdec(substr($trama,$LONCABECERA,$LONHEXPRM)); - $parametros=substr($trama,$LONCABECERA+$LONHEXPRM,$hlonprm); - $ValorParametros=extrae_parametros($parametros,chr(13),'='); - $trama_notificacion=$ValorParametros["res"]; - echo $trama_notificacion; // Devuelve respuesta - } - else - echo "0"; // Error de conexión - + echo refresh($cadenaip) === 0 ? "0" : "1"; -- cgit v1.2.3-18-g5258