Connecteurs

Principe

Les connecteurs permettent de faciliter l’intégration avec des applications tierces. L’utilisation d’un connecteur se déroule selon les trois étapes suivantes :

  • Appel du connecteur avec une requête définissant ses paramètres d’exécution
  • Exécution de la requête fournie
  • Une réponse est retournée avec le résultat de l’exécution de la requête


Cette section liste les connecteurs supportés.

Depuis un processus

Les connecteurs peuvent être appelés depuis un processus. Pour configurer l’appel à un connecteur, il suffit de :

  • Ajouter une tâche de type ServiceTask
  • Sélectionner l’Element Template correspondant
  • Remplir les informations nécessaires

Appel par HTTP

Les connecteurs peuvent être appelés à travers un appel REST. Ils sont ainsi utilisables de manière adhoc tel que :

POST {core}/rest/connectors/{connectorId}
{
    "param": "value"
}

Configuration d’un serveur email

Ce délégué nécessite au préalable la configuration d’un EmailServer. Cette configuration d’un serveur email s’appuie sur les deux protocoles suivants :

  • SMTP/SMTPS pour l’envoi d’email
  • IMAP/IMAPS pour la réception et récupération d’email

Cette configuration peut être réalisée directement à travers la console d’administration dans la section Configuration > Email.

Envoi d’un email

Informations d’envoi

Paramètre Valeur Obligatoire Description
From Adresse email Oui Expéditeur
To Adresse email Oui Destinataire
Subject String Oui Sujet
Cc Adresse email Non Destinataire en copie
Bcc Adresse email Non Destinataire en copie cachée
Text String Oui Corps de l’email

Ces paramètres peuvent être valorisés à l’aide de variables du processus telles que ${variable}.

Templating du corps

Afin de générer le corps de l’email à partir d’un template HTML, il est nécessaire de remplir le champ Template avec son nom. Dans ce cas, le corps de l’email sera ajouté dans la variable content pour être utilisée avec le template configuré.

Pièces jointes

Lors de l’envoi d’un email, des fichiers peuvent être ajoutés en pièce jointe de celui-ci. Ces fichiers peuvent être soit le contenu de documents soit des fichiers temporaires.

Afin d’ajouter des fichiers en pièce jointes, renseignez le champ Document identifier to attach avec les identifiants à ajouter (séparés par des virgules).

Poll d’email

Informations d’envoi

Paramètre Valeur Obligatoire Description
Folder INBOX Oui Dossier ou libellé
Download Option No downloads Oui Option de téléchargement
Output Variable emails Oui Nom de la variable stockant les courriers reçus

Ces paramètres peuvent être valorisés à l’aide de variables du processus telles que ${variable}.

Poll de Gmail

Il faut activer l’option Autoriser les applications moins sécurisées pour Consulter GMail.

Envoi d’une requête HTTP

La réponse obtenue suite à la requête HTTP peut être stockée :

  • dans un fichier temporaire
  • au sein d’une variable du workflow

Réponse stockée dans un fichier

Paramètre Obligatoire Description
URL Oui URL HTTP
Temporary file variable Oui Nom de la variable de sortie dans laquelle est stockée l’identifiant du ficher temporaire

Réponse stockée dans une variable

Paramètre Obligatoire Description
URL Oui URL HTTP
Expected response type Oui Format attendu de la réponse HTTP
Path Oui Sélecteur utilisé pour extraire la partie de la réponse à conserver
Response variable Oui Nom de la variable de sortie dans laquelle est stockée la partie sélectionnée de la réponse HTTP

Ces paramètres peuvent être valorisés à l’aide de variable du processus tel que ${variable}.

Sélecteur de réponse

Afin de conserver uniquement une ou plusieurs parties de la réponse obtenue, il est possible de définir un sélecteur. Ce sélecteur doit être adapté en fonction du format de la réponse HTTP.

XPath

XPath est un langage permettant de localiser des noeuds au sein d’un document XML. Un chemin XPath peut être utilisé pour conserver une ou plusieurs portions d’une réponse HTTP obtenue au format XML.

JSONPath

Les expressions JSONPath peuvent être utilisées pour des réponses au format JSON.

Les expressions JSONPath peuvent être utilisées tel que :

  • la notation par points :

    $ .store.book [0] .title
  • la notation entre parenthèses :

    $ ['store'] ['book'] [0] ['title']

Pour plus d’informaion, veuillez consulter la spécification JSONPath

Principe

L’utilisation de ce connecteur offre la possibilité d’intégrer un processus de signature électronique fourni par DocuSign. Ce connecteur s’appuie sur deux actions permettant de manipuler une enveloppe DocuSign à partir des informations suivantes :

Paramètre Obligatoire Description
baseUrl Oui URL d’accès à DocuSign
integratorKey Oui Clé d’API permettant d’identifier l’application appelante
username Oui Identifiant de l’utilisateur
password Oui Mot de passe de l’utilisateur

Nota : Le mot de passe peut être fourni sous la forme d’une chaîne de caractères chiffrée.

Création d’une enveloppe

Cette action permet la création et l’envoie d’une enveloppe DocuSign. Une enveloppe est constituée à partir de plusieurs informations :

Paramètre Obligatoire Description
template Oui Identifiant du modèle DocuSign
document Oui Identifiant du document à signer
recipientRole Oui Rôle du signataire
recipientEmail Oui Adresse email du signataire
recipientName Oui Nom du signataire


Exemple BPMN

<bpmn2:serviceTask id="Activity_1vqoksu" camunda:modelerTemplate="docusign-request">
    <bpmn2:extensionElements>
        <camunda:connector>
            <camunda:inputOutput>
                <camunda:inputParameter name="baseUrl">https://demo.docusign.net/restapi</camunda:inputParameter>
                <camunda:inputParameter name="username"></camunda:inputParameter>
                <camunda:inputParameter name="password"></camunda:inputParameter>
                <camunda:inputParameter name="recipientName"></camunda:inputParameter>
                <camunda:inputParameter name="document"></camunda:inputParameter>
                <camunda:inputParameter name="recipientEmail"></camunda:inputParameter>
                <camunda:inputParameter name="recipientRole"></camunda:inputParameter>
                <camunda:inputParameter name="template"></camunda:inputParameter>
                <camunda:inputParameter name="integratorKey"></camunda:inputParameter>
                <camunda:outputParameter name="envelopeId">${envelopeId}</camunda:outputParameter>
            </camunda:inputOutput>
            <camunda:connectorId>request-signature-docusign</camunda:connectorId>
        </camunda:connector>
    </bpmn2:extensionElements>
</bpmn2:serviceTask>

L’enveloppe est automatiquement envoyée à DocuSign pour procéder à la signature. Le signature recevra un email lui permettant de signer électroniquement le document soumis.


Suite à l’envoie de l’enveloppe, une réponse est retournée avec les informations issues de DocuSign :

Paramètre Description
envelopeId Identifiant de l’enveloppe envoyée
status Le statut de l’enveloppe envoyée
statusDateTime Date à laquelle l’enveloppe a été envoyée
uri URI permettant d’accéder à l’enveloppe
errorDetails Détails d’une erreur potentielle

Statut d’une enveloppe

Cette action permet de déterminer le statut d’une enveloppe DocuSign et de mettre à jour FlowerDocs.

Paramètre Obligatoire Description
envelopeId Oui Identifiant de l’enveloppe DocuSign
document Non Identifiant du document à mettre à jour avec le document signé


Exemple BPMN

<bpmn2:serviceTask id="Activity_16qcrcd" camunda:modelerTemplate="docusign-handle">
    <bpmn2:extensionElements>
        <camunda:connector>
            <camunda:inputOutput>
                <camunda:inputParameter name="baseUrl">https://demo.docusign.net/restapi</camunda:inputParameter>
                <camunda:inputParameter name="integratorKey"></camunda:inputParameter>
                <camunda:inputParameter name="username"></camunda:inputParameter>
                <camunda:inputParameter name="password"></camunda:inputParameter>
                <camunda:inputParameter name="envelopeId">${envelopeId}</camunda:inputParameter>
                <camunda:inputParameter name="document"></camunda:inputParameter>
                <camunda:outputParameter name="certificate">${certificate}</camunda:outputParameter>
                <camunda:outputParameter name="completedTime">${completedTime}</camunda:outputParameter>
                <camunda:outputParameter name="status">${status}</camunda:outputParameter>
            </camunda:inputOutput>
            <camunda:connectorId>handle-signature-docusign</camunda:connectorId>
        </camunda:connector>
    </bpmn2:extensionElements>
</bpmn2:serviceTask>


Le statut de l’enveloppe est retourné dans le paramètre status de la réponse. Lorsque l’enveloppe a été complétée, son statut a la valeur completed et les informations suivantes sont ajoutées à la réponse :

Paramètre Description
replaced Indique si le document à signer a été remplacé avec le document signé
temporaryFile Identifiant du fichier temporaire créé si le contenu du document n’a pas été remplacé

Si aucun identifiant de document n’est fourni, le document signé est stocké sous la forme d’un fichier temporaire dont l’identifiant est retourné dans la réponse d’appel au connecteur. Ce fichier temporaire peut, par la suite, être utilisé pour créer un nouveau document.

Principe

SentAI est une plateforme d’intelligence artificielle permettant d’effectuer une analyse sentimentale d’un texte. L’analyse sentimentale permet de déterminer un score pour chaque sentiment analysé (positif, négatif, surprise et neutre) en fonction du poids des émotions détectées (peur, dégoût, joie, colère, confiance…)

Utilisation

Afin de réaliser une analyse sentimentale d’un document, il est définir les paramètres suivants :

Paramètre Obligatoire Description
url Oui URL de l’API exposée par SentAI
username Oui Nom du compte de service
password Oui Mot de passe du compte de service
document Oui Identifiant du document à envoyer en analyse


Exemple BPMN

<bpmn2:serviceTask id="Activity_01yuaig" name="SentAI analyze" camunda:modelerTemplate="sentai">
    <bpmn2:extensionElements>
        <camunda:connector>
            <camunda:inputOutput>
                <camunda:inputParameter name="url">https://ws.sentai.ml</camunda:inputParameter>
                <camunda:inputParameter name="username"></camunda:inputParameter>
                <camunda:inputParameter name="password"></camunda:inputParameter>
                <camunda:inputParameter name="document"></camunda:inputParameter>
                <camunda:outputParameter name="sentiment">${sentiment}</camunda:outputParameter>
                <camunda:outputParameter name="negative">${tot_negative}</camunda:outputParameter>
                <camunda:outputParameter name="positive">${tot_positive}</camunda:outputParameter>
            </camunda:inputOutput>
            <camunda:connectorId>sentai</camunda:connectorId>
        </camunda:connector>
    </bpmn2:extensionElements>
</bpmn2:serviceTask>


Une fois l’analyse sentimentale effectuée, la réponse inclut le score de chaque sentiment et le sentiment principal :

Paramètre Description
tot_negative Score de sentiments négatifs
tot_positive Score de sentiments positifs
tot_neutral Score de neutralité
tot_surprise Score de surprise
sentiment Sentiment principal détecté