Saltar al contenido principal

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

Integración Hyperion para Gladys Assistant

Iluminación ambiental de TV Hyperion.ng: encendido, color, efectos, captura Ambilight.

Controle su iluminación ambiental Hyperion.ng desde Gladys: la tira LED detrás del televisor, gobernada por una Raspberry Pi (o cualquier ordenador con Hyperion) que copia los colores de la imagen — el efecto «Ambilight».

Desarrollada sin el hardware: sus comentarios son bienvenidos. Esta integración se ha escrito y probado a partir de la documentación de la API JSON de Hyperion, del código de Hyperion.ng y de las respuestas reales de servidor publicadas por la biblioteca hyperion-py, no con un servidor Hyperion real. Cuéntenos lo que funciona y lo que no en el foro de Gladys o en las issues de GitHub.

Esta integración no está afiliada al proyecto Hyperion.

Lo que obtiene​

  • Un dispositivo Gladys por instancia de Hyperion. Una instancia es una salida LED configurada en Hyperion (la mayoría de las instalaciones tienen una; una segunda puede controlar una tira WLED, un puente Hue…).
  • En cada dispositivo:
    • Luz: encendido/apagado de la instancia;
    • Brillo (0-100 %), Color (un color fijo);
    • Efecto: los efectos de su servidor (los incluidos y los suyos), o «Ninguno»;
    • Ambilight: encendido cuando los LED siguen la imagen (captura de pantalla o captura USB);
    • Mostrando ahora: un texto que indica lo que muestran los LED (Ambilight, un efecto, un color, apagado…);
    • un interruptor por componente de su instancia: salida LED, captura de pantalla, captura USB, captura de audio, suavizado, detección de bandas negras.
  • Tres acciones de escena: iniciar un efecto, mostrar un color (ambos durante un tiempo dado si lo desea), volver al Ambilight.
  • Un widget de panel: lo que muestra la luz, y botones de un toque (Ambilight, dos efectos a su elección, encendido/apagado).

Los cambios hechos en otro lugar (interfaz web de Hyperion, mando, otra domótica) aparecen en Gladys en menos de un segundo: Hyperion los envía.

Requisitos​

  • Gladys Assistant 5.1.0 o posterior.
  • Un servidor Hyperion.ng (versión 2.0 o posterior) en la misma red local que Gladys, con su servidor JSON activado (lo está por defecto, en el puerto 19444). El antiguo Hyperion «clásico» (anterior a 2.0) no es compatible.
  • HyperHDR habla la misma API JSON y también debería funcionar, introduciendo su dirección a mano (no probado).
  • Sin cuenta, sin nube: todo se queda en su red.

Instalación y configuración​

  1. En Gladys, abra Integraciones, luego Instalar desde GitHub, e indique https://github.com/guim31/gladys-hyperion.
  2. Abra la pestaña Configuración de la integración. Nada es obligatorio: con los ajustes por defecto, Gladys busca sus servidores Hyperion en la red.
  3. Abra la pestaña Descubrir: aparece un dispositivo por instancia de Hyperion. Añada los que desee.

Ajustes​

AjusteQué hace
Direcciones IP de los servidoresOpcional. Solo para un servidor que el descubrimiento automático no encuentra (otra subred, SSDP/mDNS bloqueados). Sepárelas con comas; añada el puerto de la API JSON si no es 19444 (192.168.1.20:19445).
Token de APIOpcional. Solo si Hyperion pide un token y usted mismo ha creado uno. El botón Solicitar un token lo hace por usted.
Prioridad de GladysLa prioridad que usa Gladys para sus colores y efectos (1 a 253, 128 por defecto). Hyperion muestra la fuente con el número más bajo: 128 pasa por delante de las capturas de pantalla y USB (240 y 250 por defecto).
Idioma de los nombres de las funcionesEl idioma de los nombres dados a las funciones de los dispositivos nuevos, y del texto «Mostrando ahora». Un dispositivo conserva los nombres con los que se creó.

Descubrimiento automático​

Hyperion se anuncia en la red (SSDP y mDNS). La integración funciona en un contenedor que no puede oír esos anuncios: pide a Gladys que los escuche por ella (descubrimiento mediado). Si no encuentra nada, el botón Buscar servidores le indica por qué; introduzca entonces la dirección IP del servidor en la configuración.

Una vez conocido, un servidor se sigue por su identificador (el que Hyperion muestra en su información del sistema), no por su dirección: si cambia de dirección IP, la siguiente búsqueda lo vuelve a encontrar y sus dispositivos se conservan.

Cuando Hyperion pide un token​

Por defecto, Hyperion no pide nada en la red local. Si usted ha activado la autenticación de la API local en Hyperion (página Servicios de red), Gladys indica «Hyperion pide un token». Entonces:

  1. haga clic en Solicitar un token en la configuración de la integración;
  2. en 90 segundos, abra la interfaz web de Hyperion: muestra una solicitud llamada Gladys Assistant. Acéptela.

El token se guarda en la carpeta de datos de la integración y se usa a partir de entonces. También puede crear usted mismo un token en Hyperion (gestión de tokens) y pegarlo en el ajuste Token de API.

Los dispositivos​

Luz, brillo, color​

  • Luz enciende o apaga la instancia (el interruptor principal de Hyperion para esa instancia). Encender una instancia detenida en Hyperion la inicia.
  • Brillo es el ajuste de brillo de Hyperion (el mismo que en su interfaz web). Ajustarlo enciende la luz; 0 la apaga.
  • Color muestra un color fijo con la prioridad de Gladys: cubre el Ambilight hasta que usted vuelva a él. Mientras funciona un efecto o el Ambilight, el color mostrado en Gladys es el último ajustado.

Efecto​

La lista contiene los efectos de su servidor, incluidos los suyos. Elegir uno lo inicia con la prioridad de Gladys; elegir Ninguno quita lo que Gladys mostraba (color o efecto), y la imagen vuelve.

Ambilight​

Encendido cuando los LED siguen la imagen (captura de pantalla o captura USB).

  • Encenderlo quita los colores y efectos mostrados sobre la imagen — los de Gladys, pero también los de otra aplicación (interfaz web de Hyperion, otra domótica) — y vuelve a activar la captura si el interruptor la había desactivado.
  • Apagarlo desactiva las capturas de vídeo (pantalla y USB). La integración recuerda cuáles estaban activadas, para volver a activar las mismas después.

Mostrando ahora​

Un texto que indica lo que muestran los LED: «Ambilight (captura USB)», «Efecto: Rainbow swirl», «Color #FF8800», «Apagado», «Nada», u otra fuente (por ejemplo un cliente Kodi o HyperHDR).

Interruptores de componentes​

Un interruptor por componente de su instancia: salida LED, captura de pantalla, captura USB, captura de audio (Hyperion 2.1), suavizado, detección de bandas negras. Hacen exactamente lo mismo que los interruptores de la interfaz web de Hyperion. Los componentes de red (forwarder, servidor Boblight) no se ofrecen.

Widget​

Añada el widget Hyperion a un panel. Muestra el nombre de la instancia, su brillo (en directo) y lo que muestra ahora, con botones:

  • Ambilight: volver a la imagen (como el interruptor);
  • dos efectos elegidos en los ajustes del widget;
  • Apagar / Encender.

La opción activa lleva un icono ✓. En los ajustes, elija el dispositivo (por defecto, el primer dispositivo Hyperion añadido a Gladys) y los efectos de los botones (se usan los dos primeros elegidos).

Acciones de escena​

AcciónAjustesResultado para las acciones siguientes
Iniciar un efecto HyperionDispositivo; un efecto de la lista, o el nombre exacto de otro efecto; duración en minutos (opcional)Nombre del efecto
Mostrar un color en HyperionDispositivo; color (#FF8800 o 255, 136, 0); duración en minutos (opcional)Color mostrado
Volver al AmbilightDispositivo—

Con una duración, Hyperion quita por sí mismo el efecto o el color una vez transcurrido el tiempo, y la imagen vuelve — aunque Gladys se reinicie mientras tanto. Sin duración, se quedan hasta que algo los sustituya.

Encender y apagar, el brillo y el color también están disponibles como las acciones de escena habituales de Gladys sobre las funciones del dispositivo.

La integración no dispara ningún desencadenante de escena propio: use el desencadenante habitual «el valor de un dispositivo cambia» sobre las funciones (Luz, Ambilight, Mostrando ahora…).

Ejemplos de escenas​

  • Timbre: cuando suena el timbre, Iniciar un efecto Hyperion «Notify blue» durante 1 minuto — la luz del televisor parpadea en azul y luego el Ambilight vuelve solo.
  • Noche de cine: a las 21 h, o cuando se enciende el televisor, Volver al Ambilight y ajustar el brillo al 60 %.
  • Alarma: cuando salta la alarma, Mostrar un color en Hyperion #FF0000 durante 5 minutos.
  • Buenas noches: a medianoche, si la Luz sigue encendida, apagarla.

Actualización y red​

  • Una conexión TCP por instancia en marcha hacia la API JSON del servidor (puerto 19444), que se mantiene abierta: Hyperion envía cada cambio en el momento en que se produce.
  • Cada minuto, la integración también vuelve a leer cada instancia (para recuperar una actualización perdida o una conexión muda) y vuelve a conectar lo que se ha caído. Un servidor que no responde se busca de nuevo cada 30 minutos.
  • Gladys solo recibe los valores que cambian, más todos los valores una vez cada 12 horas (para no mostrar nunca «Sin valor reciente»).
  • Todo se queda en su red local: sin servicio en la nube, sin cuenta, sin cuota.

Solución de problemas​

  • Ningún dispositivo en la pestaña Descubrir: haga clic en Buscar servidores en la configuración y lea el informe. Si el descubrimiento automático no está disponible o no encuentra nada, introduzca la dirección IP del servidor. Compruebe en Hyperion (Servicios de red) que el servidor JSON está activado, y su puerto.
  • «Hyperion pide un token»: vea «Cuando Hyperion pide un token». Un token eliminado en Hyperion se rechaza: solicite uno nuevo.
  • «El servidor Hyperion no responde»: la Raspberry Pi está apagada, ha cambiado de dirección o el puerto del servidor JSON ha cambiado. La integración lo reintenta cada minuto y vuelve a buscar en la red cada 30 minutos.
  • Un color ajustado en Gladys no se muestra: otra fuente tiene un número de prioridad más bajo (la interfaz web de Hyperion, otra aplicación). Baje la prioridad de Gladys en la configuración, o use primero Volver al Ambilight.
  • No aparecen efectos nuevos o una instancia nueva: abra la pestaña Descubrir y actualice el dispositivo («Actualizar»). Los nombres de las funciones nunca cambian una vez creado el dispositivo.
  • Registros: la integración solo escribe lo que cambia (un servidor encontrado, perdido o recuperado, una orden). Ponga la variable de entorno LOG_LEVEL en debug para verlo todo. Los tokens nunca se escriben en los registros.

Limitaciones​

  • Desarrollada sin el hardware: probada solo con un servidor simulado (vea el principio de esta página).
  • Solo Hyperion.ng 2.0 o posterior; HyperHDR no probado.
  • El interruptor Ambilight conoce la captura de pantalla y la captura USB; la captura de audio (Hyperion 2.1) es un interruptor aparte.
  • Las listas de efectos de la acción de escena y de los ajustes del widget son los efectos incluidos con Hyperion (Gladys no puede leer allí su servidor): para uno de sus propios efectos, escriba su nombre exacto en la acción de escena.
  • Encender el Ambilight quita los colores y efectos de todas las aplicaciones, no solo los de Gladys.
  • Una instancia detenida conserva las funciones que tenía la última vez que funcionó.
  • Sin vista previa de vídeo de los LED, sin edición de la configuración de Hyperion (disposición de los LED, ajustes de captura): use la interfaz web de Hyperion.

Créditos​

La API JSON de Hyperion.ng (MIT) y la biblioteca hyperion-py de Dermot Duffy (MIT), usada por la integración de Home Assistant: sus pruebas aportaron las respuestas reales de servidor que usan las pruebas de esta integración. Esta integración no está afiliada al proyecto Hyperion. Hyperion es una marca de sus propietarios.

Parámetros de configuración​

Estos son los parámetros que Hyperion te pide en su pantalla de configuración en Gladys.

ParámetroTipoObligatorioDescripción
Encontrar su HyperionsectionNoLos servidores Hyperion.ng de la misma red que Gladys se encuentran automáticamente: abra la pestaña Descubrir. Si falta el suyo, introduzca su dirección IP a continuación. Si Hyperion pide un token (autenticación de la API local), use el botón «Solicitar un token» de abajo y acepte la solicitud en la interfaz web de Hyperion.
Direcciones IP de los servidoresstringNoOpcional, separadas por comas, con el puerto de la API JSON si no es 19444 (192.168.1.20:19444). Solo para los servidores que el descubrimiento automático no encuentra.
Token de API (opcional)secretNoSolo si Hyperion pide uno y usted mismo lo ha creado (Servicios de red, Gestión de tokens). El botón «Solicitar un token» lo hace por usted.
Prioridad de GladysnumberNoHyperion muestra la fuente con el número más bajo. 128 pasa por delante de las capturas (240 y 250 por defecto) y queda por detrás de la interfaz web de Hyperion.
Idioma de los nombres de las funcionesselectNoNombres dados a las funciones de los nuevos dispositivos (Luz, Brillo, Efecto…) e idioma del texto «Mostrando ahora».

Cómo instalar Hyperion en Gladys​

  1. En Gladys, abre Integraciones: Hyperion 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-hyperion: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-hyperion.

Hyperion 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​

Hyperion 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 🙂