Fonctionnalités d’emplacement dans l’extension de carte adaptative

Remarque

La fonctionnalité de géolocalisation dans l’extension de carte adaptative sera disponible dans SPFx v1.15.

Vérifiez donc que vous l’avez installée avant de continuer.

Pour plus d’informations sur l’installation de la préversion SPFx v1.15, consultez Notes de publication de SharePoint Framework v1.15.

Ce didacticiel suppose également que vous avez déjà créé une extension de carte adaptative SharePoint.

Pour savoir comment créer votre première extension de carte adaptative SharePoint, découvrez ce didacticiel.

Nouveaux types d’actions pour la géolocalisation

Il existe 2 actions d’emplacement :

  1. Obtenir l’emplacement
  2. Afficher l'emplacement

Obtenir l’emplacement :

Fournit l'emplacement actuel de l'appareil de l'utilisateur ou ouvre le sélecteur d'emplacement et renvoie l'emplacement choisi par l'utilisateur. Dans le navigateur, il utilise Bing Maps comme interface de mappage.

L’action ACE pour Obtenir l’emplacement est : VivaAction.GetLocation.

Elle utilise un paramètre booléen facultatif : ChooseLocationOnMap.

Si la propriété ChooseLocationOnMap est définie sur true, l’action ouvre alors une carte et l’utilisateur peut choisir un emplacement sur la carte. Sinon, elle récupère l’emplacement actuel de l’appareil de l’utilisateur.

Afficher l'emplacement :

Avec cette action, une carte s’affiche à l’écran sur laquelle vous pouvez afficher sur la carte l’emplacement actuel de l’utilisateur ou afficher les coordonnées spécifiées sur la carte.

L’action ACE pour Afficher l’emplacement est : VivaAction.ShowLocation.

Elle utilise un paramètre d’emplacement facultatif : locationCoordinates.

Pour afficher un emplacement spécifique, vous devez transmettre les coordonnées d’emplacement (latitude et longitude) via le paramètre locationCoordinates.

L’objet locationCoordinates se compose des propriétés suivantes :

{
  /**
   * Latitude of the location.
   */
  latitude: number;

  /**
   * Longitude of the location.
   */
  longitude: number;

  /**
   * Timestamp (optional).
   */
  timestamp?: number;

  /**
   * Accuracy of the location (optional).
   */
  accuracy?: number;
}

Didacticiel et exemples

Vous pouvez consulter ce didacticiel qui décrit de manière détaillée comment créer une carte avec des actions de géolocalisation.

Les exemples suivants décrivent l’action de géolocalisation et son objectif.

  1. Obtenir l’emplacement actuel de l’utilisateur

    Dans votre modèle JSON, introduisez l’action suivante :

    "actions": [{
      type: 'VivaAction.GetLocation',
      id: 'Get Location'
    }]
    

    Lorsque cette action est appelée, la géolocalisation actuelle de l’utilisateur est extraite et transmise au développeur tiers via le rappel onAction.

    Remarque

    Dans ce cas, la carte ne s’affiche pas.

  2. Sélectionner l’emplacement à partir d’une carte

    Dans votre modèle JSON, introduisez l’action suivante :

    "actions": [{
      type: 'VivaAction.GetLocation',
      id: 'Get Location',
      parameters: {chooseLocationOnMap: true}
    }]
    

    Lorsque cette action est appelée, une carte pointant vers l’emplacement actuel de l’utilisateur s’ouvre et l’utilisateur peut sélectionner et partager l’emplacement de son choix. Les coordonnées de l’emplacement sélectionné sont transmises au développeur tiers via le rappel onAction.

  3. Afficher l’emplacement actuel de l’utilisateur

    Dans votre modèle JSON, introduisez l’action suivante :

    "actions": [{
      type: 'VivaAction.ShowLocation',
      id: 'Show Location'
    }]
    

    Lorsque cette action est appelée, une carte s’ouvre et les coordonnées d’emplacement actuelles de l’utilisateur s’affichent sur celle-ci.

  4. Afficher un emplacement spécifié

    Dans votre modèle JSON, introduisez l’action suivante :

    "actions": [{
      type: 'VivaAction.ShowLocation',
      id: 'Show Location',
      parameters: {
        locationCoordinates: {
          latitude: 28.6132039578389,
          longitude: 77.229488240066
        }
      }
    }]
    

    Lorsque cette action est appelée, une carte s’ouvre et affiche les coordonnées d’emplacement spécifiées dans l’action.

Accéder aux actions de géolocalisation via le volet de propriétés de la carte de concepteur de cartes

Si vous ne souhaitez pas écrire de code, mais que vous souhaitez toujours voir le fonctionnement des actions de géolocalisation, vous pouvez découvrir ce didacticiel qui vous permet de créer des cartes avec des actions de géolocalisation via le volet de propriétés.

Remarque

Ces actions de géolocalisation peuvent être ajoutées dans l’affichage carte ou les boutons de l’affichage carte ou à l’intérieur de l’affichage rapide.

Codes d’autorisation et d’erreur

Pour que les API d’emplacement fonctionnent, l’utilisateur doit accorder l’autorisation d’accéder à l’emplacement de l’appareil.

Code d'erreur Description de l’erreur
PermissionDenied L’utilisateur a refusé l’autorisation d’accéder à l’emplacement
InternalError Une erreur inattendue s’est produite lors de l’appel des API d’emplacement
HostNotSupported L’action d’emplacement est utilisée dans un environnement non pris en charge

Rappels pour les développeurs de cartes

Lorsque l’action VivaAction.GetLocation est appelée, nous transmettons les coordonnées d’emplacement extraites via le rappel onAction.

Remarque

Le rappel onAction n’est pas appelé pour VivaAction.ShowLocation.

Pour les actions VivaAction.GetLocation et VivaAction.ShowLocation, si l’utilisateur accède à un état d’erreur, un rappel onError est appelé, auquel nous transmettons le nom de l’action et le code d’erreur.

Disponibilité des actions de géolocalisation

Remarque

Ces nouvelles actions ne sont actuellement disponibles que dans le navigateur. Viva Connections ordinateur de bureau et Viva Connections la prise en charge mobile seront activées ultérieurement. Après la disponibilité générale, la matrice de support pour les actions ressemblera à :

Action Viva Connection Desktop Viva Connections Mobile Navigateur
Obtenir l’emplacement Non pris en charge Pris en charge Pris en charge
Afficher l'emplacement Non pris en charge Pris en charge Pris en charge