Obtenir l'objet client

Cette page explique comment obtenir l'objet client dont un module complémentaire a besoin pour communiquer avec Google Meet.

Tout d'abord, le module complémentaire doit établir une session:

  const session = await window.meet.addon.createAddonSession({
      cloudProjectNumber: "CLOUD_PROJECT_NUMBER",
    });

À partir de la session, deux objets client peuvent être créés:

Il est important de récupérer l'objet client approprié pour la scène principale ou le panneau latéral. Si le mauvais client est récupéré, le SDK des modules complémentaires Google Meet génère une exception. Pour vérifier dans quel iFrame (l'espace de création principal ou le panneau latéral) le module complémentaire s'exécute, utilisez la méthode MeetAddon.getFrameType.

L'exemple de code suivant montre comment instancier l'objet client de l'étape principale:

  const session = await window.meet.addon.createAddonSession({
      cloudProjectNumber: "CLOUD_PROJECT_NUMBER",
    });
  const mainStageClient = await session.createMainStageClient();

Fonctionnalité partagée

Certaines fonctionnalités sont disponibles à la fois dans MeetMainStageClient et MeetSidePanelClient, tandis que d'autres sont spécifiques à un client donné.

Voici quelques exemples de fonctionnalités disponibles dans les deux clients:

Fonctionnalité propre au client

Fonctionnalité disponible uniquement dans MeetMainStageClient:

  • Le MeetMainStageClient.notifySidePanel envoie un message au panneau latéral. Vous pouvez recevoir le message en vous abonnant au rappel frameToFrameMessage dans le panneau latéral.

  • La méthode MeetMainStageClient.loadSidePanel ouvre l'iFrame du panneau latéral. La source de l'iFrame est définie sur l'URL du panneau latéral du fichier manifeste.

  • La méthode MeetMainStageClient.unloadSidePanel ferme l'iFrame du panneau latéral. L'état du module complémentaire n'est pas conservé dans Meet lorsque la méthode est appelée. Il appartient au module complémentaire de conserver tout état du module avant que cette méthode ne soit appelée.

Fonctionnalité disponible uniquement dans MeetSidePanelClient: