Uczestnicy spotkania mogą wspólnie pracować nad aktywnością dodatkową w Google Meet. Gdy rozpocznie się aktywność wspólna, wszyscy uczestnicy spotkania otrzymają powiadomienie o tym, że trwa aktywność.
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 jest niedostępny na platformie uczestnika: uczestnik otrzyma informację, że nie może dołączyć do aktywności na obecnym urządzeniu.
Gdy użytkownik dołączy do aktywności, wczyta własne elementy iframe z zawartością dodatku. Możesz dostosować, czy nowi uczestnicy powinni otwierać aktywność wspólną w głównej części ekranu czy w panelu bocznym.
Rozpocznij aktywność
Aktywność jest uruchamiana przez wywołanie metody
startActivity()
za pomocą interfejsu
ActivityStartingState
.
Krok 1. (Opcjonalnie) Dodatek ustawia stan początkowy aktywności
Pole ActivityStartingState
zawiera informacje o początkowym stanie dodatku, który jest używany, gdy uczestnik zaakceptuje zaproszenie do udziału w aktywności.
Dodatek może ustawić lub zaktualizować ActivityStartingState
, wywołując metodę setActivityStartingState()
w dowolnym momencie przed rozpoczęciem aktywności lub w jej trakcie. Połączenia do setActivityStartingState()
można pominąć, jeśli ActivityStartingState
jest ustawiony wyłącznie w połączeniu do startActivity()
.
Krok 2. Dodatek rozpoczyna aktywność
Aktywność rozpoczyna się, gdy dodatek wywoła metodę
startActivity()
w obiekcie MeetSidePanelClient
.
Metoda startActivity()
przyjmuje jako parametr obiekt ActivityStartingState
, więc zamiast wywoływać setActivityStartingState()
można wywołać startActivity()
.
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.
})
});
Gdy wywoływana jest metoda startActivity()
, Meet wykonuje te działania:
W przypadku innych uczestników: Meet wyświetla powiadomienie, że aktywność jest w toku.
Dla inicjatora: jeśli w polu
ActivityStartingState
określono adres URL głównej sceny, Meet otworzy główną scenę, używając adresu URL z polaActivityStartingState
.
Krok 3. Uzyskaj stan początkowy aktywności
Gdy użytkownik dołączy do aktywności, dodatek zostanie wczytany na głównym etapie lub w panelu bocznym w zależności od ActivityStartingState
.
Za pomocą właściwości additionalData
możesz udostępniać dane początkowe (nazywane też stanem) użytkownikom dołączającym do aktywności. Po zainicjowaniuMainStageClient
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 innym użytkownikom podczas trwania aktywności. Stan możesz udostępniać na 2 sposoby:
- Możesz to zrobić samodzielnie, tworząc własne zaplecze synchronizacji.
- Użyj interfejsu Co-Doing API, który jest wygodnym i szybkim sposobem udostępniania dowolnych danych między użytkownikami.
Przykład: dodatek do animacji w GitHubie
Przykładowy dodatek „Animacja” w GitHubie zawiera funkcję współpracy nad dodatkiem. Krok 1 z tego przewodnika nie jest uwzględniony w próbce. Zamiast tego, gdy inicjator dodatku kliknie przycisk „Uruchom animację” w panelu bocznym, wywoływana jest metoda startActivity()
(krok 2), która wypełnia stan początkowy wybranym przez użytkownika kolorem. 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ż w tym przykładowym dodatku stan (wybrany kolor) nie jest udostępniany uczestnikom podczas aktywności. 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 sceny za pomocą komunikacji między ramkami.
Ograniczenia
- Adresy URL określone w
ActivityStartingState
muszą należeć do tego samego źródła co źródła określone w pliku manifestu dodatku. Więcej informacji znajdziesz w artykule Dodatkowe zabezpieczenia. - Długość znaków we właściwościach
sidePanelUrl
,mainStageUrl
iadditionalData
musi być zgodna z odpowiednimi limitami rozmiaru opublikowanymi w dokumentacji referencyjnej pakietu SDK.
Powiązane artykuły
- Użyj stanu początkowego aktywności
- Korzystanie z dodatku do Meet
- Wdrażanie interfejsu Co-Doing API
- Dodatkowe zabezpieczenia