Les modules complémentaires Google Workspace peuvent fournir des interfaces personnalisées lorsqu'un utilisateur ouvre Drive. Cela vous permet de fournir à l'utilisateur des informations pertinentes supplémentaires, d'automatiser des tâches et de connecter des systèmes tiers à Drive.
Accéder à l'UI du module complémentaire Google Workspace
Vous pouvez ouvrir un module complémentaire dans Drive si son icône s'affiche dans la colonne d'icônes à droite de l'interface utilisateur de Drive. Un module complémentaire 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 Drive, le module complémentaire exécute la fonction
drive.homepageTriggercorrespondante (si elle existe). Cette fonction crée et renvoie une fiche de page d'accueil à afficher dans Drive. Si aucune fonctiondrive.homepageTriggern'est définie, une fiche générique de page d'accueil s'affiche à la place. - Si l'utilisateur sélectionne un ou plusieurs éléments dans 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.onItemsSelectedTriggercorrespondante (le cas échéant). Cette fonction crée l'interface contextuelle "Éléments sélectionnés" du module complémentaire Drive et la renvoie à Drive pour l'affichage.
Créer l'interface Drive du module complémentaire
Pour créer des interfaces qui étendent 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.commonetaddOns.driveappropriés au fichier manifeste du projet de script du module complémentaire, y compris les niveaux d'accès Drive requis. - Si vous fournissez une page d'accueil spécifique à Drive, implémentez la fonction
drive.homepageTriggerpour créer cette interface. Vous pouvez également choisir d'utiliser l'interfacecommon.homepageTriggerpour plusieurs hôtes Google Workspace. - Si vous fournissez une interface de sélection d'éléments contextuels Drive, vous devez implémenter une fonction de déclencheur contextuel
drive.onItemsSelectedTriggerpour créer cette interface. Pour en savoir plus, consultez 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, comme les clics sur des boutons.
Pages d'accueil Drive
Drive permet d'afficher les pages d'accueil des modules complémentaires. Pour afficher la page d'accueil commune de votre module complémentaire dans Drive, assurez-vous qu'il existe un champ addOns.drive 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, indiquez 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 Drive lorsque cela est nécessaire. Implémentez 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 de déclencheur de la page d'accueil reçoit un objet d'événement en tant que paramètre, qui contient des informations générales telles que la plate-forme du client. Utilisez les données de l'objet d'événement pour créer la page d'accueil.
Interface contextuelle Drive pour les éléments sélectionnés
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 Drive. Lorsque le déclencheur est activé, 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 contextuels pour Drive, vous devez procéder 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 objetCardou un tableau d'objetsCard.Comme pour toute carte, implémentez les fonctions de rappel utilisées pour fournir l'interactivité des widgets pour l'interface. Par exemple, si vous incluez un bouton dans l'interface, il doit être associé à une Action 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 utilise les informations de cet objet d'événement pour déterminer comment créer des fiches de module complémentaire ou contrôler le comportement du module complémentaire.
La structure complète des objets d'événement est décrite dans Objets d'événement. Lorsque Drive est l'application hôte active 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 actif du curseur.
Si le comportement du module complémentaire est censé s'appliquer à plusieurs éléments sélectionnés, utilisez les informations fournies dans le tableau drive.selectedItems de l'objet d'événement pour les identifier tous.
Lorsque le comportement d'un module complémentaire ne doit s'appliquer qu'à un seul élément sélectionné, utilisez les informations fournies dans le champ drive.activeCursorItem de l'objet d'événement pour identifier l'élément dans la sélection complète. N'essayez pas de déduire l'élément à utiliser à partir du tableau drive.selectedItems.
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"
},
...
]
},
...
}