Saltar al contenido principal

Integración domótica qBittorrent / Transmission, gratuita y de código abierto

Integración qBittorrent / Transmission para Gladys Assistant

Siga y controle qBittorrent, Transmission o Deluge: velocidades, descargas, pausa, freno.

Siga y controle desde Gladys los clientes torrent de su servidor doméstico, en su red local: qBittorrent, Transmission y Deluge. Vea las velocidades de descarga y de subida y las descargas en curso, frene todo cuando empiece una película en la tele, ponga todo en pausa y reciba un aviso cuando termine una descarga.

Probada con los programas reales, aún no en una casa real: sus comentarios son bienvenidos. Esta integración se ha probado con qBittorrent 4.6.3 y 5.2.4, Transmission 4.0.5 y Deluge 2.1 funcionando a su lado, con descargas entre ellos, pero aún no en una instalación real de Gladys con su NAS, su proxy inverso o su Docker. Si algo no funciona como se describe, dígalo en el foro de Gladys o en las issues.

La integración nunca borra un torrent ni un archivo. Sus órdenes son pausar, reanudar y los límites de velocidad alternativos, todas reversibles; añadir enlaces magnet está desactivado mientras usted no lo permita.

Qué necesita​

  • Gladys Assistant 5.1.0 o posterior.
  • De uno a tres clientes torrent accesibles desde Gladys, en cualquier combinación:
    • qBittorrent 4.1 o posterior con su interfaz web activada (Herramientas → Opciones → Interfaz web), o qbittorrent-nox;
    • Transmission (2.80 o posterior) con el acceso remoto activado: el demonio transmission-daemon, o Preferencias → Remoto en las versiones de escritorio;
    • Deluge con su interfaz web (deluge-web, puerto 8112), conectada a su demonio.
  • El nombre de usuario y la contraseña de la interfaz web (Deluge: solo la contraseña, deluge mientras no la cambie).

En Transmission, la dirección de Gladys debe estar permitida: añádala a rpc-whitelist en settings.json, o desactive la lista blanca (rpc-whitelist-enabled: false) conservando una contraseña. En las imágenes Docker (linuxserver.io…), las variables USER, PASS y WHITELIST lo hacen.

Puesta en marcha​

  1. Instale la integración desde el catálogo de Gladys.
  2. En Configuración, para su primer cliente, elija el Programa, introduzca su Dirección (por ejemplo 192.168.1.10:8080), el Nombre de usuario y la Contraseña, y si quiere un Nombre. Sin puerto, la integración usa el predeterminado del programa: 8080 para qBittorrent, 9091 para Transmission, 8112 para Deluge. ¿Dos o tres clientes? Rellene también las secciones Segundo cliente y Tercer cliente: otro programa, u otra instancia del mismo.
  3. Guarde y haga clic en Probar la conexión: el mensaje bajo el botón indica, para cada cliente, si responde, su versión y sus torrents.
  4. Abra la pestaña Descubrir: un dispositivo por cliente. Haga clic en Añadir, elija una habitación, guarde.

La dirección puede llevar una ruta cuando el cliente está detrás de un proxy inverso (https://nas.example.com/qbittorrent), o copiarse del navegador (http://192.168.1.10:9091/transmission/web/ funciona para Transmission).

Opciones:

  • Aceptar certificados autofirmados: para una dirección https:// cuyo certificado no está firmado por una autoridad (frecuente en un NAS).
  • Intervalo de actualización: frecuencia de lectura de los clientes, de 10 segundos a 2 minutos (30 segundos por defecto). Es también el retraso de los disparadores.
  • Permitir añadir enlaces magnet: permite que las escenas añadan un torrent (desactivado por defecto, vea la acción Añadir un enlace magnet).
  • Idioma de los textos de los dispositivos: inglés, francés, alemán o español, para los nombres de las funciones (dados al añadir un dispositivo) y la lista de descargas (francés por defecto).

El dispositivo de cada cliente​

FunciónQué es
Velocidad de descargaVelocidad de todas las descargas, en kB/s
Velocidad de subidaVelocidad de todas las subidas (compartición), en kB/s
Torrents en cursoTorrents ni terminados ni en pausa: descargando, en cola, bloqueados, en verificación
Torrents en pausaTorrents sin terminar y en pausa
Torrents completadosTorrents descargados por completo, compartiendo o no, en pausa o no
Descargas en cursoTexto: las tres primeras descargas en curso con su porcentaje
Espacio libreEspacio libre de la carpeta de descargas, en GB
Límites de velocidad alternativosInterruptor: los límites de velocidad alternativos del cliente (no en Deluge)
Cliente conectado1 mientras el cliente responde, 0 si no

Los tres contadores suman el número total de torrents. Un torrent puesto en pausa al alcanzar su ratio de compartición cuenta como completado, no como en pausa.

Los límites de velocidad alternativos son los límites más lentos que usted configura en el propio cliente: en qBittorrent, Opciones → Velocidad → Límites de velocidad alternativos; en Transmission, el modo tortuga (Preferencias → Velocidad → Límites de velocidad alternativos). Deluge no tiene este modo: su dispositivo no tiene interruptor.

En la lista de descargas, las que están recibiendo datos van primero, las más rápidas delante. Un porcentaje se redondea hacia abajo: 99 % hasta el final.

Panel​

El widget Torrents muestra las velocidades de descarga y de subida, el número de torrents en curso, las descargas en curso con su porcentaje y su velocidad, y el número de torrents en pausa y completados. Suma todos los clientes, o muestra el elegido en su configuración. Tres botones:

  • Pausar todo: pone en pausa todos los torrents;
  • Reanudar todo: reanuda todos los torrents;
  • Velocidad alternativa: activa los límites de velocidad alternativos, o los desactiva cuando están activos (una marca lo indica). No aparece con Deluge solo.

El widget funciona en cuanto la integración está configurada, incluso antes de añadir los dispositivos.

Escenas​

Disparadores​

  • Descarga completada: un torrent ha terminado de descargarse. Un torrent añadido con sus archivos ya en el disco (verificado y luego completo) no cuenta, ni un torrent terminado que se vuelve a verificar. Filtros: el cliente, y la categoría (qBittorrent) o la etiqueta (Transmission 4, Deluge con el complemento Label). Variables: el nombre del torrent, el nombre del cliente, la categoría y el tamaño en GB.
  • Nuevo torrent añadido: se ha añadido un torrent al cliente, por quien sea (usted, Sonarr, Radarr, una extensión del navegador…). Un enlace magnet se anuncia en cuanto se conoce su nombre. Mismos filtros y variables.

Los torrents presentes al iniciar la integración no se anuncian: un torrent añadido o terminado mientras la integración (o Gladys) estaba detenida no se anuncia. Cuando un cliente deja de responder, la integración recuerda sus torrents: lo que haya terminado entretanto se anuncia cuando vuelve a responder.

Acciones​

  • Pausar todos los torrents: en un cliente, o en todos.
  • Reanudar todos los torrents: en un cliente, o en todos.
  • Límites de velocidad alternativos: Activados o Desactivados, en un cliente o en todos los que los tienen (Deluge se omite). La salida es el número de clientes que han aceptado.
  • Añadir un enlace magnet: añade un torrent por su enlace magnet:?xt=urn:btih:…, en el cliente elegido o en el primero de la configuración. Solo si Permitir añadir enlaces magnet está marcado: si no, cualquiera que pueda editar una escena podría iniciar una descarga. Solo se aceptan enlaces magnet, nunca una dirección http que el cliente iría a buscar. La salida es el hash de información.

Ideas de escenas​

  • Empieza una película: cuando la tele o el reproductor multimedia reproduce, lance Límites de velocidad alternativos → Activados; al parar, Desactivados.
  • Videollamada: desde un evento del calendario o un botón, Pausar todos los torrents, y luego Reanudar todos los torrents una hora después.
  • Película lista: con Descarga completada y la categoría peliculas, envíe el mensaje «{{triggerEvent.data.name}} está lista para ver».
  • Disco casi lleno: cuando el Espacio libre baje de 20 GB, ponga todo en pausa y envíe un mensaje.
  • Cliente caído: cuando Cliente conectado pase a 0 durante 10 minutos, envíe un mensaje.

Actualización y carga​

La integración lee cada cliente con su propio temporizador (cada 30 segundos por defecto), no con el planificador de Gladys. Una lectura es ligera: qBittorrent solo envía lo que ha cambiado desde la lectura anterior, Transmission responde a cuatro llamadas pequeñas con solo los campos útiles, Deluge a una llamada. Un cliente que deja de responder se vuelve a leer 15 segundos después. Un valor que no cambia se envía de todos modos a Gladys cada 6 horas.

Las API son locales, sin cuota. Sin embargo, qBittorrent bloquea la dirección de Gladys tras 5 inicios de sesión fallidos (una hora por defecto): tras una contraseña rechazada, la integración espera 5 minutos, luego 15, luego una hora y luego 6 horas antes de volver a intentarlo. Corregir la contraseña en la configuración, o hacer clic en Probar la conexión, lo vuelve a intentar enseguida.

Solución de problemas​

  • «no responde»: compruebe la dirección y el puerto desde la máquina de Gladys (curl http://192.168.1.10:8080), y que el cliente escucha en la red, no solo en localhost.
  • «nombre de usuario o contraseña rechazados»: compruébelos en la interfaz web del cliente. En Deluge, es la contraseña de la interfaz web, no la del demonio.
  • «qBittorrent ha bloqueado la dirección de Gladys»: demasiados inicios de sesión fallidos. Espere al final del bloqueo (Opciones → Interfaz web → Bloquear cliente tras fallos consecutivos), o reinicie qBittorrent, y luego corrija la contraseña.
  • «no está en la lista blanca RPC» (Transmission): añada la dirección de Gladys a rpc-whitelist, vea Qué necesita.
  • «ningún cliente de este tipo en esta dirección»: el programa elegido no corresponde a la dirección, o un proxy inverso lo sirve bajo una ruta que usted no ha introducido.
  • «no está conectada a su demonio» (Deluge): abra la interfaz web, el Administrador de conexiones, y conéctela a su demonio; después la integración la conecta sola al primer demonio de la lista.
  • qBittorrent detrás de un proxy inverso rechaza el inicio de sesión: desactive Habilitar la validación del encabezado Host o añada el nombre (Opciones → Interfaz web), o permita la dirección de Gladys en Omitir autenticación para clientes en subredes IP permitidas y deje vacíos el nombre de usuario y la contraseña.
  • La pestaña Descubrir no muestra nada: no hay ningún cliente configurado, o su dirección no se ha entendido (se indica en la pantalla de configuración).
  • Más detalles: defina la variable de entorno LOG_LEVEL=debug en el contenedor para ver cada lectura en los registros de la integración. Las contraseñas y las cookies de sesión nunca se escriben.

Límites​

  • Tres clientes como máximo. Un dispositivo por cliente, no por torrent.
  • Ningún borrado de torrents ni de archivos, por diseño.
  • Deluge: sin límites de velocidad alternativos (Deluge no los tiene); el complemento Label es necesario para el filtro de categoría.
  • Transmission: la categoría es la primera etiqueta (Transmission 4.0 y posterior).
  • Las velocidades son las del cliente entero, no de un torrent.
  • Los disparadores dependen del intervalo de actualización: un torrent añadido y quitado entre dos lecturas no se ve.
  • Los nombres de las funciones se fijan al añadir el dispositivo: cambiar el idioma después no renombra nada en Gladys.
  • Sin relación con los proyectos qBittorrent, Transmission o Deluge.

Parámetros de configuración​

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

ParámetroTipoObligatorioDescripción
Sus clientes torrentsectionNoqBittorrent (interfaz web activada), Transmission (acceso remoto activado) o Deluge (interfaz web, deluge-web). Hasta tres clientes en su red. Nunca borra un torrent ni un archivo.
ProgramaselectNo
DirecciónstringSíDirección IP o nombre, con :puerto. Sin puerto, el predeterminado: 8080, 9091 u 8112. https:// para HTTPS.
Nombre de usuariostringNoqBittorrent y Transmission. Vacío si el cliente no lo pide. Deluge: déjelo vacío.
ContraseñasecretNoContraseña de la interfaz web (Deluge: «deluge» mientras no se cambie). Vacío si no hay.
NombrestringNoNombre del dispositivo en Gladys. Vacío: el programa seguido de la dirección.
Segundo cliente (opcional)sectionNoLos mismos campos, para otro cliente torrent: otro programa u otra instancia.
ProgramaselectNo
DirecciónstringNoDirección IP o nombre, con :puerto. Sin puerto, el predeterminado: 8080, 9091 u 8112. https:// para HTTPS.
Nombre de usuariostringNoqBittorrent y Transmission. Vacío si el cliente no lo pide. Deluge: déjelo vacío.
ContraseñasecretNoContraseña de la interfaz web (Deluge: «deluge» mientras no se cambie). Vacío si no hay.
NombrestringNoNombre del dispositivo en Gladys. Vacío: el programa seguido de la dirección.
Tercer cliente (opcional)sectionNoLos mismos campos, para otro cliente torrent: otro programa u otra instancia.
ProgramaselectNo
DirecciónstringNoDirección IP o nombre, con :puerto. Sin puerto, el predeterminado: 8080, 9091 u 8112. https:// para HTTPS.
Nombre de usuariostringNoqBittorrent y Transmission. Vacío si el cliente no lo pide. Deluge: déjelo vacío.
ContraseñasecretNoContraseña de la interfaz web (Deluge: «deluge» mientras no se cambie). Vacío si no hay.
NombrestringNoNombre del dispositivo en Gladys. Vacío: el programa seguido de la dirección.
OpcionessectionNo
Aceptar certificados autofirmadosbooleanNoPara un cliente servido en HTTPS con su propio certificado (frecuente en un NAS).
Intervalo de actualizaciónselectNoFrecuencia de lectura de los clientes. También el retraso del disparador «Descarga completada».
Permitir añadir enlaces magnetbooleanNoPermite que las escenas añadan un torrent por su enlace magnet. Desactivado por defecto: quien pueda editar una escena podría iniciar una descarga.
Idioma de los textos de los dispositivosselectNoNombres de las funciones (fijados al añadir el dispositivo) y textos enviados por la integración.

Cómo instalar qBittorrent / Transmission en Gladys​

  1. En Gladys, abre Integraciones: qBittorrent / Transmission 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-torrent: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-torrent.

qBittorrent / Transmission 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​

qBittorrent / Transmission 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 🙂