L'application mobile d'ActivityInfo est un excellent outil pour collecter des informations géolocalisées, que ce soit pour des évaluations des besoins, des enquêtes sur les installations, des rapports de dommages ou de nombreux autres types de données pertinentes.
Bien qu'ActivityInfo facilite la visualisation de ces données à l'aide de ses rapports cartographiques intégrés, il peut arriver que vous ayez besoin de connecter ces données à une solution SIG complète, comme QGIS, un système d'information géographique libre et open source.
Dans ce tutoriel, nous allons voir comment vous pouvez ajouter un Formulaire ActivityInfo en tant que couche dans QGIS. Pour ce faire, nous utiliserons l'API GeoJSON d'ActivityInfo.
Pour ce tutoriel, nous utiliserons le modèle de réponse aux PDI. Vous pouvez créer votre propre copie pour travailler avec.
Trouver le lien GeoJSON
Le moyen le plus simple d'obtenir le GeoJSON est d'utiliser l'interface utilisateur d'ActivityInfo. Naviguez jusqu'au Formulaire que vous souhaitez inclure en tant que couche dans QGIS. Le Formulaire doit avoir un Champ Point géographique, ou une référence à un autre Formulaire qui en a un.
Dans la capture d'écran ci-dessous, vous pouvez voir que le bouton "Carte" est visible dans la barre d'outils, ce qui signifie que ce Formulaire a, ou est lié à, un emplacement géographique.
Dans le menu Exporter, Sélectionner "Exporter via l'API", puis Sélectionner "Interroger tous les champs en tant que GeoJSON".
Capture d'écran du menu d'exportation

Cela affichera une URL que vous pourrez copier dans le presse-papiers.
Sélectionner la géométrie
Le format GeoJSON ne prend en charge qu'un seul point par entité. Votre Formulaire peut avoir plus d'un Champ Point géographique, ou référencer plus d'un Formulaire qui a un emplacement géographique. Par défaut, le menu Exporter affichera l'URL du premier Champ Point géographique. Vous pouvez modifier cela en passant à la vue cartographique du Formulaire, puis Sélectionner la source géographique :

Le lien GeoJSON dans le menu Exporter reflétera votre Sélection.
Ajouter la couche à QGIS
Vous pouvez télécharger QGIS depuis leur site web. QGIS est disponible pour Windows, macOS et Linux.
Démarrez un nouveau projet dans QGIS. Ajoutons d'abord Open Street Map comme couche d'arrière-plan à notre carte. Vous pouvez trouver la couche Open Street Map sous le groupe "Tuiles XYZ" dans le navigateur. Double-cliquez dessus pour l'ajouter en tant que couche.

Ajoutons maintenant notre Formulaire ActivityInfo. Dans le menu Couche, Sélectionner "Ajouter une couche", puis "Ajouter une couche vectorielle".
Dans la boîte de dialogue :
- Sélectionner "Protocole" comme "Type de source"
- Sélectionner "GeoJSON" comme "Type"
- Coller le lien que vous avez copié depuis ActivityInfo dans la zone de texte URI.
Si votre Formulaire n'est pas public, vous devez fournir des informations d'identification qui permettront à QGIS de se connecter à ActivityInfo. Ajouter un jeton API personnel, puis le coller dans la zone de texte "Mot de passe" de l'onglet "Basique" de la "Section d'authentification".

Remarque : cela stockera votre jeton API en texte clair dans le fichier de projet QGIS, ce qui n'est pas recommandé. Pour en savoir plus sur la gestion sécurisée des informations d'identification, consultez le Manuel QGIS.
Vous pouvez utiliser l'URL suivante d'un Formulaire public pour tester la connexion, sans avoir besoin de fournir une authentification :
Si vous avez suivi les instructions ci-dessus, vous devriez maintenant voir votre Formulaire ActivityInfo en tant que couche dans QGIS ! Le flux GeoJSON comprend tous les champs de votre Formulaire, vous pouvez donc afficher les détails dans QGIS ou styliser les couches à l'aide des attributs de votre Formulaire.
