Relaciones de reacciones
Las reacciones rara vez trabajan solas — se invocan mutuamente a través de botones, cadenas, la rama «si no», respuestas en el diálogo, etc. Las relaciones de reacciones muestran este grafo de transiciones: para cualquier reacción se puede ver a dónde lleva (relaciones salientes) y desde dónde llegan a ella (relaciones entrantes). Esto ayuda a no perderse en escenarios grandes y a eliminar reacciones de forma segura.
Qué es una relación
Una relación es una transición dirigida de una reacción a otra, marcada con el mecanismo que generó esa transición. La plataforma recorre la reacción completa y recopila todas las transiciones salientes, descartando las autorreferencias y los destinos vacíos, y fusionando las transiciones idénticas. La lista de relaciones está disponible desde el editor de la reacción y por API: GET /api/bots/{id}/reactions/{id}/links.
Entrantes y salientes
- Salientes — a qué reacciones hace referencia la actual (sus botones, cadenas, rama «si no», etc.).
- Entrantes — qué reacciones hacen referencia a la actual. Útil antes de eliminar: si alguna reacción apunta a la actual, eliminarla romperá el escenario.
12 mecanismos de relaciones
- Botón (
button) — un botón inline de tipo «Invocar reacción» abre otra reacción al pulsarlo. - Reemplazo por botón (
button_replace) — un botón con comportamiento «reemplazar mensaje» sustituye el contenido por el de la reacción vinculada. - Botón dinámico (
dynamic_button) — un botón del bloque «Botones dinámicos desde lista» lleva a una reacción. Ver Botones dinámicos y parámetros. - Bloque «Reacción» (
block) — un bloque de mensaje que invoca otra reacción durante el envío. - Reacción en cadena (
chain) — la acción «Reacción en cadena» inicia otra reacción. - Rama «si no» (
else) — si las condiciones no se cumplen, el control pasa a la reacción indicada. - Solicitud web: éxito (
web_success) — reacción que se activa cuando la solicitud web tiene éxito. - Solicitud web: error (
web_error) — reacción que se activa cuando la solicitud web falla. - Respuesta esperada (
expected_answer) — reacción que se activa con la respuesta del usuario en un paso de diálogo. - Tiempo de espera agotado (
expected_timeout) — reacción que se activa si no hubo respuesta antes del timeout. - Siguiente reacción (
goto_next) — la acción «Siguiente reacción» transfiere el control a la siguiente reacción adecuada de la lista. - Escenario (
flow) — reacción vinculada a la finalización de un escenario (flow).
Para qué ver el grafo
- Navegación por el escenario — saltar rápidamente a una reacción relacionada sin buscarla en la lista.
- Eliminación segura — ver las relaciones entrantes y no romper las transiciones.
- Auditoría — verificar que todas las ramas del escenario llevan a donde deben y no hay transiciones «colgantes».
Qué sigue
- Reacciones: conceptos básicos — orden de activación, cadenas y
goto_next. - Mensajes y botones — botones y pasos de diálogo que generan relaciones.
- Botones dinámicos y parámetros — relaciones a través del teclado dinámico.
- Escenarios — relación a través de la finalización del escenario.