Automatiser Field Maps

Vous pouvez automatiser ArcGIS Field Maps en vue de rationaliser la préparation des cartes et leur déploiement sur le terrain. Vous pouvez utiliser des webhooks et des scripts pour automatiser différentes tâches, telles que la copie d’un formulaire entre plusieurs cartes et la génération automatique d’une notification électronique lorsqu’une ressource est inspectée. Vous pouvez automatiser des tâches Field Maps des deux manières suivantes :

  • Configurer un webhook dans Integromat : recevez automatiquement des notifications quasiment en temps réel lorsque les opérateurs de terrain créent, mettent à jour ou suppriment des entités sur le terrain.
  • Utiliser ArcGIS API for Python : utilisez des scripts et des notebooks Python pour configurer et déployer des cartes et pour gérer et analyser les données collectées dans Field Maps.

Configurer un webhook dans Integromat

Un webhook permet à une application de fournir à d’autres applications des informations liées aux événements. Les webhooks sont couramment utilisés pour envoyer des notifications par e-mail ou par SMS, publier des messages sur les réseaux sociaux, écrire automatiquement du contenu dans une feuille de calcul et mettre à jour les bases de données d’entreprise. Field Maps prend en charge les webhooks via Integromat, un service d’automatisation de processus tiers. Integromat dispose d’une application Field Maps intégrée qui vous permet d’incorporer Field Maps dans un processus de webhook. Vous pouvez incorporer l’application Field Maps des façons suivantes :

  • Déclencher un webhook : le déclencheur Watch Features (Visionner les entités) recherche les entités qui sont ajoutées, mises à jour ou supprimées dans l’application mobile Field Maps.
  • Make an API Call (Émettre un appel d’API) : l’action Make an API Call (Émettre un appel d’API) vous permet d’émettre des requêtes API auprès des services Web ArcGIS.
Remarque :

L’application Field Maps dans Integromat prend uniquement en charge les services d’entités hébergés et n’est actuellement pas pris en charge sur ArcGIS Enterprise.

Ajouter l’application Field Maps

Pour ajouter l’application Field Maps à un webhook dans Integromat, procédez comme suit :

  1. Accédez au site https://www.integromat.com/ et connectez-vous.

    Si vous ne possédez pas de compte, inscrivez-vous gratuitement pour commencer.

  2. Cliquez sur Create a new scenario (Créer un scénario).
  3. Recherchez l’application ArcGIS Field Maps, sélectionnez-la, puis cliquez sur Continue (Continuer).

    L’application ArcGIS Field Maps est répertoriée comme favorite dans votre scénario.

  4. Cliquez sur le bouton du module au milieu de l’écran et sélectionnez ArcGIS Field Maps dans le menu.

    L’application ArcGIS Field Maps est ajoutée. Vous pouvez utiliser l’application pour déclencher un webhook ou émettre un appel d’API auprès des services Web ArcGIS.

Se connecter à l’organisation ArcGIS

Si vous utilisez l’application Field Maps pour la première fois dans Integromat, configurez une connexion à votre organisation ArcGIS. La méthode de connexion à votre organisation dépend du module que vous utilisez et des services auxquels vous accédez.

Connecter le déclencheur Watch Features (Visionner les entités) à votre organisation ArcGIS

Pour connecter le déclencheur Watch Features (Visionner les entités) à votre organisation ArcGIS, procédez comme suit :

  1. Ajoutez l’application Field Maps à un webhook dans Integromat.
  2. Sélectionnez le déclencheur Watch Features (Visionner les entités).
  3. Sous Webhook, cliquez sur Add (Ajouter).
  4. Sous Connection (Connexion), cliquez sur Add (Ajouter) et nommez la connexion ArcGIS.

    Pour vous connecter à ArcGIS Online, cliquez sur Continue (Poursuivre) pour vous connecter à votre organisation ArcGIS.

Vous pouvez afficher et mettre à jour les connexions créées sur l’onglet Connections (Connexions) dans Integromat. Pour vous connecter à plusieurs services Web dans ArcGIS, vous pouvez être amené à créer plusieurs connexions. Par exemple, si vous utilisez un module Make an API Call (Émettre un appel d’API) pour interroger une couche d’entités et un autre module Make an API Call (Émettre un appel d’API) pour accéder à l’API de partage, vous aurez besoin d’une connexion distincte pour chaque service.

Remarque :

Si vous n’utilisez pas une connexion pendant 90 jours, le jeton d’actualisation expire et vous devez vous reconnecter à votre organisation ArcGIS. Si maxTokenExpirationMinutes est configuré pour votre organisation sur moins de 90 jours, le jeton d’actualisation expire conformément à cette valeur.

Connecter l’action Make an API Call (Émettre un appel d’API) à votre organisation ArcGIS

Pour connecter l’action Make an API Call (Émettre un appel d’API) à votre organisation ArcGIS, procédez comme suit :

  1. Ajoutez l’application Field Maps à un webhook dans Integromat.
  2. Sélectionnez l’action Make an API Call (Émettre un appel d’API).
  3. Sous Connection (Connexion), cliquez sur Add (Ajouter) et fournissez les éléments suivants :
    1. Connection name (Nom de la connexion) : fournissez un nom pour la connexion, par exemple ArcGIS.
      Remarque :

      Si vous accédez à l’API de partage, cliquez sur Continue (Continuer) pour vous connecter à votre organisation ArcGIS au lieu de suivre les étapes secondaires ci-dessous.

    2. Sub-domain (Sous-domaine) : spécifiez les services auxquels vous connecter. Par exemple, si vous vous connectez à des services d’entités, saisissez services.

      Remarque :

      Si vous vous connectez à des services d’entités, lisez la page des éléments de votre couche entités pour le sous-domaine à utiliser. Sous URL, le lien affiché commence par https://<services>.arcgis.com. Utilisez le texte dans <services> comme sous-domaine pour connecter le module aux services d’entités.

    3. ArcGIS Online URL (URL ArcGIS Online) : cliquez sur Show advanced settings (Afficher les paramètres avancés) et fournissez l’URL de votre organisation ArcGIS.

      Pour vous connecter à ArcGIS Online, cliquez sur Continue (Poursuivre) pour vous connecter à votre organisation ArcGIS.

Vous pouvez afficher et mettre à jour les connexions créées sur l’onglet Connections (Connexions) dans Integromat. Pour vous connecter à plusieurs services Web dans ArcGIS, vous pouvez être amené à créer plusieurs connexions. Par exemple, si vous utilisez un module Make an API Call (Émettre un appel d’API) pour interroger une couche d’entités et un autre module Make an API Call (Émettre un appel d’API) pour accéder à l’API de partage, vous aurez besoin d’une connexion distincte pour chaque service.

Remarque :

Si vous n’utilisez pas une connexion pendant 90 jours, le jeton d’actualisation expire et vous devez vous reconnecter à votre organisation ArcGIS. Si maxTokenExpirationMinutes est configuré pour votre organisation sur moins de 90 jours, le jeton d’actualisation expire conformément à cette valeur.

Déclencher un webhook avec l’application Field Maps

Vous pouvez configurer et activer des webhooks lorsqu’une entité est créée, mise à jour ou supprimée dans Field Maps ou d’autres applications, par exemple Map Viewer. Par exemple, une fois qu’une nouvelle entité est collectée dans Field Maps, un webhook peut déclencher une autre action, telle que l’envoi d’une notification électronique. Procédez comme suit dans Integromat pour créer un webhook qui envoie une notification électronique chaque fois qu’une entité est créée, mise à jour ou supprimée dans l’application mobile Field Maps :

  1. Ajoutez l’application Field Maps à un webhook dans Integromat.
  2. Sélectionnez le module déclencheur Watch Features (Visionner les entités).

    Ce module exécute le scénario chaque fois qu’une entité est créée, mise à jour ou supprimée.

    L’icône de scénario change de couleur, et une fenêtre s’affiche pour vous aider à configurer le module Field Maps.

  3. Cliquez sur Add (Ajouter) et attribuez un nom au webhook.
    Le nom unique au projet ou à la carte qui utilisera le webhook.
  4. Si vous utilisez ce module pour la première fois dans Integromat, configurez une connexion à votre organisation ArcGIS.
    Remarque :

    Si vous avez créé une connexion pour le module Make an API Call (Émettre un appel d’API), vous pouvez la réutiliser pour le module Watch Features (Visionner les entités).

  5. Sous Feature Layer (Couche d’entités), choisissez une couche d’entités modifiable dans votre organisation ArcGIS à laquelle vous connecter.
  6. Sélectionnez un ou plusieurs des éléments Trigger events (Événements déclencheurs) à inclure dans le webhook :
    • Features Created (Entités créées) : déclenche le scénario lorsqu’une entité est créée.
    • Features Updated (Entités mises à jour) : déclenche le scénario lorsqu’une entité est mise à jour.
    • Features Deleted (Entités supprimées) : déclenche le scénario lorsqu’une entité est supprimée.
  7. Cliquez sur Save (Enregistrer).
  8. Cliquez sur OK.

    Le module Field Maps est configuré.

  9. Dans la section Tools (Outils), cliquez sur Flow Control (Contrôle de flux).
  10. Dans la liste des options, sélectionnez Iterator (Itérateur).

    Le module Iterator (Itérateur) est automatiquement connecté au module Field Maps. Il permet au webhook d’effectuer une itération sur une matrice d’entités si plusieurs entités sont renvoyées en même temps.

  11. Sélectionnez le module Iterator (Itérateur) et cliquez sur la zone de texte Array (Matrice).
  12. Dans le menu déroulant sous ArcGIS Field Maps - Watch Feature Service (ArcGIS Field Maps - Visionner un service d’entités), recherchez et sélectionnez l’une des matrices suivantes :
    • Adds [] (Ajouts []) : pour les entités en cours de création
    • Updates [] (Mises à jour []) : pour les entités en cours de mise à jour
    • Delete IDs [] (Supprimer les ID []) : pour les entités en cours de suppression
  13. Cliquez sur OK.
  14. Cliquez sur le bouton Add another module (Ajouter un autre module) en regard du module Iterator (Itérateur).
  15. Recherchez un service de messagerie à utiliser, tel que Courrier Microsoft 365, et sélectionnez l’application.
  16. Sélectionnez l’action Create and Send a Message (Créer et envoyer un message).
  17. Si vous utilisez ce module pour la première fois dans Integromat, cliquez sur Add (Ajouter) pour configurer une connexion dans votre compte de messagerie. Sélectionnez un type de connexion et connectez-vous à votre compte.

    Vous n’aurez à le faire qu’une fois. Integromat enregistre votre connexion pour une utilisation ultérieure.

  18. Ajoutez le texte Subject (Objet) et Body Content (Contenu du corps) au message électronique.

    Vous pouvez utiliser l’appariement pour inclure des attributs de votre couche et mettre en forme les zones de texte. Dans ce cas, ajoutez les attributs de la couche depuis le module Iterator (Itérateur).

  19. Ajoutez l’adresse électronique d’un destinataire.

    Il s’agit de l’adresse électronique à laquelle les messages seront envoyés.

  20. Cliquez sur OK.
  21. Cliquez sur Save (Enregistrer) pour enregistrer votre scénario.

    Vous pouvez également cliquer sur Run once (Exécuter une fois) pour tester le webhook. Après avoir cliqué sur Run once (Exécuter une fois), ouvrez Field Maps et collectez, mettez à jour ou supprimez une entité. Vérifiez que le destinataire a reçu le message électronique.

  22. Utilisez le bouton bascule Scheduling (Planification) pour activer votre scénario. Réglez la planification sur Immediately (Immédiatement) pour que votre scénario s’exécute chaque fois qu’une entité est mise à jour.
Remarque :

Pour en savoir plus sur la prise en charge de Integromat, consultez la documentation Integromat.

Émettre un appel d’API avec l’application Field Maps

Vous pouvez utiliser l’application Field Maps pour émettre des requêtes API auprès des services Web ArcGIS. Si un utilisateur collecte par exemple une nouvelle entité dans Field Maps, vous pouvez utiliser le module Make an API Call (Émettre un appel d’API) pour récupérer l’adresse électronique de cet utilisateur et lui envoyer un message. Vous pouvez aussi utiliser le module pour interroger une couche d’entités et créer des entités, par exemple une affectation Workforce. Voici des exemples d’utilisation de l’application Field Maps pour émettre des requêtes API :

Émettre une requête auprès de l’API de partage

L’API de partage vous permet de demander des informations sur les utilisateurs, groupes et contenus d’une organisation. Vous pouvez l’utiliser pour consulter des informations utilisateur, rechercher des cartes, visionner du contenu, etc. Vous pouvez utiliser l’application Field Maps dans un webhook pour récupérer des informations de l’API de partage. Par exemple, pour envoyer un message électronique à un utilisateur qui vient de terminer une inspection, vous pouvez utiliser l’application Field Maps pour récupérer son adresse électronique. Pour configurer l’application Field Maps de façon à récupérer les informations d’un utilisateur à partir de l’API de partage, procédez comme suit :

  1. Ajoutez l’application Field Maps à un webhook dans Integromat.
  2. Sélectionnez le module d’action Make an API Call (Émettre un appel d’API).

    L’icône de scénario change de couleur, et une fenêtre s’affiche pour vous aider à configurer le module Field Maps.

  3. Si vous utilisez ce module pour la première fois dans Integromat, configurez une connexion à votre organisation ArcGIS.
    Remarque :

    Si vous avez créé une connexion pour le module Watch Features (Visionner les entités), vous pouvez la réutiliser pour la connexion à l’API de partage dans le module Make an API Call (Émettre un appel d’API).

  4. Sous URL, fournissez le chemin à l’API de partage.

    Pour cet exemple, utilisez le chemin suivant pour accéder aux informations d’un utilisateur :

    /sharing/rest/community/<username>
    Pour plus d’informations, reportez-vous à la rubrique Présentation de l’API de partage.

  5. Sous Method (Méthode), sélectionnez GET.
  6. Sous Query String (Chaîne de requête), cliquez sur Add item (Ajouter un élément).
  7. Fournissez les entrées suivantes :
    1. Key (Clé) : f
    2. Value (Valeur) : json
  8. Cliquez sur OK.
  9. Cliquez sur Save (Enregistrer) pour enregistrer votre scénario.

Lorsqu’il est déclenché, le module Field Maps récupère les informations de l’utilisateur auprès de l’API de partage.

Remarque :

Pour en savoir plus sur la prise en charge de Integromat, consultez la documentation Integromat.

Émettre une requête pour interroger une couche d’entités

Vous pouvez émettre une requête d’API pour interroger une couche d’entités. Vous voulez par exemple recevoir une synthèse de fin de journée par courrier électronique. Vous pouvez configurer l’application Field Maps de façon à ce qu’elle interroge les statistiques liées aux inspections d’une journée et les inclure dans un message électronique. Pour configurer l’application Field Maps de façon à ce qu’elle interroge une couche d’entités, procédez comme suit :

  1. Ajoutez l’application Field Maps à un webhook dans Integromat.
  2. Sélectionnez le module d’action Make an API Call (Émettre un appel d’API).

    L’icône de scénario change de couleur, et une fenêtre s’affiche pour vous aider à configurer le module Field Maps.

  3. Si vous utilisez ce module pour la première fois dans Integromat, configurez une connexion à votre organisation ArcGIS.
  4. Sous URL, fournissez le chemin d’accès au service d’entités à interroger :

    /<org-id>/arcgis/rest/services/<layer-name>/FeatureServer/<layer-id>/query

    Pour plus d’informations, reportez-vous à la rubrique Requête (Service d’entités/Couche.
  5. Sous Method (Méthode), sélectionnez GET.
  6. Ajoutez les éléments Query String (Chaîne de requête).
    1. Sous Query String (Chaîne de requête), cliquez sur Add item (Ajouter un élément) et fournissez les entrées suivantes :

      1. Key (Clé) : f
      2. Value (Valeur) : json

    2. Cliquez sur Add (Ajouter).
    3. Cliquez sur Add item (Ajouter un élément) et fournissez les entrées suivantes :

      1. Key (Clé) : where
      2. Value (Valeur) : 1=1

    4. Cliquez sur Add (Ajouter).
    5. Cliquez sur Add item (Ajouter un élément) et fournissez les entrées suivantes :

      1. Key (Clé) : outFields
      2. Value (Valeur) : *

    6. Cliquez sur Add (Ajouter).
  7. Cliquez sur OK.
  8. Cliquez sur Save (Enregistrer) pour enregistrer votre scénario.

Lorsqu’il est déclenché, le module Field Maps interroge la couche d’entités en fonction des paramètres que vous avez fournis.

Remarque :

Pour en savoir plus sur la prise en charge de Integromat, consultez la documentation Integromat.

Émettre une requête pour créer une entité

Vous pouvez émettre une requête d’API pour créer une entité. Par exemple, si l’inspection d’une bouche d’incendie est terminée dans Field Maps, cela peut déclencher la création d’une entité affectation dans ArcGIS Workforce. Pour configurer l’application Field Maps de façon à ce qu’elle ajoute une couche d’entités, procédez comme suit :

  1. Ajoutez l’application Field Maps à un webhook dans Integromat.
  2. Sélectionnez le module d’action Make an API Call (Émettre un appel d’API).

    L’icône de scénario change de couleur, et une fenêtre s’affiche pour vous aider à configurer le module Field Maps.

  3. Si vous utilisez ce module pour la première fois dans Integromat, configurez une connexion à votre organisation ArcGIS.
  4. Sous URL, fournissez le chemin d’accès au service d’entités auquel ajouter des entités :

    /<org-id>/arcgis/rest/services/<layer-name>/FeatureServer/<layer-id>/applyEdits

    Pour plus d’informations, reportez-vous à la rubrique Appliquer les mises à jour (Service d’entités/Couche.
  5. Sous Method (Méthode), sélectionnez POST.
  6. Sous Headers (En-têtes), cliquez sur Edit (Mettre à jour).
  7. Définissez Value (Valeur) sur application/x-www-form-urlencoded.
  8. Cliquez sur Save (Enregistrer).
  9. Sous Body (Corps), saisissez f=json&adds=[<json-object>].

    La valeur de for <json-object> doit être une chaîne JSON représentant une entité. La spécification exacte à utiliser dépend de votre couche. Pour plus d’informations, reportez-vous à la rubrique Objet d’entité.

  10. Cliquez sur OK.
  11. Cliquez sur Save (Enregistrer) pour enregistrer votre scénario.

Lorsqu’il est déclenché, le module Field Maps ajoute une entité à la couche.

Remarque :

Pour en savoir plus sur la prise en charge de Integromat, consultez la documentation Integromat.

Utiliser ArcGIS API for Python

Utilisez ArcGIS API for Python pour automatiser les tâches et écrire un script pour Field Maps. Vous pouvez utiliser le module Forms (Formulaires) pour créer et mettre à jour des formulaires servant à collecter des données et vous pouvez accéder au référentiel de scripts Field Maps sur GitHub pour consulter des exemples de script et de notebook. Les scripts et les notebooks vous permettent d’automatiser des tâches, telles que la copie de formulaires entre plusieurs cartes et le téléchargement de pièces jointes depuis une couche d’entités.

Remarque :

Pour utiliser le module Forms (Formulaires), vous devez utiliser ArcGIS API for Python 1.9.0 ou version ultérieure.