Integración domótica Overseerr / Jellyseerr, gratuita y de código abierto

Solicitudes de películas y series de Overseerr, Jellyseerr o Seerr: aprobaciones, llegadas.
Siga en Gladys las solicitudes de películas y series de su hogar: lo que espera su aprobación, lo que se está descargando, lo que acaba de llegar a la mediateca y los problemas que notifican sus usuarios. Funciona con Overseerr (Plex), Jellyseerr (Jellyfin, Emby, Plex) y Seerr (su sucesor): los tres comparten la misma API.
Es la compañera de la integración «Sonarr & Radarr», que sigue las descargas en sí; esta sigue las solicitudes de sus usuarios.
Probada con servidores reales Overseerr 1.35.0, Jellyseerr 2.7.3 y Seerr 3.5.0, pero todavía no en una instalación completa (Plex o Jellyfin, Sonarr, Radarr y Gladys juntos): comentarios bienvenidos en GitHub.
Requisitos
- Gladys Assistant 5.1.0 o posterior.
- Un servidor Overseerr, Jellyseerr o Seerr al que Gladys pueda acceder en su
red (por ejemplo
http://192.168.1.2:5055). - Su clave de API: en la interfaz web, Settings → General → API Key. La clave actúa como el administrador del servidor: guárdela para usted.
Configuración
Integraciones → Overseerr / Jellyseerr → Configuración:
- Dirección: la dirección IP o el nombre del servidor con su puerto, y su
base de URL si está detrás de un proxy inverso
(
https://example.org/overseerr). También sirve una dirección copiada del navegador. - Clave de API: véase más arriba.
- Nombre: el nombre del dispositivo en Gladys. Vacío: el nombre de la aplicación seguido de la dirección.
- Un segundo servidor es opcional: una instancia 4K, o un Jellyseerr junto a un Overseerr.
- Permitir aprobar y rechazar: desactivado por defecto. Activado, las acciones de escena y los botones del widget pueden aprobar o rechazar la solicitud pendiente más reciente. Desactivado, Gladys solo lee.
- Aceptar certificados autofirmados: para una dirección
https://servida con su propio certificado. - Intervalo de actualización: de 30 segundos a 10 minutos (1 minuto por defecto).
- Idioma de los textos: los nombres de las funciones (asignados al añadir el dispositivo y luego fijados por Gladys), los títulos de las películas y series, y las palabras enviadas a las escenas. Francés por defecto.
Probar la conexión lee cada servidor ahora e indica lo que encuentra.
Después, en la pestaña Descubrir, añada a Gladys el dispositivo de cada servidor.
Dispositivo
Un dispositivo por servidor, de solo lectura:
| Función | Lo que indica |
|---|---|
| En línea | 1 mientras el servidor responde |
| Solicitudes pendientes de aprobación | Solicitudes que nadie ha aprobado ni rechazado todavía |
| Solicitudes aprobadas en curso | Aprobadas, todavía no en la mediateca |
| Solicitudes disponibles | Aprobadas y en la mediateca |
| Solicitudes fallidas | Sonarr o Radarr las ha rechazado |
| Total de solicitudes | Todas las solicitudes, sea cual sea su estado |
| Problemas abiertos | Problemas notificados por los usuarios, todavía sin resolver |
| Última solicitud | Título de la solicitud más reciente |
| Solicitada por | Quién la hizo |
| Versión | Versión del servidor |
| Actualización disponible | 1 cuando el servidor anuncia una nueva versión (Overseerr, Jellyseerr) |
Los contadores guardan su historial: un gráfico de las solicitudes pendientes muestra cuánto tiempo espera su familia.
Disparadores de escena
- Nueva solicitud: alguien ha solicitado una película o una serie. Filtros: servidor, películas o series, estado (pendiente de aprobación, o aprobada directamente para los usuarios con ese permiso), solicitante. Información transmitida a la escena: título, película o serie, solicitante, estado, temporadas, solicitud en 4K, número de la solicitud.
- Solicitud disponible: una película solicitada, o todas las temporadas solicitadas de una serie, ya está en la mediateca. Filtros: servidor, películas o series, solicitante. Información: título, película o serie, solicitante, solicitud en 4K.
- Nuevo problema notificado: un usuario ha notificado un problema con una película o un episodio. Filtros: servidor, películas o series, tipo (vídeo, audio, subtítulos, otro). Información: título, tipo, quién lo notificó, su mensaje, temporada y episodio.
Cada evento se anuncia una vez, también tras un reinicio de la integración: lo que ya conocía no se vuelve a anunciar. Una solicitud o un problema creado más de una hora antes de su lectura (la integración estaba detenida) no se anuncia como nuevo; una llegada siempre.
Acciones de escena
Necesitan Permitir aprobar y rechazar; si no, fallan con un mensaje que indica dónde activarlo.
- Aprobar la última solicitud: aprueba la solicitud pendiente más reciente, en un servidor o en cualquiera, películas, series o ambas. El servidor la envía entonces a Sonarr o Radarr, como cuando la aprueba en su interfaz.
- Rechazar la última solicitud: la rechaza. Una solicitud rechazada todavía puede aprobarse más tarde en la interfaz de Overseerr o Jellyseerr.
Resultados transmitidos a las acciones siguientes: si se encontró una solicitud (que no haya ninguna pendiente no es un error), su título, su solicitante, película o serie.
Widget
Solicitudes de medios: tres casillas (por aprobar, en curso, problemas abiertos), las ocho solicitudes más recientes con su póster, su solicitante y su estado (pendiente, aprobada, parcial, disponible, rechazada, fallida), y una fila por servidor con su versión. Todos los servidores, o el elegido en la configuración del widget.
Con Permitir aprobar y rechazar, una leyenda nombra la solicitud pendiente más reciente y dos botones actúan sobre ella: Aprobar y Rechazar, cada uno pidiendo antes una confirmación.
Los pósteres vienen del propio servidor (su caché de imágenes): ni su navegador ni la integración contactan con TMDB.
Ejemplos de escenas
- Avisar al solicitante: disparador «Solicitud disponible», solicitante
alice; acción «Enviar un mensaje» a Alice, con el título elegido en la información de la escena: «… ya está disponible, ¡que lo disfrute!». - Aprobar las solicitudes de los niños durante el día: disparador «Nueva
solicitud», estado pendiente de aprobación, solicitante
leo; condición: entre las 9:00 y las 20:00; acción «Aprobar la última solicitud». - Un problema de subtítulos: disparador «Nuevo problema notificado», tipo Subtítulos; acción «Enviar un mensaje» al administrador con el título y el mensaje.
- Resumen matinal: cada día a las 8:00, enviar el valor de «Solicitudes pendientes de aprobación» cuando sea mayor que 0.
Uso de la API
- Todo se queda en su red: la integración solo habla con la API local de su
servidor, con la clave de API en la cabecera
X-Api-Key(nunca en una dirección, nunca en los registros). - Una lectura = dos peticiones pequeñas (
/request/count,/issue/count). La lista de las 50 solicitudes más recientes y de los 20 últimos problemas solo se lee cuando esos contadores cambian, y cada 10 minutos de todos modos; la versión una vez por hora. Cada lectura de la lista hace que el servidor pida a Sonarr y Radarr sus perfiles de calidad: mantenga un intervalo de actualización razonable. - Los títulos y pósteres se piden al servidor (que los pide una vez a TMDB y los guarda), solo para las solicitudes más recientes y los eventos.
- La integración guarda en
/data/seerr-state.jsonlos últimos números de solicitud y de problema vistos y las solicitudes que esperan su medio. Ni contraseña ni clave.
Solución de problemas
- «clave de API rechazada»: vuelva a copiar la clave desde Settings → General. Una clave nueva generada en el servidor invalida la anterior.
- «no responde»: compruebe la dirección y el puerto (5055 por defecto), y que Gladys pueda acceder al servidor (misma red, cortafuegos, red Docker).
- «certificado rechazado»: marque Aceptar certificados autofirmados, o
use la dirección
http://de su red. - «la dirección redirige»: introduzca la dirección final, con su base de URL.
- Títulos mostrados como «Película n.º 550»: el servidor no pudo acceder a TMDB en ese momento; los títulos vuelven solos unos minutos después.
- Ningún evento: los eventos se refieren a lo que ocurre después del inicio
de la integración; ejecute Probar la conexión para ver lo que responde el
servidor. Para más detalle, configure
LOG_LEVEL=debugen la integración y lea sus registros.
Limitaciones
- Solo se siguen hasta su llegada las 50 solicitudes más recientes: en una instalación con más solicitudes pendientes a la vez, las más antiguas no se anuncian a su llegada.
- Una serie se anuncia disponible cuando todas las temporadas de la solicitud están en la mediateca; una solicitud de una temporada de una serie ya presente en parte se anuncia del mismo modo.
- Sin webhook: Overseerr puede enviar notificaciones, pero Gladys ejecuta la integración sin puerto de entrada. Un evento aparece por tanto en un intervalo de actualización (la llegada de una temporada: en 10 minutos como máximo).
- La aprobación actúa como el administrador del servidor (la clave de API); un rechazo nunca elimina nada. No se realiza ningún otro cambio en el servidor.
- El filtro por solicitante compara el nombre exactamente como lo muestra Overseerr.
- Sin relación con los proyectos Overseerr, Jellyseerr o Seerr.
Parámetros de configuración
Estos son los parámetros que Overseerr / Jellyseerr te pide en su pantalla de configuración en Gladys.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| Overseerr / Jellyseerr | section | No | Dirección y clave de API de su Overseerr, Jellyseerr o Seerr (Settings → General → API Key). |
| Dirección | string | No | Dirección IP o nombre con el puerto, y la base de URL si la hay (p. ej. http://192.168.1.2:5055). |
| Clave de API | secret | No | Settings → General → API Key. Actúa como el administrador del servidor. |
| Nombre | string | No | Nombre del dispositivo en Gladys. Vacío: el nombre de la aplicación seguido de la dirección. |
| Segundo servidor (opcional) | section | No | Los mismos campos, para otro servidor (una instancia 4K, un Jellyseerr junto a un Overseerr…). |
| Dirección | string | No | Dirección IP o nombre con el puerto, y la base de URL si la hay (p. ej. http://192.168.1.2:5055). |
| Clave de API | secret | No | Settings → General → API Key. Actúa como el administrador del servidor. |
| Nombre | string | No | Nombre del dispositivo en Gladys. Vacío: el nombre de la aplicación seguido de la dirección. |
| Opciones | section | No | |
| Permitir aprobar y rechazar | boolean | No | Permite que las escenas y el widget aprueben o rechacen la última solicitud pendiente. Desactivado: Gladys solo lee. |
| Aceptar certificados autofirmados | boolean | No | Para direcciones https:// servidas con su propio certificado. Márquelo solo para sus propios servidores. |
| Intervalo de actualización | select | No | Con qué frecuencia se leen los servidores: contadores, nuevas solicitudes, llegadas, problemas. |
| Idioma de los textos | select | No | Nombres de las funciones al añadir un dispositivo, títulos de las películas, palabras enviadas a las escenas. |
Cómo instalar Overseerr / Jellyseerr en Gladys
- En Gladys, abre Integraciones: Overseerr / Jellyseerr aparece en el catálogo junto a las integraciones nativas, con una insignia de comunidad.
- Haz clic en Instalar. Gladys descarga la imagen Docker (
ghcr.io/guim31/gladys-seerr: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). - Abre la pantalla de Configuración de la integración, rellena los parámetros y guarda.
- También puedes instalarla directamente desde la URL de su repositorio: https://github.com/guim31/gladys-seerr.
Overseerr / Jellyseerr 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
Overseerr / Jellyseerr 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.
- Explorar todas las integraciones, nativas y de la comunidad
- Crear y publicar tu propia integración externa
- Código fuente en GitHub — fuente de esta documentación