Tworzenie subskrypcji Google Workspace

Z tego artykułu dowiesz się, jak za pomocą interfejsu Google Workspace Events API utworzyć subskrypcji zasobu Google Workspace. Abonament Google Workspace umożliwia aplikacji otrzymywanie informacji o zdarzeniach Google Workspace, które reprezentują zmiany zasobu Google Workspace. Aby dowiedzieć się więcej o: które zasoby i typy zdarzeń są obsługiwane przez interfejs Google Workspace Events API, Omówienie interfejsu Google Workspace Events API.

Na tej stronie znajdziesz instrukcje tworzenia konta Google Workspace subskrypcja:

  1. skonfigurować środowisko,
  2. Utwórz i zasubskrybuj temat Google Cloud Pub/Sub. Używasz tego tematu jako punktu końcowego do odbierania zdarzeń Google Workspace.
  3. Wywołaj interfejs create() interfejsu Google Workspace Events API na Subscription .
  4. Przetestuj subskrypcję Google Workspace, aby sprawdzić, czy Pub/Sub temat otrzymuje zdarzenia, które subskrybujesz.
  5. Opcjonalnie możesz skonfigurować sposób przekazywania zdarzeń do punktu końcowego aplikacji, więc że aplikacja może przetworzyć zdarzenie i w razie potrzeby podjąć działanie.

Wymagania wstępne

Google Apps Script

  • Aby użyć poleceń Google Cloud CLI opisanych w tym przewodniku:
    1. Zainstaluj Google Cloud CLI.
    2. Do zainicjuj interfejs wiersza poleceń gcloud, uruchom ten kod:
    3.   gcloud init
        
  • projekt Google Cloud; z włączonymi płatnościami. Aby zasubskrybować Google Chat, musisz: włącz też interfejs Chat API w projekcie Cloud oraz skonfiguruj pola Nazwa aplikacji, URL awatara i Opis. . Więcej informacji: Utwórz aplikację Google Chat.
  • Wymaga uwierzytelniania użytkownika za pomocą ekranu zgody OAuth skonfigurowanym dla aplikację. Podczas konfigurowania ekranu zgody musisz określić zakres Obsługują każdy typ zdarzenia w ramach subskrypcji. Aby skonfigurować prośbę o zgodę na przetwarzanie danych i zidentyfikowaniu wymaganych zakresów. Więcej informacji Wybierz zakresy.
  • Projekt Apps Script:
    • Użyj swojego projektu Google Cloud zamiast domyślnego projektu utworzonego automatycznie przez Apps Script.
    • We wszystkich zakresach dodanych w celu skonfigurowania ekranu zgody OAuth musisz też dodać parametr ogranicza się 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 w wersji 3.6 lub nowszej
  • narzędzie do zarządzania pakietami pip;
  • Najnowsze biblioteki klienta Google dla języka Python. Aby je zainstalować lub zaktualizować, uruchom to w interfejsie wiersza poleceń:
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      
  • projekt Google Cloud; z włączonymi płatnościami. Aby zasubskrybować Google Chat, musisz: włącz też interfejs Chat API w projekcie Cloud oraz skonfiguruj pola Nazwa aplikacji, URL awatara i Opis. . Więcej informacji: Utwórz aplikację Google Chat.
  • Wymaga uwierzytelniania użytkownika za pomocą ekranu zgody OAuth skonfigurowanym dla aplikację. Podczas konfigurowania ekranu zgody musisz określić zakres Obsługują każdy typ zdarzenia w ramach subskrypcji. Aby skonfigurować prośbę o zgodę na przetwarzanie danych i zidentyfikowaniu wymaganych zakresów. Więcej informacji Wybierz zakresy.

Konfigurowanie środowiska

W następnej sekcji dowiesz się, jak skonfigurować środowisko przed utworzeniem subskrypcję Google Workspace.

Włączanie interfejsów 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 Interfejs Google Workspace Events API i Pub/Sub API:

Włączanie interfejsów API

gcloud

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

    gcloud auth login
    
  2. Ustaw projekt aplikacji w Google Cloud:

    gcloud config set project PROJECT_ID
    

    Zamień PROJECT_ID na identyfikator projektu Cloud dla Twojej aplikacji.

  3. Włączanie interfejsu Google Workspace Events API i Google Cloud Pub/Sub Interfejs API:

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

Utwórz dane uwierzytelniające identyfikatora klienta OAuth

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

Aplikacja internetowa

  1. W konsoli Google Cloud otwórz 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 JavaScript kliknij Dodaj identyfikator URI. Następnie wpisz identyfikator URI, którego chcesz używać w przypadku żądań przeglądarki. Identyfikuje 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 identyfikator 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 tworzenia klienta OAuth z nowym identyfikatorem klienta i tajnym kluczem klienta.

    Zapisz identyfikator klienta. Tajne klucze klienta nie są używane w aplikacjach internetowych.

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

Android

  1. W konsoli Google Cloud otwórz 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 „Odcisk cyfrowy certyfikatu SHA-1” wpisz wygenerowany odcisk cyfrowy certyfikatu SHA-1.
  7. Kliknij Utwórz. Pojawi się ekran tworzenia klienta OAuth z nowym identyfikatorem klienta.
  8. Kliknij OK. Nowo utworzone dane logowania pojawią się w sekcji „Identyfikatory klienta OAuth 2.0”.

iOS

  1. W konsoli Google Cloud otwórz 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 Twoja aplikacja jest dostępna w Apple App Store, wpisz identyfikator App Store.
  7. Opcjonalnie: w polu „Identyfikator zespołu” wpisz unikalny 10-znakowy ciąg wygenerowany przez Apple i przypisany do Twojego zespołu.
  8. Kliknij Utwórz. Pojawi się ekran tworzenia klienta OAuth z nowym identyfikatorem klienta i tajnym kluczem klienta.
  9. Kliknij OK. Nowo utworzone dane logowania pojawią się w sekcji „Identyfikatory klienta OAuth 2.0”.

Aplikacja Chrome

  1. W konsoli Google Cloud otwórz 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 „Identyfikator aplikacji” wpisz unikalny 32-znakowy identyfikator 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 tworzenia klienta OAuth z nowym identyfikatorem klienta i tajnym kluczem klienta.
  7. Kliknij OK. Nowo utworzone dane logowania pojawią się w sekcji „Identyfikatory klienta OAuth 2.0”.

Aplikacja komputerowa

  1. W konsoli Google Cloud otwórz 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 komputerowa.
  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 tworzenia 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 Ograniczona liczba urządzeń wejściowych

  1. W konsoli Google Cloud otwórz 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 Ograniczona liczba urządzeń wejściowych.
  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 tworzenia 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”.

Universal Windows Platform (UWP)

  1. W konsoli Google Cloud otwórz 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 > Platforma uniwersalna Windows (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 niepowtarzalną, 12-znakową wartość identyfikatora Microsoft Store dla swojej aplikacji. Znajdziesz go w adresie URL Twojej aplikacji w Microsoft Store oraz w Centrum Partnerów.
  6. Kliknij Utwórz. Pojawi się ekran tworzenia klienta OAuth z nowym identyfikatorem klienta i tajnym kluczem klienta.
  7. Kliknij OK. Nowo utworzone dane logowania pojawią się w sekcji „Identyfikatory klienta OAuth 2.0”.

Pobierz plik JSON z tajnym kluczem klienta

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

  1. W konsoli Google Cloud otwórz 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 JSON.

  4. Zapisz plik jako client_secrets.json.

Tworzenie i subskrybowanie tematu Pub/Sub

W tej sekcji utworzysz temat i subskrypcję Pub/Sub w danej kwestii. Twój temat Pub/Sub służy jako punkt końcowy powiadomień, w którym otrzymujesz abonament Google Workspace zdarzeń.

Aby dowiedzieć się więcej o tworzeniu tematów Pub/Sub i zarządzaniu nimi, zobacz interfejs Pub/Sub dokumentacja ,

Aby utworzyć i zasubskrybować temat Pub/Sub:

Google Cloud Console

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

    Otwórz Google Cloud Pub/Sub

    Upewnij się, że wybrany jest projekt Google Cloud dla Twojej aplikacji.

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

    1. Wpisz nazwę tematu, np. workspace-events-topic.
    2. Pozostaw zaznaczone pole Dodaj domyślną subskrypcję. Pub/Sub nadaje nazwę subskrypcję domyślną podobną do nazwy Twojego tematu, na przykład workspace-events-topic-sub
    3. Opcjonalnie: zaktualizuj lub skonfiguruj dodatkowe właściwości danego tematu.
  3. Kliknij Utwórz. Pełna nazwa tematu jest sformatowana w ten sposób: projects/PROJECT_ID/topics/TOPIC_ID Użyjesz tego imienia i nazwiska w kolejnym kroku.

  4. Przyznaj uprawnienia do publikowania wiadomości Pub/Sub w temacie:

    1. Na stronie tematu przejdź do panelu bocznego i otwórz Uprawnienia.
    2. Kliknij Dodaj podmiot zabezpieczeń.
    3. W polu Dodaj podmioty zabezpieczeń dodaj konto usługi dla: Aplikacja Google Workspace, która dostarcza zdarzenia do subskrypcja:
      1. W przypadku wydarzeń w 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 wybierz Pub/Sub Publisher.
    5. Kliknij Zapisz. Aktualizacja uprawnień może potrwać kilka minut danego tematu.

gcloud

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

    gcloud pubsub topics create TOPIC_ID
    

    Zastąp TOPIC_ID unikalnym identyfikatorem tematu, takim jak jako workspace-events-topic.

    W danych wyjściowych zostanie wyświetlona pełna nazwa tematu w formacie projects/PROJECT_ID/topics/TOPIC_ID Zanotuj nazwę i upewnij się, że wartość dla argumentu PROJECT_ID to identyfikator projektu Cloud dla Twojej aplikacji. Użyjesz jej w następnym kroku. subskrypcję Google Workspace.

  2. Przyznaj uprawnienia 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, czyli danych wyjściowych z poprzedniego kroku. Sformatowane jako projects/PROJECT_ID/topics/TOPIC_ID
    • GOOGLE_WORKSPACE_APPLICATION: Aplikacja Google Workspace, która musi przesyłać zdarzenia do subskrypcji:

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

    Aktualizacja 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 utworzonego przez Ciebie tematu. w poprzednim kroku.

Subskrybowanie zasobu Google Workspace

W tej sekcji zasubskrybujesz zasób Google Workspace, który w którym chcesz monitorować zdarzenia.

Wybierz i zidentyfikuj zasób docelowy

W subskrypcji Google Workspace zasobem docelowym jest Zasób Google Workspace, który monitorujesz pod kątem zdarzeń. Wartość docelowa zasób jest reprezentowany w polu targetResource subskrypcji w formacie z pełną nazwą 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: identyfikować i formatować zasób docelowy.

Określanie zasobu docelowego na potrzeby Google Chat

Zasób docelowy Format Ograniczenia
Spacja

//chat.googleapis.com/spaces/SPACE

gdzie SPACE jest identyfikatorem w nazwa zasobu interfejsu Chat API space. Identyfikator możesz uzyskać z adresu URL pokoju lub za pomocą spaces.list().

Użytkownik Google Chat, który autoryzuje subskrypcję, musi być członkiem pokoju w ramach Google Workspace lub Google Konto.
Wszystkie pokoje użytkownika

//chat.googleapis.com/spaces/-

Subskrypcja otrzymuje zdarzenia tylko z pokoi, w których znajduje się użytkownik za pomocą konta Google Workspace lub konta Google.
Użytkownik

//cloudidentity.googleapis.com/users/USER

gdzie USER jest identyfikatorem w nazwa zasobu interfejsu Chat API user. Więcej informacji: Określ i określ Użytkownicy Google Chat.

Subskrypcja otrzymuje 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 mają zastosowanie)
Miejsce spotkań //meet.googleapis.com/spaces/SPACE

gdzie SPACE jest identyfikatorem w nazwa zasobu interfejsu Meet REST API space. Więcej informacji: Jak Meet identyfikuje miejsce spotkań.

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

gdzie USER jest identyfikatorem w signedinUser.user zasobu participant interfejsu Meet REST API. Więcej informacji: Współpraca z uczestnikami.

Subskrypcja otrzymuje zdarzenia dotyczące sal konferencyjnych, w których użytkownik jest jednym z tych:

  • Właściciel sali konferencyjnej.
  • organizator, wydarzenia w Kalendarzu Google powiązanego z miejscem spotkań.

Tworzenie subskrypcji Google Workspace

Aby utworzyć subskrypcję, użyj interfejsu Google Workspace Events API Metoda subscriptions.create(), aby utworzyć Subscription . Określasz te pola:

  • targetResource: usługa Google Workspace zidentyfikowana w poprzednia sekcja sformatowana z użyciem pełnej nazwy zasobu.
  • eventTypes: tablica z co najmniej jednym typem zdarzenia, o którym chcesz otrzymywać informacje. w przypadku zasobów. Na przykład jeśli aplikacja potrzebuje tylko powiadomień o nowych wiadomościach opublikowany w pokoju czatu, aplikacja może tylko subskrybować wydarzenia o utworzonych wiadomościach.
  • notificationEndpoint: punkt końcowy powiadomień, w którym Abonament Google Workspace dostarcza zdarzenia. Korzystasz z Temat Pub/Sub utworzony w poprzedniej sekcji.
  • payloadOptions: opcje określające ilość danych zasobów, które mają być uwzględnione ładunek zdarzenia. Ta konfiguracja wpływa na czas ważności Twojej subskrypcji. Więcej informacji znajdziesz w sekcji Wydarzenie danych.

Aby utworzyć subskrypcję Google Workspace:

Google Apps Script

  1. Utwórz nowy plik skryptu w projekcie Apps Script createSubscription i dodaj następujący 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: zasób Google Workspace który chcesz zasubskrybować, w formacie pełnej nazwy jego zasobu. Dla: na przykład, aby zasubskrybować pokój Google Chat o identyfikatorze pokoju AAAABBBB, użyj formy płatności //chat.googleapis.com/spaces/AAAABBBB.
    • EVENT_TYPES: co najmniej 1 typ zdarzenia który chcesz subskrybować w zasobie docelowym. Sformatuj jako tablica ciągów znaków, takich jak 'google.workspace.chat.message.v1.created'.
    • TOPIC_NAME: pełna nazwa tematu Pub/Sub, który utworzony w projekcie Cloud. Sformatowane jako projects/PROJECT_ID/topics/TOPIC_ID
    • RESOURCE_DATA: wartość logiczna określająca, czy subskrypcja zawiera w ładunku dane zasobów:

      • True: obejmuje wszystkie dane zasobów. Aby ograniczyć zakres pól należy dodać fieldMask i określ co najmniej jedno pole dla zmienionego zasobu. Tylko subskrypcji pomocy dotyczącej zasobów Google Chat, w tym danych zasobów.
      • False: wyklucza dane zasobów.
  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. za subskrypcję. Sformatowana jako tablica ciągów znaków. Aby wymienić kilka zakresów, oddziel je przecinkami. Na przykład: 'https://www.googleapis.com/auth/chat.spaces.readonly', 'https://www.googleapis.com/auth/chat.memberships.readonly'.
    • TARGET_RESOURCE: zasób Google Workspace który chcesz zasubskrybować, w formacie pełnej nazwy jego zasobu. Dla: na przykład, aby zasubskrybować pokój Google Chat o identyfikatorze pokoju AAAABBBB, użyj formy płatności //chat.googleapis.com/spaces/AAAABBBB.
    • EVENT_TYPES: co najmniej 1 typ zdarzenia który chcesz subskrybować w zasobie docelowym. Sformatuj jako tablica ciągów znaków, takich jak 'google.workspace.chat.message.v1.created'.
    • TOPIC_NAME: pełna nazwa tematu Pub/Sub, który utworzony w projekcie Cloud. Sformatowane jako projects/PROJECT_ID/topics/TOPIC_ID
    • RESOURCE_DATA: wartość logiczna określająca, czy subskrypcja zawiera w ładunku dane zasobów:

      • True: obejmuje wszystkie dane zasobów. Aby ograniczyć zakres pól należy dodać fieldMask i określ co najmniej jedno pole dla zmienionego zasobu. Tylko subskrypcji pomocy dotyczącej zasobów Google Chat, w tym danych zasobów.
      • False: wyklucza dane zasobów.
  2. Aby utworzyć subskrypcję Google Workspace, uruchom to polecenie w terminal:

    python3 create_subscription.py
    

Interfejs Google Workspace Events API zwraca ukończoną długotrwałą operacji, która zawiera wystąpienia utworzonego zasobu Subscription.

Testowanie subskrypcji Google Workspace

Aby sprawdzić, czy odbierasz zdarzenia Google Workspace, możesz aktywować regułę i pobierz wiadomości do subskrypcji Pub/Sub.

Aby przetestować subskrypcję Google Workspace:

Google Cloud Console

  1. Aktywuj co najmniej jeden typ zdarzenia w zasobie docelowym swojej Abonament Google Workspace. Jeśli na przykład subskrybujesz nowy kanał wiadomości w pokoju czatu, opublikuj wiadomość w tym pokoju.

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

    Otwórz stronę Pub/Sub

    Upewnij się, że wybrany jest projekt Google Cloud dla Twojej aplikacji.

  3. W menu Pub/Sub kliknij Subskrypcje.

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

  5. Kliknij kartę Wiadomości.

  6. Kliknij Pobierz. Może minąć kilka minut, zanim zdarzenie wygeneruje Wiadomość Pub/Sub.

gcloud

  1. Aktywuj co najmniej jeden typ zdarzenia w zasobie docelowym swojej Abonament Google Workspace. Jeśli na przykład subskrybujesz nowy kanał wiadomości w pokoju czatu, opublikuj wiadomość w tym 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 Twojego Subskrypcja Pub/Sub w formacie projects/SUBSCRIPTION_ID/subscriptions/SUBSCRIPTION_ID
    • MESSAGE_COUNT: maksymalna liczba wiadomości Pub/Sub, które chcesz pobrać.

    Wygenerowanie Pub/Sub przez zdarzenie może potrwać nawet kilka minut .

W przypadku każdego wywołanego zdarzenia Google Workspace wyświetli się komunikat do subskrypcji Pub/Sub zawierającej zdarzenie. Więcej informacji: Odbieranie zdarzeń jako wiadomości Google Cloud Pub/Sub.

Skonfiguruj sposób odbierania zdarzeń przez aplikację

Utworzona przez Ciebie subskrypcja Pub/Sub jest oparta na pull. Po zakończeniu testów Twojej subskrypcji Pub/Sub, możesz zaktualizować typ dostarczania, aby zmienić sposób, w jaki aplikacja odbiera zdarzenia. Możesz na przykład skonfigurować Pub/Sub subskrypcja typu dostarczania push, dzięki czemu aplikacja może otrzymywać zdarzenia; bezpośrednio do punktu końcowego aplikacji.

Aby dowiedzieć się więcej o konfigurowaniu subskrypcji Pub/Sub, zapoznaj się z artykułem Pub/Sub dokumentacji.