Saltar al contenido principal

Tipos de nodos

AIFlows soporta un conjunto amplio de nodos. Cada nodo tiene un kind y configuración específica. La lista canónica está en doc-iaflows/04-NODE-REFERENCE.md; aquí dejamos el resumen operativo.

Nodos de control de flujo

NodoPropósito
startPunto de entrada. Único por flujo.
waitPausa la ejecución esperando entrada del usuario. Soporta waitType: user_input \| webhook \| timeout \| schedule.
switchRamifica según una expresión o variable; cada caso tiene su route.
loopItera sobre una colección o hasta cumplir una condición. Tiene cotas (maxIterations, maxDurationMs) anti-runaway.
redirectSalta a otro nodo del mismo flujo (o de otro flujo del mismo proyecto).
endCierra la ejecución.

Nodos de datos

NodoPropósito
variable.setAsigna un valor a una variable con un scope dado.
variable.getLee una variable y la expone al contexto.
http.requestRealiza un request HTTP y guarda la respuesta en una variable.
function.callInvoca una función definida en el proyecto.

Nodos de IA

NodoPropósitoOutput
ai.textGenera texto con un LLM.string
ai.jsonGenera un JSON estructurado siguiendo un esquema.objeto validado
ai.imageGenera una imagen.URL o buffer
ai.audioGenera audio (TTS) o transcribe (STT).buffer o string
ai.classifyClasifica un texto en categorías predefinidas.label + score

Todos los nodos IA referencian un ProviderConfig (proveedor + modelo + credencial + baseUrl).

Nodos de salida

NodoPropósito
message.sendEnvía un mensaje al canal (texto, multimedia, listas, quick replies).
message.broadcastEnvía el mismo mensaje a múltiples destinatarios.
webhook.emitDispara un webhook saliente con payload arbitrario.

Nodos de utilidad

NodoPropósito
logEscribe en el log de ejecución (visible en el inspector).
errorCorta la ejecución con un error controlado.
commentSolo documental; no se ejecuta.

Configuración común

Todo nodo tiene:

  • id: identificador único en el grafo.
  • name: nombre legible.
  • sourceHandle y targetHandle: aristas que salen y llegan.
  • outcome: cómo se resolvió la última ejecución (success, failed, waiting, skipped).
  • meta: anotaciones arbitrarias para el simulador e inspector.