Saltar al contenido principal

Referencia de Acciones

Las acciones son los bloques de construccion que agregas en:

  • Workflows > Pasos
  • Agentes de IA > Acciones para pre-acciones y post-acciones
  • Botones de notificacion que ejecutan logica de seguimiento

Cada accion hace un trabajo: llamar a una API, enviar un mensaje, actualizar un registro, ejecutar otro workflow o preparar datos para pasos posteriores.

No todas las acciones estan disponibles en todos los constructores. Algunas acciones solo tienen sentido en workflows, algunas estan disenadas para pre-acciones o post-acciones de asistentes, y algunas requieren un contexto de conversacion activo.

Como usar esta referencia

Usa estas paginas para responder tres preguntas practicas:

  1. Cual accion debo elegir?
  2. Que campos necesito completar?
  3. Que resultado puedo reutilizar en un paso posterior?

Si necesitas ayuda para escribir expresiones para campos dinamicos, consulta el Editor de Expresiones CEL.

Reutilizando resultados de pasos anteriores

La mayoria de las acciones ponen datos a disposicion de pasos posteriores. Generalmente los referencias con step(0), step(1) y asi sucesivamente.

Ejemplos:

  • step(0).data
  • step(1).status
  • step(2).choices[0].message.content

Usa Depurar todo o depuracion paso a paso para inspeccionar la forma exacta de la salida antes de crear condiciones sobre ella.

Metadatos compartidos de ejecucion

Cuando quieres saber como se ejecuto un paso en si, usa el objeto anidado executionContext. Esto mantiene los metadatos del ejecutor separados de las salidas propias de la accion.

Campos comunes:

  • step(0).executionContext.status -- running, completed, skipped o failed
  • step(0).executionContext.startedAt
  • step(0).executionContext.finishedAt
  • step(0).executionContext.safeError.code
  • step(0).executionContext.safeError.userMessage
  • step(0).executionContext.safeError.retryable
  • step(0).executionContext.safeResult

Ejemplos:

  • get(step(0), 'executionContext.status') == 'completed'
  • get(step(1), 'executionContext.safeError.code') == 'unsupported_media_format'
  • get(step(2), 'executionContext.safeResult.reason') == 'condition_false'

safeError y safeResult estan sanitizados para ramificacion y depuracion. No incluyen stack traces sin procesar, secretos ni payloads del proveedor.

Algunas acciones ya usan campos de nivel superior como step(N).status para sus propias salidas, por ejemplo, un codigo de estado HTTP. Prefiere step(N).executionContext.status cuando te refieres al resultado de la accion en si.

Disponibilidad y contexto

  • Usa acciones de conversacion solo cuando la ejecucion actual ya tiene una conversacion con la que trabajar.
  • Usa acciones especificas de asistente solo donde las acciones de asistente estan soportadas.
  • Si una accion depende de una funcionalidad especifica, como memoria de conversacion o un workflow hijo, asegurate de que esa funcionalidad ya este configurada antes de depender de la accion en produccion.

Categorias

CategoriaUso tipico
IA y asistentesGenerar texto, enviar trabajo a otro asistente, limpiar memoria o finalizar una sesion de asistente
DatosCrear, obtener, buscar, actualizar, eliminar o activar workflows en tus datos de la empresa
MensajesEnviar respuestas a la conversacion actual o enviar mensajes proactivamente a un cliente
IntegracionesLlamar APIs externas con solicitudes HTTP
MediosGuardar archivos en storage y reutilizar sus URLs
NotificacionesAlertar a miembros del equipo dentro de AutoTalk
SeguridadGenerar tokens JWT temporales
Estado de la sesionAlmacenar valores para expresiones CEL posteriores en la misma ejecucion

Eligiendo la accion correcta

  • Usa Generar Respuesta LLM cuando quieras la salida directa del modelo.
  • Usa Enviar Mensaje al Asistente cuando quieras que otro asistente maneje la solicitud.
  • Usa Componer Respuesta de la Conversacion cuando quieras responder en la conversacion actual.
  • Usa Enviar Mensaje al Cliente cuando necesites enviar un mensaje directamente a un cliente especifico.
  • Usa Buscar Datos de la Empresa cuando necesites una lista.
  • Usa Obtener Datos de la Empresa cuando ya sepas que registro quieres.
  • Usa Ejecutar Workflow cuando quieras que un workflow llame a otro.

Acciones que no retornan campos reutilizables

Algunas acciones son principalmente efectos secundarios y no proporcionan un resultado de paso significativo para reutilizar.

Ejemplos comunes:

  • Limpiar Memoria de la Conversacion
  • Finalizar Sesion del Asistente
  • Crear Notificacion del Profesional

Usalas cuando necesites el efecto en si, no un valor para logica posterior.