Collaborer à l'aide d'un module complémentaire Meet

Les participants à une réunion peuvent travailler en collaboration sur une activité de module complémentaire Google Meet. Lorsqu'une activité collaborative commence, tous les participants à la réunion reçoivent une notification indiquant que l'activité est en cours.

Cette notification est adaptée à la disponibilité et à l'état d'installation du module complémentaire:

  • Si le participant a installé le module complémentaire : il peut rejoindre l'activité.

  • Si le participant n'a pas installé le module complémentaire: il est invité à l'installer.

  • Si le module complémentaire n'est pas disponible pour la plate-forme du participant: il est informé qu'il ne peut pas rejoindre l'activité avec son appareil actuel.

Lorsqu'un utilisateur rejoint l'activité, il charge ses propres iFrames avec le contenu de votre module complémentaire. Vous pouvez personnaliser si les nouveaux participants doivent ouvrir l'activité collaborative dans l'espace principal ou dans le panneau latéral.

Démarrer l'activité

Une activité est lancée en appelant la méthode startActivity(), qui utilise l'interface ActivityStartingState.

Étape 1 (Facultatif): Le module complémentaire définit l'état de début de l'activité

ActivityStartingState contient des informations sur l'état initial du module complémentaire utilisé lorsque le participant accepte l'invitation à participer à l'activité.

Le module complémentaire peut définir ou mettre à jour ActivityStartingState en appelant la méthode setActivityStartingState() à tout moment avant ou pendant l'activité. Les appels à setActivityStartingState() peuvent être omis si ActivityStartingState est défini exclusivement dans l'appel à startActivity().

Étape 2: Le module complémentaire lance l'activité

L'activité commence lorsque le module complémentaire appelle la méthode startActivity() sur MeetSidePanelClient. La méthode startActivity() utilise un objet ActivityStartingState comme paramètre. Vous pouvez donc appeler startActivity() au lieu d'appeler setActivityStartingState().

Une fois que l'utilisateur a terminé la sélection de contenu et qu'il est prêt à démarrer une activité, appelez la méthode startActivity() dans votre module complémentaire comme suit:

    sidePanelClient.startActivity({
        mainStageUrl: "https://app.example.com/mainstage",
        additionalData: JSON.stringify({
            // State to send to participants.
        })
    });

Lorsque la méthode startActivity() est appelée, Meet effectue les actions suivantes:

  • Pour les autres participants: Meet affiche une notification indiquant que l'activité est en cours.

  • Pour l'initiateur: si une URL de scène principale a été spécifiée dans ActivityStartingState, Meet ouvre la scène principale à l'aide de l'URL de ActivityStartingState.

Étape 3: Obtenir l'état de démarrage de l'activité

Lorsqu'un utilisateur rejoint l'activité, il charge votre module complémentaire dans l'espace principal ou le panneau latéral, en fonction de ActivityStartingState.

Avec la propriété additionalData, vous pouvez partager des données initiales (également appelées état) avec les utilisateurs qui rejoignent l'activité. Après avoir initialisé un MainStageClient ou un SidePanelClient, vous pouvez appeler la méthode getActivityStartingState() pour récupérer la propriété additionalData.

const startingState = client.getActivityStartingState();
const additionalData = JSON.parse(startingState.additionalData);

Étape 4 (facultatif): Partager l'état du module complémentaire dans une activité

Vous pouvez également partager l'état entre les utilisateurs pendant l'activité. Vous pouvez partager l'état de deux manières:

  • Gérez-la vous-même en créant votre propre backend de synchronisation.
  • Utilisez l'API Co-Doing, qui permet de partager des données arbitraires entre les utilisateurs de manière simple et rapide.

Exemple: Module complémentaire d'animation sur GitHub

L'exemple de module complémentaire "Animation" sur GitHub inclut la collaboration dans un module complémentaire. L'étape 1 de ce guide n'est pas incluse dans l'exemple. Au lieu de cela, lorsque l'initiateur du module complémentaire clique sur le bouton Start the Animation (Démarrer l'animation) dans le panneau latéral, la méthode startActivity() est appelée (Étape 2) en remplissant l'état de départ avec la couleur sélectionnée par l'utilisateur. Une fois l'activité lancée, l'étape principale récupère l'état de départ en appelant la méthode getActivityStartingState() (Étape 3). L'étape 4 est omise, car l'état (la couleur sélectionnée) n'est pas partagé entre les participants pendant l'activité dans cet exemple de module complémentaire. Toutefois, chaque utilisateur peut modifier son propre état en sélectionnant une couleur, qui est envoyée du frame du panneau latéral au frame de la scène principale à l'aide de la messagerie frame-to-frame.

Contraintes