> For the complete documentation index, see [llms.txt](https://docs.kiloiot.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.kiloiot.io/kilo-docs-es/kilo-iot-server/rules-engine/triggers.md).

# Disparadores

Define una condición guardada que inicie una regla de Kilo de inmediato o después de un retraso para uno o varios dispositivos.

A **disparador** es una condición guardada que puede iniciar una regla. Indica a Kilo qué datos del dispositivo observar, qué comparación debe ser verdadera y qué dispositivo seleccionado hizo que se cumpliera la condición.

Un disparador no es solo un temporizador y no es un grupo de dispositivos reutilizable. La temporización y la selección de dispositivos son dos partes independientes del mismo disparador:

* **Temporización** decide si Kilo inicia la regla inmediatamente o espera a que la condición permanezca verdadera.
* **Dispositivos** deciden si la condición se evalúa para un dispositivo o por separado para varios dispositivos.

Por ejemplo, un disparador puede vigilar la `door_open` métrica en 50 puertas de cámaras frigoríficas. Puede iniciar una única regla compartida en cuanto se abra cualquier puerta, o solo después de que esa puerta en particular haya permanecido abierta durante 20 minutos. Cada puerta mantiene su propio estado y cuenta regresiva.

## Cuándo usar un disparador

El **Evento de inicio** tiene dos fuentes de inicio:

| Comportamiento requerido                                                              | Fuente de inicio           | Configuración adicional                                                |
| ------------------------------------------------------------------------------------- | -------------------------- | ---------------------------------------------------------------------- |
| Ejecutar cuando un sensor informe                                                     | **Lectura del sensor**     | Seleccione un dispositivo y un sensor en el Evento de inicio.          |
| Ejecutar cuando una condición se vuelva verdadera                                     | **Condición de disparo**   | Configure el disparador en **Inmediatamente**.                         |
| Ignorar condiciones de corta duración                                                 | **Condición de disparo**   | Configure el disparador en **Solo si dura** e introduzca una duración. |
| Aplicar la misma condición y respuesta a varios dispositivos                          | **Condición de disparo**   | Seleccione esos dispositivos dentro del disparador.                    |
| Permitir que cualquiera de las fuentes se ejecute solo durante las horas establecidas | Mantener la fuente elegida | Activar **Habilitar programación** en el Evento de inicio.             |

Use **Lectura del sensor** cuando la regla necesite cada evento de sensor normalizado y su `vars.value`. Use **Condición de disparo** cuando Kilo debe decidir si se ha cumplido una condición guardada antes de que comience la regla.

## Cómo funciona un disparador

El disparador y la regla tienen responsabilidades separadas:

1. El disparador supervisa las métricas normalizadas y evalúa su condición.
2. Su temporización y su comportamiento de borrado determinan cuándo la condición se activa y vuelve a la normalidad.
3. Cuando el disparador se activa, identifica el dispositivo vigilado y notifica a todas las reglas desplegadas que usan ese disparador.
4. La regla realiza la respuesta operativa, como generar una alarma, enriquecer datos o enviar un comando.

Por lo tanto, guardar un disparador no realiza ninguna acción por sí solo. Debe conectarlo a una regla y luego compilar y desplegar esa regla.

## De un disparador a una regla en ejecución

Un disparador es una **fuente de inicio**, no un nodo que arrastre al lienzo de la regla. Crear el disparador y adjuntarlo a una regla ocurre en dos pestañas diferentes:

1. Abra **Motor de reglas → Disparadores**, haga clic en **Agregar disparador**, configure la condición, la temporización y los dispositivos, y haga clic en **Crear disparador**.
2. Vuelva a la **Reglas** pestaña. El **Agregar regla** botón está disponible allí, no en la pestaña Disparadores.
3. Haga clic en **Agregar regla**, o edite una regla existente que deba responder al disparador.
4. Busque el **Evento de inicio** ya colocado en el lienzo. Selecciónelo y haga clic en el lápiz debajo del nodo para abrir sus propiedades.
5. Establezca **Fuente de inicio** como **Condición de disparo**, luego elija el disparador que guardó.
6. Haga clic en **Guardar** en la parte inferior del panel Evento de inicio. Esto aplica la selección al diagrama.
7. Añada las alarmas, comandos, enriquecimientos u otros nodos que definan la respuesta. Luego haga clic en **Guardar** en el editor de reglas.
8. Haga clic en **Compilar** y despliegue el artefacto resultante. Solo una regla desplegada puede responder cuando el disparador se activa.

Crear un disparador no crea una regla, no añade un nodo al lienzo ni selecciona el disparador automáticamente. El disparador decide **cuándo y para qué dispositivo** comienza una regla; los nodos después del Evento de inicio deciden **qué hace la regla**.

## Crear un disparador

1. Abra **Motor de reglas → Disparadores**.
2. Haga clic en **Agregar disparador**.
3. Introduzca un **Nombre** que describa la situación, como `Puerta de cámara frigorífica abierta`.
4. Bajo **¿Qué debe iniciar la regla?**, haga clic en **Añadir clave normalizada** y elija la métrica que evaluar.
5. Elija un **Es** operador e introduzca el valor de comparación **Valor**.
6. Bajo **¿Cuándo debe iniciarse?**, elija **Inmediatamente** o **Solo si dura**.
7. Configurar **Comportamiento de borrado** si el retorno a la normalidad necesita su propia condición o demora.
8. Bajo **Dispositivos**, seleccione el dispositivo o dispositivos cuyos datos usará el disparador.
9. Revise **Cómo se ejecutará este disparador**, luego haga clic en **Crear disparador**.

<figure><img src="https://3373664356-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtNQh1wBSHSaknslMdOXm%2Fuploads%2Fgit-blob-ebb50a42e55112e4a2f5f8a9cce0ee26a91e9d28%2Ftrigger-time-window.jpg?alt=media" alt="The Kilo Create trigger dialog showing a condition and its timing choice"><figcaption></figcaption></figure>

El formulario admite hasta 10 claves normalizadas entre las condiciones de inicio y borrado opcional, hasta 500 dispositivos seleccionados y una duración de 10 segundos a 30 días.

Para conocer el comportamiento completo de la temporización, consulte [Temporización del disparador](/kilo-docs-es/kilo-iot-server/rules-engine/triggers/trigger-timing.md). Para la selección de dispositivos, las lecturas compartidas y la evaluación por dispositivo, consulte [Un disparador para varios dispositivos](/kilo-docs-es/kilo-iot-server/rules-engine/triggers/multiple-devices.md).

## Construir la condición

Para cada clave normalizada, elija la comparación que Kilo debe realizar:

* Las métricas numéricas ofrecen **igual a**, **es mayor que**, y **es menor que**.
* Las métricas de cadena y booleanas ofrecen **igual a**.
* **Añadir comprobación en ‹métrica›** añade otra comparación para la misma métrica.
* **Añadir clave normalizada** incluye otra métrica en la condición.

Use **Y** cuando cada comprobación debe ser verdadera y **O** cuando cualquier comprobación puede ser verdadera. Un segundo control AND/OR combina diferentes claves normalizadas. Estos controles combinan lecturas de un único dispositivo vigilado; no combinan los estados de distintos dispositivos vigilados.

## Dónde se pueden usar los disparadores

En el editor de reglas actual, el Evento de inicio es el único lugar donde se selecciona un disparador guardado. Los disparadores no están disponibles en gateways, Establecer alarma, Ejecutar comando, Enriquecimiento ni otros nodos posteriores.

Un disparador guardado puede ser seleccionado por varias reglas. Cuando se activa, cada regla desplegada que lo usa puede ejecutarse. Cada regla individual sigue teniendo exactamente un Evento de inicio y una fuente de inicio.

<figure><img src="https://3373664356-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtNQh1wBSHSaknslMdOXm%2Fuploads%2Fgit-blob-b6c7ebde10c33010ad7526ff9fcafd734edc83a0%2Frule-start-source.jpg?alt=media" alt="The Kilo Start Event panel with Trigger condition selected as the start source"><figcaption></figcaption></figure>

Un Evento de inicio usa **Lectura del sensor** o **Condición de disparo**, nunca ambos. **Habilitar programación** es una restricción opcional sobre la fuente seleccionada, no otra fuente de inicio.

El selector de disparadores actualmente carga solo su primera página. Si el disparador necesario no aparece en la lista, todavía no puede seleccionarse desde ese campo.

## Datos disponibles para la regla

Una regla iniciada por un disparador recibe información sobre la señal de condición y el dispositivo vigilado:

| Variable            | Valor                                                      |
| ------------------- | ---------------------------------------------------------- |
| `vars.device_name`  | Nombre del dispositivo vigilado que cumplió la condición   |
| `vars.subject_kind` | Tipo de recurso vigilado; actualmente `dispositivo`        |
| `vars.subject_id`   | ID del dispositivo vigilado                                |
| `vars.sensor_id`    | ID del sensor asociado con la ejecución y cualquier alarma |
| `vars.detector_id`  | ID del disparador                                          |
| `vars.timestamp`    | Marca de tiempo Unix de la señal del disparador            |

`vars.value` no está disponible porque la señal representa la transición de la condición del disparador y no un evento de sensor normalizado. Actualice las expresiones que requieren `vars.value` antes de cambiar una regla existente de **Lectura del sensor** como **Condición de disparo**.

Para identificar el dispositivo afectado en una alarma, incluya `vars.device_name` en su **Mensaje de motivación**:

```cel
"Puerta dejada abierta: " + vars.device_name
```

El nombre del dispositivo no se inserta automáticamente.

## Editar o eliminar un disparador

Editar una condición puede reiniciar las cuentas regresivas activas. Kilo muestra una advertencia antes de guardar un cambio que restablece el estado del disparador.

Eliminar un disparador no se puede deshacer. Detiene la supervisión futura e impide que las reglas conectadas se inicien a partir de él. Revise las reglas que usan el disparador y cualquier alarma pendiente antes de eliminarlo.

## Solución de problemas

| Problema                                    | Qué comprobar                                                                                                                     |
| ------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| Falta un dispositivo                        | Confirme que sus datos entrantes estén asignados a una clave normalizada utilizada por el disparador.                             |
| Un sensor no puede proporcionar una métrica | Confirme que el sensor tenga un mapeo de origen. Si varios sensores responden a la misma métrica, seleccione el sensor previsto.  |
| El disparador no se guardará                | Revise la duración y compruebe **Cómo se ejecutará este disparador** si falta una métrica o si una métrica compartida es ambigua. |
| Una expresión CEL falla                     | Elimine `vars.value` de una ruta iniciada por un disparador y use las variables enumeradas arriba.                                |
| Una alarma no identifica el dispositivo     | Añada `vars.device_name` al mensaje de la alarma.                                                                                 |

## Vea también

* [Creación de reglas](/kilo-docs-es/kilo-iot-server/rules-engine/creating-rules.md) — elija la fuente correcta del Evento de inicio
* [Temporización del disparador](/kilo-docs-es/kilo-iot-server/rules-engine/triggers/trigger-timing.md) — inmediato, duración, borrado y programación
* [Un disparador para varios dispositivos](/kilo-docs-es/kilo-iot-server/rules-engine/triggers/multiple-devices.md) — selección de participantes y lecturas compartidas
* [Referencia de CEL](/kilo-docs-es/kilo-iot-server/rules-engine/cel-reference.md) — escriba expresiones para cada contexto de inicio


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.kiloiot.io/kilo-docs-es/kilo-iot-server/rules-engine/triggers.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
