Collaborate using a Meet Add-on

Participants in a meeting can work collaboratively on a Google Meet Add-on activity. When a collaborative activity starts, all participants in the meeting receive a notification that the activity is ongoing.

This notification is adapted to the availability and installation status of the add-on:

  • If the participant has the add-on installed: They can join the activity.

  • If the participant doesn't have the add-on installed: They're directed to install the add-on.

  • If the add-on isn't available for the participant's platform: They're informed that they can't join the activity using their current device.

When a user joins the activity they will load their own iframes with your add-on content. You can customize whether or not new joiners should open the collaborative activity in the main stage or side panel.

Start the collaboration

An activity is started by calling the startCollaboration method, which uses a CollaborationStartingState interface.

Step 1 (Optional): The add-on sets the collaboration starting state

The MeetAddonClient.setCollaborationStartingState sets or updates information about the initial state of the add-on that's used when the participant accepts the invitation to collaborate.

The add-on can set the CollaborationStartingState using the Meet Add-ons SDK anytime before or during the collaboration. Once the add-on activity has started, the other meeting participants use the CollaborationStartingState to initialize their add-on.

For details and code samples on how to set the CollaborationStartingState, see Use the collaboration starting state.

Step 2: The add-on starts the activity

The activity begins when the add-on calls the startCollaboration method on the MeetSidePanelClient.

Make sure to call the startCollaboration method in your add-on once the user completes the content selection and is ready to start the collaboration.

The following code sample shows how to call the startCollaboration method:

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

When startCollaboration is invoked, Meet performs the following actions:

  • For other participants: Meet shows a notification that the activity is ongoing.

  • For the initiator: If a main stage URL was specified in the CollaborationStartingState, Meet opens the main stage using the URL from the CollaborationStartingState.

Share add-on state in a collaboration

When a user joins the collaboration, they will load your add-on into the main stage or side panel depending on the CollaborationStartingState.

With the additionalData property, you can share initial data (also referred to as state) with users joining the collaboration. You might also want to share state between users while they interact with your add-on.

You can share state in several ways:

  • Handle it yourself with your own synchronization mechanisms.
  • Use the Meet Live Sharing SDK, which is a convenient and fast way to share arbitrary data between users.