Integración domótica Nextcloud, gratuita y de código abierto

Supervise su Nextcloud: actualizaciones, usuarios activos, espacio libre, archivos, carga.
Nextcloud es la nube autoalojada de muchos hogares:
archivos, fotos, calendarios y contactos en su propio servidor. Esta
integración supervisa su Nextcloud desde Gladys, solo lectura, a través de
su API de supervisión (la aplicación «Monitoring», serverinfo, incluida y
activada con Nextcloud): si está en línea, si espera una actualización, cuánto
espacio queda, quién la usa. Las escenas pueden reaccionar cuando sale una
nueva versión de Nextcloud o de sus aplicaciones. Un widget del panel lo
resume todo. Todo se queda en su red local.
Probada con un Nextcloud 32 real (32.0.9, SQLite) por las pruebas automáticas y durante el desarrollo; aún no en una instalación real de Gladys. Sus comentarios son bienvenidos en las issues.
Lo que necesita
- Gladys Assistant 5.1.0 o posterior.
- Nextcloud con la aplicación Monitoring (
serverinfo) activada: lo está por defecto. Sirve cualquier versión aún mantenida; la carga del sistema requiere Nextcloud 28 o posterior. - Nextcloud accesible desde la máquina de Gladys (la dirección que escribe en su navegador en casa).
- Uno de los dos accesos siguientes. Nunca su contraseña principal.
Primeros pasos
1. Dar acceso a Gladys
Elija uno de los dos:
-
Un token de serverinfo (recomendado): un secreto de su elección que solo abre la API de supervisión, y ninguna cuenta. Genere un texto aleatorio largo (un gestor de contraseñas lo hace) y defínalo en el servidor con
occ, la línea de comandos de Nextcloud (el comando también aparece al final de Configuración de administración → Sistema):occ config:app:set serverinfo token --value <su-token>Con Docker:
docker exec -u www-data <contenedor> php occ config:app:set serverinfo token --value <su-token>. En Nextcloud AIO:docker exec --user www-data -it nextcloud-aio-nextcloud php occ config:app:set serverinfo token --value <su-token>. -
Una cuenta de administrador y una contraseña de aplicación: la API de supervisión está reservada a los miembros del grupo
admin. Inicie sesión como administrador, abra Configuración personal → Seguridad → Dispositivos y sesiones, escribaGladyscomo nombre de aplicación y haga clic en Crear nueva contraseña de aplicación. Cópiela: Nextcloud solo la muestra una vez. Puede revocarla allí en cualquier momento, sin tocar su contraseña.
2. Configurar la integración
En Gladys, Integraciones → Nextcloud → Configuración:
- Dirección: la dirección de su Nextcloud, como en su navegador, con su
ruta si la tiene:
https://cloud.example.com,http://192.168.1.20:8080,https://example.org/nextcloud. Un enlace copiado comohttps://cloud.example.com/index.php/apps/files/también se entiende. Una redirección de HTTP a HTTPS en la misma dirección se sigue; una redirección a otra dirección nunca (sus credenciales irían allí). - Token de serverinfo: el token definido arriba, o bien:
- Cuenta de administrador y Contraseña de aplicación: el usuario de un administrador y la contraseña de aplicación creada arriba. Si el token y la cuenta están rellenados, se usa el token.
- Nombre (opcional): el nombre del dispositivo en Gladys; vacío,
Nextcloud. - Aceptar certificados autofirmados: márquelo para una dirección HTTPS cuyo certificado no está firmado por una autoridad (un NAS, un nombre local). Solo para su propio servidor.
- Intervalo de actualización: de 1 minuto (por defecto) a 15 minutos.
- Idioma de los nombres y textos: los nombres de las funciones al añadir el dispositivo, y los textos del dispositivo (francés por defecto).
Guarde y luego Probar la conexión: se lee Nextcloud y se muestra el resultado (versión, actualización, usuarios, archivos, espacio libre, y cómo se ha leído).
3. Añadir el dispositivo
Abra la pestaña Descubrir de la integración y haga clic en Añadir a Gladys en el dispositivo Nextcloud.
El dispositivo
Un dispositivo por Nextcloud, todas sus funciones de solo lectura:
- En línea: Nextcloud responde (0 tras dos lecturas fallidas seguidas, o en modo de mantenimiento).
- Versión de Nextcloud: la versión instalada (
32.0.9). - Actualización de Nextcloud disponible: 1 cuando Nextcloud ha encontrado una nueva versión de sí mismo (su propia comprobación diaria, la de las páginas de administración).
- Actualizaciones de aplicaciones: el número de aplicaciones instaladas con una actualización en la tienda de aplicaciones.
- Usuarios activos (5 min), Usuarios activos (1 hora), Usuarios activos (24 horas): los usuarios que han iniciado sesión o usado Nextcloud en ese tiempo.
- Usuarios: las cuentas que han iniciado sesión al menos una vez.
- Archivos: el número de archivos (un recuento que Nextcloud actualiza cada 3 horas).
- Recursos compartidos: el número de recursos compartidos (enlaces públicos, usuarios, grupos, correo…).
- Espacio libre: espacio libre de la carpeta de datos, en GB.
- Tamaño de la base de datos: en MB.
- Carga del sistema: la carga media del último minuto, por hilo del procesador: 100 % cuando todos los hilos están ocupados (se muestra 100 % por encima).
- Memoria usada: la memoria del servidor en uso, en %.
- Versión de PHP: la versión de PHP que ejecuta Nextcloud.
- Caché de memoria: las cachés de memoria que usa Nextcloud (
APCu,Redis…), oNinguna: las comprobaciones de Nextcloud recomiendan una.
Una función aparece en cuanto Nextcloud le ha dado un valor: en un sistema que no lo da (sin número de hilos, espacio libre desconocido), simplemente no está.
Panel
El widget Nextcloud muestra de un vistazo: el espacio libre, los usuarios activos de los últimos 5 minutos, el número de actualizaciones pendientes (Nextcloud y sus aplicaciones, en naranja si las hay). Luego una lista, lo que requiere atención primero: la nueva versión de Nextcloud, las aplicaciones por actualizar, una carga del sistema o una memoria por encima del 80 %, una caché de memoria ausente; después los usuarios activos en 1 hora y 24 horas, usuarios, archivos, compartidos, base de datos, versión de PHP.
Botones: Actualizar vuelve a leer Nextcloud; Abrir Nextcloud abre su vista general de administración, cuando la dirección es HTTPS (el panel solo abre enlaces seguros).
Escenas
Desencadenadores
- Actualización de Nextcloud disponible: Nextcloud ha encontrado una nueva
versión de sí mismo. Una vez por versión: una comprobación que oscila o un
reinicio no la anuncian de nuevo. Información transmitida:
server_name(el nombre del dispositivo),installed_version,new_version. - Actualizaciones de aplicaciones de Nextcloud disponibles: han aparecido
nuevas actualizaciones para aplicaciones instaladas, un evento para todas las
encontradas en la misma lectura, una vez por versión de aplicación.
Información transmitida:
server_name,apps(las nuevas con su versión:calendar 5.5.4, deck 1.15.0),count(cuántas nuevas),total(aplicaciones pendientes de actualizar).
Lo que ya está pendiente cuando la integración arranca por primera vez se registra, no se anuncia: las funciones y el widget lo muestran.
Para el espacio libre, los usuarios o la carga no hace falta desencadenador: use las funciones en una condición de escena («Espacio libre por debajo de 20 GB», «En línea pasa a 0»).
Ideas de escenas
- Actualización de Nextcloud disponible → envíese un mensaje con las
variables
new_versioneinstalled_version: «Nextcloud 32.0.10 está disponible (instalada: 32.0.9)». - Actualizaciones de aplicaciones de Nextcloud disponibles → una
notificación con
appsen su teléfono, como mucho una vez por semana con una condición sobre la hora. - Espacio libre por debajo de 20 GB → un mensaje, antes de que fallen las copias de fotos de los teléfonos.
- En línea pasa a 0 por la noche → encienda el enchufe del NAS, o envíe un mensaje.
Solución de problemas
- «Token, usuario o contraseña de aplicación rechazado»: el token no es el
definido con
occ, o la contraseña de aplicación ha sido revocada o mal copiada. La protección contra fuerza bruta de Nextcloud frena las peticiones de una dirección que falla: tras un rechazo, Gladys vuelve a intentarlo solo al cabo de 30 minutos, o enseguida cuando guarda la configuración o hace clic en Probar la conexión. - «Esta cuenta no es administradora»: la cuenta es válida pero no está en
el grupo
admin. Use un administrador, o el token de serverinfo. - «Demasiados intentos fallidos»: la protección contra fuerza bruta
bloquea la dirección de Gladys. Corrija las credenciales, espere, o
restablézcala en el servidor:
occ security:bruteforce:reset <dirección de Gladys>. Si Gladys llega a Nextcloud a través de un proxy inverso, configuretrusted_proxiesen Nextcloud, o toda la casa compartirá una misma dirección bloqueada. - «La aplicación Monitoring (serverinfo) está desactivada»: actívela en
Aplicaciones → Aplicaciones desactivadas, o con
occ app:enable serverinfo. - «En modo de mantenimiento»: hay una actualización o un
occ maintenance:mode --onen curso. En línea vale 0 hasta que termine. - «No hay Nextcloud en esta dirección»: la dirección o su ruta es
incorrecta (un Nextcloud servido bajo
/nextcloudla necesita en la dirección). - «Redirige a otra dirección»: introduzca la dirección final que muestra su navegador.
- «Certificado rechazado»: marque Aceptar certificados autofirmados.
- El dispositivo muestra «Actualizar» en Descubrir: ha aparecido una función (la primera actualización de aplicación, el espacio libre ya conocido). Actualícelo para obtenerla.
- Más detalles en los registros de la integración, con
LOG_LEVEL=debug.
Límites
- Un solo Nextcloud por instalación.
- Solo lectura: ni modo de mantenimiento, ni actualización, ni operación sobre archivos desde Gladys.
- Se lee cada 1 a 15 minutos: un cambio aparece en la lectura siguiente. Cada lectura es una petición ligera; no hay cuota. Las actualizaciones de aplicaciones vienen de la lista de la tienda que Nextcloud guarda una hora: no añaden ninguna petición a la tienda en cada lectura.
- El número de archivos lo actualiza Nextcloud cada 3 horas.
- Ni temperaturas de discos, ni tráfico de red, ni cuotas por usuario: la API de supervisión no los da.
- La integración solo guarda en
/datala dirección, las funciones vistas y las versiones ya anunciadas; el token y la contraseña de aplicación se quedan en la configuración de Gladys y nunca aparecen en los registros.
Nextcloud es una marca de Nextcloud GmbH. Esta integración no está afiliada a Nextcloud GmbH, ni respaldada o patrocinada por ella.
Parámetros de configuración
Estos son los parámetros que Nextcloud te pide en su pantalla de configuración en Gladys.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| Su Nextcloud | section | No | Gladys lee la API de supervisión de Nextcloud (la aplicación «Monitoring», serverinfo, activada por defecto), solo lectura. Necesita el token de serverinfo, o una cuenta de administrador con una contraseña de aplicación: nunca su contraseña principal. |
| Dirección | string | Sí | Dirección de su Nextcloud, como en su navegador, con su ruta si la tiene (https://example.org/nextcloud). |
| Acceso | section | No | O bien un token de serverinfo que usted elige y define con occ (comando al final de Configuración de administración, Sistema), o bien una cuenta de administrador y una contraseña de aplicación (Configuración personal, Seguridad). Si ambos están rellenados, se usa el token. |
| Token de serverinfo | secret | No | Recomendado: solo abre la API de supervisión, y ninguna cuenta. |
| Cuenta de administrador | string | No | Usuario de una cuenta del grupo admin, a falta de token. |
| Contraseña de aplicación | secret | No | Creada para Gladys en Configuración personal, Seguridad. Nunca su contraseña principal. |
| Nombre | string | No | Nombre del dispositivo en Gladys. Vacío: Nextcloud. |
| Opciones | section | No | |
| Aceptar certificados autofirmados | boolean | No | Para una dirección HTTPS cuyo certificado no está firmado por una autoridad (un NAS, un nombre local). Márquelo solo para su propio servidor. |
| Intervalo de actualización | select | No | Con qué frecuencia se lee Nextcloud: una petición ligera cada vez. |
| Idioma de los nombres y textos | select | No | Nombres de las funciones al añadir el dispositivo, y textos del dispositivo. |
Cómo instalar Nextcloud en Gladys
- En Gladys, abre Integraciones: Nextcloud aparece en el catálogo junto a las integraciones nativas, con una insignia de comunidad.
- Haz clic en Instalar. Gladys descarga la imagen Docker (
ghcr.io/guim31/gladys-nextcloud:1.0.1), la ejecuta en un entorno aislado del núcleo y genera la interfaz de la integración (dispositivos, descubrimiento y configuración). - Abre la pantalla de Configuración de la integración, rellena los parámetros y guarda.
- También puedes instalarla directamente desde la URL de su repositorio: https://github.com/guim31/gladys-nextcloud.
Nextcloud requiere Gladys >=5.1.0. El catálogo de Gladys se actualiza cada hora, así que una nueva versión está disponible como máximo una hora después de publicarse.
¿Todavía no usas Gladys? Es gratuito y de código abierto: sigue la guía de instalación para empezar.
Sobre las integraciones externas
Nextcloud es una integración externa: una integración comunitaria empaquetada como contenedor Docker y publicada en GitHub. Gladys la instala con un clic y la ejecuta en un entorno aislado del núcleo. La publica y mantiene guim31, no el equipo principal de Gladys.
- Explorar todas las integraciones, nativas y de la comunidad
- Crear y publicar tu propia integración externa
- Código fuente en GitHub — fuente de esta documentación