Traitement côté envoi d'un message non EDI sortant sur AS2
Les pipelines AS2 fournis avec BizTalk Server peuvent être utilisés pour traiter un message EDI ou un message non EDI via le transport AS2. Différents pipelines sont utilisés pour les deux différents types de charges. Vous utilisez le pipeline AS2EdiSend pour traiter un message EDI sortant sur AS2, et le pipeline AS2Receive pour recevoir le MDN associé (le cas échéant). Vous utilisez le pipeline AS2Send pour traiter un message non EDI sortant sur AS2, et le pipeline AS2Receive pour recevoir le MDN associé (le cas échéant). Le message non-EDI peut correspondre à toute charge binaire.
Le pipeline d'envoi AS2Send assemble la charge non EDI et code le message AS2. Le pipeline de réception AS2Receive décode la réponse MDN. Vous pouvez inclure ces pipelines dans un port d'envoi de sollicitation-réponse HTTP bidirectionnel (pour les MDN synchrones) ou dans un port d'envoi HTTP unidirectionnel et un port de réception HTTP unidirectionnel (pour les MDN asynchrones).
Pour envoyer un échange EDI via AS2, BizTalk Server effectuez les étapes suivantes :
Traitement de la charge non EDI pour l'envoi
Envoi du message AS2
Réception du MDN renvoyé
Traitement de la charge utile non EDI pour l’envoi
Avant de créer le message AS2, un port d'envoi doit choisir la charge non EDI à l'aide d'une expression de filtre appropriée pour s'abonner aux messages. Vous pouvez utiliser un port d'envoi bidirectionnel ou un port d'envoi unidirectionnel, selon si le MDN est synchrone ou asynchrone. Le pipeline AS2Send traite ensuite la charge non EDI dans un message AS2.
Envoi du message AS2
L'encodeur AS2 du pipeline d'envoi AS2 effectue la première résolution de l'accord afin d'en déterminer les propriétés à utiliser pour le traitement du message sortant. Pour plus d’informations, consultez Résolution d’accord pour les messages AS2 sortants.
L'encodeur AS2 crée l'ensemble des en-têtes HTTP nécessaires à l'envoi d'un message AS2 sortant. Il ajoute ces en-têtes à la HTTP.UserHttpHeaders
propriété de contexte, qui est une chaîne unique de valeurs d’en-tête. L'encodeur AS2 crée les en-têtes AS2 suivants dans HTTP.UserHttpHeaders. Ces en-têtes doivent se trouver dans les messages AS2.
AS2-To
AS2-From
AS2-Version
MessageID
OriginalMessageID (pour MDN uniquement)
Si la propriété Request MDN est cochée, le pipeline définit les en-têtes AS2 Disposition-Notification-To, Receipt-Delivery-Option et Signed-Receipt-MICalg dans le message sur les valeurs des propriétés correspondantes ; et définit l’en-tête Signed-Receipt-Protocol AS2 sur « pcks7-signature » si la propriété Request signed MDN est cochée.
Si la
HTTP.UserHttpHeaders
propriété de contexte n’existe pas, l’encodeur AS2 la crée. S’ilHTTP.UserHttpHeaders
existe déjà, l’encodeur AS2 l’utilise au lieu de le créer. Si vous créezHTTP.UserHttpHeaders
, écrivez des en-têtes dans celui-ci, puis écrivez-les dans le contexte du message, l’encodeur AS2 utilisera ces en-têtes et ils prendront la priorité sur les en-têtes d’autres sources. Il existe une exception : l'en-tête AS2-From est toujours extrait des propriétés de l'accord.Si un en-tête AS2 ne se trouve pas dans
HTTP.UserHttpHeaders
, l’encodeur AS2 l’ajoute à partir de propriétés de contexte unique. Cela signifie que vous pouvez ajouter des en-têtes AS2 en les faisant la promotion ou en les écrivant dans le contexte du message (s’ils ne sont pas déjà dansHTTP.UserHttpHeaders
). Si un en-tête AS2 n’est ni dansHTTP.UserHttpHeaders
, ni présent en tant que propriété dans le contexte, l’encodeur AS2 l’ajoute à partir des propriétés du contrat dansHTTP.UserHttpHeaders
.Une fois que l’encodeur AS2 a généré les en-têtes dans la
HTTP.UserHttpHeaders
propriété , il les écrit dans le contexte du message. L’adaptateur HTTP récupèreHTTP.UserHttpHeaders
et ajoute les valeurs d’en-tête dansHTTP.UserHttpHeaders
le message.
Notes
Le transport AS2 est prévu pour fonctionner uniquement avec l'adaptateur HTTP. Toutefois, si vous définissez manuellement les propriétés de contexte appropriées, vous pouvez utiliser l'adaptateur FILE pour transporter les messages AS2. Pour plus d’informations, consultez Envoi d’un message AS2 sur un port d’envoi FILE.
Traitement du MDN renvoyé
Si un MDN est activé, le pipeline de réception associé au port d'envoi bidirectionnel reçoit le MDN du tiers qui reçoit le message AS2.
Notes
Pour plus d’informations sur le traitement effectué par les pipelines d’envoi AS2 sur les MDN entrants, consultez Envoi d’un MDN sortant.