Les modules complémentaires Google Workspace peuvent fournir des interfaces personnalisées lorsque l'utilisateur utilise Google Drive. Vous pouvez ainsi fournir à l'utilisateur des informations supplémentaires pertinentes, automatiser des tâches et connecter des systèmes tiers à Google Drive.
Accéder à l'UI du module complémentaire
Vous pouvez ouvrir un module complémentaire Google Workspace dans Google Drive si son icône apparaît dans la colonne d'icônes à droite de l'interface utilisateur de Drive. Un module complémentaire Google Workspace peut définir une interface de page d'accueil, une interface de sélection d'éléments ou les deux:
- Si un utilisateur clique sur l'icône du module complémentaire dans Google Drive, le module complémentaire exécute la fonction
drive.homepageTrigger
correspondante (si elle est présente). Cette fonction crée et renvoie une fiche de page d'accueil dans Google Drive pour l'afficher. Si aucune fonctiondrive.homepageTrigger
n'est définie, une fiche de page d'accueil générique s'affiche à la place. - Si l'utilisateur sélectionne un ou plusieurs éléments dans Google Drive, puis clique sur l'icône du module complémentaire ou sélectionne des éléments lorsque le module complémentaire est ouvert, le module complémentaire exécute la fonction contextuelle
drive.onItemsSelectedTrigger
correspondante (si elle est présente). Cette fonction crée l'interface contextuelle "Éléments sélectionnés" de Google Drive du module complémentaire et la renvoie à Google Drive pour l'afficher.
Créer l'interface Drive du module complémentaire
Pour créer des interfaces qui étendent Google Drive, procédez comme suit:
- Décidez si vous souhaitez que votre module complémentaire dispose d'une page d'accueil spécifique à Drive. Décidez également si vous souhaitez fournir une interface contextuelle lorsque l'utilisateur sélectionne des éléments Drive.
- Ajoutez les champs
addOns.common
etaddOns.drive
appropriés au fichier manifeste du projet de script du module complémentaire, y compris les champs d'étendue Drive requis. - Si vous fournissez une page d'accueil spécifique à Drive, implémentez la fonction
drive.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 de sélection d'éléments contextuelle Drive, vous devez implémenter une fonction de déclencheur contextuel
drive.onItemsSelectedTrigger
pour créer cette interface. Pour en savoir plus, consultez la section Interface contextuelle Drive pour les éléments sélectionnés. - Implémentez les fonctions de rappel associées nécessaires pour répondre aux interactions de l'utilisateur avec l'UI, telles que les clics sur les boutons.
Pages d'accueil de Drive
Google Drive 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 Drive, assurez-vous simplement qu'un champ addOns.drive
figure dans le fichier manifeste du module complémentaire.
Vous pouvez également ajouter un drive.homepageTrigger
au fichier manifeste du module complémentaire pour fournir une page d'accueil spécifique à Drive.
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 appelée automatiquement pour créer la page d'accueil de Drive lorsque cela est nécessaire. Vous devez implémenter cette fonction pour créer et renvoyer un seul Card
ou un tableau d'objets Card
qui constituent la page d'accueil. La fonction de déclencheur 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 de l'objet d'événement pour adapter la création de la page d'accueil.
Interface contextuelle Drive pour les éléments sélectionnés
Google Drive s'appuie sur un déclencheur contextuel pour déterminer l'interface (le cas échéant) à afficher lorsque l'utilisateur sélectionne un ou plusieurs éléments Google Drive. Lorsque le déclencheur se déclenche, il exécute la fonction de déclencheur contextuel spécifiée par le champ drive.onItemsSelectedTrigger.runFunction
dans le fichier manifeste du module complémentaire.
Pour créer une interface de sélection d'éléments contextuelle pour Drive, procédez comme suit:
Assurez-vous que le fichier manifeste du module complémentaire inclut le champ d'application
https://www.googleapis.com/auth/drive.addons.metadata.readonly
.Assurez-vous que le fichier manifeste inclut une section
drive.onItemsSelectedTrigger
.Implémentez la fonction nommée dans le champ
drive.onItemsSelectedTrigger
. Cette fonction accepte un objet d'événement comme argument et doit renvoyer un seul objetCard
ou un tableau d'objetsCard
.Comme pour toute fiche, vous devez implémenter toutes les fonctions de rappel utilisées pour fournir une interactivité de widget à l'interface. Par exemple, si vous incluez un bouton dans l'interface, il doit comporter une action associée et une fonction de rappel implémentée qui s'exécute lorsque l'utilisateur clique sur le bouton.
Objets d'événement
Un objet d'événement est créé et transmis à la fonction de déclencheur drive.homepageTrigger
ou drive.onItemsSelectedTrigger
lorsque ces fonctions sont appelées. La fonction de déclencheur peut utiliser les informations de cet objet d'événement pour déterminer comment créer des fiches de modules complémentaires ou contrôler autrement le comportement des modules complémentaires.
La structure complète des objets d'événement est décrite dans la section Objets d'événement. Lorsque Drive est l'application hôte du module complémentaire, les objets d'événement contextuels incluent le champ Objet d'événement Drive qui contient des informations client spécifiques à Drive.
Les objets d'événement Drive contextuels pour les déclencheurs de sélection d'éléments incluent des informations sur les éléments que l'utilisateur a sélectionnés lorsque le déclencheur se déclenche. Lorsqu'un utilisateur sélectionne plusieurs éléments dans Drive, l'un d'eux est considéré comme étant d'intérêt principal. Cet élément est appelé élément du curseur actif.
L'exemple suivant montre un objet d'événement Drive transmis à une fonction drive.onItemsSelectedTrigger
:
{
"commonEventObject": { ... },
"drive": {
"activeCursorItem":{
"addonHasFileScopePermission": true,
"id":"0B_sX1fXRRU6Ac3RhcnRlcl9maWxl",
"iconUrl": "https://drive-thirdparty.googleusercontent.com...",
"mimeType":"application/pdf",
"title":"How to get started with Drive"
},
"selectedItems": [
{
"addonHasFileScopePermission": true,
"id":"0B_sX1fXRRU6Ac3RhcnRlcl9maWxl",
"iconUrl":"https://drive-thirdparty.googleusercontent.com...",
"mimeType":"application/pdf",
"title":"How to get started with Drive"
},
...
]
},
...
}