Współpraca przy użyciu dodatku Meet

Uczestnicy spotkania mogą współpracować nad aktywnością dodatku do Google Meet. Gdy rozpocznie się wspólna aktywność, wszyscy uczestnicy spotkania otrzymają powiadomienie, że aktywność jest w toku.

To powiadomienie jest dostosowane do dostępności i stanu instalacji dodatku:

  • Jeśli uczestnik ma zainstalowany dodatek: może dołączyć do aktywności.

  • Jeśli uczestnik nie ma zainstalowanego dodatku: zostanie poproszony o jego zainstalowanie.

  • Jeśli dodatek nie jest dostępny na platformie uczestnika: uczestnik zostanie poinformowany, że nie może dołączyć do aktywności na swoim urządzeniu.

Gdy użytkownik dołączy do aktywności, wczyta własne elementy iframe z treścią dodatku. Możesz dostosować, czy nowi uczestnicy mają otwierać aktywność dodatkową we głównej części ekranu czy w panelu bocznym.

Rozpocznij aktywność

Aktywność jest uruchamiana przez wywołanie metody startActivity(), która używa interfejsu ActivityStartingState.

Krok 1 (opcjonalny): dodatek ustawia stan początkowy aktywności

ActivityStartingState zawiera informacje o początkowym stanie dodatku, który jest używany, gdy uczestnik akceptuje zaproszenie do dołączenia do aktywności.

Dodatek może ustawić lub zaktualizować ActivityStartingState, wywołując metodę setActivityStartingState() w dowolnym momencie przed aktywnością lub w jej trakcie. Wywołania funkcji setActivityStartingState() można pominąć, jeśli parametr ActivityStartingState jest ustawiony wyłącznie w wywołaniu funkcji startActivity().

Krok 2. Dodatek rozpoczyna aktywność

Aktywność rozpoczyna się, gdy dodatek wywołuje metodę startActivity() w MeetSidePanelClient. Metoda startActivity() przyjmuje obiekt ActivityStartingState jako parametr, więc można wywołać startActivity() zamiast setActivityStartingState().

Gdy użytkownik wybierze treści i będzie gotowy do rozpoczęcia aktywności, wywołaj metodę startActivity() w dodatku w ten sposób:

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

Po wywołaniu metody startActivity() Meet wykonuje te działania:

  • Dla innych uczestników: Meet wyświetla powiadomienie, że aktywność jest w toku.

  • Dla inicjatora: jeśli w ActivityStartingState określono adres URL głównej sceny, Meet otwiera główną scenę, używając adresu URL z ActivityStartingState.

Krok 3. Pobierz stan początkowy aktywności

Gdy użytkownik dołącza do aktywności, dodatek jest wczytywany na głównym ekranie lub w panelu bocznym w zależności od ActivityStartingState.

Właściwość additionalData umożliwia udostępnianie danych początkowych (nazywanych też stanem) użytkownikom dołączającym do aktywności. Po zainicjowaniu obiektu MainStageClient lub SidePanelClient możesz wywołać metodę getActivityStartingState(), aby pobrać właściwość additionalData.

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

Krok 4 (opcjonalny). Udostępnij stan dodatku w aktywności

Możesz też udostępniać stan między użytkownikami podczas aktywności, tworząc własny backend synchronizacji.

Przykład: dodatek do animacji na GitHubie

Przykładowy dodatek „Animation” na GitHubie obejmuje współpracę nad dodatkiem. Krok 1 z tego przewodnika nie jest uwzględniony w przykładzie. Zamiast tego, gdy inicjator dodatku kliknie w panelu bocznym przycisk „Rozpocznij animację”, wywoływana jest metoda startActivity() (krok 2), która wypełnia stan początkowy kolorem wybranym przez użytkownika. Po rozpoczęciu aktywności główny etap pobiera stan początkowy, wywołując metodę getActivityStartingState() (krok 3). Krok 4 został pominięty, ponieważ stan (wybrany kolor) nie jest udostępniany uczestnikom podczas aktywności w tym przykładowym dodatku. Poszczególni użytkownicy mogą jednak zmienić swój stan, wybierając kolor, który jest wysyłany z ramki panelu bocznego do ramki głównej za pomocą komunikatów między ramkami.

Ograniczenia