Les modules complémentaires Google Workspace peuvent fournir des interfaces personnalisées lorsque l'utilisateur consulte ou modifie des agendas et des événements Agenda. Cela vous permet de fournir à l'utilisateur des informations pertinentes supplémentaires, d'automatiser les tâches et de connecter des systèmes tiers à Google Agenda.
Lorsque vous créez une interface de module 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 en concevoir une spécifique pour Google Agenda.
Votre module complémentaire peut également définir une interface qui apparaît lorsqu'un événement Agenda est ouvert à l'utilisateur.
Accéder à l'interface utilisateur du module complémentaire
Selon le mode d'ouverture, un module complémentaire Google Workspace peut définir l'interface de la page d'accueil, l'interface des événements Google Agenda, une interface de sélection des pièces jointes ou les trois:
- Si un utilisateur clique sur l'icône du module complémentaire dans la vue de l'agenda, celui-ci exécute la fonction
calendar.homepageTrigger
correspondante (le cas échéant). Cette fonction crée et renvoie une fiche de page d'accueil à Agenda pour affichage. Si aucune fonctioncalendar.homepageTrigger
n'est définie, une fiche de page d'accueil générique s'affiche. - Si l'utilisateur ouvre un événement Agenda, puis clique sur l'icône du module complémentaire, ou si 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 de l'événement Agenda du module complémentaire et retourne dans Google Agenda pour affichage. - 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 fonctioneventAttachmentTrigger
crée l'interface de sélection des pièces jointes du module et la renvoie à Google Agenda pour affichage.
Développer l'interface du module complémentaire Agenda
Pour étendre les fonctionnalités de Google Agenda à l'aide d'un module complémentaire Google Workspace, procédez comme suit:
- Déterminez si vous souhaitez que le module complémentaire ait une page d'accueil spécifique à Agenda. Décidez également si vous souhaitez fournir une interface personnalisée lorsque l'utilisateur modifie des événements d'agenda.
- Ajoutez les champs
addOns.common
etaddOns.calendar
appropriés au fichier manifeste du script de module complémentaire, y compris les champs d'application requis. - 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'interfacecommon.homepageTrigger
pour plusieurs hôtes Google Workspace. - 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 Étendre l'interface des événements Agenda. - Implémentez les fonctions de rappel associées nécessaires pour répondre aux interactions de l'utilisateur avec l'interface utilisateur, telles que les clics sur les boutons.
Pages d'accueil de Google Agenda
Google Agenda permet d'afficher les pages d'accueil des modules complémentaires Google Workspace.
Pour afficher la page d'accueil commune de votre module complémentaire dans Google Agenda, assurez-vous simplement que le fichier manifeste du module complémentaire contient un champ addOns.calendar
.
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éclencheur de 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 de Google Agenda lorsque cela est nécessaire. Vous devez implémenter cette fonction pour créer et renvoyer un seul élément Card
ou un tableau d'objets Card
qui constituent la page d'accueil. La fonction de déclenchement de la 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 Agenda
Google Agenda s'appuie sur un déclencheur contextuel pour déterminer l'interface (le cas échéant) à afficher lorsque l'utilisateur modifie un événement d'agenda. Lorsque le déclencheur est exécuté, 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 d'événement comme argument et doit renvoyer un seul objet Card
ou un tableau d'objets Card
pour qu'Agenda affiche l'événement lorsque l'utilisateur l'ouvre.
Objets événement
Un objet d'événement est créé et transmis à la fonction de déclencheur contextuel calendar.eventOpenTrigger
lorsqu'un utilisateur ouvre un événement d'agenda. La fonction de déclencheur peut utiliser les informations de cet objet d'événement pour déterminer comment créer des cartes complémentaires ou contrôler leur comportement. Les 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 événement. Lorsque Agenda est l'application hôte en cours d'exécution du module complémentaire, les objets d'événement d'interaction de déclencheur contextuel et d'interaction avec le widget incluent le champ Calendar event object (Objet d'événement d'agenda) qui contient des informations client spécifiques à Agenda.
Mettre à jour des événements d'agenda
En plus du calendar.eventOpenTrigger
contextuel qui se déclenche lorsqu'un utilisateur ouvre un événement Agenda pour le modifier, vous pouvez également définir un calendar.eventUpdateTrigger
qui se déclenche lorsque l'utilisateur actualise et enregistre un événement d'agenda. Ce déclencheur ne s'exécute que si l'utilisateur effectue une ou plusieurs des modifications suivantes:
- Ajoute un ou plusieurs participants.
- Supprime un ou plusieurs participants.
- Permet d'ajouter une solution de conférence ou de passer à une autre solution.
Lorsque ce déclencheur est exécuté, il exécute la fonction de déclencheur spécifiée par le champ calendar.eventUpdateTrigger
du fichier manifeste. La fonction est exécutée avant l'enregistrement des modifications apportées à l'événement d'agenda.
La méthode calendar.eventUpdateTrigger
est généralement utilisée pour 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 les utilisateurs à 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 avez besoin de votre module complémentaire pour ajuster les données d'un événement Agenda (telles que la liste des participants), vous devez définir le champ du fichier manifeste calendar.currentEventAccess
du module complémentaire 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 de nouvelles solutions de conférence. Il n'est pas nécessaire de créer une UI pour ce type d'extension. Les solutions ajoutées apparaissent simplement en tant qu'options dans le menu déroulant de l'interface utilisateur des événements Google Agenda.