Las tareas de integración son las cajas de colores con diferentes símbolos que utilizamos en las soluciones de integración para implementar las operaciones más comunes que necesitamos aplicar a los mensajes de información que pasan a través de ellas y que intercambiamos entre las aplicaciones externas.


 Dvjs5fMv9zzfd4m-IZcIOdIS92Vyhoij1g.png


Las tareas de integración son las unidades funcionales más básicas de un proceso de integración y las clasificamos en base al tipo de operación que realizan enrutadoras (verdes), las modificadoras (azules) y las transformadoras (rojas). También podemos clasificar las tareas por su número de entradas y salidas (ver imagen de la derecha).



U4aggJV-GiO7D3CKBn8B32wVL1cpyWtznA.pngNota: La última tarea es un caso especial donde una de sus dos entradas es una entrada especial denominada “contexto”



A continuación describimos cada una de las tareas indicando cuando te puede interesar usarlas. Si necesitas más información sobre su funcionamiento, entra en las especificaciones particulares de cada una:


Tareas enrutadoras

Las tareas enrutadoras sirven para encauzan o direccionar los mensajes hacia sus destinos, pero sin realizar ningún cambio en los mensajes que encaminan. Necesitaremos usar este tipo de tareas cuando queramos filtrar, replicar, distribuir, correlacionar, encauzar, etc.

Las tareas enrutadoras disponibles en i2factory son las siguientes:


Icono


Nombre
Descripción
Ejemplo de uso
Replicator genera varias réplicas o copias exactas de un mensaje de entrada Si quieres publicar un mismo mensaje de texto en varias redes sociales debes sacar una copia por cada una de ellas
Filter filtra los mensajes que le llegan en base a una condición preestablecida Estas sincronizando información sobre proyectos y quieres que sólo lo hagan aquellos proyectos que están ya iniciados o en progreso 
Distributor  distribuye los mensajes que le llegan por diferentes caminos de salida en base a un criterio por cada slot de salida Necesitas publicar contenido de texto en Twitter e imágenes en Flickr, y ambas cosas en Facebook y Wordpress
Merger encauza varios caminos de mensajes o slots en uno sólo Tienes varios buzones de email entrantes de atención post-venta y necesitas procesarlos en un único flujo porque el sistema de incidencias es el mismo
Correlator correlaciona mensajes distintos que llegan por separado en base a una marca o identificador común Necesitas contrastar que dos contactos que te llega varios caminos son la misma persona correlacionando a través de su DNI
  Threader desacopla la ejecución de tareas que van a continuación del Threader, haciendo que los mensajes que pasen por dichas tareas se ejecuten en nuevas hebras de ejecución Tienes un sistema experto o científico que tarda mucho en procesar una petición y deseas que esa rama de la solución se ejecute aparte para que no afecte negativamente al resto.

Tareas modificadoras

Las tareas modificadoras añaden o eliminan información a los mensajes pero sin alterar sus esquemas, es decir, su estructura de campos y nodos. Necesitaremos hacer uso de estas tareas cuando tengamos que eliminar la información no relevante, añadir información extra de contexto o añadir ciertas marcas especiales. 

Las tareas modificadoras disponibles en i2factory son las siguientes:



Icono


Nombre
Descripción
Ejemplo de uso
Slimmer adelgaza el contenido de un mensaje eliminando la información irrelevante para el proceso Dado un mensaje con información de un Contacto, nos interesa sólo nombre, apellidos y DNI y todos los nodos relacionados con la dirección (calle, país, código postal, etc.) nos sobran
Context-based Slimmer elimina parte del contenido de un mensaje entrante en base a un criterio específico marcado por un mensaje de contexto Queremos eliminar de una campaña de marketing aquellos clientes cuya edad es inferior a la indicada en el mensaje de contexto, que actuará como variable
Context-based Enricher añade contenido a un mensaje entrante en base a un criterio específico marcado por un mensaje de contexto Al publicar un tweet a partir de un mensaje de texto deseamos añadirle una imagen o vídeo para que se publique junto con el tweet.
Correlation Id Setter establece una marca o identificador para posteriormente realizar la tarea Correlator correctamente Queremos contrastar los datos de llamada de una centralita de teléfono y saber quien es el usuario con la información que contiene el sistema de recursos humanos. El número de teléfono sería el campo de correlación
Return Address Setter establece una dirección de retorno usada para que un puerto de respuesta se comunique con una aplicación externa Tenemos programado un webhook en Salesforce que dispara un evento cuando se comercial crea un contacto. Una vez recogido el evento y comprobado en el ERP interno que no se trata de un cliente ya existente , devolvemos OK a la creación del contacto a la dirección establecida.
Header Promoter Añade parte de la información del cuerpo del mensaje en la cabecera del mismo Necesitamos mantener cierta información de un mensaje antes de que una llamada a un puerto de solicitud lo procese y cambie el cuerpo del mensaje por completo. Podemos almacenar esa información en la cabecera (que se mantiene) con esta tarea antes del puerto de solicitud y recuperarla luego con Header Demoter.
Header Demoter Añade parte de la información de la cabecera del mensaje en el cuerpo del mismo Necesitamos recuperar cierta información de un mensaje después de que una llamada a un puerto de solicitud lo procesara y cambiara el cuerpo del mensaje por completo. Podemos recuperar esa información de la cabecera si fue copiada ahí previamente con una tarea Header Promoter.

Tareas transformadoras

Las tareas transformadoras ayudan a transformar uno o varios mensajes de entrada en nuevos mensajes de salida cuyos esquemas son completamente nuevos, es decir, modifican la estructura de nodos de los mensajes originales. Necesitaremos estas tareas cuando tengamos que traducir el esquema de mensaje de una aplicación a otra distinta, cuando tengamos que trocear una lista  de elementos en cada uno de ellos o al recomponer dicha lista. 

Las tareas transformadoras disponibles en i2factory son las siguientes:


 

Icono


Nombre
Descripción
Ejemplo de uso
Assembler unifica varios mensajes entrantes en un nuevo mensaje. Procesando un email con una incidencia del cliente, queremos
unificar en el mismo mensaje la información del correo con la información de la
incidencia abierta en el sistema de ticketing antes de responder al del cliente.
Translator compone un nuevo mensaje a partir del contenido de un
mensaje entrante, pero con un esquema nuevo
Prácticamente todos los puerto de salida y solicitud necesitan usar un
Translator previamente, para adaptar el esquema del mensaje a la aplicación
externa con la que se comunique. Ejemplo: convertir un email entrante POP3
en uno saliente SMTP.
Splitter
genera varios mensajes de salida por cada elemento
contenido en una lista o nodo específico del mensaje entrante.
En una migración de datos de un CRM a otro, tenemos todos los contactos
a migrar en un mismo mensaje. Necesitamos trocear la lista por cada contacto
para adaptar los datos al formato del nuevo CRM de manera individual por
contacto.
Aggregator recompone un mensaje único compuesto por los distintos
mensajes generados por una tarea Splitter
En la migración anterior, el CRM de destino admite una carga masiva de datos,
por lo que volvemos a recomponer la lista de contactos anterior ya procesados
y adaptados al nuevo formato.
Chopper divide un mensaje de entrada en varios mensajes distintos
de salida.
Tenemos un email con ficheros adjuntos que tenemos que responder, pero
sin perder los ficheros. Podemos dividir el mensaje entrante con la
información del correo hacia un puerto SMTP (respuesta al correo)
y hacer una copia de seguridad de los archivos en Google Drive.