source: admin/WebConsole/principal/sondeo.php

lgromero-new-oglive
Last change on this file was 5cef356, checked in by OpenGnSys Support Team <soporte-og@…>, 5 years ago

#915 Remove all references to SocketHidra?

This patch removes all remaining references to SocketHidra?. The existing
code uses the REST API ogAdmServer.

  • Property mode set to 100644
File size: 3.4 KB
Line 
1<?php
2// *************************************************************************************************************************************************
3// Aplicación WEB: ogAdmWebCon
4// Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla
5// Fecha Creación: Año 2009-2010
6// Fecha Última modificación: Agosto-2010
7// Nombre del fichero: sondeo.php
8// Descripción :
9//              Consulta el estado de los ordenadores
10// Version 1.1: De la salida del sondeo del agente antiguo se eliminan los que han respondido con el agente nuevo
11// Autor: Irina Gomez - ETSII Universidad Sevilla
12// Fecha: 2017/11/03
13// *************************************************************************************************************************************************
14        include_once("../includes/ctrlacc.php");
15        include_once("../includes/restfunctions.php");
16        include_once("../clases/AdoPhp.php");
17        include_once("../includes/constantes.php");
18        include_once("../includes/comunes.php");
19        include_once("../includes/CreaComando.php");
20        include_once("../includes/RecopilaIpesMacs.php");
21        //________________________________________________________________________________________________________
22        $ambito=0;
23        $idambito=0;
24        $sw=0;  // Swich para conmutar entre sondeo a clientes o sólo consulta a la tabla de sockets
25
26        if (isset($_POST["ambito"])) $ambito=$_POST["ambito"];
27        if (isset($_POST["idambito"])) $idambito=$_POST["idambito"];
28        if (isset($_POST["sw"])) $sw=$_POST["sw"];
29        //________________________________________________________________________________________________________
30        $cmd=CreaComando($cadenaconexion);
31        if (!$cmd)
32                Header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D.
33        //________________________________________________________________________________________________________
34        $funcion="Sondeo"; // Nombre de la función que procesa la petición
35        if($sw==2)
36                $funcion="respuestaSondeo"; // Nombre de la función que procesa la petición
37        $atributos="";
38        $aplicacion=""; // Ámbito de aplicación (cadena de ipes separadas por ";" y de identificadores de ordenadores por ","
39        $acciones=""; // Cadena de identificadores de acciones separadas por ";" para seguimiento
40        //________________________________________________________________________________________________________
41        // Ámbito de aplicación de la petición
42        //________________________________________________________________________________________________________
43        $cadenaid="";
44        $cadenaip="";
45        $cadenamac="";
46        RecopilaIpesMacs($cmd,$ambito,$idambito); // Ámbito de aplicación
47
48        $ips = explode (';', $cadenaip);
49
50        $trama_notificacion = clients($sw, $ips);
51
52        // Send REST requests to new OGAgent clients.
53        $urls = array();
54        // Compose array of REST URLs.
55        foreach ($ips as $ip) {
56                $urls[$ip] = "https://$ip:8000/opengnsys/status";
57        }
58        // Launch concurrent requests.
59        $responses = multiRequest($urls);
60        // Process responses array (IP as array index).
61        foreach ($responses as $ip => $resp) {
62                if (isset($resp['data'])) {
63                        $data = json_decode($resp['data']);
64                        // If user session is oppened, then append "S" to client status.
65                        if (isset($data->status) and isset($data->loggedin)) {
66                                // Output format: IP1/Status1;...
67                                echo "$ip/".$data->status.($data->loggedin?"S;":";");
68                                // eliminamos los equipos repetidos en el agente antiguo y nuevo.
69                                $trama_notificacion=preg_replace("/$ip\/\w{3}/",'',$trama_notificacion);
70
71                        }
72                }
73        }
74        echo $trama_notificacion;
75
76
Note: See TracBrowser for help on using the repository browser.