- Présentation du module
- Installation du module
- Installation d'un sous-module
- Champs spécifiques d'un sous-module
- Gestion des sites et groupes de site
- Permissions
- Base de données
- Gestion de la synthèse
- Documentation technique
- Liste des commandes
Ce module permet de générer de façon générique des interfaces de saisie correspondant à des protocoles de suivi.
Par "suivi", on entend un protocole dont le point d'entrée est un site géographique, sur lequel on va revenir régulièrement effectuer des visites. Il se distingue par sa structure du module "Occtax" dont l'objectif est de faire de la saisie de données opportunistes ou d'inventaire (sans revenir régulièrement sur le même site de suivi).
Le module est articulé autour de 3 concepts :
- les sites : l'objet géographique de suivi (qui peuvent être regroupés par groupes de sites)
- les visites : une visite est effectuée sur un site (date, observateurs)
- les observations : observations faites durant la visite (espèces)
Les 3 niveaux que sont les sites, les visites et les observations sont fournis avec un tronc commun (les champs génériques) qui peuvent être complétés par des champs spécifiques à chaque protocole. Ces champs spécifiques sont définis par des fichiers de configuration JSON.
Pour chaque sous-module, correspondant à un protocole spécifique de suivi, il est ainsi possible d'ajouter dynamiquement des champs de différents types (liste, nomenclature, booléen, date, radio, observateurs, texte, taxonomie...). Ceux-ci peuvent être obligatoires ou non, affichés ou non et avoir des valeurs par défaut (voir doc détaillée : Création d'un sous-module).
- Téléchargez le module dans
/home/<myuser>/
, en remplacantX.Y.Z
par la version souhaitée
cd
wget https://github.com/PnX-SI/gn_module_monitoring/archive/X.Y.Z.zip
unzip X.Y.Z.zip
rm X.Y.Z.zip
- Renommez le répertoire du module
mv ~/gn_module_monitoring-X.Y.Z ~/gn_module_monitoring
- Lancez l'installation du module
source ~/geonature/backend/venv/bin/activate
geonature install-gn-module ~/gn_module_monitoring MONITORINGS
sudo systemctl restart geonature
deactivate
Il vous faut désormais attribuer des permissions aux groupes ou utilisateurs que vous souhaitez, pour qu'ils puissent accéder et utiliser le module (voir https://docs.geonature.fr/admin-manual.html#gestion-des-droits). Si besoin une commande permet d'attribuer automatiquement toutes les permissions dans tous les modules à un groupe ou utilisateur administrateur.
Pour mettre à jour le modue Monitoring, suivre la documentation de mise à jour d'un module GeoNature
Le fichier de configuration monitorings_config.toml.example
peut être modifié puis copié à la racine du dossier de config de GeoNature : ~/geonature/config
.
3 éléments sont paramétrables :
TITLE_MODULE
: Titre présent sur la page d'accueil du module MonitoringDESCRIPTION_MODULE
: Description du module Monitoring également présent sur la page d'accueilCODE_OBSERVERS_LIST
: Code de la liste d'observateurs qui est utilisée par défaut
Par exemple le sous-module test
présent dans le repertoire contrib/test
du module Monitoring.
source ~/geonature/backend/venv/bin/activate
Si il n'existe pas déjà, créer un dossier pour stocker les configurations des sous-modules dans GeoNature (geonature/backend/media/monitorings
) :
mkdir geonature/backend/media/monitorings
Créer un lien symbolique vers le dossier du sous-module dans le dossier media
de GeoNature :
ln -s <chemin absolu du dossier du sous-module> ~/geonature/backend/media/monitorings/<nom du dossier du sous-module>
Exemple pour le module "test" :
ln -s ~/gn_module_monitoring/contrib/test ~/geonature/backend/media/monitorings/test
geonature monitorings install <module_code>
Si le code du sous-module n'est pas renseigné ou si le dossier du sous-module n'existe pas, la commande va afficher la liste des sous-modules installés et disponibles.
geonature monitorings install
La commande va fournir la sortie suivante :
Modules disponibles :
- module3: Module 3 (Troisième exemple de module)
- module4: Module 4 (...)
- module5: Module 5 (...)
- <module_code>: <module_label> (<module_desc>)
Modules installés :
- module1: Module 1 (Premier exemple de module)
- module2: Module 2 (Deuxième exemple de module)
Il vous faut désormais attribuer des permissions aux groupes ou utilisateurs que vous souhaitez, pour qu'ils puissent accéder et utiliser le sous-module (voir https://docs.geonature.fr/admin-manual.html#gestion-des-droits). Si besoin une commande permet d'attribuer automatiquement toutes les permissions dans tous les modules à un groupe ou utilisateur administrateur.
Le sous-module installé précedemment doit s'afficher dans la liste des sous-modules.
Vous êtes désormais sur la page du sous-module. Un message apparaît pour vous indiquer de configurer celui-ci.
Le formulaire d'édition du sous-module s'affiche et vous pouvez renseigner les variables suivantes :
- Jeux de données (obligatoire) :
- Un sous-module peut concerner un ou plusieurs jeux de données, le choix sera ensuite proposé au niveau de chaque visite.
- Liste des observateurs (obligatoire) :
- La liste d'observateurs définit l'ensemble des observateurs possibles pour le sous-module (et de descripteurs de site).
- Cette liste peut être gérée dans l'application
UsersHub
.
- Liste des taxons (obligatoire selon le module) :
- Cette liste définit l'ensemble des taxons concernés par ce sous-module. Elle est gérée dans l'application
TaxHub
.
- Cette liste définit l'ensemble des taxons concernés par ce sous-module. Elle est gérée dans l'application
- Activer la synchro synthèse (non obligatoire, désactivée par défaut) ?
- Si on décide d'intégrer automatiquement les données du sous-module dans la synthèse de GeoNature.
- Affichage des taxons (obligatoire) ?
- Définit comment sont affichés les taxons dans le module :
lb_nom
: Nom latin,nom_vern,lb_nom
: Nom vernaculaire par defaut s'il existe, sinon nom latin.
- Définit comment sont affichés les taxons dans le module :
- Afficher dans le menu latéral ? (non obligatoire, non affiché par défaut) :
- On peut décider que le sous-module soit accessible directement depuis le menu latéral de GeoNature.
active_frontend
- Types de sites :
- Permet d'associer des sites (créés dans le gestionnaire de sites) à un sous-module. Tous les sites dont le type est défini ici remonteront dans le module ([voir documentation sur le gestionnaire de sites (#gestionnaire-de-sites))
- Options spécifiques du sous-module :
- Un sous-module peut présenter des options qui lui sont propres et définies dans les paramètres spécifiques du sous-module.
Maintenant que le sous-module est installé, vous pouvez configurer ses champs spécifiques pour le faire correspondre à votre protocole de suivi.
La documentation détaillée de la configuration des champs additionnels est ici : Configuration des champs d'un sous module
Des exemples de sous-modules sont disponibles sur le dépôt https://github.com/PnX-SI/protocoles_suivi/ :
- Protocole de suivi des oedicnèmes
- Protocole de suivi des mâles chanteurs de l'espèce chevêche d'Athena
- Protocole Suivi Temporel des Oiseaux de Montagne (STOM)
- Autres...
Chaque sous-module permet de créer ses propres sites et groupes de sites. Cependant certains sites peuvent faire l'objet de plusieurs protocoles de suivi, c'est pouquoi le module Monitoring offre la possibilité de créer des sites et des groupes de sites globalement dans le gestionnaire de site et de les utiliser dans plusieurs sous-modules.
Dans le gestionnaire de sites, il est possible de créer, éditer, supprimer des sites et des groupes de sites de manière indépendante à la gestion de sous-modules. Il est également possible de saisir directement des visites et des observations en rattachant les visites au sous-module que l'on souhaite.
Important
Associer un site à un sous-module
Plutôt que d'associer un à un les sites à des sous-modules, l'association entre un site et un sous-module se fait via la notion de types de sites. Une type de sites est un concept permettant de regrouper des sites qui font l'objet de plusieurs protocoles et qui partagent potentiellement une série de descripteurs communs.
Un "point d'écoute" qui va par exemple faire l'objet de plusieurs protocoles ornithologiques (STOC, oiseaux migrateurs etc...) peut être définit comme un type de sites.
Lors de la configuration d'un sous-module (depuis l'interface), on doit l'associer à un ou des types de site. Tous les sites créés via le gestionnaire de sites dont le type correspond à celui défini au niveau du sous-module, remonteront dans la liste des sites du sous-module.
Associer un groupe de sites à un sous-module
L'association entre un groupe de sites et un sous-module se fait individuellement. Lorsque l'on crée un groupe de site dans le gestionnaire de sites, on l'associe directement à un ou plusieurs sous-modules.
Définir des champs spécifique à un type de site
Il est possible de définir des champs spécifiques communs à chaque type de sites.
Contrairement aux configurations des sous-modules, celle-ci ne se fait pas dans un fichier JSON, mais dans le module Admin de GeoNature (rubrique Monitoring / Types de sites).
La syntaxe est la même que pour la création de champs d'un sous-module (voir Création d'un sous-module). La clé specific
permettant de configurer les champs et la clé display_properties
de définir les champs à afficher sur les fiches info des sites.
- Une permission définit si l'on peut accéder au module Monitoring (R sur Monitoring)
- Des permissions définissent si on peut accéder au gestionnaire de sites et y créer, modifier, supprimer des sites et groupes de sites
- Des permissions définissent si on peut gérer les types de sites dans le module Admin
Les permissions des sous-modules sont définies au niveau de chaque sous-module pour chaque type d'objet (sous-module, groupes de sites, sites, visites, observations) :
MONITORINGS_MODULES
- R : permet à l'utilisateur d'accéder au sous-module, de le voir dans la liste des sous-modulesMONITORINGS_MODULES
- U : action administrateur qui permet de configurer le sous-module et de synchroniser la synthèseMONITORINGS_MODULES
- E : action qui permet aux utilisateurs d'exporter les données (si configuré au niveau du sous-module)MONITORINGS_GRP_SITES
- CRUD : action de lire, créer, modifier, supprimer un groupe de sitesMONITORINGS_SITES
- CRUD : action de lire, créer, modifier, supprimer un siteMONITORINGS_VISITES
- CRUD : action de lire, créer, modifier, supprimer les visites, observations, observations détails
Les permissions des sous-modules peuvent être limitées avec une notion de portée : 'Mes données' ou 'Les données de mon organisme' :
- Groupes de sites : la portée s'appuie sur son id_digitizer (et son organisme si la portée est de niveau 2)
- Site : id_digitizer ou id_inventor du site
- Visite : id_digitizer ou observers de la visite
- Observation : id_digitizer de l'observation ou permission de la visite
- Observation détail : héritée de permission de l'observation
Si vous modifiez la configuration d'un sous-module en y ajoutant des objets (ajout du niveau groupe de sites par exemple), il est possible de mettre à jour les permissions disponibles pour ce sous-module en utilisant la commande update_module_available_permissions
.
Le module permet de générer des sous-modules (stockés dans la table gn_commons.t_modules
) pour chaque protocole de suivi. Ils s'appuient sur les champs fixes des 3 tables gn_monitoring.t_base_sites
, gn_monitoring.t_base_visits
et gn_monitoring.t_observations
qui peuvent chacunes être étendues avec des champs spécifiques et dynamiques stockés dans des champs de type JSONB
.
Des fonctions SQL ainsi qu'une vue définie pour chaque protocole permettent d'alimenter automatiquement la synthèse de GeoNature à partir des données saisies dans chaque sous-module.
Les sites et groupes de sites peuvent être associés à plusieurs protocoles (sous-modules).