Maarch2Maarch¶
Cette page décrit les webservices Maarch2Maarch. Ils permettent à une instance Maarch Courrier d'envoyer un pli numérique SEDA à une autre instance, de recevoir les accusés techniques, et de suivre les retours.
Pré-requis¶
- Le module Maarch2Maarch doit être configuré dans
custom/{customId}/config/m2m_config.xmlou, à défaut, dansconfig/m2m_config.xml. - L'utilisateur appelant doit avoir les droits requis par la route appelée.
- L'envoi d'un pli numérique nécessite le privilège
manage_numeric_package. - La configuration Maarch2Maarch nécessite le privilège
admin_parameters. - Les endpoints de réception M2M ne sont pas publics. L'instance appelante doit donc fournir une authentification valide, généralement via l'URL de communication M2M du contact ou de la configuration.
Cycle d'échange¶
- L'utilisateur initialise l'écran d'envoi avec
GET /rest/messageExchangesInitialization. - L'utilisateur envoie le pli avec
POST /rest/resources/{resId}/messageExchange. - L'instance émettrice génère un fichier SEDA, l'enregistre, puis l'envoie à l'URL du destinataire.
- L'instance destinataire reçoit le pli sur
POST /rest/saveNumericPackage. - L'instance destinataire renvoie un accusé sur
POST /rest/saveMessageExchangeReturn. - L'instance destinataire renvoie ensuite une réponse de traitement sur
POST /rest/saveMessageExchangeReturn. - Les notifications de suivi sont reçues sur
POST /rest/saveMessageExchangeReview.
Capacité utilisée par Maarch2Maarch¶
Lire les informations publiques de l'instance¶
Cette route est publique. Maarch2Maarch l'utilise pour vérifier si une instance distante prend en charge l'envoi d'un retour.
Champs utiles pour Maarch2Maarch¶
canMaarch2MaarchHandleReturnRequest est conservé pour compatibilité historique.
Correspondance des types SEDA¶
| Type | Endpoint récepteur | Description |
|---|---|---|
ArchiveTransfer |
/rest/saveNumericPackage |
Pli numérique principal ou retour préparé. |
Acknowledgement |
/rest/saveMessageExchangeReturn |
Accusé technique de réception. |
ArchiveTransferReply |
/rest/saveMessageExchangeReturn |
Réponse de traitement du pli. |
ArchiveModificationNotification |
/rest/saveMessageExchangeReview |
Notification de suivi ou d'opération. |
Diagnostic des erreurs curl¶
Lors d'un envoi par URL, l'instance émettrice appelle l'URL stockée dans la
communication du destinataire. Le code ajoute ensuite les paramètres
extension, size et type, puis transmet le fichier SEDA encodé en base64.
Si l'instance distante renvoie un code HTTP supérieur ou égal à 400, l'instance
émettrice remonte une erreur curlRequestErrorProblem. Dans ce cas, le détail
de l'erreur correspond souvent à la réponse JSON produite par l'instance
destinataire.
Points à vérifier en priorité :
- L'URL du contact M2M pointe-t-elle vers la bonne instance ?
- Les identifiants M2M sont-ils valides ?
- L'utilisateur M2M distant dispose-t-il du privilège
manage_numeric_package? - La configuration distante
m2m_config.xmlest-elle complète ? - Le type de pièce jointe configuré pour la réception n'est-il pas
signed_response? - Le fichier SEDA transmis contient-il le type attendu par l'endpoint appelé ?