Construya sus propios conectores de flujo de trabajo en el Microservicio de Flujo de Trabajo de ProcessMaker I/O

Matt McClintock 19 de febrero de 2018 Aplicaciones de negocios

Uso de conectores de flujo de trabajo en un proceso de negocios

Los conectores de flujo de trabajo se utilizan en los procesos comerciales para conectarse a sistemas de terceros. La mayoría de los procesos de negocios de hoy en día necesitan conectarse a múltiples sistemas de terceros para recuperar y/o enviar datos. ProcessMaker I/O tiene una forma muy poderosa y moderna de construir y administrar conectores y como tal tiene muchas de las características de un iPaaS (plataforma de integración como un servicio como mulesoft). Sin embargo, también puede ser conveniente conectar ProcessMaker a otras soluciones iPaaS para mejorar la habilidad de manejar flujos de trabajo y reglas alrededor de conjuntos de conectores más grandes.

ProcessMaker I/O es un microservicio de API de flujo de trabajo. Está diseñado para proporcionar una forma fácil para que un desarrollador pueda añadir funcionalidad de flujo de trabajo a una aplicación empresarial con poco esfuerzo de desarrollo. ProcessMaker I/O ahora tiene un marco de conectores completo para permitir una manera fácil de desarrollar y mantener los conectores como parte del microservicio ProcessMaker I/O.

Biblioteca de conectores de flujo de trabajo

ProcessMaker I/O tiene tanto una forma para que los desarrolladores creen sus propios conectores de flujo de trabajo y también una biblioteca existente de conectores disponibles públicamente que han sido construidos por el equipo de E/S de ProcessMaker. Constantemente estamos agregando nuevos conectores de flujo de trabajo, por lo que debe revisar con frecuencia para ver qué nuevos conectores están disponibles. Además, si desea ver un conector específico, y no está en la lista, por favor háganoslo saber. Aquí está nuestra actual biblioteca de conectores públicos.

Usando conectores de flujo de trabajo preconstruidos en 5 simples pasos

Para utilizar un conector preconstruido existente en su proceso de negocio, siga estos pasos:

  1. Crear un proceso con una Tarea de Servicio - Puede hacerlo de forma programada o utilizar cualquier editor de procesos existente compatible con BPMN 2.0 (Adonis, itp-commerceetc.) para crear un mapa de procesos exportables
  2. Configure el conector en la Tarea de Servicio de su proceso 
  3. Configura el enlace al guión de lua en el `script_url`parámetro de entrada
    • Como ejemplo de este parámetro para el conector Docusign es el siguiente:

`script_url`:https://raw.githubusercontent.com/ProcessMaker/pmio-lua-connectors/master/docusign/docusign.lua

2. Configurar los parámetros de entrada para el conector - Por ejemplo, para el conector Docusign aquí están los parámetros:

username: {username}

password: {password}

integratorKey: {key}

api_endpoint:información_de_entrada

script_url:https://raw.githubusercontent.com/ProcessMaker/pmio-lua-connectors/master/docusign/docusign.lua

base_url:https://demo.docusign.net/restapi/v2/

3. Configurar los parámetros de salida para el conector - Para ejemplo para el conector Docusign aquí están los parámetros:

“email”:{response.loginAccounts.0.email},
“accountId”:{response.loginAccounts.0.accountId},
“siteDescription”:{response.loginAccounts.0.siteDescription},
“userId”:{response.loginAccounts.0.userId},
“userName”:{response.loginAccounts.0.userName},
“name”:{response.loginAccounts.0.name},
“isDefault”:{response.loginAccounts.0.isDefault}

4. Cargue el xml del proceso con el conector configurado en su entorno de E/S de ProcessMaker

*Para cada punto final de la API tendrá que crear una Tarea de Servicio. Si desea utilizar varios endpoints, deberá añadir tantas Tareas de servicio como necesite por cada API de solicitud. Nota: existen formas de agrupar estos conectores para crear una única tarea de servicio, pero lo dejaremos para una discusión posterior.

El ejemplo de un proceso que incluye una tarea de servicio con un conector configurado (con todos los parámetros) es aquí.

Si no tiene un entorno de E/S de ProcessMaker creado, haga lo siguiente:

  1. Crear una nueva cuenta si no tienes ya uno
  2. De lo contrario, haga clic en la pestaña Entornos
  3. Haga clic en Crear un ambiente y seguir las instrucciones proporcionadas

Si ya tiene un entorno de E/S de ProcessMaker, por favor haga lo siguiente:

  1. Lanzar un entorno de E/S de ProcessMaker desde la pestaña Entorno
  2. Haga clic en la pestaña Importar en la parte superior izquierda y suba el archivo XML (.bpmn) del proceso desde su PC

5. Ejecutar el proceso

Para el ejemplo de xml con Docusign el comando es el siguiente:

'rizo'. https://YOUR_ENV.api.processmaker.io/api/v1/processes/Process/events/Start/webhook'

Cómo crear su propio conector

Una de las grandes características de ProcessMaker I/O es que no tienes que esperar a que nuestro equipo cree los conectores que quieres. Usted tiene la capacidad de crear cualquier conector a cualquier sistema de terceros muy fácilmente. Cualquier conector que usted cree tendrá que ser cargado en el repositorio Github de ProcessMaker para nuestros conectores Lua para poder ser ejecutado.  

No es necesario ser muy técnico para crear un conector, pero es necesario tener un conocimiento básico de los métodos de autorización, las llamadas a la API y la sintaxis Lua. Sin embargo, si observa algunos de nuestros ejemplos, creemos que incluso un usuario no técnico puede hacerlo con bastante facilidad.

Usando LUA

Lua es el lenguaje que usamos para crear sus conectores. Lua es un lenguaje de programación muy divertido y fácil de aprender. Significa "luna" en portugués, eso es genial. Si quieres aprender más sobre el lenguaje, puedes leer más aquí. Para usar Lua, el primer paso es configurar Lua en su computadora. Si ya tiene Lua, compruebe que todas las bibliotecas necesarias estén instaladas. Aquí puedes leer el tutorial detallado sobre cómo configurar Lua y sus módulos.

Usando la API del Servicio de Terceros

Una vez que tengas instalado Lua, el siguiente paso es encontrar la documentación para la API a la que planeas conectarte. Por ejemplo, si fueras a crear un conector para Docusign, entonces revisarías el DOCUMENTACIÓN DE LA API DE DocuSign. Tendrá que determinar qué puntos finales de la API desea utilizar para su necesidad de proceso particular.

Para empezar con la API de terceros, deberá hacer lo siguiente:

  1. Crear una cuenta de servicio o utilizar una cuenta existente
  2. Obtener los detalles de la autorización

Por ejemplo: Autenticación del encabezado del legado de DocuSign (https://docs.docusign.com/esign/guide/authentication/legacy_auth.html)

  1. Define los parámetros de entrada que quieres usar en tu conector

Por ejemplo: Parámetros de entrada para DocuSign

* `nombre de usuario` - el correo electrónico del usuario de la aplicación utilizado para autorizar la llamada

* `Contraseña` - la contraseña de usuario utilizada para autorizar la llamada

* `integratorKey` - se utiliza para integrar y autentificar con la plataforma DocuSign

* `api_endpoint` - API endpoint URI, por ejemplo, `información_de_entrada`

* `base_url` - la url al servicio API

Cree su propio guión de Lua

La forma más fácil de hacerlo es simplemente copiar el guión de uno de nuestros ejemplos de conector Lua.  

Cada conector LUA consiste en los siguientes componentes:

  • respuesta - estructura decodificada JSON recibida de la respuesta API.
  • código - código de respuesta HTTP.
  • encabezados - estructura de los encabezados recibidos de la respuesta de la API.

Aquí está el ejemplo del conector Docusign

https://github.com/ProcessMaker/pmio-lua-connectors/blob/master/docusign/docusign.lua

Hay más ejemplos disponibles en nuestro biblioteca de conectores.

Cuando se definen todos los parámetros, se escriben todos los componentes, el conector está listo para la prueba.

Probando su conector

Después de desarrollar el conector, deberías probarlo para asegurarte de que todo funciona correctamente. La forma más fácil de probarlo es crear un archivo con los parámetros de entrada que requiere el conector.

Como ejemplo:

input2.txt:

{

 "nombre de usuario": "su_nombre de usuario",

 "Contraseña": "su_contraseña",

 "llave_integradora": "su_llave_integradora",

 "api_endpoint":"login_information",

 "baseUrl": "https://demo.docusign.net/restapi/v2/"

}

Ejecute el modo de consola e introduzca el siguiente comando:

`lua docusign.lua <input2.txt`

Deberías recibir esta respuesta:

{“headers”:{“content-length”:”379″,”strict-transport-security”:”max-age=31536000; includeSubDomains”,”content-type”:”application/json; charset=utf-8″,”date”:”Fri, 09 Feb 2018 13:41:18 GMT”,”connection”:”close”,”x-docusign-tracetoken”:”XXXXX”,”cache-control”:”no-cache”},“code”:200,“response”:{“loginAccounts”:[{“baseUrl”:”https://demo.docusign.net/restapi/v2/accounts/XXXXX”,”email”:”[email protected]“,”accountId”:”XXX”,”siteDescription”:””,”userId”:”XXXXX”,”userName”:”XXXXX”,”name”:”XXXXX”,”isDefault”:”true”}]}}

¡Si obtienes "código":200, significa que tu conector funciona correctamente!

Publicar su conector a la biblioteca de conectores

  1. Crear un Github o utilizar una cuenta existente
  2. Crea una solicitud de extracción al repositorio público de Github y envía un correo electrónico a [email protected]
  3. Obtener la aprobación del equipo de PMIO
  4. Encuentra tu conector en la PBiblioteca de conectores MIO

Para la versión actual sólo se dispone de conectores de la Biblioteca para su uso. Estamos planeando añadir la posibilidad de usar su propio repositorio privado en el futuro. Si desea crear el conector Lua y mantenerlo en el repositorio privado ahora, por favor contacte con nuestro equipo de soporte [email protected]

Ahora su conector está listo para ser usado.

Solicite una demostración

    Consentimiento a la Política de Privacidad Al marcar esta casilla usted consiente en Declaración de privacidad de ProcessMaker.



    Actualización de la privacidad
    Utilizamos cookies para que las interacciones con nuestro sitio web y servicios sean fáciles y significativas. Las cookies nos ayudan a entender mejor cómo se utiliza nuestro sitio web y adaptar la publicidad en consecuencia.

    Acepta