Créer des interfaces Google Drive

Les modules complémentaires Google Workspace peuvent fournir des interfaces personnalisées lorsque l'utilisateur utilise Google 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 à Google Drive.

Accéder à l'interface utilisateur 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 (le cas échéant). Cette fonction crée et renvoie une fiche de page d'accueil à Google Drive pour l'affichage. Si aucune fonction drive.homepageTrigger n'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 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, celui-ci exécute la fonction contextuelle drive.onItemsSelectedTrigger correspondante (le cas échéant). Cette fonction crée l'interface contextuelle "Éléments sélectionnés" du module complémentaire Google Drive et la renvoie à Google Drive pour affichage.

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

Pour créer des interfaces qui étendent Google Drive, procédez comme suit :

  1. 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.
  2. Ajoutez les champs addOns.common et addOns.drive appropriés au fichier manifeste du projet de script du module complémentaire, y compris les scopes Drive requis.
  3. 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'interface common.homepageTrigger pour plusieurs hôtes Google Workspace.
  4. Si vous fournissez une interface de sélection d'éléments contextuels Drive, vous devez implémenter une fonction de déclencheur contextuel drive.onItemsSelectedTrigger pour créer cette interface. Pour en savoir plus, consultez Interface contextuelle Drive pour les éléments sélectionnés.
  5. 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 les boutons.

Pages d'accueil 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'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, 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 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 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. Vous pouvez utiliser les données de l'objet d'événement pour personnaliser 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 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 :

  1. Assurez-vous que le fichier manifeste du module complémentaire inclut le champ d'application https://www.googleapis.com/auth/drive.addons.metadata.readonly.

  2. Assurez-vous que le fichier manifeste inclut une section drive.onItemsSelectedTrigger.

  3. 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 objet Card ou un tableau d'objets Card.

  4. Comme pour toute carte, vous devez implémenter 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écutent 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 construire 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 de l'application 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. Il est appelé élément actif du curseur.

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"
          },
          ...
        ]
      },
      ...
    }