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

Peticiones de Redmine: abiertas, mías, atrasadas; disparadores y peticiones creadas por escenas.
Las peticiones de su Redmine en Gladys: cuántas están abiertas, asignadas a usted, atrasadas, vencen hoy, actualizadas hoy. Una escena reacciona a una petición nueva, a una petición que se le asigna, a una petición que se atrasa o a una petición cerrada, y Gladys puede crear una petición por sí misma cuando detecta algo que hacer: una fuga de agua, un filtro que cambiar, una impresora que ya no responde.
Feedback welcome: sus comentarios son bienvenidos. Esta integración se probó contra un Redmine real (la imagen Docker oficial
redmine6.1, octubre de 2026), todavía no en el día a día de un seguimiento real. Si algo no funciona como se describe, dígalo en el foro de Gladys o en las issues.
Lo que necesita
- Gladys Assistant 5.1.0 o posterior.
- Redmine 4.2 o posterior, autoalojado o alojado (Planio, un servidor suyo en Internet), accesible desde Gladys.
- Un usuario de Redmine en cuyo nombre Gladys lee y crea las peticiones: el
suyo, o uno creado para ella (
gladys), miembro de los proyectos que seguir con un rol que pueda ver, crear peticiones y añadir notas (el rol Desarrollador por defecto puede). La integración ve exactamente lo que este usuario ve en Redmine.
Instalación
En Redmine
- Administración → Configuración → pestaña API: marque Activar servicio web REST y guarde.
- Conectado como el usuario de Gladys, abra Mi cuenta y, en la columna derecha, bajo Clave de acceso a la API, haga clic en Mostrar: copie la clave.
En Gladys
- Integraciones → instale Redmine.
- En la pantalla Configuración, rellene:
- Dirección: la dirección de Redmine como en el navegador, p. ej.
https://redmine.example.orgohttp://192.168.1.30:3000(una carpeta/redminese conserva,/issues/…o/projects/…se quitan); - Clave de API: la clave copiada en el paso 2;
- Proyectos con su propio dispositivo (opcional): identificadores o
nombres de proyectos, separados por comas, p. ej.
casa, oficina(10 como máximo); - Aceptar certificados autofirmados: para un Redmine en
https://con un certificado autofirmado; - Intervalo de actualización: 1, 2, 5 (por defecto) o 10 minutos;
- Idioma de los nombres de funciones: el idioma de los nombres dados a las funciones de los dispositivos.
- Dirección: la dirección de Redmine como en el navegador, p. ej.
- Probar la conexión indica el usuario y el número de peticiones abiertas, asignadas a él y atrasadas, y nombra los proyectos no encontrados.
- Pestaña Descubrimiento: añada el dispositivo Redmine, y el de cada proyecto seguido (Redmine Casa, por ejemplo).
Dispositivos
Un dispositivo Redmine para todas las peticiones que ve el usuario, y un dispositivo por proyecto seguido, con cinco contadores actualizados en cada lectura:
| Función | Lo que cuenta |
|---|---|
| Peticiones abiertas | peticiones cuyo estado no es cerrado |
| Peticiones asignadas a mí | peticiones abiertas asignadas al usuario o a uno de sus grupos |
| Peticiones atrasadas | peticiones abiertas cuya fecha de vencimiento ya pasó |
| Peticiones que vencen hoy | peticiones abiertas que vencen hoy |
| Peticiones actualizadas hoy | peticiones modificadas desde medianoche, abiertas o cerradas |
«Hoy» es el día en la zona horaria de Gladys. Una petición sin fecha de vencimiento nunca está atrasada. Los contadores conservan su historial y sirven de condiciones en las escenas («si Peticiones atrasadas es mayor que 0»). Un dispositivo de proyecto solo cuenta las peticiones de ese proyecto, no las de sus subproyectos.
Panel
El widget Mis peticiones de Redmine muestra tres mosaicos (asignadas a mí,
atrasadas, vencen hoy) y las ocho peticiones abiertas más urgentes asignadas al
usuario: primero las atrasadas (insignia roja «Atrasada»), luego las que vencen
hoy (insignia naranja «Hoy»), luego por fecha de vencimiento. Cada línea indica el
proyecto, el estado y la prioridad. Cuando Redmine está en https://, cada
petición ofrece un enlace Abrir en Redmine.
Escenas
Disparadores
Los cuatro disparadores filtran por Nombre del proyecto, Tipo (el tracker) y Prioridad, escritos como en Redmine (con mayúsculas; vacío: cualquiera).
- Nueva petición de Redmine: se ha creado una petición en Redmine, por un usuario, por correo o por otra herramienta. Las peticiones creadas por la propia Gladys no disparan nada (sin bucle).
- Petición de Redmine asignada a mí: una petición abierta está ahora asignada al usuario de la clave (o a uno de sus grupos): creada así, o reasignada.
- Petición de Redmine atrasada: una petición abierta acaba de superar su fecha de vencimiento. Se comprueba en cada lectura: la primera lectura tras la medianoche lo dispara para las peticiones que vencían el día anterior.
- Petición de Redmine cerrada: una petición abierta en la lectura anterior tiene ahora un estado cerrado (Cerrada, Rechazada…).
Variables transmitidas a las acciones: número de la petición, asunto, proyecto, tipo, estado, prioridad, autor, asignada a, fecha de vencimiento y enlace a la petición. Los nombres son los que muestra Redmine, en su idioma.
Los eventos se detectan en cada lectura: llegan como máximo un intervalo de actualización después de los hechos. En la primera lectura (o tras un cambio de servidor o de usuario), la integración toma nota de lo existente sin disparar nada. Una lectura dispara 30 eventos como máximo (una importación masiva no inunda Gladys).
Acciones
- Crear una petición de Redmine: crea una petición en nombre del usuario de la clave, que es su autor. Campos: Proyecto (identificador, nombre o número, obligatorio), Asunto (obligatorio), Descripción (opcional; las variables de escena son bienvenidas), Prioridad (nombre, vacío: la predeterminada), Tipo (nombre, vacío: el primero del proyecto) y Asignármela. Salidas: el número de la petición y su enlace.
- Añadir una nota a una petición de Redmine: añade una nota a la petición dada
por su número (
125o#125), en nombre del usuario de la clave. El número puede venir de un «Crear una petición de Redmine» anterior en la escena, o del disparador. Salidas: el número y el asunto de la petición.
Un proyecto, una prioridad o un tipo se indica por su número o su nombre, sin
tener en cuenta mayúsculas ni acentos; un proyecto también por su identificador
(casa).
Ideas de escenas
- Fuga de agua: el detector de fugas del sótano señala una fuga → Crear una
petición de Redmine «Fuga de agua en el sótano» en el proyecto
casa, prioridad Urgente, asignada a mí, descripción con la hora; luego un mensaje de Gladys con el enlace a la petición. - Resumen de la mañana: cada día laborable a las 8:00, si Peticiones que vencen hoy del dispositivo Redmine es mayor que 0, Gladys anuncia cuántas peticiones vencen hoy.
- Guardia: Nueva petición de Redmine filtrada por la prioridad Inmediata → un mensaje de Telegram con el asunto, el autor y el enlace; Petición de Redmine atrasada → la lámpara de la oficina se pone roja; Petición de Redmine cerrada → vuelta al blanco.
Solución de problemas
- «no hay ninguna API de Redmine en esta dirección»: compruebe la dirección
(con la carpeta
/redminesi la hay) abriendo…/issues.jsonen un navegador: Redmine responde en JSON. - «la API REST está desactivada»: vea el paso 1 en Redmine. Con la API desactivada, Redmine ignora la clave y solo mostraría los proyectos públicos: la integración lo comprueba primero.
- «clave de API rechazada»: la clave se ha restablecido desde entonces (Mi cuenta, Restablecer), o el usuario está bloqueado.
- «al usuario de Redmine le falta un permiso en este proyecto»: su rol en el proyecto no permite crear peticiones o añadir notas.
- «Proyectos no encontrados» (Probar la conexión): el usuario no es miembro del proyecto, o el identificador está mal escrito.
- Los contadores se quedan en cero: el usuario no es miembro de ningún proyecto, o su rol no permite ver las peticiones.
Limitaciones
- Un Redmine por instalación, 10 proyectos seguidos como máximo.
- Se detallan las 1000 peticiones abiertas más recientes (atrasadas, que vencen hoy, dispositivos de proyecto); más allá, los contadores «Peticiones abiertas» y «Peticiones asignadas a mí» siguen siendo exactos.
- Un subproyecto no se cuenta en el dispositivo de su padre: sígalo como proyecto.
- Una petición creada y cerrada entre dos lecturas dispara «Nueva petición de Redmine» pero no «cerrada».
- No se leen los campos personalizados, el tiempo dedicado ni las versiones.
Esta integración no está afiliada a Redmine ni a sus autores.
Parámetros de configuración
Estos son los parámetros que Redmine te pide en su pantalla de configuración en Gladys.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| Su Redmine | section | No | Redmine 4.2 o posterior, autoalojado o alojado. En Redmine: active la API REST (Administración, Configuración, API) y copie la clave de API de un usuario (Mi cuenta, Clave de acceso a la API, Mostrar). Consulte la documentación. |
| Dirección | string | Sí | Dirección de Redmine como en el navegador, con https:// para HTTPS y la carpeta /redmine si la hay. |
| Clave de API | secret | Sí | La clave de API del usuario de Redmine en cuyo nombre actúa Gladys: Mi cuenta, Clave de acceso a la API, Mostrar. |
| Opciones | section | No | |
| Proyectos con su propio dispositivo | string | No | Opcional: identificadores o nombres de proyectos, separados por comas (10 como máximo). Cada uno recibe un dispositivo con sus propios contadores. |
| Aceptar certificados autofirmados | boolean | No | Para una dirección https:// con certificado autofirmado. Márquelo solo para su propio servidor. |
| Intervalo de actualización | select | No | Con qué frecuencia se lee Redmine: los contadores y los disparadores de escena la siguen. |
| Idioma de los nombres de funciones | select | No | Nombres de las funciones al añadir el dispositivo y textos enviados a las escenas. |
Cómo instalar Redmine en Gladys
- En Gladys, abre Integraciones: Redmine 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-redmine:1.0.0), 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-redmine.
Redmine 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
Redmine 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