Saltar al contenido principal

Integración domótica Notifications Android/Fire TV, gratuita y de código abierto

Integración Notifications Android/Fire TV para Gladys Assistant

Muestre notificaciones en su Android TV o Fire TV: mensajes, foto del timbre, alertas.

Muestre notificaciones en su televisor desde Gladys: un mensaje sobre la película, con una imagen si lo desea. El gran clásico: llaman al timbre y la foto del visitante aparece en el televisor. También: la lavadora ha terminado, aún hay una ventana abierta a la hora de dormir, «¡A comer!» enviado desde la tableta de la cocina.

Basta con una aplicación de notificaciones gratuita instalada en el televisor: Notifications for Android TV (Android TV, Google TV, Nvidia Shield…), Notifications for Fire TV (Amazon Fire TV y Fire TV Stick), PiPup o TvOverlay. Cada televisor se convierte en un dispositivo de Gladys que indica si está encendido (su aplicación responde): así una escena puede elegir entre el televisor y un móvil.

Desarrollada sin el hardware: sus comentarios son bienvenidos. La integración está cubierta por pruebas automáticas frente a aplicaciones simuladas, pero aún no se ha probado con un televisor real en una instalación real de Gladys. Cuéntenos en el foro de Gladys cómo funciona con el suyo.

Esta integración no está afiliada a los autores de estas aplicaciones, ni a Google ni a Amazon.

Lo que obtiene​

  • Un dispositivo por televisor, con una función, Accesible (sensor de presencia, sí/no): sí cuando la aplicación de notificaciones del televisor responde, es decir, en la práctica, cuando el televisor está encendido.
  • Una acción de escena, Mostrar una notificación en el televisor: título, mensaje (variables de escena aceptadas), duración en pantalla, posición, color de fondo, transparencia, icono y una imagen descargada de la URL de instantánea de una cámara. Indica a la escena si la notificación se ha mostrado.
  • Un widget del panel, Mensaje en la TV: el estado del televisor, un botón Escribir un mensaje que abre un pequeño formulario, y hasta tres mensajes rápidos, un toque cada uno.
  • Tres botones en la configuración: añadir o modificar un televisor, eliminar un televisor, enviar una notificación de prueba.

Requisitos​

  • Gladys Assistant 5.2.0 o posterior (el formulario del widget lo necesita).
  • Un televisor con Android TV, Google TV o Fire OS, en la misma red local que Gladys.
  • Una de las aplicaciones de notificaciones instalada y abierta una vez en el televisor (siguiente sección).
  • La dirección del televisor: una dirección IP (mejor fija: resérvela en los ajustes DHCP de su router) o un nombre DNS. Los nombres .local (mDNS) no se resuelven en la integración.

Instalar la aplicación en el televisor​

Android TV, Google TV, Nvidia Shield​

Instale Notifications for Android TV desde la Google Play Store del televisor (busque «Notifications for Android TV») y ábrala una vez: muestra la dirección IP del televisor y pide permiso para mostrarse sobre otras aplicaciones. Deje la aplicación instalada: sigue escuchando en segundo plano en el puerto 7676. Compruebe en su ficha de la tienda qué opciones incluye su versión gratuita.

Fire TV​

Instale Notifications for Fire TV desde la Amazon Appstore del Fire TV y ábrala una vez. Es la misma aplicación para el Fire TV, con el mismo protocolo: elija «Notifications for Android TV / Fire TV» en Gladys.

PiPup o TvOverlay en su lugar​

  • PiPup (puerto 7979) es una alternativa de código abierto. Instalada fuera de la Play Store, necesita el permiso para mostrarse sobre otras aplicaciones, concedido una vez por ADB: adb shell appops set nl.rogro82.pipup SYSTEM_ALERT_WINDOW allow.
  • TvOverlay (puerto 5001), de la Play Store, necesita el mismo permiso (el mismo comando ADB con com.tabdeveloper.tvoverlay). El aspecto de sus notificaciones (colores, diseño) se elige en la propia aplicación.

Nuestras integraciones Android TV Remote y Android TV ADB controlan el televisor (encendido, volumen, aplicaciones); esta muestra mensajes en él. Funcionan una al lado de la otra en el mismo televisor. Si ADB ya está configurado para la segunda, el comando anterior se envía desde su ordenador con el mismo acceso ADB.

Configuración​

Ajustes​

AjustePor defectoUso
IdiomaFrançaisnombres de las funciones, mensajes de las acciones, texto de la notificación de prueba
Comprobar los televisores cada30 sfrecuencia con la que la integración comprueba que cada televisor responde
Inaccesible tras1 minutotiempo sin respuesta antes de indicar un televisor como inaccesible (el Wi-Fi pierde una comprobación)

Una comprobación es una conexión a la aplicación del televisor: no aparece nada en la pantalla, y el televisor no se despierta. Las aplicaciones no tienen cuenta ni cuota: la integración solo habla con ellas en su red local, nunca por Internet.

Añadir un televisor​

  1. En Integraciones → Notifications Android/Fire TV → Configuración, rellene Añadir o modificar un televisor: un nombre, la dirección IP mostrada por la aplicación y la aplicación instalada. Deje el puerto vacío, salvo si lo ha cambiado en la aplicación.
  2. La respuesta indica si la aplicación responde. Si no, encienda el televisor, abra la aplicación una vez y vuelva a lanzar la acción.
  3. Abra la pestaña Descubrir y cree el dispositivo del televisor.

La misma acción con el mismo nombre o la misma dirección actualiza el televisor (nueva dirección, otra aplicación): su dispositivo sigue siendo el mismo. Eliminar un televisor detiene las comprobaciones; elimine también su dispositivo en Gladys si ya no lo necesita.

Probar​

Enviar una notificación de prueba, con el televisor elegido en la lista, muestra un mensaje corto en la pantalla. La respuesta dice lo que ha pasado: mostrada, el televisor no responde, o la aplicación ha rechazado la notificación (aplicación equivocada u otro puerto).

Dispositivos​

Cada televisor es un dispositivo con una función:

FunciónTipo en GladysMuestra
Accesiblesensor de presencia (sí/no)sí cuando la aplicación del televisor responde (está encendido), no en caso contrario

En el panel, Gladys nombra una función que es la única de su tipo con el nombre del tipo: la caja del dispositivo puede mostrar «Presencia» en lugar de «Accesible». El valor es el mismo.

La propia integración actualiza el estado en el intervalo elegido, y lo publica solo cuando cambia (más una vez cada 12 horas, para que el panel nunca muestre «Sin valor reciente»). Una notificación mostrada también marca el televisor como accesible de inmediato.

Algunos televisores mantienen la red activa en reposo: la aplicación puede seguir respondiendo un rato después de apagarse la pantalla. El estado dice «el televisor puede mostrar una notificación», que es lo que necesita una escena.

Widget del panel​

Mensaje en la TV muestra:

  • el estado del televisor (encendido, o apagado o inaccesible);
  • Escribir un mensaje: un toque abre un pequeño formulario (mensaje y duración en pantalla), Enviar lo muestra en el televisor;
  • hasta tres mensajes rápidos, escritos una vez en los ajustes del widget («¡A comer!», «¡A la cama!»), mostrados con un toque.

Ajustes: el televisor (vacío: el primer televisor de la integración) y los tres mensajes rápidos. Tras cada mensaje, una nota breve indica si se ha mostrado.

Acción de escena y disparadores​

Mostrar una notificación en el televisor (categoría «Integraciones» del editor de escenas):

CampoUso
Televisorel televisor (obligatorio)
Títuloopcional; Notifications for Android TV muestra «Gladys» si está vacío
Mensajeel texto (obligatorio); variables de escena aceptadas, p. ej. el nombre de un dispositivo o una temperatura
Duración en pantalla (segundos)de 1 a 300, 10 por defecto
Posiciónuna esquina de la pantalla o su centro (TvOverlay: solo esquinas)
Color de fondonueve colores (no con TvOverlay, que usa su propio diseño)
Transparencia del fondode opaco a totalmente transparente (no con TvOverlay)
Iconotimbre, cámara, paquete, lavadora, comida… (no con PiPup)
URL de una imagenopcional: una imagen descargada en cada notificación, véase más abajo

La acción devuelve Notificación mostrada (1 o 0). Un televisor apagado no es un error: el valor es 0 y la escena continúa, de modo que un paso Continuar solo si puede enviar el mensaje a un móvil en su lugar. Solo un dispositivo de otra integración, o una notificación sin texto, hacen fallar la acción.

La integración no declara ningún disparador de escena: lo que le pasa al televisor es su función Accesible, utilizable en el disparador habitual «cambio de estado de un dispositivo» (el televisor se enciende o se apaga).

Imagen de una cámara​

La integración no puede leer la imagen de un dispositivo cámara de Gladys: Gladys solo da a una integración acceso a sus propios dispositivos. Por eso descarga la imagen desde la URL de instantánea de la cámara, en el momento de la notificación. Ejemplos:

  • la mayoría de las cámaras IP: http://192.168.1.40/snapshot.jpg, o la URL indicada en su manual (Hikvision http://192.168.1.40/ISAPI/Streaming/channels/101/picture, Reolink http://192.168.1.40/cgi-bin/api.cgi?cmd=Snap&channel=0&user=…&password=…);
  • Frigate: http://192.168.1.50:5000/api/front_door/latest.jpg;
  • go2rtc: http://192.168.1.50:1984/api/frame.jpeg?src=front_door.

Se pueden escribir un nombre de usuario y una contraseña en la URL (http://viewer:[email protected]/…): la integración responde con ellos al desafío Basic o Digest de la cámara, y nunca los escribe en sus registros. Una escena es legible por todos los usuarios de Gladys: cree para este uso una cuenta de cámara limitada a la visualización.

La imagen debe ser un JPEG, PNG, GIF o WebP de 4 MB como máximo, descargado en 6 segundos como máximo. Si la descarga falla, la notificación se muestra sin la imagen.

Ejemplos de escenas​

  • Quién está en la puerta: disparador «se pulsa el botón del timbre» → Mostrar una notificación en el televisor con el título «Timbre», el mensaje «Hay alguien en la puerta», el icono de timbre, 30 segundos en pantalla y la URL de instantánea de la cámara de la entrada. La foto del visitante aparece sobre la película.
  • Televisor o móvil: la misma escena, seguida de Continuar solo si «Notificación mostrada» vale 0, y después Enviar un mensaje a su móvil: cuando el televisor está apagado, el móvil toma el relevo.
  • Colada terminada: disparador «la potencia del enchufe de la lavadora baja de 5 W» → notificación «La colada ha terminado» con el icono de lavadora, solo si la función Accesible del televisor vale sí.
  • A dormir: a las 21 h los días de colegio → notificación «¡A la cama en 10 minutos!» en el centro de la pantalla, en ámbar.

Solución de problemas​

  • «no responde»: el televisor está apagado, en reposo profundo, o la aplicación no se está ejecutando. Abra la aplicación una vez en el televisor; en algunos televisores, permita su inicio en segundo plano o desactive la optimización de batería para ella. Compruebe la dirección IP mostrada por la aplicación.
  • «ha rechazado la notificación (HTTP 404 o 400)»: otra aplicación responde en ese puerto. Compruebe la aplicación elegida en Añadir o modificar un televisor, y el puerto si lo ha cambiado en la aplicación.
  • Nada en la pantalla pero «mostrada»: la aplicación no tiene permiso para mostrarse sobre otras aplicaciones (véase el comando ADB anterior), o una aplicación a pantalla completa oculta las superposiciones.
  • Sin imagen: abra la URL de instantánea en el navegador de un ordenador de la misma red; compruebe el nombre de usuario y la contraseña, y los registros de la integración (un aviso por URL que falla, contraseña oculta).
  • El estado sigue inaccesible con el televisor encendido: la máquina de Gladys y el televisor deben estar en la misma red, sin aislamiento de clientes (el Wi-Fi de invitados suele bloquearlo).
  • Más detalles: configure LOG_LEVEL=debug en la integración para ver cada comprobación y cada notificación.

Límites​

  • Solo red local: la integración habla con la aplicación del televisor por HTTP en su red; sin nube, sin cuenta.
  • Sin imagen de un dispositivo cámara de Gladys en sí (véase más arriba): hace falta una URL de instantánea.
  • Las aplicaciones difieren: sin colores, transparencia ni posición central con TvOverlay, sin icono con PiPup.
  • Sin lectura de lo que muestra el televisor ni control del televisor: para ello están nuestras integraciones Android TV Remote y Android TV ADB.
  • Las notificaciones se muestran sobre la mayoría de los contenidos, pero algunas aplicaciones protegidas o a pantalla completa pueden ocultarlas.
  • Aún no probada en televisores reales (véase la nota del principio): sus comentarios son bienvenidos.

Parámetros de configuración​

Estos son los parámetros que Notifications Android/Fire TV te pide en su pantalla de configuración en Gladys.

ParámetroTipoObligatorioDescripción
Sus televisoressectionNoInstale una aplicación de notificaciones en cada televisor («Notifications for Android TV» o «for Fire TV», PiPup, TvOverlay) y ábrala una vez: muestra la dirección del televisor. Añádalo con «Añadir o modificar un televisor» y cree su dispositivo en la pestaña Descubrir.
IdiomaselectNoIdioma de los nombres de las funciones, de los mensajes de las acciones y de la notificación de prueba.
Comprobar los televisores cadaselectNoUna conexión a la aplicación de notificaciones de cada televisor: no aparece nada en la pantalla.
Inaccesible trasselectNoTiempo sin respuesta antes de indicar un televisor como inaccesible. Un televisor en Wi-Fi a veces pierde una comprobación.

Cómo instalar Notifications Android/Fire TV en Gladys​

  1. En Gladys, abre Integraciones: Notifications Android/Fire TV 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-tv-notify: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-tv-notify.

Notifications Android/Fire TV requiere Gladys >=5.2.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​

Notifications Android/Fire TV 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 🙂