Tworzenie subskrypcji Google Workspace

Na tej stronie dowiesz się, jak utworzyć subskrypcję zasobu Google Workspace za pomocą interfejsu Events API w Google Workspace. Subskrypcja Google Workspace umożliwia Twojej aplikacji otrzymywanie informacji o zdarzeniach Google Workspace, które reprezentują zmiany zachodzące w zasobach Google Workspace. Informacje o tym, które zasoby i typy zdarzeń obsługuje interfejs Google Workspace Events API, znajdziesz w artykule Omówienie interfejsu Google Workspace Events API.

Aby utworzyć subskrypcję Google Workspace, wykonaj te czynności:

  1. skonfigurować środowisko,
  2. utworzyć temat Google Cloud Pub/Sub i się do niego zasubskrybować, Używasz tego tematu jako punktu końcowego do odbierania zdarzeń Google Workspace.
  3. Wywołaj metodę create() interfejsu Events API w Google Workspace w zasobie Subscription.
  4. Przetestuj subskrypcję Google Workspace, aby upewnić się, że Twój kanał Pub/Sub otrzymuje zdarzenia, które subskrybujesz.
  5. Opcjonalnie skonfiguruj sposób przesyłania zdarzeń do punktu końcowego aplikacji, aby aplikacja mogła przetworzyć zdarzenie i w razie potrzeby podjąć odpowiednie działanie.

Wymagania wstępne

Google Apps Script

  • Projekt Google Cloud z włączonymi płatnościami. W przypadku subskrypcji w Google Chat musisz też włączyć interfejs Chat API w projekcie Cloud i skonfigurować pola Nazwa aplikacji, URL awatara i Opis. Szczegółowe informacje znajdziesz w artykule Tworzenie aplikacji Google Chat.
  • Wymaga uwierzytelniania użytkownika na ekranie zgody OAuth skonfigurowanym dla aplikacji. Podczas konfigurowania ekranu zgody musisz określić zakres, aby obsługiwać każdy typ zdarzenia w ramach subskrypcji. Aby skonfigurować ekran zgody i określić wymagane zakresy, przeczytaj artykuł Wybieranie zakresów.
  • projekt Apps Script:
    • Zamiast domyślnego projektu utworzonego automatycznie przez Apps Script użyj swojego projektu Google Cloud.
    • W przypadku zakresów, które dodano do skonfigurowania ekranu zgody OAuth, musisz też dodać te zakresy do pliku appsscript.json w projekcie Apps Script. Na przykład:
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages.readonly"
      ]
          
    • Włącz usługę zaawansowaną Google Workspace Events.

Python

  • Python 3.6 lub nowszy
  • Narzędzie do zarządzania pakietami pip
  • najnowsze biblioteki klienta Google dla Pythona; Aby je zainstalować lub zaktualizować, uruchom w interfejsie wiersza poleceń to polecenie:
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      
  • Projekt Google Cloud z włączonymi płatnościami. W przypadku subskrypcji w Google Chat musisz też włączyć interfejs Chat API w projekcie Cloud i skonfigurować pola Nazwa aplikacji, URL awatara i Opis. Szczegółowe informacje znajdziesz w artykule Tworzenie aplikacji Google Chat.
  • Wymaga uwierzytelniania użytkownika na ekranie zgody OAuth skonfigurowanym dla aplikacji. Podczas konfigurowania ekranu zgody musisz określić zakres, aby obsługiwać każdy typ zdarzenia w ramach subskrypcji. Aby skonfigurować ekran zgody i określić wymagane zakresy, przeczytaj artykuł Wybieranie zakresów.

Konfigurowanie środowiska

W następnej sekcji wyjaśnimy, jak skonfigurować środowisko przed utworzeniem subskrypcji Google Workspace.

Włącz interfejsy Google Workspace Events API i Google Cloud Pub/Sub API

Zanim zaczniesz korzystać z interfejsów API Google, musisz je włączyć w projekcie Google Cloud. W jednym projekcie Google Cloud możesz włączyć 1 lub więcej interfejsów API.

Google Cloud Console

W konsoli Google Cloud otwórz projekt Google Cloud dla swojej aplikacji i włącz interfejsy Google Workspace Events API i Pub/Sub API:

Włącz interfejsy API

gcloud

  1. W katalogu roboczym zaloguj się na konto Google:

    gcloud auth login
  2. Ustaw projekt jako projekt Cloud dla aplikacji:

    gcloud config set project PROJECT_ID

    Zastąp PROJECT_ID identyfikatorem projektu projektu Cloud Twojej aplikacji.

  3. Włącz interfejsy Google Workspace Events API i Google Cloud Pub/Sub API:

    gcloud services enable pubsub.googleapis.com workspaceevents.googleapis.com

Tworzenie danych logowania do identyfikatora klienta OAuth

Wybierz typ aplikacji, aby uzyskać szczegółowe instrukcje tworzenia identyfikatora klienta OAuth:

Aplikacja internetowa

  1. W konsoli Google Cloud kliknij Menu  > Interfejsy API i usługi > Dane logowania.

    Przejdź do danych logowania

  2. Kliknij Utwórz dane logowania > Identyfikator klienta OAuth.
  3. Kliknij Typ aplikacji > Aplikacja internetowa.
  4. W polu Nazwa wpisz nazwę danych logowania. Ta nazwa jest wyświetlana tylko w konsoli Google Cloud.
  5. Dodaj autoryzowane identyfikatory URI powiązane z Twoją aplikacją:
    • Aplikacje po stronie klienta (JavaScript) – w sekcji Autoryzowane źródła JavaScriptu kliknij Dodaj identyfikator URI. Następnie wpisz identyfikator URI, który ma być używany do żądań przeglądarki. Określa domeny, z których aplikacja może wysyłać żądania interfejsu API do serwera OAuth 2.0.
    • Aplikacje po stronie serwera (Java, Python i inne) – w sekcji Autoryzowane identyfikatory URI przekierowania kliknij Dodaj URI. Następnie wpisz identyfikator URI punktu końcowego, do którego serwer OAuth 2.0 może wysyłać odpowiedzi.
  6. Kliknij Utwórz. Pojawi się ekran utworzonego klienta OAuth z nowym identyfikatorem klienta i tajnym kluczem klienta.

    Zapisz identyfikator klienta. Klucze klienta nie są używane w przypadku aplikacji internetowych.

  7. Kliknij OK. Nowo utworzone dane logowania pojawią się w sekcji Identyfikatory klienta OAuth 2.0.

Android

  1. W konsoli Google Cloud kliknij Menu  > Interfejsy API i usługi > Dane logowania.

    Przejdź do danych logowania

  2. Kliknij Utwórz dane logowania > Identyfikator klienta OAuth.
  3. Kliknij Typ aplikacji > Android.
  4. W polu „Nazwa” wpisz nazwę danych logowania. Ta nazwa jest wyświetlana tylko w konsoli Google Cloud.
  5. W polu „Nazwa pakietu” wpisz nazwę pakietu z pliku AndroidManifest.xml.
  6. W polu „SHA-1 certificate fingerprint” (Odcisk cyfrowy certyfikatu SHA-1) wpisz wygenerowany odcisk cyfrowy certyfikatu SHA-1.
  7. Kliknij Utwórz. Pojawi się ekran utworzonego klienta OAuth z nowym identyfikatorem klienta.
  8. Kliknij OK. Nowo utworzone dane uwierzytelniające pojawią się w sekcji „Identyfikatory klienta OAuth 2.0”.

iOS

  1. W konsoli Google Cloud kliknij Menu  > Interfejsy API i usługi > Dane logowania.

    Przejdź do danych logowania

  2. Kliknij Utwórz dane logowania > Identyfikator klienta OAuth.
  3. Kliknij Typ aplikacji > iOS.
  4. W polu „Nazwa” wpisz nazwę danych logowania. Ta nazwa jest wyświetlana tylko w konsoli Google Cloud.
  5. W polu „Identyfikator pakietu” wpisz identyfikator pakietu podany w pliku Info.plist aplikacji.
  6. Opcjonalnie: jeśli aplikacja jest dostępna w Apple App Store, wpisz identyfikator sklepu App Store.
  7. Opcjonalnie: w polu „Team ID” (Identyfikator zespołu) wpisz niepowtarzalny ciąg 10 znaków wygenerowany przez Apple i przypisany Twojemu zespołowi.
  8. Kliknij Utwórz. Pojawi się ekran utworzonego klienta OAuth z nowym identyfikatorem klienta i tajnym kluczem klienta.
  9. Kliknij OK. Nowo utworzone dane uwierzytelniające pojawią się w sekcji „Identyfikatory klienta OAuth 2.0”.

Aplikacja Chrome

  1. W konsoli Google Cloud kliknij Menu  > Interfejsy API i usługi > Dane logowania.

    Przejdź do danych logowania

  2. Kliknij Utwórz dane logowania > Identyfikator klienta OAuth.
  3. Kliknij Typ aplikacji > Aplikacja Chrome.
  4. W polu „Nazwa” wpisz nazwę danych logowania. Ta nazwa jest wyświetlana tylko w konsoli Google Cloud.
  5. W polu „Application ID” (Identyfikator aplikacji) wpisz unikalny 32-znakowy ciąg znaków identyfikatora aplikacji. Wartość tego identyfikatora znajdziesz w adresie URL aplikacji w Chrome Web Store oraz w panelu dewelopera Chrome Web Store.
  6. Kliknij Utwórz. Pojawi się ekran utworzonego klienta OAuth z nowym identyfikatorem klienta i tajnym kluczem klienta.
  7. Kliknij OK. Nowo utworzone dane uwierzytelniające pojawią się w sekcji „Identyfikatory klienta OAuth 2.0”.

Aplikacja komputerowa

  1. W konsoli Google Cloud kliknij Menu  > Interfejsy API i usługi > Dane logowania.

    Przejdź do danych logowania

  2. Kliknij Utwórz dane logowania > Identyfikator klienta OAuth.
  3. Kliknij Typ aplikacji > Aplikacja na komputer.
  4. W polu Nazwa wpisz nazwę danych logowania. Ta nazwa jest wyświetlana tylko w konsoli Google Cloud.
  5. Kliknij Utwórz. Pojawi się ekran utworzonego klienta OAuth z nowym identyfikatorem klienta i tajnym kluczem klienta.
  6. Kliknij OK. Nowo utworzone dane logowania pojawią się w sekcji Identyfikatory klienta OAuth 2.0.

Telewizory i urządzenia z ograniczoną możliwością wpisywania

  1. W konsoli Google Cloud kliknij Menu  > Interfejsy API i usługi > Dane logowania.

    Przejdź do danych logowania

  2. Kliknij Utwórz dane logowania > Identyfikator klienta OAuth.
  3. Kliknij Typ aplikacji > Telewizory i urządzenia z ograniczonym wejściem.
  4. W polu „Nazwa” wpisz nazwę danych logowania. Ta nazwa jest wyświetlana tylko w konsoli Google Cloud.
  5. Kliknij Utwórz. Pojawi się ekran utworzonego klienta OAuth z nowym identyfikatorem klienta i tajnym kluczem klienta.
  6. Kliknij OK. Nowo utworzone dane uwierzytelniające pojawią się w sekcji „Identyfikatory klienta OAuth 2.0”.

Universal Windows Platform (UWP)

  1. W konsoli Google Cloud kliknij Menu  > Interfejsy API i usługi > Dane logowania.

    Przejdź do danych logowania

  2. Kliknij Utwórz dane logowania > Identyfikator klienta OAuth.
  3. Kliknij Typ aplikacji > Universal Windows Platform (UWP).
  4. W polu „Nazwa” wpisz nazwę danych logowania. Ta nazwa jest wyświetlana tylko w konsoli Google Cloud.
  5. W polu „Identyfikator sklepu” wpisz unikalny 12-znakowy identyfikator sklepu Microsoft Store Twojej aplikacji. Ten identyfikator znajdziesz w adresie URL aplikacji w Microsoft Store oraz w Partner Center.
  6. Kliknij Utwórz. Pojawi się ekran utworzonego klienta OAuth z nowym identyfikatorem klienta i tajnym kluczem klienta.
  7. Kliknij OK. Nowo utworzone dane uwierzytelniające pojawią się w sekcji „Identyfikatory klienta OAuth 2.0”.

Pobieranie pliku JSON z obiektem tajnym klienta

Plik tajnego klucza klienta to reprezentacja w formacie JSON danych logowania identyfikatora klienta OAuth, do których aplikacja może się odwoływać podczas podawania danych logowania.

  1. W konsoli Google Cloud kliknij Menu  > Interfejsy API i usługi > Dane logowania.

    Przejdź do danych logowania

  2. W sekcji Identyfikatory klienta OAuth 2.0 kliknij utworzony identyfikator klienta.

  3. Kliknij Pobierz plik JSON.

  4. Zapisz plik jako client_secrets.json.

Tworzenie tematu Pub/Sub i subskrybowanie go

W tej sekcji utworzysz temat Pub/Sub i subskrypcję tego tematu. Temat Pub/Sub pełni rolę punktu końcowego powiadomień, w którym subskrypcja Google Workspace odbiera zdarzenia.

Więcej informacji o tworzeniu tematów Pub/Sub i zarządzaniu nimi znajdziesz w dokumentacji Pub/Sub.

Aby utworzyć temat Pub/Sub i się do niego zasubskrybować:

Google Cloud Console

  1. W konsoli Google Cloud otwórz stronę Pub/Sub:

    Otwórz Google Cloud Pub/Sub

    Sprawdź, czy wybrany jest projekt Cloud dla Twojej aplikacji.

  2. Kliknij Utwórz temat i wykonaj te czynności:

    1. Wpisz nazwę tematu, np. workspace-events-topic.
    2. Pozostaw zaznaczoną opcję Dodaj subskrypcję domyślną. Pub/Sub nadaje tej domyślnej subskrypcji nazwę podobną do nazwy tematu, np. workspace-events-topic-sub.
    3. Opcjonalnie: zaktualizuj lub skonfiguruj dodatkowe właściwości tematu.
  3. Kliknij Utwórz. Pełny temat ma format projects/PROJECT_ID/topics/TOPIC_ID. Użyjesz tej pełnej nazwy w jednym z kolejnych kroków.

  4. Przyznaj dostęp do publikowania wiadomości Pub/Sub w temacie:

    1. Na stronie tematu otwórz panel boczny i kliknij kartę Uprawnienia.
    2. Kliknij Dodaj podmiot zabezpieczeń.
    3. W polu Dodaj podmioty zabezpieczeń dodaj konto usługi aplikacji Google Workspace, która dostarcza zdarzenia do Twojej subskrypcji:
      1. W przypadku zdarzeń Google Chat: chat-api-push@system.gserviceaccount.com.
      2. W przypadku wydarzeń w Meet: meet-api-event-push@system.gserviceaccount.com.
    4. W menu Przypisz role kliknij Pub/Sub Publisher.
    5. Kliknij Zapisz. Zmiana uprawnień do tematu może potrwać kilka minut.

gcloud

  1. W projekcie Cloud utwórz temat, uruchamiając to polecenie:

    gcloud pubsub topics create TOPIC_ID

    Zastąp TOPIC_ID unikalnym identyfikatorem tematu, np. workspace-events-topic.

    Dane wyjściowe zawierają pełną nazwę tematu sformatowaną jako projects/PROJECT_ID/topics/TOPIC_ID. Zapisz nazwę i upewnij się, że wartość w polu PROJECT_ID to identyfikator projektu Cloud Twojej aplikacji. Nazwy tematu użyjesz w następnym kroku i później do utworzenia subskrypcji Google Workspace.

  2. Przyznawanie dostępu do publikowania wiadomości w temacie:

    gcloud pubsub topics add-iam-policy-binding TOPIC_NAME --member='serviceAccount:GOOGLE_WORKSPACE_APPLICATION' --role='roles/pubsub.publisher'

    Zastąp następujące elementy:

    • TOPIC_NAME: pełna nazwa tematu, która jest wyjściem z poprzedniego kroku. Format: projects/PROJECT_ID/topics/TOPIC_ID.
    • GOOGLE_WORKSPACE_APPLICATION: aplikacja Google Workspace, która musi przesyłać zdarzenia do Twojej subskrypcji:

      • Aby otrzymywać zdarzenia z Google Chat, użyj elementu chat-api-push@system.gserviceaccount.com.
      • Aby odbierać zdarzenia z Meet, użyj opcji meet-api-event-push@system.gserviceaccount.com.

    Zmiana uprawnień tematu może potrwać kilka minut.

  3. Utwórz subskrypcję Pub/Sub dla tematu:

     gcloud pubsub subscriptions create SUBSCRIPTION_NAME --topic=TOPIC_NAME

    Zastąp następujące elementy:

    • SUBSCRIPTION_NAME: nazwa subskrypcji, na przykład workspace-events-subscription.
    • TOPIC_NAME: nazwa tematu utworzonego w poprzednim kroku.

Subskrypcja zasobu Google Workspace

W tej sekcji subskrybujesz zasób Google Workspace, który chcesz monitorować pod kątem zdarzeń.

Wybierz i określ zasób docelowy

W subskrypcji Google Workspace zasób docelowy to zasób Google Workspace, w którym monitorujesz zdarzenia. Docelowy zasób jest reprezentowany w polu targetResource subskrypcji, sformatowanym za pomocą pełnej nazwy zasobu. Na przykład w przypadku subskrypcji, która monitoruje pokój Google Chat (spaces/AAAABBBBBBB), wartość parametru targetResource to //chat.googleapis.com/spaces/AAAABBBBBBB.

Zanim utworzysz subskrypcję, zapoznaj się z sekcjami poniżej, aby dowiedzieć się, jak zidentyfikować i sformatować zasób docelowy.

Określanie zasobu docelowego w Google Chat

Zasób docelowy Format Ograniczenia
Spacja

//chat.googleapis.com/spaces/SPACE

gdzie SPACE to identyfikator w  nazwie zasobu interfejsu Chat API space. Identyfikator możesz uzyskać z adresu URL pokoju lub za pomocą metody spaces.list().

Użytkownik Google Chat, który autoryzuje subskrypcję, musi być członkiem pokoju za pomocą konta Google Workspace lub Google.
Wszystkie pokoje użytkownika

//chat.googleapis.com/spaces/-

Subskrypcja otrzymuje tylko wydarzenia z pokoi, w których użytkownik jest członkiem za pomocą konta Google Workspace lub konta Google.
Użytkownik

//cloudidentity.googleapis.com/users/USER

gdzie USER to identyfikator w  nazwie zasobu interfejsu Chat API user. Więcej informacji znajdziesz w artykule Identyfikowanie i określanie użytkowników Google Chat.

Subskrypcja odbiera tylko zdarzenia dotyczące użytkownika, który autoryzował subskrypcję. Użytkownik nie może autoryzować subskrypcji w imieniu innych użytkowników.

Określanie zasobu docelowego dla Meet

Zasób docelowy Format Ograniczenia (jeśli dotyczy)
Miejsce spotkań //meet.googleapis.com/spaces/SPACE

gdzie SPACE to identyfikator w nazwie zasobu zasobu space interfejsu API REST Meet. Więcej informacji znajdziesz w artykule Jak Meet rozpoznaje pomieszczenie na spotkanie.

Użytkownik //cloudidentity.googleapis.com/users/USER

gdzie USER to identyfikator w polu signedinUser.user zasobu interfejsu Meet REST API participant. Szczegółowe informacje znajdziesz w artykule Praca z uczestnikami.

Subskrypcja otrzymuje zdarzenia dotyczące pomieszczeń spotkań, w których użytkownik:

  • Właściciel zaplecza konferencyjnego.
  • Organizator wydarzenia w Kalendarzu Google powiązanego z salą konferencyjną.

Tworzenie subskrypcji Google Workspace

Aby utworzyć subskrypcję, użyj metody subscriptions.create() interfejsu Events API w Google Workspace do utworzenia zasobu Subscription. Musisz określić te pola:

  • targetResource: usługa Google Workspace zidentyfikowana w poprzedniej sekcji, sformatowana przy użyciu pełnej nazwy zasobu.
  • eventTypes: tablica co najmniej 1 typu zdarzenia, które chcesz otrzymywać w związku z tym zasobem. Jeśli na przykład Twoja aplikacja musi wiedzieć tylko o nowych wiadomościach opublikowanych w pokoju Google Chat, może subskrybować zdarzenia dotyczące utworzonych wiadomości.
  • notificationEndpoint: punkt końcowy powiadomień, w którym subskrypcja Google Workspace dostarcza zdarzenia. Użyj tematu Pub/Sub utworzonego w sekcji poprzedniej.
  • payloadOptions: opcje umożliwiające określenie ilości danych o zasobach, które mają być uwzględnione w ładunku wydarzenia. Ta konfiguracja wpływa na czas ważności subskrypcji. Więcej informacji znajdziesz w artykule Dane zdarzeń.

Aby utworzyć subskrypcję Google Workspace:

Google Apps Script

  1. W projekcie Apps Script utwórz nowy plik skryptu o nazwie createSubscription i dodaj ten kod:

    function createSubscription() {
      // The Google Workspace resource to monitor for events.
      const targetResource = 'TARGET_RESOURCE';
    
      // The types of events to receive.
      const eventTypes = [EVENT_TYPES];
    
      // The endpoint to deliver events to, such as a Google Cloud Pub/Sub topic.
      const pubsubTopic = 'TOPIC_NAME';
    
      // Whether to include resource data or not.
      const resourceData = RESOURCE_DATA;
    
      // Call the Workspace Events API using the advanced service.
      const response = WorkspaceEvents.Subscriptions.create({
        targetResource: targetResource,
        eventTypes: eventTypes,
        notificationEndpoint: {
          pubsubTopic: pubsubTopic,
        },
        payloadOptions: {
          includeResource: resourceData
        }
      });
      console.log(response);
    }
    

    Zastąp następujące elementy:

    • TARGET_RESOURCE: Zasoby Google Workspace, do których subskrybujesz dostęp, w formacie pełnej nazwy zasobu. Na przykład, aby zasubskrybować pokój Google Chat z identyfikatorem AAAABBBB, użyj //chat.googleapis.com/spaces/AAAABBBB.
    • EVENT_TYPES: co najmniej 1 typ zdarzenia, na które chcesz się zapisać w zasobie docelowym. Formatuj jako tablicę ciągów znaków, np. 'google.workspace.chat.message.v1.created'.
    • TOPIC_NAME: pełna nazwa tematu Pub/Sub utworzonego w projekcie Cloud. Format: projects/PROJECT_ID/topics/TOPIC_ID.
    • RESOURCE_DATA: wartość logiczna określająca, czy subskrypcja zawiera dane zasobu w ładunku:

      • True: obejmuje wszystkie dane zasobu. Aby ograniczyć liczbę pól, które mają być uwzględnione, dodaj pole fieldMask i określ co najmniej 1 pole dla zmienionego zasobu. Obsługa danych zasobów jest dostępna tylko w przypadku subskrypcji zasobów Google Chat.
      • False: nie zawiera danych o zasobach.
  2. Aby utworzyć subskrypcję Google Workspace, uruchom funkcję createSubscription w projekcie Apps Script.

Python

  1. W katalogu roboczym utwórz plik o nazwie create_subscription.py i dodaj ten kod:

    """Create subscription."""
    
    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    
    # Specify required scopes.
    SCOPES = [SCOPES]
    
    # Authenticate with Google Workspace and get user authentication.
    flow = InstalledAppFlow.from_client_secrets_file('client_secrets.json', SCOPES)
    CREDENTIALS = flow.run_local_server()
    
    # The Google Workspace resource to monitor for events.
    TARGET_RESOURCE = 'TARGET_RESOURCE'
    
    # The types of events to receive.
    EVENT_TYPES = [EVENT_TYPES]
    
    # The endpoint to deliver events to, such as a Google Cloud Pub/Sub topic.
    TOPIC = 'TOPIC_NAME'
    
    # Call the Workspace Events API using the service endpoint.
    service = build(
        'workspaceevents',
        'v1',
        credentials=CREDENTIALS,
    )
    
    BODY = {
        'target_resource': TARGET_RESOURCE,
        'event_types': EVENT_TYPES,
        'notification_endpoint': {'pubsub_topic': TOPIC},
        'payload_options': {'include_resource': RESOURCE_DATA},
    }
    response = service.subscriptions().create(body=BODY).execute()
    print(response)
    

    Zastąp następujące elementy:

    • SCOPES: co najmniej 1 zakres OAuth obsługujący każdy typ zdarzenia w subskrypcji. Sformatowany jako tablica ciągów znaków. Aby podać wiele zakresów, rozdziel je przecinkami. Na przykład: 'https://www.googleapis.com/auth/chat.spaces.readonly', 'https://www.googleapis.com/auth/chat.memberships.readonly'.
    • TARGET_RESOURCE: Zasoby Google Workspace, do których się subskrybujesz, w pełnej nazwie. Na przykład, aby zasubskrybować pokój Google Chat z identyfikatorem AAAABBBB, użyj //chat.googleapis.com/spaces/AAAABBBB.
    • EVENT_TYPES: co najmniej 1 typ zdarzenia, na które chcesz się zapisać w zasobie docelowym. Formatuj jako tablicę ciągów znaków, np. 'google.workspace.chat.message.v1.created'.
    • TOPIC_NAME: pełna nazwa tematu Pub/Sub utworzonego w projekcie Cloud. Format: projects/PROJECT_ID/topics/TOPIC_ID.
    • RESOURCE_DATA: wartość logiczna określająca, czy subskrypcja zawiera dane zasobu w ładunku:

      • True: obejmuje wszystkie dane zasobu. Aby ograniczyć liczbę pól, które mają być uwzględnione, dodaj pole fieldMask i określ co najmniej 1 pole dla zmienionego zasobu. Obsługa obejmuje tylko subskrypcje zasobów Google Chat, w tym danych zasobów.
      • False: nie zawiera danych o zasobach.
  2. Aby utworzyć subskrypcję Google Workspace, uruchom w terminalu to polecenie:

    python3 create_subscription.py

Interfejs Google Workspace Events API zwraca ukończoną długotrwałą operację, która zawiera instancję utworzonego przez Ciebie zasobu Subscription.

Testowanie subskrypcji Google Workspace

Aby sprawdzić, czy otrzymujesz zdarzenia Google Workspace, możesz wywołać zdarzenie i pobrać wiadomości do subskrypcji Pub/Sub.

Aby przetestować subskrypcję Google Workspace:

Google Cloud Console

  1. Wywoływanie co najmniej 1 rodzaju zdarzenia w zasobie docelowym w ramach subskrypcji Google Workspace. Jeśli na przykład subskrybujesz nowe wiadomości w pokoju czatu, opublikuj wiadomość w pokoju.

  2. W konsoli Google Cloud otwórz stronę Pub/Sub:

    Otwórz stronę Pub/Sub

    Sprawdź, czy wybrany jest projekt Cloud dla Twojej aplikacji.

  3. W menu Pub/Sub kliknij Subskrypcje.

  4. W tabeli znajdź subskrypcję Pub/Sub dla tematu i kliknij nazwę subskrypcji.

  5. Kliknij kartę Wiadomości.

  6. Kliknij Pociągnij. Wygenerowanie wiadomości Pub/Sub może potrwać do kilku minut.

gcloud

  1. Wywoływanie co najmniej 1 rodzaju zdarzenia w zasobie docelowym w ramach subskrypcji Google Workspace. Jeśli na przykład subskrybujesz nowe wiadomości w pokoju czatu, opublikuj wiadomość w pokoju.

  2. Uruchom to polecenie:

    gcloud pubsub subscriptions pull PUBSUB_SUBSCRIPTION_NAME --format=json --limit=MESSAGE_COUNT --auto-ack

    Zastąp następujące elementy:

    • PUBSUB_SUBSCRIPTION_NAME: pełna nazwa subskrypcji Pub/Sub w formacie projects/SUBSCRIPTION_ID/subscriptions/SUBSCRIPTION_ID.
    • MESSAGE_COUNT: maksymalna liczba wiadomości Pub/Sub, które chcesz pobrać.

    Wygenerowanie wiadomości Pub/Sub może potrwać kilka minut.

W przypadku każdego wywołanego zdarzenia Google Workspace do Twojej subskrypcji Pub/Sub jest wysyłana wiadomość zawierająca to zdarzenie. Więcej informacji znajdziesz w artykule Otrzymywanie zdarzeń jako wiadomości Google Cloud Pub/Sub.

Konfigurowanie sposobu odbierania zdarzeń przez aplikację

Utworzona przez Ciebie subskrypcja Pub/Sub działa na zasadzie pull. Po przetestowaniu subskrypcji Pub/Sub możesz zaktualizować typ dostarczania, aby zmienić sposób otrzymywania zdarzeń przez aplikację. Możesz na przykład skonfigurować subskrypcję Pub/Sub na typ dostarczania push, aby aplikacja mogła otrzymywać zdarzenia bezpośrednio do punktu końcowego aplikacji.

Więcej informacji o konfigurowaniu subskrypcji Pub/Sub znajdziesz w dokumentacji Pub/Sub.