Connecteur FAST Actes¶
Transmet des actes vers FAST Actes avec dépôt des fichiers sur WebDAV puis appel au webservice FASTConnecteur.
Ce connecteur permet d’envoyer un acte accompagné de ses annexes, en s’appuyant sur la classification FAST Actes : nature, matières et types de pièces jointes.
| Type de connecteur | Télétransmission d’actes |
| Service externe | FAST Actes |
| Dépôt des fichiers | WebDAV |
| Transmission | Webservice SOAP FASTConnecteur |
| Format acte | XML ACTES + PDF |
| Annexes | Oui |
| Authentification | Certificat client |
| Contrôle de périmètre | Oui |
| Classification FAST Actes | Nature, matières, types de pièces jointes |
A. Paramétrage technique¶
La configuration du connecteur FAST Actes est déclarée au format JSON.
Exemple :
{
"siren": "999100081",
"prefixe": "xelians",
"departement": "999",
"arrondissement": "1",
"webdavUrl": "https://recette.efast.fr/ascl/webdav/999100081/xelians/",
"webserviceUrl": "https://recette.efast.fr/ascl/services/FASTConnecteur",
"portalUrl": "https://recette.efast.fr/ascl/",
"certPath": "/usr/local/share/ca-certificates/depot.p12",
"certPass": "********",
"certType": "P12",
"dnUtilisateur": "E = depot-demo@xelians.fr, CN = DEPOT-DEMO XELIANS, OU = 0002 999100081, OU = CACertificat, O = CONNXELIANS, L = PARIS, C = FR",
"statuts": {
"enAttente": "ACTE_ATT",
"erreurEnvoi": "ACTE_CTRL",
"arRecu": "ACTE_NOTIF",
"anomalie": "ACTE_CTRL"
}
}
| Champ | Description |
|---|---|
| siren | SIREN de la collectivité utilisé pour la transmission FAST Actes. |
| prefixe | Préfixe de dépôt utilisé dans les flux et/ou chemins FAST Actes. |
| departement | Code département de la collectivité. |
| arrondissement | Code arrondissement utilisé pour la génération du flux ACTES. |
| webdavUrl | URL du WebDAV FAST Actes sur lequel sont déposés les fichiers. |
| webserviceUrl | URL du webservice SOAP FASTConnecteur. |
| portalUrl | URL du portail FAST Actes, utilisée pour accéder à l’interface FAST. |
| certPath | Chemin absolu vers le certificat client utilisé pour l’authentification. |
| certPass | Mot de passe du certificat client. |
| certType | Type du certificat :P12, PEM, etc. |
| dnUtilisateur | Distinguished Name de l’utilisateur de dépôt déclaré côté FAST Actes. |
| statuts.enAttente | Statut Maarch appliqué lorsque la transmission est en attente. |
| statuts.erreurEnvoi | Statut Maarch appliqué lorsqu’une erreur survient pendant l’envoi. |
| statuts.arRecu | Statut Maarch appliqué lorsqu’un accusé de réception est reçu. |
| statuts.anomalie | Statut Maarch appliqué lorsqu’une anomalie est détectée. |
Les valeurs
webdavUrl,webserviceUrl,portalUrl,certPath,certPass,certTypeetdnUtilisateursont fournies par l’exploitant FAST Actes ou par l’administrateur technique de l’environnement cible.
B. Prérequis techniques¶
Avant l’activation du connecteur, vérifier les points suivants :
- le certificat client est présent sur le serveur applicatif ;
- le chemin déclaré dans
certPathest accessible par l’utilisateur exécutant PHP ; - le mot de passe du certificat est valide ;
- le serveur Maarch Courrier peut joindre l’URL WebDAV ;
- le serveur Maarch Courrier peut joindre l’URL du webservice FASTConnecteur ;
- les flux HTTPS sortants sont autorisés ;
- la classification FAST Actes est disponible dans Maarch Courrier ;
- les statuts déclarés dans
statutsexistent dans Maarch Courrier.
Certificat¶
Le certificat doit être installé sur le serveur.
Exemple : /usr/local/share/ca-certificates/depot.p12```
Vérifier les droits :
L’utilisateur PHP doit pouvoir lire le fichier.
C. Paramétrage fonctionnel¶
Associer aux bannettes cibles l’action système d’envoi vers FAST Actes.
L’action permet de renseigner les informations nécessaires à la télétransmission :
- nature de l’acte ;
- matières ;
- document utilisé comme acte ;
- annexes ;
- type de pièce jointe pour chaque annexe.
| Élément | Obligatoire | Description |
|---|---|---|
| Nature | Oui | Nature FAST Actes de l’acte transmis. |
| Matières | Oui | Classification matière FAST Actes. |
| Acte | Oui | Document principal de la transmission. |
| Annexes | Non | Documents complémentaires transmis avec l’acte. |
| Type PJ | Oui pour chaque annexe | Type de pièce jointe FAST Actes associé à l’annexe. |
D. Données attendues par l’action¶
L’action d’envoi vers FAST Actes reçoit une structure contenant les informations de classification et les documents à transmettre.
Exemple :
{ "nature": 1, "matiere": { "level_1": 10, "level_2": 50, "level_3": 100 }, "documents": { "acte": { "mainDocument": true, "resId": 100 }, "annexes": } }
| Champ | Description |
|---|---|
| nature | Identifiant de la nature FAST Actes. |
| matiere.level_1 | Identifiant du premier niveau de matière. |
| matiere.level_2 | Identifiant du second niveau de matière. |
| matiere.level_3 | Identifiant du troisième niveau de matière. |
| documents.acte | Document utilisé comme acte principal. |
| documents.acte.mainDocument | true si l’acte est le document principal du courrier, false si l’acte est une pièce jointe. |
| documents.acte.resId | Identifiant du document utilisé comme acte. |
| documents.annexes | Liste des annexes à transmettre. |
| documents.annexes[].mainDocument | true si l’annexe est un document principal, false si c’est une pièce jointe. |
| documents.annexes[].resId | Identifiant du document utilisé comme annexe. |
| documents.annexes[].typePj | Identifiant du type de pièce jointe FAST Actes. |
E. Cinématique d’envoi¶
L’envoi vers FAST Actes suit l’ordre suivant :
Action utilisateur ↓ Validation des paramètres ↓ Contrôle de la ressource principale ↓ Contrôle de la classification FAST Actes ↓ Contrôle des documents à transmettre ↓ Contrôle du périmètre utilisateur ↓ Génération du XML ACTES ↓ Préparation du PDF de l’acte et des annexes ↓ Dépôt des fichiers sur le WebDAV FAST Actes ↓ Enregistrement de la transmission ↓ Génération du XML de transmission ↓ Appel SOAP FASTConnecteur ↓ Analyse de la réponse
F. Contrôles réalisés avant envoi¶
Ressource principale¶
La ressource principale liée à l’action doit exister.
Si elle n’existe pas, l’envoi est interrompu.
Classification FAST Actes¶
Les éléments suivants sont contrôlés :
- la nature ;
- les matières ;
- les types de pièces jointes ;
- la cohérence hiérarchique entre la nature et les types de pièces jointes.
| Élément | Contrôle |
|---|---|
| Nature | Doit exister dans la classification FAST Actes. |
| Matières | Chaque niveau renseigné doit exister. |
| Type PJ | Doit exister dans la classification FAST Actes. |
| Hiérarchie | Le type PJ doit être compatible avec la nature. |
Documents¶
L’acte est obligatoire.
Il peut correspondre :
- au document principal du courrier ;
- à une pièce jointe.
Les annexes sont facultatives.
Chaque document transmis doit exister.
| Document | Contrôle |
|---|---|
| Acte document principal | La ressource principale doit exister. |
| Acte pièce jointe | La pièce jointe doit exister. |
| Annexe document principal | La ressource principale doit exister. |
| Annexe pièce jointe | La pièce jointe doit exister. |
Périmètre utilisateur¶
L’utilisateur courant doit avoir accès à la ressource principale concernée.
Pour une pièce jointe, le contrôle de périmètre se fait sur la ressource principale rattachée.
G. Fichiers déposés sur WebDAV¶
Le connecteur dépose les fichiers nécessaires à la transmission sur le WebDAV FAST Actes.
Fichiers déposés :
- XML ACTES ;
- PDF de l’acte ;
- annexes.
Le nom des fichiers est déterminé lors de la préparation du flux.
Le dépôt est effectué sur l’URL définie par :
H. Appel au webservice FASTConnecteur¶
Après le dépôt WebDAV, le connecteur appelle le webservice FASTConnecteur configuré dans :
L’appel utilise le certificat client :
{ "certPath": "/usr/local/share/ca-certificates/depot.p12", "certPass": "fastpwd", "certType": "P12" }
Le connecteur contrôle :
- le code HTTP de la réponse ;
- le code métier retourné dans la réponse SOAP.
Un code HTTP différent de 200 est considéré comme une erreur.
Un code métier FAST différent de 0 est considéré comme une erreur.
I. Gestion des statuts¶
Les statuts à appliquer sont définis dans la section statuts.
{ "statuts": { "enAttente": "ACTE_ATT", "erreurEnvoi": "ACTE_CTRL", "arRecu": "ACTE_NOTIF", "anomalie": "ACTE_CTRL" } }
| Statut | Description |
|---|---|
| enAttente | Statut appliqué lorsqu’une transmission est créée ou en attente de retour. |
| erreurEnvoi | Statut appliqué lorsqu’une erreur survient pendant l’envoi. |
| arRecu | Statut appliqué lorsqu’un accusé de réception est reçu. |
| anomalie | Statut appliqué lorsqu’une anomalie est détectée. |
Les valeurs doivent correspondre à des statuts existants dans Maarch Courrier.
J. Nettoyage en cas d’erreur¶
Si une erreur survient après le dépôt des fichiers, le connecteur tente de nettoyer les éléments créés.
Nettoyage effectué :
- suppression des fichiers déposés sur le WebDAV ;
- suppression de l’entrée de transmission en base si elle a été créée.
Le nettoyage est réalisé en best effort :
- toutes les suppressions sont tentées ;
- une erreur de suppression n’empêche pas les autres suppressions ;
- les erreurs de nettoyage sont journalisées ;
- l’erreur initiale reste prioritaire.
Exemple :
Dépôt WebDAV OK ↓ Enregistrement de la transmission OK ↓ Erreur lors de l’appel FASTConnecteur ↓ Suppression de l’entrée de transmission ↓ Suppression des fichiers WebDAV ↓ Remontée de l’erreur initiale
K. Consultation des transmissions¶
Le connecteur permet de consulter les transmissions FAST Actes liées à une ressource.
Liste des transmissions¶
La liste est récupérée à partir de l’identifiant de la ressource principale.
Contrôles effectués :
- existence de la ressource principale ;
- droit d’accès de l’utilisateur courant.
Exemple de retour :
Détail d’une transmission¶
Le détail est récupéré à partir de l’identifiant de transmission.
Contrôles effectués :
- existence de la transmission ;
- droit d’accès de l’utilisateur courant à la ressource principale liée.
L. Erreurs possibles¶
| Cas | Erreur |
|---|---|
| Ressource principale inexistante | MainResourceDoesNotExistProblem |
| Ressource principale hors périmètre | MainResourceOutOfPerimeterProblem |
| Pièce jointe inexistante | AttachmentNotFoundProblem |
| Pièce jointe hors périmètre | AttachmentOutOfPerimeterProblem |
| Donnée obligatoire manquante | ParameterArrayCanNotBeEmptyProblem |
| Nature, matière ou type PJ inexistant | FastActesClassificationItemIdNotFoundProblem |
| Hiérarchie de classification invalide | FastActesClassificationBadHierarchyProblem |
| Erreur de dépôt WebDAV | FastActesWebDavConnectionFailedProblem |
| Erreur de transmission SOAP | FastActesWSTransmitProblem |
| Transmission introuvable | FastActesTransmissionNotFoundProblem |
M. Points de vigilance intégrateur¶
- Vérifier que le certificat est lisible par le processus PHP.
- Vérifier que les URL FAST Actes sont accessibles depuis le serveur Maarch Courrier.
- Vérifier que les statuts déclarés existent dans Maarch Courrier.
- Vérifier que la classification FAST Actes est correctement chargée.
- Vérifier que les types de pièces jointes utilisés sont compatibles avec les natures sélectionnées.
- Vérifier les droits d’accès utilisateur sur les documents transmis.
- Vérifier que le dépôt WebDAV et l’appel SOAP utilisent le même environnement FAST Actes.
- Ne pas modifier
siren,prefixe,departementouarrondissementsans validation avec l’exploitant FAST Actes.