Ejemplo de Conector Personalizado

<< Clic para mostrar Tabla de Contenidos >>

Navegación:  Bizagi Studio > Integrar aplicaciones externas desde Bizagi > Conectores de Bizagi > Hub de integración > Crear conectores > Interfaz del Editor de conectores en detalle > Conectores Personalizados >

Ejemplo de Conector Personalizado

Introducción

En esta se sección se ilustra un ejemplo a manera de paso a paso donde se crea un conector Personalizado.

En el ejemplo, se publica un nuevo mensaje en Twitter desde un proceso de Bizagi.

Para mayor información sobre esta funcionalidad, consulte los Conectores Personalizados.

 

Antes de comenzar

Recuerde que típicamente para integrar servicios en la nube, como aquellos proporcionados por Twitter, usted deber contar con una aplicación válida y autorizada a acceder a su cuenta en Twitter. Para mayor información al respecto, revise la sección de creación de aplicación y obtención de credenciales de autorización en el artículo Configurar y Usar el Conector de Twitter.

 

Crear y Configurar el Proceso en Bizagi Studio

Para este fin y para poder ilustrar el potencial de este conector, se ilustra a continuación un proceso donde que emula una compañía de media (periódicos) que publica enlaces a sus noticias en su cuenta de Twitter.

 

Para ello se utiliza este proceso:

 

example_custom_1

 

El detalle detrás de este proceso, es que cada vez que se crea un caso, se publica el enlace al URL de la noticia y se configura un número predeterminado de ocurrencia para hacerlo (o.e cada 2 horas, un post a Twitter). El caso puede ser cancelado en cualquier momento.

Para configurar el conector desde este proceso, primero se presenta cómo implementar dicho proceso y finalmente, desde dónde configurar el uso del conector.

 

Implementar el proceso

Basado en el modelo BPMN de arriba, los siguientes detalles de implementación consideran:

 

1.Utilizar este modelo de datos:

 

example_custom_2

 

2.Configurar el tiempo de espera de un temporizador en el modelo de proceso.

 

example_custom_28

 

3.Definir la forma para la tarea donde se registra la noticia (Register News).

 

example_custom_3

 

4.Definir la forma donde se maneja la información de la noticia:

 

example_custom_4

 

5.Configurar la lógica dentro de la compuerta (permitiendo una nueva publicación cuando el número de intentos previos no haya superado la cantidad permitida definida a priori):

 

example_custom_5

 

example_custom_6

 

6.Definir una regla que se ejecute en la tarea de registro (Register news), donde se asigne información inicial del usuario y la fecha:

 

example_custom_7

 

//Case information

 <MediaPublicity.Newsregistrydate> = DateTime.Today;
 <MediaPublicity.Newsregistryperformer> = Me.Case.WorkingCredential.UserId;

 

7.Definir una regla que se ejecute en la tarea de publicación (Publish news through Twitter).

 

example_custom_8

 

Seleccione un mensaje para Twitter, de una lista de mensajes previamente definidos:

var MessagesEntity = CHelper.GetValueAsCollection(<MediaPublicity.Messagestopublish>);
var MessagesAmount = MessagesEntity.size();

var randNumb = CHelper.Math.Rand(0,MessagesAmount-1);
var MessageToPublish = MessagesEntity.get(randNumb).getXPath("Message");

Me.setXPath("MediaPublicity.Currentmessage",MessageToPublish);

 

example_custom_8a

 

Incrementar el total de número de publicaciones realizadas:

<MediaPublicity.Currentpublication> = <MediaPublicity.Currentpublication>+1;

 

Crear el conector

Para empezar a crear un conector de Twitter, tenga en cuenta que primero se ilustra cómo puede descargar y apoyarse en una librería existente de conexión específica para ese sistema.

 

1.Ubicando las librerías de Node.js para el conector

Descargue desde www.npmjs.com, las librerías de Node.Js para ser utilizada como base de la conectividad dentro del conector.

 

Consulte la documentación de las librerías mismas, o incluso su código, para prestar especial atención a cómo se utilizan las librerías, incluyendo la configuración de parámetros de entrada y de salida.

 

En este ejemplo, se ilustra el uso de la librería llamada twit, creada por ttezel.

 

 

 

example_custom_11

 

example_custom_12

 

Si no se presenta suficiente documentación sobre la estructura de salida y otros parámetros opcionales, siempre puede navegar también por la API de la aplicación.

Para este ejemplo puede revisar:

Documentación API: https://developer.twitter.com/en/docs/twitter-api/tweets/manage-tweets/introduction

Repositorio GitHub con los códigos de muestra: https://github.com/twitterdev/Twitter-API-v2-sample-code

 

example_custom_32

 

2. Creando un conector Personalizado

Acceda al Hub de Integración  y cree un nuevo conector con los siguientes pasos:

 

a.Adicione las librerías descargadas al conector. Para este ejemplo, se agrega la librería twit al conector.

 

CustomConnector25

 

b.Adicione los parámetros de autenticación.

 

CustomConnector26

 

note_pin

Dado que estos valores de parámetros contendrán información sensible, se debe utilizar la encriptación de campos (field encryption).

Esto cambiará la entrada de los valores en Bizagi Studio de un simple campo de texto a un campo de contraseña (haciendo que esté protegido al intentar recuperar los valores almacenados en estos parámetros).

 

c.Adicione una acción y configure sus propiedades. Tenga presente que el nombre y la descripción se muestran cuando se se configure el uso del conector desde los procesos.

 

CustomConnector27

 

d.Defina la estructura de los datos de entrada (no necesariamente deben ser todos los campos del API; solamente aquellos que usted detecte sean útiles para su conector).

 

CustomConnector28

 

 

e.Defina la estructura de los datos de salida (no necesariamente deben ser todos los campos del API; solamente aquellos que usted detecte sean útiles para su conector).

 

CustomConnector29

 

f.Implemente el código donde se especifica el comportamiento de la acción.

 

CustomConnector30

 

En este ejemplo se utiliza el siguiente código (clic para desplegar el código):

 

hmtoggle_plus1Show Action code

 

g.Guarde el conector.

 

CustomConnector31

 

3. Probando el conector

En esta parte, se realizan una serie de pasos con Bizagi Studio para contar con un proceso que utilice dicho conector.

 

note_pin

En este artículo se considera un proceso de ejemplo que ilustra el potencial de este conector puntual.

Para este paso, usted debe conocer sobre el uso y opciones básicas de Bizagi Studio, y tenga presente que usted no necesariamente debe utilizar este mismo proceso para probar este conector.

 

 

Configurar el conector

Una vez que haya creado el conector, su configuración y uso se lleva a cabo desde Bizagi Studio.

 

Ahora que el proceso está listo para usar el conector, conéctalo al proceso siguiendo estos pasos.

 

1.Vaya a la Vista de Experto y en los Sistemas Externos abra los Conectores API.

 

CustomConnector39a

 

2.Seleccione el nuevo conector que aparece listado producto de esta acción, y dé clic derecho sobre su versión para adicionar una Nueva Configuración de Sistema, o haga clic en la opción de Nueva Configuración de Sistema en el menú superior.

 

CustomConnector40

 

3.Asigne a la configuración un nombre y descripción. Asegúrese también de seleccionar el método de autenticación ("Custom") para configurarlo. Ingrese: API Key, API Secret, Access Token y Access Token Secret, según como pertenezca a su cuenta de Twitter. Estas credenciales serán utilizadas de ahora en adelante al momento de ejecutar la conexión con Twitter.

 

example_custom_23

 

4.De vuelta a la vista de asistente (wizard view), seleccione el paso 4 (Activity Actions). Adicione una acción de tipo conector para que se ejecute a la salida de la tarea de publicación, asegurándose de seleccionar Connector desde la lista desplegable en la opción On Exit.

 

example_custom_24

 

5.Seleccione el conector y luego la acción a ejecutarse.

 

example_custom_25

 

6.Mapee los datos de entrada.

 

example_custom_26

 

note_pin

Dado que Currentmessage y URL son dos atributos separados que irán dentro de un mismo parámetro, se deben concatenar.

Para su mejor uso, se utiliza un espacio en blanco como constante, entre estos atributos.

 

7.Mapee los datos de salida y dé clic en Finalizar.

 

example_custom_27

 

Ejecución

Lance el Portal de trabajo de Bizagi para ejecutar y probar el conector para este proceso.

Cree un nuevo caso y registre la URL de la noticia. Seguidamente, adicione mensajes para la publicación.

 

example_custom_30

 

Dé clic en Siguiente (Next) al finalizar.

 

En este punto usted notará que un nuevo tweet será publicado con el mensaje y la URL de la noticia.

 

example_custom_31