send
Chemin complet : /system/ as2/send
La fonction as2/send envoie un message AS2 à un serveur AS2 à distance. Pour pouvoir appeler cette fonction à partir une tâche, il est nécessaire de configurer au préalable les détails du partenaire AS2 dans FlowForce Server. Pour une information générale sur l’intégration et l’utilisation AS2, voir Intégration AS2.
La fonction renvoie un objet AS2 MDN qui encapsule le MDN réel renvoyé par le serveur et les informations auxiliaires provenant du protocole. Pour obtenir l’information supplémentaire de l’objet AS2 MDN (par ex., le statut HTTP ou l’MDN du message originel), ajoutez une étape d’exécution qui appelle les fonctions d’expression AS2.
Pour en savoir plus sur l'utilisation de la fonction as2/send dans les tâches, voir Envoyer des messages AS2.
En-têtes HTTP
Lors de l'envoi d'un message AS2, FlowForce Server définit les en-têtes HTTP conformément à la spécification AS2. Les en-têtes réels dépendent de la configuration de la fonction send, de la configuration du partenaire et d'autres paramètres (détails ci-dessous).
En-têtes fixes :
MIME-Version: 1.0
AS2-Version: 1.2
EDIINT-Features: multiple-attachments
From: as2@example.com
Subject: AS2 Request
En fonction de la configuration du partenaire dans /system/as2/send :
AS2-From: P2 (depuis la page de configuration du Partenaire AS2, Paramètres locaux/Nom AS2)
AS2-To: P1 (depuis la page de configuration du Partenaire AS2, Paramètres locaux/Nom AS2)
À partir du paramètre /system/as2/send ou généré automatiquement s'il n'est pas fourni :
Message-ID: <20201123192334591017-31ca0d9e1b654f7294b10624d1ab5075@DEV-ABC>
En fonction de la configuration du partenaire (cryptage et/ou signature), les en-têtes MIME requis sont ajoutés :
Content-Type: application/pkcs7-mime; smime-type=enveloped-data; name="message.p7m"
Content-Disposition: attachment; filename="message.p7m"
Si le paramètre Notification de disposition du message/Demande de MDN signé est coché sur la page Partenaire AS2, l'en-tête suivant est ajouté :
Disposition-Notification-To: as2dummy@example.com
À l'aide du paramètre HTTP Headers (décrit dans le tableau ci-dessous), vous pouvez définir des en-têtes supplémentaires avant d'envoyer le message et remplacer la valeur par défaut de l'en-tête Subject.
Paramètres
Nom | Type | Description |
---|---|---|
Partenaire | Partenaire AS2 | Paramètre obligatoire. Référence l’objet AS2 partner (voir Configurer AS2 Partenaires). |
Message | stream | Paramètre obligatoire. Le contenu du message AS2 à envoyer, comme objet stream. Le stream requis par le champ peut être converti d’un fichier (par exemple, XML ou fichier EDI) par les moyens d’une expression FlowForce, par exemple :
stream-open("C:\files\myfile.edi", "application/EDIFACT")
Notez que la fonction stream-open ci-dessus fournit aussi l’en-tête de message Content-Type comme deuxième paramètre. D’autres valeurs pour Content-Type peut aussi être utilisé, si nécessaire.
Pour une introduction aux expressions dans FlowForce, voir Expressions. |
ID message | chaîne | Paramètre optionnel. Ce champ fournit la valeur pour le champ en-tête Message-ID, comme string. Pour générer cette valeur, appelez la fonction d’expression new-message-id. |
En-têtes HTTP | séquence de (chaîne, chaîne) | Paramètre optionnel. Ce paramètre vous permet de remplacer la valeur par défaut de l'en-tête Subject (demande AS2) et de définir des en-têtes supplémentaires en plus de ceux requis par la spécification AS2. Par exemple, vous pouvez inclure un en-tête tel que X-Cyclone-Metadata-FdaCenter pour envoyer des messages à la FDA.
Vous ne pouvez pas utiliser ce paramètre pour remplacer les en-têtes requis par la spécification AS2, à l'exception de l'en-tête Subject. |
Abandon sur erreur | Booléen | Paramètre optionnel. Ce paramètre détermine la sortie de la tâche dans laquelle une erreur est apparue. Si le paramètre Abandon sur erreur est true, l’exécution de la tâche sera terminée. Si le paramètre Abandon sur erreur est false, FlowForce Server ignorera les erreurs et poursuivra son exécution de la tâche. La valeur par défaut est true. |
Exemples
Voir les exemples suivants :
•Exemple : Échange de message AS2 complet (simple)
•Exemple : Échange de message AS2 complet (avancé)