> ## Documentation Index
> Fetch the complete documentation index at: https://docs.whaapy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Disparadores de automatizaciones

> Qué dispara una automatización y cómo elegir el trigger correcto

# Disparadores de automatizaciones

Un disparador define **cuándo** debe ejecutarse una automatización.

Elegir bien el disparador evita falsos positivos, respuestas duplicadas y reglas que se disparan cuando no deberían.

***

## Tipos disponibles

| Trigger                    | Cuándo usarlo                                       |
| -------------------------- | --------------------------------------------------- |
| `exact_match`              | El mensaje debe ser exactamente igual               |
| `contains`                 | El mensaje contiene una frase                       |
| `keywords`                 | Cualquier palabra o frase de una lista              |
| `regex`                    | Patrón avanzado                                     |
| `first_message`            | Primer mensaje de un contacto o conversación nueva  |
| `user_replied_to_ai`       | El usuario respondió después de una respuesta de IA |
| `ai_scheduled_appointment` | La IA agendó una cita                               |
| `pipeline_stage_entered`   | Un contacto entró a una etapa del funnel            |
| `time_range`               | Mensajes dentro de horario o días específicos       |
| `meta_lead_received`       | Se recibió un lead desde Meta Lead Ads              |

***

## Triggers de texto

### Exact match

Usa `exact_match` cuando el mensaje debe coincidir exactamente.

Bueno para respuestas de botones o palabras controladas:

```text theme={null}
confirmar
cancelar
hablar con asesor
```

No es ideal para lenguaje natural. Si el cliente escribe "quiero confirmar", ya no coincide.

### Contains

Usa `contains` cuando quieres detectar una frase dentro del mensaje.

```text theme={null}
quiero cotizar
hablar con humano
necesito soporte
```

Es más flexible que `exact_match`, pero puede dispararse de más si la frase es muy genérica.

### Keywords

Usa `keywords` cuando tienes varias formas de expresar la misma intención.

```text theme={null}
cotizar
precio
costos
cuánto cuesta
paquete
```

Ideal para intención comercial o soporte básico.

### Regex

Usa `regex` solo cuando necesitas un patrón real.

Ejemplos:

```text theme={null}
ORD-[0-9]{6}
^cancelar\\s+[a-z0-9_-]+$
```

<Warning>
  Regex mal diseñado puede coincidir demasiado o nada. Si no necesitas patrón, usa `contains` o `keywords`.
</Warning>

***

## Triggers de conversación

### First message

Se ejecuta cuando el contacto inicia por primera vez una conversación.

Casos útiles:

* bienvenida
* tag de nuevo contacto
* mover a etapa "Nuevo lead"
* pedir datos iniciales

Evita mandar mensajes largos de venta aquí. Una bienvenida corta suele funcionar mejor.

### User replied to AI

Se ejecuta cuando el usuario responde después de que la IA participó.

Casos útiles:

* detectar que el cliente volvió después de una respuesta automática
* pausar IA si el usuario pide humano
* enviar evento a CRM cuando la IA generó interés

### AI scheduled appointment

Se ejecuta cuando el agente IA agenda una cita.

Casos útiles:

* mover contacto a etapa "Cita agendada"
* enviar template de confirmación
* asignar agente responsable
* notificar a n8n o CRM

***

## Triggers de operación

### Pipeline stage entered

Se ejecuta cuando un contacto entra a una etapa específica del funnel.

Ejemplos:

```text theme={null}
Nuevo lead -> enviar bienvenida
Cotización -> asignar vendedor
Cita agendada -> enviar recordatorio
Ganado -> agregar tag cliente
```

Úsalo para automatizar operación comercial, no para interpretar mensajes.

### Time range

Se ejecuta cuando el evento ocurre dentro de un horario o días definidos.

Casos útiles:

* fuera de horario
* fin de semana
* horario de soporte
* campañas por ventana horaria

Ejemplo:

```text theme={null}
Si llega un mensaje de 19:00 a 08:00,
enviar respuesta fuera de horario y omitir IA.
```

***

## Trigger de Meta Lead Ads

`meta_lead_received` se ejecuta cuando Whaapy recibe un lead desde formularios conectados de Meta.

Puedes filtrar por:

* página
* formulario específico
* varios formularios
* cualquier formulario sincronizado

Ver [Meta Lead Ads](/guides/automations/meta-leads).

***

## Cómo elegir

| Necesidad                        | Trigger recomendado        |
| -------------------------------- | -------------------------- |
| Cliente escribe una frase exacta | `exact_match`              |
| Cliente menciona una intención   | `contains` o `keywords`    |
| Detectar código/patrón           | `regex`                    |
| Primer contacto                  | `first_message`            |
| Reacción después de IA           | `user_replied_to_ai`       |
| Cita creada por IA               | `ai_scheduled_appointment` |
| Cambio de etapa comercial        | `pipeline_stage_entered`   |
| Fuera de horario                 | `time_range`               |
| Lead de Facebook/Instagram       | `meta_lead_received`       |

***

## Errores comunes

| Error                                   | Resultado                              | Mejor enfoque                             |
| --------------------------------------- | -------------------------------------- | ----------------------------------------- |
| Keywords demasiado genéricas            | Se disparan reglas sin intención clara | Usa frases más específicas                |
| Regex innecesario                       | Difícil de mantener                    | Usa `contains` o `keywords`               |
| Varias reglas para el mismo mensaje     | Acciones duplicadas                    | Usa prioridad y `Parar al coincidir`      |
| Trigger de texto para operación interna | Reglas frágiles                        | Usa funnel, IA o Meta Lead triggers       |
| No probar negativos                     | Falsos positivos                       | Prueba mensajes que no deberían coincidir |

***

## Siguiente paso

Después de elegir trigger, diseña acciones seguras en [Actions](/guides/automations/actions).
