Saltar al contenido principal

Integración domótica TP-Link Omada, gratuita y de código abierto

Integración TP-Link Omada para Gladys Assistant

Red Omada: presencia, puntos de acceso, switches, puerta de enlace y WAN, PoE.

Lleva su red TP-Link Omada a Gladys: quién está en casa (los teléfonos en el Wi-Fi), el estado de sus puntos de acceso, switches y puerta de enlace, su conexión a Internet y algunos comandos para sus escenas.

Sin relación con TP-Link. Desarrollada sin el hardware: sus comentarios son bienvenidos — la integración se ha probado contra un controlador simulado construido a partir de respuestas publicadas de controladores reales, aún no contra uno real.

Presentación​

  • Presencia: cada teléfono, portátil o dispositivo conectado a la red puede convertirse en un sensor de presencia, con un retardo de salida para que un teléfono en reposo no «se vaya» cada pocos minutos.
  • Equipos Omada: un dispositivo Gladys por puerta de enlace, switch y punto de acceso: en línea, clientes conectados, tiempo de actividad, uso de CPU y de memoria, caudal de los clientes, potencia PoE consumida en un switch PoE y, para la puerta de enlace, el estado de Internet y el caudal de cada puerto WAN.
  • Disparadores de escena: un nuevo dispositivo desconocido se une a la red, un equipo Omada pasa a estar fuera de línea, un puerto WAN pierde Internet o lo recupera.
  • Comandos (desactivados por defecto): activar o cortar el PoE de un puerto de switch, reiniciar un equipo Omada, activar o desactivar un SSID (el Wi-Fi de invitados).
  • Widget del panel: clientes, caudal de Internet, puertos WAN y equipos Omada fuera de línea de un vistazo.

Requisitos previos​

  • Un controlador Omada: Software Controller, OC200 u OC300, accesible desde Gladys en la red local. Un controlador en la nube puede funcionar mediante su dirección Open API (no probado).
  • Recomendado: la Open API (controlador 5.9 o posterior). En el controlador, abra Vista global → Ajustes → Integración de plataforma → Open API, añada una aplicación en modo Cliente, dele el sitio que desea seguir y anote su ID de cliente y su secreto de cliente. Un rol de observador basta para leer; los comandos necesitan un rol autorizado a modificar el sitio (administrador).
  • O una cuenta de administrador local (cualquier versión 5.x del controlador): cree una cuenta local dedicada en el controlador. En este modo la integración solo lee: ningún comando.

Configuración​

En Gladys, Integraciones → TP-Link Omada → Configuración:

CampoQué introducir
Dirección del controladorhttps://<dirección>:8043 para el Software Controller, https://<dirección> para un OC200 / OC300.
Modo de conexiónOpen API (recomendado) o cuenta de administrador local (solo lectura).
ID / secreto de cliente de la Open APILa aplicación creada arriba (modo Open API).
Usuario / contraseña de la cuenta localLa cuenta dedicada (modo de cuenta local).
SitioEl nombre del sitio Omada (Default por defecto).
Aceptar un certificado autofirmadoEl controlador viene con un certificado autofirmado: active esta opción, salvo que haya instalado uno de confianza.
Omada IDDéjelo vacío para un controlador local. Solo controlador en la nube: el Omada ID de su página Open API.
Ofrecer los clientes de la redMuestra los clientes en línea en la pestaña Descubrir, para añadir los que desee seguir.
Retardo de salidaMinutos que un cliente debe estar ausente antes de considerarlo fuera (5 por defecto).
Intervalo de actualización30 s, 1 min (por defecto), 2 min o 5 min.
Permitir el control del PoE / los reinicios / el control de los SSIDCada comando está desactivado por defecto: active solo lo que necesiten sus escenas.
Idioma de los nombres de las funcionesFrancés por defecto; los nombres se fijan al añadir un dispositivo.

Después haga clic en Probar la conexión: el mensaje indica el sitio, la versión del controlador y lo que se ha encontrado. Abra la pestaña Descubrir para añadir los equipos Omada y los clientes que desee seguir.

Lo que la integración pide al controlador. Una lectura del sitio por intervalo de actualización: la lista de equipos, los clientes conectados, el estado WAN de la puerta de enlace y el consumo PoE (de 4 a 6 solicitudes). Los controladores Omada aceptan unas 10 solicitudes por segundo; la integración espacia sus solicitudes y nunca envía más de una a la vez. Abrir un panel no le cuesta nada al controlador: el widget muestra la última lectura. El token de acceso de la Open API solo vive en memoria y se renueva con las credenciales de cliente cuando caduca (dos horas).

Dispositivos​

Puerta de enlace, switch, punto de acceso (un dispositivo Gladys cada uno, con el nombre del controlador):

FunciónUnidadEquipos
En línea0 / 1todos
Clientes conectadosnúmerotodos (los clientes conectados al equipo)
Tiempo de actividadhorastodos
Uso de CPU, uso de memoria%todos
Descarga / subida de los clientesMbit/sswitch, punto de acceso
Potencia PoEWswitch PoE
Internet, descarga, subida por puerto WAN0 / 1, Mbit/spuerta de enlace

El caudal de los clientes de un switch o de un punto de acceso es la suma de la actividad en tiempo real de los clientes conectados a él, tal como la indica el controlador — no el tráfico de su enlace ascendente.

Cliente de la red (un teléfono, un portátil…): una función Presencia (presence-sensor, sí/no). Vale 1 mientras el cliente está conectado y pasa a 0 cuando lleva ausente más tiempo que el retardo de salida. Un controlador que no responde nunca hace salir a nadie: la presencia solo se evalúa en una lectura correcta. Los clientes añadidos permanecen en la pestaña Descubrir incluso cuando están ausentes.

Todo es de solo lectura: los comandos son acciones (véase más abajo), a propósito nunca interruptores que un asistente de voz o un clic desafortunado pudieran accionar.

Widget​

Red Omada: mosaicos para los clientes (total, Wi-Fi, por cable) y la descarga y subida de Internet; después el estado de cada puerto WAN (con su dirección IP pública), el número de equipos Omada en línea y el nombre de los que están fuera de línea. Muestra la última lectura y se actualiza con ella.

Disparadores de escena​

DisparadorFiltrosVariables
Nuevo cliente de red desconocidoconexión (Wi-Fi / por cable), SSID, red de invitadosnombre, dirección MAC, dirección IP, SSID, conexión, conectado a
Equipo Omada fuera de líneaequipo, tipo (puerta de enlace, switch, punto de acceso)nombre del equipo, modelo, tipo
WAN caída o restablecidacambio (Internet perdido / restablecido), puerta de enlacecambio, puerto WAN, puerta de enlace, dirección IP WAN
  • Nuevo cliente desconocido se dispara con una dirección MAC nunca vista en el sitio. La primera lectura tras la instalación solo aprende los clientes ya presentes; las direcciones MAC conocidas se guardan en /data (solo direcciones MAC, nada más).
  • Equipo fuera de línea cubre todos los equipos Omada del sitio, incluso los que no se han añadido a Gladys, y da su nombre para la notificación.
  • Solo las transiciones disparan: un reinicio de Gladys, de la integración o del controlador nunca dispara nada.

Comandos​

Solo en el modo Open API, cada uno activado en la configuración. Disponibles como botones de la pantalla de configuración y como acciones de escena:

  • PoE de un puerto de switch: elija el switch, el número de puerto y activado / desactivado. El puerto recibe una sustitución de perfil en el controlador, porque el PoE de un puerto que sigue su perfil no puede cambiar. Atención: cortar el PoE apaga lo que alimenta el puerto — una cámara de seguridad, un punto de acceso, un teléfono. Resérvelo para lo que realmente quiera apagar (un punto de acceso por la noche, un dispositivo que reiniciar), nunca para una cámara que protege la casa.
  • Reiniciar un equipo Omada: el equipo queda fuera de línea unos minutos.
  • Activar o desactivar un SSID: escriba el nombre de la red (por ejemplo Invitados); se activa o desactiva en todos los puntos de acceso que lo emiten.

Cada comando escribe una línea en los registros de la integración.

Ejemplos de escenas​

  • Nadie en casa: cuando la presencia de todos los teléfonos vale 0, poner la casa en modo ausente, apagar las luces, armar la alarma.
  • Wi-Fi de invitados con horario: cada día a las 8:00, acción de escena Activar o desactivar un SSID → Invitados, activado; a las 23:00, desactivado.
  • Internet caído: disparador WAN caída o restablecida, cambio Internet perdido → enviar un mensaje «{{triggerEvent.data.port_name}} ha perdido Internet».
  • Intruso en el Wi-Fi: disparador Nuevo cliente de red desconocido, SSID Casa → enviar un mensaje con {{triggerEvent.data.name}} y {{triggerEvent.data.ip}}.
  • Punto de acceso apagado por la noche: a las 0:30, PoE de un puerto de switch desactivado para el puerto del punto de acceso del jardín; a las 7:00, activado.

Solución de problemas​

  • «certificado rechazado»: active Aceptar un certificado autofirmado.
  • «credenciales rechazadas»: compruebe el ID y el secreto de cliente (Open API) o el usuario y la contraseña (cuenta local). Una aplicación Open API eliminada o modificada en el controlador recibe un nuevo secreto.
  • «sitio no encontrado»: el mensaje enumera los sitios visibles con esas credenciales; copie el nombre.
  • «acceso denegado»: dé a la aplicación Open API (o a la cuenta) acceso al sitio; para los comandos, un rol autorizado a modificar el sitio.
  • «no responde como un controlador Omada»: compruebe el puerto (8043 para el Software Controller) y que la Open API existe (controlador 5.9 o posterior).
  • Un comando responde con un error en un switch: algunos switches (serie Agile) rechazan el comando PoE de la Open API; se muestra el mensaje del controlador.
  • Más detalles: ponga la variable de entorno LOG_LEVEL en debug. Los registros nunca contienen un secreto.

Límites​

  • Desarrollada sin el hardware: la forma de las solicitudes procede de la guía de acceso de la Open API y de clientes que funcionan con controladores reales; los comentarios desde el terreno son bienvenidos.
  • El modo de cuenta local solo lee: los comandos necesitan la Open API.
  • La presencia sigue al Wi-Fi: un teléfono que deja el Wi-Fi en reposo profundo más tiempo que el retardo se considera fuera. Aumente el retardo si es necesario.
  • Los teléfonos con una dirección MAC privada (aleatoria) por red son un cliente nuevo en cada red a la que se unen.
  • El caudal de los clientes de un switch o de un punto de acceso es la suma de la actividad de sus clientes, no un contador de puerto. Las velocidades WAN son las que indica el controlador.
  • Gladys fija los nombres de las funciones al añadir un dispositivo: cambie el idioma antes de añadirlos.
  • Un puerto WAN de la puerta de enlace que aparece más tarde (una WAN nueva) muestra un botón «Actualizar» en la pestaña Descubrir.

Parámetros de configuración​

Estos son los parámetros que TP-Link Omada te pide en su pantalla de configuración en Gladys.

ParámetroTipoObligatorioDescripción
Controlador OmadasectionNoSoftware Controller, OC200 u OC300. Recomendado: la Open API (controlador 5.9 o posterior), con una aplicación creada en Vista global > Ajustes > Integración de plataforma > Open API, en modo cliente. El modo de cuenta local solo lee.
Dirección del controladorstringSíCon el puerto: 8043 para el Software Controller, ninguno para un OC200 u OC300.
Modo de conexiónselectSí
ID de cliente de la Open APIstringNo
Secreto de cliente de la Open APIsecretNo
Usuario de la cuenta localstringNoSolo en el modo de cuenta local: una cuenta de administrador dedicada del controlador.
Contraseña de la cuenta localsecretNo
SitiostringNoNombre del sitio Omada, tal como aparece en el controlador.
Aceptar un certificado autofirmadobooleanNoEl controlador viene con un certificado autofirmado: active esta opción, salvo que haya instalado uno de confianza.
Omada ID (controlador en la nube)stringNoDéjelo vacío para un controlador local. Para un controlador en la nube: el Omada ID de su página Open API, con su dirección Open API arriba.
Presencia y actualizaciónsectionNoLos clientes en línea aparecen en la pestaña Descubrir: añada los teléfonos que desee seguir, cada uno se convierte en un sensor de presencia.
Ofrecer los clientes de la red en DescubrirbooleanNo
Retardo de salida (minutos)numberNoTiempo que un cliente debe estar ausente antes de considerarlo fuera (un teléfono en reposo deja el Wi-Fi un rato).
Intervalo de actualizaciónselectNo
Comandos (desactivados por defecto)sectionNoSolo en el modo Open API, con una aplicación autorizada a escribir. Cortar el PoE de un puerto apaga lo que alimenta: una cámara de seguridad, un punto de acceso. Active solo lo que necesiten sus escenas.
Permitir el control del PoEbooleanNo
Permitir los reiniciosbooleanNo
Permitir el control de los SSIDbooleanNo
Idioma de los nombres de las funcionesselectNoTambién se usa para los mensajes de la integración. Los nombres se fijan al añadir un dispositivo.
  1. En Gladys, abre Integraciones: TP-Link Omada aparece en el catálogo junto a las integraciones nativas, con una insignia de comunidad.
  2. Haz clic en Instalar. Gladys descarga la imagen Docker (ghcr.io/guim31/gladys-omada: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).
  3. Abre la pantalla de Configuración de la integración, rellena los parámetros y guarda.
  4. También puedes instalarla directamente desde la URL de su repositorio: https://github.com/guim31/gladys-omada.

TP-Link Omada 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​

TP-Link Omada 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.

Suscríbete a la newsletter de Gladys Assistant

Unos pocos correos al mes sobre nuevas versiones y novedades del proyecto. Enviados por Pierre-Gilles Leymarie, fundador del proyecto. Puedes darte de baja cuando quieras 🙂