Automatización de Pipeline y Flujos de Trabajo
Ejecuciones Automáticas de Pipeline
Inscripción Automática de Contactos en Flujos de Trabajo
El sistema de automatización de pipeline proporciona inscripción automática de contactos en flujos de trabajo predefinidos:
Configuración Automática de Pipeline:
- Modelo AutomaticPipeline: Define qué pipelines se aplican automáticamente a contactos
- Asociación de Tipo de Contacto: Los pipelines automáticos están configurados para el tipo de modelo Contact
- Asignación de Pipeline: Múltiples pipelines se pueden configurar para inscribir automáticamente nuevos contactos
- Configuración Basada en Equipo: Los pipelines automáticos están configurados a nivel de equipo
Activadores de Creación de Contacto:
- Integración de Observador: ContactObserver activa automáticamente la inscripción en pipeline
- Inscripción Inmediata: Los nuevos contactos se inscriben en pipelines automáticos al crearse
- Soporte de Múltiples Pipelines: Los contactos se pueden inscribir en múltiples pipelines automáticos simultáneamente
- Diseño Polimórfico: El sistema de pipeline admite múltiples tipos de modelos además de contactos
Proceso de Inscripción:
- Detección Automática: El sistema detecta pipelines automáticos configurados para contactos
- Creación de PipelineRun: Creación automática de ejecuciones de pipeline para nuevos contactos
- Inicialización de Estado: Las ejecuciones de pipeline comienzan con estado 'pending'
- Programación del Primer Paso: El paso inicial del pipeline se programa según el retraso configurado
Gestión de Ejecuciones de Pipeline
Las ejecuciones de pipeline proporcionan gestión integral de ejecución de flujos de trabajo:
Propiedades de Ejecución de Pipeline:
- Asociación Pipelineable: Relación polimórfica con contactos u otros modelos
- Referencia de Pipeline: Vincula a configuración de pipeline específica
- Seguimiento de Pasos: Rastrea paso actual y siguiente en ejecución de pipeline
- Gestión de Estado: Seguimiento integral de estado durante ejecución de flujo de trabajo
Inicialización de Ejecución:
- Programación Automática: Primer paso programado automáticamente con retraso configurado
- Configuración de Estado: Estado inicial establecido en 'pending' para cola de ejecución
- Seguimiento de Número de Paso: Número de siguiente paso inicializado para iniciar ejecución de pipeline
- Gestión de Marca de Tiempo: Tiempo de ejecución del siguiente paso calculado y almacenado
Pasos de Pipeline y Retrasos
Acciones Temporizadas y Progresión de Flujo de Trabajo
El sistema de pipeline admite flujos de trabajo sofisticados basados en pasos con ejecución temporizada:
Estructura de Paso de Pipeline:
- Número de Paso: Numeración secuencial para ejecución ordenada de flujo de trabajo
- Tipo de Acción: Define qué acción ejecutar (enviar correo electrónico, crear tarea)
- Configuración de Retraso: Retraso de tiempo antes de ejecución de paso (en segundos)
- Contenido de Mensaje: Contenido para correo electrónico u otras acciones de comunicación
- Datos Adicionales: Almacenamiento JSON para configuración específica de paso
Tipos de Acción de Paso:
- Enviar Correo Electrónico: Envío automático de correo electrónico a contactos
- Crear Tarea: Creación de tareas para acciones de seguimiento (funcionalidad planificada)
- Acciones Personalizadas: Sistema de acciones extensible para pasos adicionales de flujo de trabajo
- Parámetros de Acción: Almacenamiento flexible de datos para requisitos específicos de acción
Retraso y Temporización:
- Retrasos Flexibles: Los pasos pueden tener cualquier duración de retraso especificada en segundos
- Programación Automática: Tiempo de ejecución del siguiente paso calculado automáticamente
- Temporización Precisa: El sistema procesa pipelines cada minuto para temporización precisa
- Progresión Basada en Tiempo: Los flujos de trabajo progresan según retrasos de tiempo configurados
Ejecución y Progresión de Pasos
La ejecución de pasos de pipeline sigue un modelo de progresión estructurado:
Proceso de Ejecución de Pasos:
- Actualizaciones de Estado: Estado de ejecución de pipeline actualizado a 'running' durante ejecución
- Ejecución de Acción: Acciones de paso específicas ejecutadas según tipo de paso
- Cálculo del Siguiente Paso: El sistema calcula siguiente paso en secuencia
- Manejo de Finalización: Pipeline marcado como 'completed' cuando todos los pasos finalizan
Lógica de Progresión:
- Ejecución Secuencial: Los pasos se ejecutan en orden numérico
- Avance Automático: El sistema avanza automáticamente al siguiente paso después de ejecución
- Aplicación de Retraso: Siguiente paso programado con retraso configurado
- Detección de Finalización: Finalización de pipeline detectada cuando no existen más pasos
Integración de Observador de Contacto
Activadores Automáticos de Pipeline en Creación de Contacto
El sistema de observador de contacto proporciona activación automática de pipeline sin problemas:
Funcionalidad de Observador:
- Evento de Creación de Contacto: El observador se activa automáticamente cuando se crean nuevos contactos
- Detección Automática de Pipeline: El sistema identifica pipelines automáticos para modelo de contacto
- Creación de Ejecución de Pipeline: Creación automática de ejecuciones de pipeline para nuevos contactos
- Activación Inmediata: Las ejecuciones de pipeline se crean y programan inmediatamente
Beneficios de Integración:
- Cero Intervención Manual: Los pipelines comienzan automáticamente sin acción del usuario
- Aplicación Consistente: Todos los nuevos contactos se inscriben automáticamente en pipelines configurados
- Automatización Escalable: El sistema maneja cualquier número de configuraciones de pipeline automáticas
- Ejecución Confiable: El patrón de observador asegura activación consistente de pipeline
Implementación del Patrón de Observador:
- Arquitectura Basada en Eventos: Eventos de creación de contacto activan métodos de observador
- Búsqueda Automática de Pipeline: El observador consulta configuraciones de pipeline automáticas
- Creación de Pipeline por Lotes: Múltiples ejecuciones de pipeline creadas eficientemente
- Aislamiento de Errores: Los errores de creación de pipeline no afectan la creación de contacto
Asignación Manual de Pipeline
Además de la inscripción automática, los pipelines se pueden asignar manualmente:
Asignación Manual Durante la Creación:
- Selección de Pipeline: Los usuarios pueden seleccionar pipelines específicos durante la creación de contacto
- Soporte de Múltiples Pipelines: Los contactos se pueden asignar a múltiples pipelines manualmente
- Creación de Ejecución de Pipeline: Las asignaciones manuales crean ejecuciones de pipeline inmediatamente
- Automatización Combinada: Los pipelines manuales y automáticos funcionan juntos
Gestión de Pipeline Durante la Edición:
- Actualizaciones de Pipeline: Las asignaciones de pipeline existentes se pueden modificar durante la edición de contacto
- Eliminación de Pipeline: Las ejecuciones de pipeline no deseadas se pueden eliminar de contactos
- Adición de Pipeline: Nuevos pipelines se pueden asignar a contactos existentes
- Gestión Compleja de Pipeline: El sistema maneja cambios complejos de asignación de pipeline
Procesamiento de Pipeline
Ejecución Programada de Acciones de Pipeline
El sistema de procesamiento de pipeline proporciona ejecución programada confiable:
Procesamiento Programado:
- Ejecución Cada Minuto: El procesamiento de pipeline se ejecuta cada minuto para ejecución oportuna
- Detección de Ejecuciones Pendientes: El sistema identifica ejecuciones de pipeline listas para ejecución
- Procesamiento por Lotes: Múltiples ejecuciones de pipeline procesadas eficientemente en cada ciclo de ejecución
- Manejo de Errores: Los errores de ejecución de pipeline individuales no afectan otras ejecuciones
Gestión de Cola de Ejecución:
- Cola Basada en Tiempo: Ejecuciones de pipeline en cola según marcas de tiempo next_step_at
- Filtrado de Estado: Solo ejecuciones con estado 'pending' se procesan para ejecución
- Consultas Eficientes: Consultas de base de datos optimizadas para detección rápida de ejecuciones de pipeline
- Gestión de Carga: El sistema maneja grandes números de ejecuciones de pipeline eficientemente
Confiabilidad de Procesamiento:
- Registro de Errores: Registro integral de errores para ejecuciones de pipeline fallidas
- Manejo de Excepciones: Los fallos de ejecución individuales no detienen el procesamiento general
- Seguimiento de Estado: Estado de ejecución de pipeline rastreado con precisión durante ejecución
- Mecanismos de Recuperación: Sistema diseñado para ejecución confiable de pipeline
Ejecución de Acciones de Pipeline
Las acciones de pipeline se ejecutan a través de un sistema de acciones estructurado:
Procesamiento de Acciones:
- Detección de Tipo de Acción: El sistema identifica tipo de acción de paso para ejecución adecuada
- Acciones de Correo Electrónico: Acciones de envío de correo electrónico procesadas a través de PipelineService
- Acciones de Tarea: Acciones de creación de tareas preparadas para implementación futura
- Acciones Extensibles: Sistema de acciones diseñado para fácil extensión
Procesamiento de Acciones de Correo Electrónico:
- Envío de Correo Electrónico: Envío automático de correo electrónico a través del servicio de pipeline
- Contenido de Correo Electrónico: Contenido de mensaje de paso usado para cuerpo de correo electrónico
- Configuración de Correo Electrónico: Datos adicionales admiten configuración específica de correo electrónico
- Seguimiento de Correo Electrónico: Resultados de envío de correo electrónico rastreados para análisis de pipeline
Gestión de Estado de Flujo de Trabajo
Seguimiento de Estado y Finalización de Ejecución de Pipeline
El sistema de flujo de trabajo proporciona gestión integral de estado:
Estados de Ejecución de Pipeline:
- Pending: Ejecución de pipeline esperando ejecución del siguiente paso
- Running: Ejecución de pipeline ejecutando actualmente un paso
- Completed: Ejecución de pipeline finalizó todos los pasos exitosamente
- Manejo de Errores: Ejecuciones fallidas registradas pero no bloquean otras ejecuciones
Progresión de Estado:
- Actualizaciones Automáticas de Estado: Estado actualizado automáticamente durante ejecución de pipeline
- Seguimiento Paso a Paso: Cambios de estado rastreados para cada ejecución de paso
- Detección de Finalización: Finalización automática cuando no existen más pasos
- Persistencia de Estado: Estado de ejecución de pipeline almacenado para monitoreo y análisis
Procesamiento Basado en Estado:
- Procesamiento de Ejecuciones Pendientes: Solo ejecuciones pendientes se seleccionan para ejecución
- Protección de Ejecuciones en Ejecución: Las ejecuciones en ejecución no se reprocesan para prevenir conflictos
- Archivado de Ejecuciones Completadas: Ejecuciones completadas mantenidas para seguimiento histórico
- Filtrado Basado en Estado: Gestión de pipeline filtrada por estado de ejecución
Monitoreo y Análisis de Flujo de Trabajo
El monitoreo de flujo de trabajo de pipeline proporciona información sobre efectividad de automatización:
Monitoreo de Ejecución:
- Seguimiento de Estado de Ejecución: Monitorear estado de ejecución de pipeline en todos los flujos de trabajo
- Temporización de Ejecución: Rastrear temporización de ejecución de pipeline y retrasos
- Monitoreo de Tasa de Éxito: Analizar tasas de finalización de pipeline y métricas de éxito
- Análisis de Rendimiento: Monitorear rendimiento y eficiencia de procesamiento de pipeline
Análisis de Flujo de Trabajo:
- Efectividad de Pipeline: Analizar qué pipelines son más efectivos
- Compromiso de Contacto: Rastrear respuesta de contacto a flujos de trabajo automatizados
- Optimización de Flujo de Trabajo: Identificar oportunidades para mejora de flujo de trabajo
- ROI de Automatización: Medir retorno de inversión para flujos de trabajo automatizados
Análisis de Errores:
- Seguimiento de Fallos: Seguimiento integral de fallos de ejecución de pipeline
- Análisis de Patrones de Errores: Identificar problemas comunes de ejecución de pipeline
- Monitoreo de Recuperación: Rastrear mecanismos de recuperación y reintento de pipeline
- Salud del Sistema: Monitorear salud y rendimiento general del sistema de pipeline
