Créer des interfaces Google Agenda

Les modules complémentaires Google Workspace peuvent fournir des interfaces personnalisées lorsque l'utilisateur consulte ou modifie des agendas et des événements d'agenda. Cela vous permet de fournir à l'utilisateur des informations supplémentaires pertinentes, d'automatiser les tâches et de connecter des systèmes tiers à Google Agenda.

Lorsque vous créez une interface complémentaire pour Google Agenda, vous pouvez fournir une page d'accueil. Vous pouvez utiliser la même page d'accueil pour plusieurs hôtes ou concevoir une page spécifique pour Google Agenda.

Votre module complémentaire peut également définir une interface qui s'affiche lorsque l'utilisateur ouvre un événement Agenda.

Accéder à l'interface utilisateur du module complémentaire

Selon son mode d'ouverture, un module complémentaire Google Workspace peut définir une interface de page d'accueil, une interface d'événement Google Agenda, une interface de sélection de pièce jointe ou les trois:

  • Si un utilisateur clique sur l'icône de module complémentaire dans une vue d'agenda, ce module exécute la fonction calendar.homepageTrigger correspondante (le cas échéant). Cette fonction crée et renvoie une fiche de page d'accueil dans Agenda pour l'afficher. Si aucune fonction calendar.homepageTrigger n'est définie, une fiche d'accueil générique s'affiche à la place.
  • Si l'utilisateur ouvre un événement Agenda, puis clique sur l'icône du module complémentaire, ou que le module complémentaire est ouvert lorsque l'utilisateur ouvre un événement, le module complémentaire exécute la fonction eventOpenTrigger correspondante (le cas échéant). Cette fonction crée l'interface d'événement d'agenda du module complémentaire et retourne dans Google Agenda pour l'afficher.
  • Si le module complémentaire définit une fonction eventAttachmentTrigger, il apparaît en tant que fournisseur de pièces jointes lorsque l'utilisateur clique sur Ajouter une pièce jointe lors de la modification d'un événement Agenda. Lorsque le module complémentaire est sélectionné, la fonction eventAttachmentTrigger crée l'interface de sélection du rattachement et la renvoie à Google Agenda pour affichage.

Créer l'interface du module complémentaire Agenda

Vous pouvez étendre Google Agenda avec un module complémentaire Google Workspace en procédant comme suit:

  1. Déterminez si vous souhaitez que votre module complémentaire ait une page d'accueil spécifique à Agenda. Indiquez également si vous souhaitez fournir une interface personnalisée lorsque l'utilisateur modifie des événements Agenda.
  2. Ajoutez les champs addOns.common et addOns.calendar appropriés au fichier manifeste du projet de script du module complémentaire, y compris les champs d'application requis.
  3. Si vous fournissez une page d'accueil spécifique à Agenda, implémentez la fonction calendar.homepageTrigger pour créer cette interface. Vous pouvez également choisir d'utiliser l'interface common.homepageTrigger pour plusieurs hôtes Google Workspace.
  4. Si vous fournissez une interface d'événement Agenda, vous devez implémenter une fonction calendar.eventOpenTrigger pour créer cette interface. Pour en savoir plus, consultez la section Extension de l'interface d'événement d'agenda.
  5. Implémentez les fonctions de rappel associées requises pour répondre aux interactions de l'UI de l'utilisateur, telles que les clics sur un bouton.

Pages d'accueil Agenda

Google Agenda permet d'afficher les pages d'accueil des modules complémentaires Google Workspace. Pour afficher la page d'accueil courante de votre module complémentaire dans Google Agenda, assurez-vous qu'il y a un champ addOns.calendar dans le fichier manifeste du module complémentaire.

Vous pouvez également ajouter un calendar.homepageTrigger au fichier manifeste du module complémentaire pour fournir une page d'accueil spécifique à Agenda.

Dans les deux cas, vous devez fournir le nom d'une fonction de déclenchement de la page d'accueil dans le projet de script de votre module complémentaire. Cette fonction est automatiquement appelée pour créer la page d'accueil Google Agenda lorsque cela est nécessaire. Vous devez implémenter cette fonction pour créer et renvoyer un seul objet Card ou un tableau d'objets Card qui composent la page d'accueil. La fonction du déclencheur de page d'accueil reçoit un objet d'événement en tant que paramètre contenant des informations générales telles que la plate-forme du client. Vous pouvez utiliser les données d'objet d'événement pour personnaliser la construction de la page d'accueil.

Extension de l'interface des événements d'agenda

Google Agenda s'appuie sur un déclencheur contextuel pour déterminer l'interface à afficher (le cas échéant) lorsque l'utilisateur modifie un événement d'agenda. Lorsque le déclencheur est activé, il exécute la fonction de déclencheur contextuel spécifiée par le champ calendar.eventOpenTrigger dans le fichier manifeste du module complémentaire.

Vous devez implémenter la fonction nommée dans le champ calendar.eventOpenTrigger. Cette fonction accepte un objet événement en tant qu'argument et doit renvoyer un seul objet Card ou un tableau d'objets Card pour qu'Agenda s'affiche lorsque l'utilisateur a ouvert l'événement.

Objets d'événement

Un objet événement est créé et transmis à la fonction de déclenchement contextuel calendar.eventOpenTrigger lorsqu'un utilisateur ouvre un événement Agenda. La fonction de déclenchement peut utiliser les informations de cet objet d'événement pour déterminer comment créer des fiches complémentaires ou contrôler le comportement de ces modules. Des objets d'événement sont également créés et transmis aux fonctions homepageTrigger lorsqu'un module complémentaire est ouvert pour la première fois, et lorsque l'utilisateur clique ou sélectionne des widgets interactifs.

La structure complète des objets d'événement est décrite dans la section Objets d'événement. Lorsque Google Agenda est l'application hôte active du module complémentaire, les objets d'événement de déclencheur contextuel et d'interaction widget incluent le champ Objet d'événement d'agenda qui contient les informations client spécifiques à Agenda.

Mise à jour des événements d'agenda

En plus du calendar.eventOpenTrigger contextuel qui se déclenche lorsqu'un utilisateur ouvre un événement d'agenda pour le modifier, vous pouvez également définir un calendar.eventUpdateTrigger qui se déclenche lorsque l'utilisateur met à jour et enregistre un événement d'agenda. Ce déclencheur ne s'active que si l'utilisateur apporte une ou plusieurs des modifications suivantes:

  • Ajoute un ou plusieurs participants.
  • Supprime un ou plusieurs participants.
  • Ajoute ou change de solution de conférence

Lorsque ce déclencheur est activé, il exécute la fonction de déclencheur spécifiée par le champ "manifest" de calendar.eventUpdateTrigger. La fonction est exécutée avant l'enregistrement de la modification de l'événement Agenda.

La méthode calendar.eventUpdateTrigger permet généralement d'effectuer une ou plusieurs des opérations suivantes:

  • Mettez à jour l'interface des événements Agenda du module complémentaire en réponse aux modifications apportées par l'utilisateur à l'événement Agenda.
  • Synchroniser les données d'événements Agenda avec un système tiers, tel qu'un système de conférence connecté à Google Agenda

Si vous souhaitez que votre module complémentaire apporte des modifications aux données d'un événement Agenda (telles que sa liste de participants), vous devez définir le champ de manifeste du module complémentaire calendar.currentEventAccess sur WRITE ou READ_WRITE. Cela nécessite également que le module complémentaire ait le champ d'application https://www.googleapis.com/auth/calendar.addons.current.event.write.

Ajouter des solutions de conférence

Les solutions de conférence représentent des options de conférence tierces que les utilisateurs peuvent associer à des événements Google Agenda. La documentation Présentation des conférences tierces explique comment créer un module complémentaire qui ajoute des solutions de conférence. Il n'est pas nécessaire de créer une interface utilisateur pour ce type d'extension. Les solutions ajoutées apparaissent simplement comme options dans le menu déroulant de l'interface utilisateur des événements Google Agenda.