Resumen
Aplicacion web para monitorizar Raspberry Pi mediante SSH desde un contenedor dedicado. El dashboard muestra el ultimo estado calculado por el backend; el navegador no abre conexiones SSH.
Rutas
/dashboard.html: vista principal./config.html: configuracion./api/status: estado actual.
Configuracion
La configuracion persistente esta en /home/yamaray/docker/monitorRPi/data/config.json, montada dentro del contenedor como /data/config.json.
Generales
mockMode: usa datos simulados si es true.refreshIntervalSeconds: scan activo con clientes visibles.idleScanIntervalSeconds: scan lento sin clientes visibles.sshTimeoutSeconds: timeout por consulta SSH.temperatureThresholdsC: umbrales de temperatura.metricThresholdsPercent: umbrales de CPU, RAM y disco.
Dispositivos
active: incluye o excluye el dispositivo del scan.id: identificador interno unico.name: nombre visible.host: IP o DNS.port: puerto SSH.username/password: credenciales SSH.model: modelo visible.role: funcion del equipo.location: ubicacion.
API
GET /api/status
Devuelve el ultimo estado: resumen, dispositivos, umbrales, clientes activos e intervalo actual.
GET /api/config
Devuelve la configuracion completa.
POST /api/config
Guarda la configuracion completa y reinicia el ciclo de scan.
POST /api/reload
Recarga la configuracion desde disco.
POST /api/scan-now
Fuerza un scan SSH inmediato.
POST /api/client-heartbeat
Usado por el dashboard visible para activar el intervalo rapido.
POST /api/clients/clear
Limpia los clientes activos en memoria.
Escaneo Adaptativo
0 clientes visibles -> idleScanIntervalSeconds
1+ clientes visibles -> refreshIntervalSeconds
Docker
cd /home/yamaray/docker/monitorRPi
docker compose up -d --build