IGNFCollaboratifGetReportsConnector
Ce Transformer permet de télécharger des signalements venant du site espacecollaboratif.ign.fr.
Une série de filtres, tous facultatifs, est disponible dans les options.
L'utilisateur peut posséder un compte sur l'Espace Collaboratif, l'utilisation de ce compte permet d'accéder aux signalements privés visibles de ce compte, en sus des signalement publics.
Note
L'utilisation d'IGNFCollaboratifGetReportsConnector sans compte ne donne accès qu'aux signalements publics. Tous les paramètres de IGNFCollaboratifGetReportsConnector sont pilotables par des attributs des entités entrantes ou des paramètres utilisateurs du workbench. Les requêtes sont pour le moment sérialisées et ralenties à 3 par seconde.
Configuration
Ports en entrée
Ports de sortie
Requête
Chaque entité entrante déclenche une requête à l'Espace Collaboratif. Lorsque la requête est correctement exprimée, les entités entrantes ressortent par le port Requête avec leurs géométries et attributs initiaux, non altérés, augmentés des attributs descripteurs de la requête émise à l'Espace Collaboratif (hormis les login et mot de passe). Lorsque la requête est mal exprimée, elle est rejetée.
Attributs en entrée ;
requete_id = numéro d'identifiant (pour cette exécution seulement) de la requête conduisant à retenir ce signalements ;
requete_reports_count = nombre de signalements (port de sortie 'Reports' téléchargés via cette requête) ;
requete_reports_httpquery = URL de la requête théorique à l'Espace Collaboratif selon les paramètres de filtre fournis par l'utilisateur, c'est à dire ceux enregistrés dans les attributs ci-dessous:
_auteur_id = valeur entrante de l'attribut de filtre (le cas échéant) 'Auteur' ;
_groupe_id = valeur entrante de l'attribut de filtre (le cas échéant) 'Numéro de groupe' ;
_departements = valeur entrante de l'attribut de filtre (le cas échéant) 'Département(s)' ; suite des codes INSEE des départements, de séparateur ';' ;
_communes = valeur entrante de l'attribut de filtre (le cas échéant) 'Commune(s)' ; suite des codes INSEE des communes, de séparateur ';' ;
_date_creation = valeur entrante de l'attribut de filtre (le cas échéant) 'Date de création', de format YYYY-MM-DD ou de valeur NULL ;
_date_modif = valeur entrante de l'attribut de filtre (le cas échéant) 'Date de mise à jour', de format YYYY-MM-DD ou de valeur NULL ;
_date_cloture = valeur entrante de l'attribut de filtre (le cas échéant) 'Date de clôture', de format YYYY-MM-DD ou de valeur NULL ;
_statut = valeur entrante de l'attribut de filtre (le cas échéant) 'Statut'.
Note
Ni le login ni le mot de passe ne sont percolés. requete_reports_count peut contenir un mauvais décompte lorsque le filtre spatial est constitué de la valeur entrante de l'attribut de filtre 'Département(s)' sur un département corse.
Reports
Les requêtes peuvent conduire à télécharger des signalements décrits comme suit :
requete_id = numéro d'identifiant (pour cette exécution seulement) de la requête conduisant à retenir ce signalements
signalement_id = numéro d'identifiant du signalement ;
groupe = nom du groupe dans lequel le signalement a été fait ;
groupe_id = numéro d'identifiant EspaceCollaboratif du groupe dans lequel le signalement a été fait ;
groupe_description = description du groupe dans lequel le signalement a été fait. Sur l'espacecollaboratif.ign.fr, certaines descriptions peuvent être mises en forme (gras, soulignement, ...), elles sont ici ignorées ;
auteur = numéro d'identifiant de l'auteur du signalement ;
code_insee = code insee de la commune ;
nom_com = nom de la commune (en majuscules non accentuées) ;
insee_dep = numéro du département ;
nom_dep = nom du département (en majuscules non accentuées) ;
commentaire = description du signalement ;
theme = thème lié au signalement ;
attributs = attributs du signalement s'il y en a (JSON) ;
fichier_attache = pièce-jointe s'il y en avait une avec le signalement (JSON) ;
date_creation = date de création du signalement ;
date_modif = date de dernière modification du signalement ;
date_cloture = date de la clôture du signalement ;
statut = état du signalement ;
reponse = réponse au signalement s'il y en a une (JSON) ;
croquis_xml = croquis s'il y en a un (XML) ;
croquis = croquis s'il y en a un (JSON).
Note
Les signalements ressortent triés selon leur date de création (tri ascendant).
Rejected
Les entités/requêtes invalides ou en erreurs ressortent par ce port non altérées mais avec des attributs supplémentaires :
Attributs en entrée ;
requete_id = numéro d'identifiant (pour cette exécution seulement) de la requête en échec ;
fme_rejection_code = code de l'erreur ;
fme_rejection_message = description de l'erreur ;
requete_reports_httpquery = URL de la requête théorique à l'Espace Collaboratif selon les paramètres de filtre fournis par l'utilisateur, c'est à dire ceux enregistrés dans les attributs ci-dessous ;
_auteur_id = valeur entrante de l'attribut de filtre (le cas échéant) 'Auteur' ;
_groupe_id = valeur entrante de l'attribut de filtre (le cas échéant) 'Numéro de groupe' ;
_departements = valeur entrante de l'attribut de filtre (le cas échéant) 'Département(s)' ;
_communes = valeur entrante de l'attribut de filtre (le cas échéant) 'Commune(s)' ;
_date_creation = valeur entrante de l'attribut de filtre (le cas échéant) 'Date de création' ;
_date_modif = valeur entrante de l'attribut de filtre (le cas échéant) 'Date de mise à jour' ;
_date_cloture = valeur entrante de l'attribut de filtre (le cas échéant) 'Date de clôture' ;
_statut = valeur entrante de l'attribut de filtre (le cas échéant) 'Statut'.
Note
Ni le login ni le mot de passe ne sont percolés. L'attribut système non exposé fme_feature_type permet de différencier les entités Rejected.
Paramètres
Vous avez la possibilité de filtrer les signalements. Les filtres sont cumulables sauf en ce qui concerne le filtre spatial. Il faudra en effet choisir entre spécifier une liste de départements, une liste de communes ou une géométrie entrante.
IGNFCollaboratifGetReportsConnector nécessite la saisie (ou le pilotage via des attributs des Features entrantes, ou des paramètres utilisateurs du workbench) de paramètres facultatifs:
Paramètres optionnels mais solidaires :
Login : pseudo de l'utilisateur de l'Espace Collaboratif à utiliser pour l'authentification ;
Mot de passe : mot de passe associé à cet identifiant.
Paramètres optionnels :
Auteur : numéro d'identifiant de l'auteur (numéro) ;
Numéro de groupe : identifiant du groupe (numéro) ;
Filtre spatial (un seul critère de choix, facultatif, possible) :
Département(s) : filtre la recherche sur le ou les départements. Si vous voulez en mettre plusieurs, il faut séparer les numéros par un ';' sans espace. Les valeurs acceptées sont celles permises par l'expression régulière ^([0][1-9]|2[AB]|2[1-9]|[1345678][0-9]|9[012345]|97[12346])$.
Commune(s) : filtre la recherche sur la ou les communes. Si vous voulez en mettre plusieurs, il faut séparer les numéros par un ';' sans espace ;
Utiliser la géométrie entrante comme filtre : si la case est cochée, la géométrie entrante doit être de type 'polygone simple' et de système de coordonnées connu et différent de EPSG=0. La recherche sera filtrée sur les signalements intersectants cette géométrie entrante. Si la case à cocher est pilotée par un attribut de la Feature entrante, sa valeur doit être 'YES' ou 'NO' (sensible à la casse).
Statut : cherche les signalements de cette valeur de statut (étape de traitement, colonne 'status' OU colonne 'title' du tableau ci-dessous) ;
Date de création : cherche les signalements créés depuis de cette date (incluse) (format : AAAA-MM-JJ) ;
Date de mise à jour : cherche les signalements mis à jour depuis de cette date (incluse) (format : AAAA-MM-JJ) ;
Date de clôture : cherche les signalements clôts depuis de cette date (incluse) (format : AAAA-MM-JJ).
Si le numéro d'identifiant de groupe vous est inconnu, consultez connaître l'identifiant d'un groupe
La liste des statuts de signalements est:
status |
title |
---|---|
submit |
Reçu dans nos services |
pending0 |
En demande de qualification |
pending |
En cours de traitement |
pending1 |
En attente de saisie |
pending2 |
En attente de validation |
valid |
Pris en compte |
valid0 |
Déjà pris en compte |
reject |
Rejeté (hors spéc.) |
reject0 |
Rejeté (hors de propos) |
test |
En mode test |
Développement
IGNFCollaboratifGetReportsConnector est disponible pour être utilisé uniquement en mode lié (Insert Mode = Linked Always, cf. Export as Custom Transformer).
Auteurs
Développeur(s):
HARDY Thomas et MUSCARNERA Laurent (IGN)
Testeur(s):
PY Nicolas, HARDY Thomas et MUSCARNERA Laurent (IGN)
Documentation:
HARDY Thomas, MUSCARNERA Laurent, PY Nicolas (IGN)
Historique de versions de IGNFCollaboratifGetReportsConnector
Version |
Date (desc) |
Commentaire |
---|---|---|
1 |
2024-01-18 |
Release V1 |
1 |
2023-12-31 |
Release V1 interne |
1 |
2023-06 |
Release beta |
Bug connu
Attention
Le Transformer IGNFCollaboratifGetReportsConnector fait à ce jour l'objet de deux bugs connus:
Le filtre spatial par département dysfonctionne lorsque les départements corses (2A ou 2B) sont requetés, similairement à l'API. Ce bug entraine un effet de bord sur l'attribut requete_reports_count du FeatureType de sortie Requête.
Lorsque les Features entrantes ne sont pas utilisées (case "Utiliser la géométrie entrante comme filtre" NON cochée), les Features qui sortent pas l'Output "Reports" sont d'EPSG:4326 (WGS84-LL) mais désignées comme étant dans le système de coordonnées des features entrantes.
rTest
Le Transformer IGNFCollaboratifGetReportsConnector bénéficie de 16 tests dans un scénario unique.
Ils permettent de vérifier que le comportement du Transformer est correct dans les différents cas d'authentification (véracité des login et mots de passe), mais vérifient également que les combinaisons impossibles de paramètres soient rejetées. La validité des valeurs de paramètres et la conformités du FeatureType des entités sortantes sont également vérifiés. De plus, la non altération des données entrantes ressortant par les FeatureType 'Requête' et 'Rejected' est contrôlée.
Attention
Les tests ci-dessous en erreur sont dus au bug sur les collectivités corses.