Saltar al contenido principal

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

Integración OwnTone para Gladys Assistant

Servidor musical OwnTone: reproductor, salidas AirPlay y Chromecast, listas, volumen por sala.

Esta integración controla un servidor OwnTone (antes forked-daapd) desde Gladys: el reproductor (reproducir, pausa, siguiente, volumen, lo que suena) y cada salida, altavoces AirPlay y Chromecast o el audio local, que usted enciende y apaga y cuyo volumen ajusta sala por sala. Habla con OwnTone en la red local, mediante su API JSON, y sigue cada cambio en directo por su WebSocket. Sin nube, sin cuenta.

Probada con un OwnTone 29.3 real en Docker, sin altavoces AirPlay ni Chromecast: sus comentarios son bienvenidos. La reproducción, los volúmenes, la selección de salidas, las notificaciones y el reinicio de OwnTone se comprobaron de verdad, con sus salidas local y fifo, así como el reproductor Música de Gladys 5.3 (carátulas, cola, búsqueda, navegación, aleatorio, repetición, avance).

Requisitos​

  • Gladys Assistant 5.3 o posterior (la versión 1.0 de la integración sigue para Gladys 5.1 y 5.2).
  • Un servidor OwnTone (versión 28 o posterior) accesible desde Gladys en el puerto de su interfaz web, 3689 por defecto, y en su puerto WebSocket (websocket_port en owntone.conf, 3688 por defecto).
  • Gladys en las trusted_networks de owntone.conf, o el admin_password de OwnTone introducido en la configuración.

Configuración​

  1. Dirección del servidor: la dirección IP o el nombre de host del equipo que ejecuta OwnTone, como para su interfaz web. Añada :puerto si no es el 3689 (http://192.168.1.20:3689 también se acepta).
  2. Puerto: 3689, salvo si cambió port en la sección library de owntone.conf.
  3. Contraseña de administración (opcional): solo si Gladys está fuera de las trusted_networks de OwnTone. Por defecto, OwnTone confía en la red local y no pide contraseña.
  4. Idioma: el idioma de los nombres de las funciones y de los textos que escribe la integración. Los nombres de las funciones se fijan al añadir el dispositivo.

Abra después la pestaña Descubrir y añada el reproductor y las salidas que desee.

Dispositivos​

Reproductor​

El reproductor de OwnTone, uno por servidor:

  • Volumen (0 a 100): el volumen general. OwnTone ajusta a él cada salida seleccionada.
  • Estado de reproducción: en pausa (0), reproduciendo (1) o detenido (2); también se controla.
  • Título, Artista, Álbum, Carátula, Duración y Posición de la pista actual; la posición se puede cambiar (avanzar o retroceder en la pista).
  • Reproducción aleatoria y Repetición (desactivada, todo, una pista), ambas controlables.
  • Reproducir, Pausa, Anterior, Siguiente: botones.
  • Reproduciendo: título y artista, con el estado cuando está en pausa o detenido.

Estas funciones pertenecen a la categoría Música de Gladys: el cuadro Música del panel controla el reproductor.

Salidas​

Un dispositivo por salida de OwnTone: altavoz AirPlay o Chromecast, audio local (ALSA, PulseAudio), fifo.

  • Seleccionada: encendida, OwnTone reproduce en esta salida; apagada, no. Encender un altavoz durante la reproducción lo añade enseguida al grupo.
  • Volumen (0 a 100): el volumen de esta salida.

Una salida que abandona OwnTone (altavoz apagado, fuera de la red) aparece como no seleccionada y conserva su dispositivo en Gladys; vuelve por sí sola.

Reproductor Música de Gladys 5.3​

Desde Gladys 5.3, el cuadro Música del panel es un verdadero reproductor, y OwnTone lo llena por completo:

  • la carátula, el título, el artista y el álbum, una barra de progreso que se arrastra para avanzar, reproducción y pausa, anterior, siguiente, reproducción aleatoria, repetición y el volumen general;
  • la cola (botón lista): la cola de OwnTone en el orden en que suena (mezclada mientras la reproducción aleatoria está activa), la pista actual resaltada; un toque reproduce otra;
  • la búsqueda y la navegación (botón lupa): la búsqueda abarca las pistas, artistas, álbumes y listas de la biblioteca; la navegación ofrece Listas de reproducción, Artistas, Álbumes y Archivos (las carpetas de la biblioteca). Un toque reproduce el elemento en lugar de la cola; el gesto secundario lo añade después de la pista actual o al final de la cola. Una carpeta se abre, no se reproduce.

La acción de escena Reproducir música en un altavoz de Gladys elige una lista, un álbum, un artista o una pista en el mismo panel. Elegida en el reproductor, suena en las salidas ya seleccionadas; elegida en una salida, hace de esa salida la única seleccionada y luego inicia la música.

Un reproductor añadido con la versión 1.0 funciona como antes, sin las nuevas funciones: abra la pestaña Descubrir de la integración y pulse Actualizar en el reproductor (Gladys lo propone porque las funciones cambiaron). Las nuevas funciones se añaden; las antiguas conservan sus escenas y paneles. Un cambio: Estado de reproducción vale 2 en lugar de 0 cuando OwnTone está detenido o sin conexión.

Las carátulas vienen de OwnTone, que las ajusta él mismo al tamaño pedido (400 píxeles para el reproductor, 128 para las listas): incluso una carátula de varios megabytes en el disco se muestra.

Widget del panel​

OwnTone: lo que suena (título, artista, álbum), el estado y el volumen del reproductor, las salidas con su volumen (o «Apagada»), y cuatro botones: reproducir o pausa, siguiente, bajar el volumen, subir el volumen (de 5 en 5).

Disparadores de escena​

  • Reproducción iniciada: OwnTone empieza a reproducir. Variables: título, artista, álbum.
  • Reproducción detenida: OwnTone deja de reproducir, en pausa o detenido, durante 5 segundos al menos (OwnTone indica «pausa» un instante en cada cambio de pista). Filtro: en pausa, detenida, o ambos. Variables: título, artista, álbum.
  • Salida desaparecida: una salida abandona OwnTone. Filtro: una salida, o todas. Variable: el nombre de la salida.
  • Salida aparecida: una salida llega (o vuelve) a OwnTone. Filtro: una salida, o todas. Variable: el nombre de la salida.

Acciones de escena​

  • Reproducir una lista: sustituye la cola por una lista de reproducción de OwnTone y la reproduce. Escriba su nombre (sin importar mayúsculas ni acentos; basta una parte del nombre cuando solo coincide una lista) o una URI (library:playlist:8, spotify:playlist:…, la dirección de una radio por internet). Con hasta tres salidas elegidas, solo suenan ellas; sin salida, las salidas quedan como están. Salida: el nombre de la lista reproducida.
  • Ajustar el volumen: de una salida (una sala), o del reproductor (todas las salidas seleccionadas lo siguen).
  • Detener todo: detiene la reproducción; o la detiene y apaga todas las salidas, lo que libera los altavoces AirPlay para otras apps.

Ejemplos de escenas​

  • Despertar con música: a las 7:00 entre semana, «Reproducir una lista» Mañana en el altavoz del dormitorio, y después «Ajustar el volumen» de esa salida a 25.
  • Salir de casa: cuando la casa se queda vacía, «Detener todo» apagando todas las salidas.
  • La luz sigue la música: con «Reproducción iniciada» después de la puesta de sol, atenuar el salón; con «Reproducción detenida», volver a encenderlo.

Solución de problemas​

  • «El servidor OwnTone no responde»: compruebe la dirección y el puerto, y que la interfaz web se abra desde otro dispositivo de la red.
  • «OwnTone rechaza la contraseña»: introduzca el admin_password de owntone.conf. OwnTone lo exige para cualquier dirección fuera de sus trusted_networks.
  • «OwnTone rechaza a Gladys»: OwnTone no tiene admin_password y no confía en la red de Gladys: defina uno, o añada esa red a trusted_networks.
  • Los estados solo llegan cada 5 segundos: el puerto WebSocket de OwnTone (3688) no es accesible, o websocket_port vale 0. La integración lee entonces OwnTone cada 5 segundos. Los registros lo indican al conectarse.
  • «OwnTone no pudo usar esta salida»: el altavoz está apagado, ocupado por otra fuente, o pide una contraseña o un código de emparejamiento: emparéjelo una vez desde la interfaz web de OwnTone.
  • «La cola de OwnTone está vacía»: Reproducir necesita algo en la cola: inicie primero una lista.

Límites​

  • Un servidor OwnTone por integración, introducido a mano (el entorno aislado de Gladys no tiene mDNS propio).
  • Sin emparejamiento de altavoces AirPlay que piden un código, ni contraseña de salida: hágalo una vez en la interfaz web de OwnTone.
  • La acción Reproducir una lista de la integración elige una lista por su nombre o su URI; para recorrer la biblioteca, use la acción Reproducir música en un altavoz de Gladys 5.3.
  • Sin silencio: la API de OwnTone no lo tiene (baje el volumen).
  • Reproducir un artista añade todas sus pistas a la cola.
  • Desarrollada sin altavoces AirPlay ni Chromecast: su comportamiento procede de la API de OwnTone, no de una prueba con el hardware. Sus comentarios son bienvenidos.

Parámetros de configuración​

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

ParámetroTipoObligatorioDescripción
Conecte su servidor OwnTonesectionNoIntroduzca la dirección del equipo que ejecuta OwnTone (antes forked-daapd), como para su interfaz web. La integración usa su API JSON (puerto 3689) y sigue cada cambio en directo por su WebSocket (puerto 3688 por defecto). El reproductor se convierte en un dispositivo, y cada salida (altavoz AirPlay o Chromecast, audio local) también.
Dirección del servidorstringSíDirección IP o nombre de host de OwnTone. Añada :puerto si su interfaz web no está en el puerto 3689.
PuertonumberNoPuerto de la interfaz web y de la API JSON (port de la sección library de owntone.conf).
Contraseña de administración (opcional)secretNoSolo si Gladys está fuera de las trusted_networks de owntone.conf: su admin_password.
OpcionessectionNoIdioma de los nombres y textos que crea la integración (los nombres de las funciones se fijan al añadir el dispositivo).
IdiomaselectNo

Cómo instalar OwnTone en Gladys​

  1. En Gladys, abre Integraciones: OwnTone 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-owntone:1.1.0), 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-owntone.

OwnTone requiere Gladys >=5.3.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​

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