Configuración general
- Encabezado: Título del mensaje (máximo 60 caracteres)
- Contenido: Mensaje principal que acompaña los botones (máximo 1,024 caracteres en WhatsApp, 640 en Facebook/Instagram)
- Pie de página: Texto adicional debajo del contenido (opcional)
Opciones
Cada botón tiene:- Nombre de la opción: Texto visible en el botón (máximo 20 caracteres)
- Descripción: Texto adicional de contexto (opcional, máximo 72 caracteres)
Tipos de botón
| Tipo | Comportamiento |
|---|---|
| Postback | Envía un payload al flujo y continúa por la ruta conectada |
| URL | Abre una página web en el navegador |
| Teléfono | Inicia una llamada telefónica |
Opciones dinámicas
Si las opciones vienen de un dato variable (por ejemplo, una lista de productos de tu API), puedes activar el modo dinámico en lugar de definirlas manualmente. Configura:- Variable fuente: La variable que contiene la lista (por ejemplo,
{{$memory.productos}}) - Plantilla de etiqueta: Cómo se muestra cada opción (por ejemplo,
{{item.nombre}} - ${{item.precio}}) - Plantilla de descripción: Texto adicional por opción (por ejemplo,
{{item.descripcion}})
Variables en mensajes
Puedes usar variables en el encabezado y contenido:Configuración avanzada
Selección obligatoria
Cuando está activada, el usuario debe tocar un botón para continuar. Si escribe texto libre, verá un mensaje de error personalizable (máximo 250 caracteres).Variable de respuesta
Guarda la opción que el usuario seleccionó en una variable de memoria para usarla más adelante en el flujo. Cómo configurarlo:- Activa el interruptor Guardar respuesta.
- Escribe el nombre de la variable (por ejemplo,
departamento).
Valor guardado con opciones estáticas
Cuando los botones están definidos manualmente, se guarda el payload del botón elegido como texto plano. Ejemplo con estos botones:| Botón | Payload |
|---|---|
| Ventas | ventas |
| Soporte Técnico | soporte |
| Facturación | facturacion |
Valor guardado con opciones dinámicas
Cuando los botones se generan desde una variable fuente, se guarda el objeto completo del array al que pertenece la opción seleccionada. Supón que{{$memory.departamentos}} contiene:
Casos de uso
Enrutar el flujo según la selección (opciones estáticas)
Enrutar el flujo según la selección (opciones estáticas)
Conecta un nodo Condicional y crea una rama por cada payload:
Usar datos del objeto seleccionado (opciones dinámicas)
Usar datos del objeto seleccionado (opciones dinámicas)
Con el objeto completo guardado, puedes usarlo directamente en mensajes o nodos posteriores sin nuevas consultas:
Personalizar la respuesta del AI Agent
Personalizar la respuesta del AI Agent
Pasa la selección como contexto al nodo AI Agent:
Botón de un solo uso
Tras la primera selección, los botones se desactivan. Puedes configurar qué sucede después:- Enviar texto: Muestra un mensaje informativo
- Redirigir a skill: Lleva al usuario a otro flujo
Botón expira
Si el usuario no selecciona ningún botón dentro del tiempo configurado en tu organización:- Enviar texto: Muestra un mensaje de expiración
- Redirigir a skill: Lleva al usuario a otro flujo