Google Workspace-Abo erstellen

Auf dieser Seite wird erläutert, wie Sie mit der Google Workspace Events API ein für eine Google Workspace-Ressource abonnieren. Ein Google Workspace-Abo kann Ihre App Informationen zu Google Workspace-Ereignissen empfangen, die Änderungen an einer Google Workspace-Ressource darstellen. Weitere Informationen zu welche Ressourcen und Ereignistypen die Google Workspace Events API unterstützt, siehe Übersicht über die Google Workspace Events API

Auf dieser Seite werden die folgenden Schritte zum Erstellen eines Google Workspace-Kontos beschrieben. Abo:

  1. die Umgebung einrichten
  2. Google Cloud Pub/Sub-Thema erstellen und abonnieren Sie verwenden dieses Thema als einen Endpunkt, um Google Workspace-Ereignisse zu empfangen.
  3. create() der Google Workspace Events API aufrufen auf der Subscription .
  4. Testen Sie Ihr Google Workspace-Abo, um zu prüfen, ob Pub/Sub Thema empfängt Ereignisse, die Sie abonniert haben.
  5. Konfigurieren Sie optional, wie Ereignisse per Push an einen Endpunkt für Ihre Anwendung übertragen werden, damit dass deine App das Ereignis verarbeiten und bei Bedarf Maßnahmen ergreifen kann.

Vorbereitung

Apps Script

  • So verwenden Sie die Google Cloud CLI-Befehle in dieser Anleitung:
    1. Installieren Sie die Google Cloud CLI.
    2. Bis <ph type="x-smartling-placeholder"></ph> Initialisieren Sie die gcloud-Befehlszeile und führen Sie den folgenden Code aus:
    3.   gcloud init
        
  • Ein Google Cloud-Projekt mit aktivierter Abrechnung. Für Abos von Google Chat müssen Sie Aktivieren Sie auch die Chat API in Ihrem Cloud-Projekt und Konfigurieren Sie App-Name, Avatar-URL und Beschreibung. . Weitere Informationen finden Sie unter Erstellen Sie eine Google Chat App.
  • Erfordert eine Nutzerauthentifizierung mit konfiguriertem OAuth-Zustimmungsbildschirm für in der App. Beim Konfigurieren des Zustimmungsbildschirms müssen Sie einen Bereich für unterstützen alle Ereignistypen für das Abo. Einwilligung konfigurieren und die erforderlichen Bereiche zu identifizieren, Bereiche auswählen
  • Ein Apps Script-Projekt:
    • Verwenden Sie Ihr Google Cloud-Projekt anstelle des Standardprojekts, das automatisch von Apps Script.
    • Für alle Bereiche, die Sie zur Konfiguration des OAuth-Zustimmungsbildschirms hinzugefügt haben, müssen Sie auch den Bereiche auf die Datei appsscript.json in Ihrem Apps Script-Projekt. Beispiel:
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages.readonly"
      ]
          
    • Aktivieren den erweiterten Google Workspace Events-Dienst.

Python

  • Python 3.6 oder höher
  • Paketverwaltungstool pip
  • Die neuesten Google-Clientbibliotheken für Python. Führen Sie den folgenden Befehl aus, um sie zu installieren oder zu aktualisieren: in Ihrer Befehlszeile:
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      
  • So verwenden Sie die Google Cloud CLI-Befehle in dieser Anleitung:
    1. Installieren Sie die Google Cloud CLI.
    2. Bis <ph type="x-smartling-placeholder"></ph> Initialisieren Sie die gcloud-Befehlszeile und führen Sie den folgenden Code aus:
    3.   gcloud init
        
  • Ein Google Cloud-Projekt mit aktivierter Abrechnung. Für Abos von Google Chat müssen Sie die Chat API in Ihrem Cloud-Projekt aktivieren und Konfigurieren Sie App-Name, Avatar-URL und Beschreibung. . Weitere Informationen finden Sie unter Erstellen Sie eine Google Chat App.
  • Erfordert eine Nutzerauthentifizierung mit konfiguriertem OAuth-Zustimmungsbildschirm für in der App. Beim Konfigurieren des Zustimmungsbildschirms müssen Sie einen Bereich für unterstützen alle Ereignistypen für das Abo. Einwilligung konfigurieren und die erforderlichen Zugriffsbereiche identifizieren, Bereiche auswählen

Umgebung einrichten

Im folgenden Abschnitt wird erläutert, wie Sie Ihre Umgebung einrichten, bevor Sie ein Google Workspace-Abo haben.

Google Workspace Events API und Google Cloud Pub/Sub API aktivieren

Bevor Sie Google APIs verwenden können, müssen Sie sie in einem Google Cloud-Projekt aktivieren. Sie können eine oder mehrere APIs in einem einzelnen Google Cloud-Projekt aktivieren.

Google Cloud Console

Öffnen Sie in der Google Cloud Console das Google Cloud-Projekt für Ihre Anwendung und aktivieren Sie die Google Workspace Events API und Pub/Sub API:

APIs aktivieren

gcloud

  1. Melden Sie sich in Ihrem Arbeitsverzeichnis in Ihrem Google-Konto an:

    gcloud auth login
    
  2. Legen Sie Ihr Projekt auf das Cloud-Projekt für Ihre Anwendung fest:

    gcloud config set project PROJECT_ID
    

    Ersetzen Sie PROJECT_ID durch den Projekt-ID des Cloud-Projekts für Ihre Anwendung.

  3. Google Workspace Events API und Google Cloud Pub/Sub aktivieren API:

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

OAuth-Client-ID-Anmeldedaten erstellen

Wähle deinen Anwendungstyp aus, um spezifische Anweisungen zum Erstellen einer OAuth-Client-ID zu erhalten:

Webanwendung

  1. Öffnen Sie in der Google Cloud Console das Dreistrich-Menü &gt; APIs und Dienste &gt; Anmeldedaten.

    Zu den Anmeldedaten

  2. Klicken Sie auf Anmeldedaten erstellen &gt; OAuth-Client-ID.
  3. Klicken Sie auf Anwendungstyp &gt; Webanwendung.
  4. Geben Sie in das Feld Name einen Namen für die Anmeldedaten ein. Dieser Name wird nur in der Google Cloud Console angezeigt.
  5. Fügen Sie zu Ihrer App gehörige autorisierte URIs hinzu:
    • Clientseitige Apps (JavaScript): Klicken Sie unter Autorisierte JavaScript-Quellen auf URI hinzufügen. Geben Sie dann einen URI ein, der für Browseranfragen verwendet werden soll. Hiermit werden die Domains identifiziert, von denen aus Ihre Anwendung API-Anfragen an den OAuth 2.0-Server senden kann.
    • Serverseitige Anwendungen (Java, Python und mehr): Klicken Sie unter Autorisierte Weiterleitungs-URIs auf URI hinzufügen. Geben Sie dann einen Endpunkt-URI ein, an den der OAuth 2.0-Server Antworten senden kann.
  6. Klicken Sie auf Erstellen. Der Bildschirm "OAuth-Client erstellt" wird mit Ihrer neuen Client-ID und Ihrem neuen Clientschlüssel angezeigt.

    Notieren Sie sich die Client-ID. Clientschlüssel werden nicht für Webanwendungen verwendet.

  7. Klicken Sie auf OK. Die neu erstellten Anmeldedaten werden unter OAuth 2.0-Client-IDs angezeigt.

Android

  1. Öffnen Sie in der Google Cloud Console das Dreistrich-Menü &gt; APIs und Dienste &gt; Anmeldedaten.

    Zu den Anmeldedaten

  2. Klicken Sie auf Anmeldedaten erstellen &gt; OAuth-Client-ID.
  3. Klicken Sie auf Anwendungstyp &gt; Android.
  4. Geben Sie im Feld „Name“ einen Namen für die Anmeldedaten ein. Dieser Name wird nur in der Google Cloud Console angezeigt.
  5. Unter „Paketname“ den Paketnamen aus der Datei AndroidManifest.xml ein.
  6. Im SHA-1-Zertifikatfingerabdruck den generierten SHA-1-Zertifikatfingerabdruck ein.
  7. Klicken Sie auf Erstellen. Der Bildschirm "OAuth-Client erstellt" mit Ihrer neuen Client-ID wird angezeigt.
  8. Klicken Sie auf OK. Die neu erstellten Anmeldedaten werden unter „OAuth 2.0-Client-IDs“ angezeigt.

iOS

  1. Öffnen Sie in der Google Cloud Console das Dreistrich-Menü &gt; APIs und Dienste &gt; Anmeldedaten.

    Zu den Anmeldedaten

  2. Klicken Sie auf Anmeldedaten erstellen &gt; OAuth-Client-ID.
  3. Klicken Sie auf Anwendungstyp &gt; iOS.
  4. Geben Sie im Feld „Name“ einen Namen für die Anmeldedaten ein. Dieser Name wird nur in der Google Cloud Console angezeigt.
  5. Wählen Sie im Feld „Bundle-ID“ geben Sie den Paket-Identifikator so ein, wie er in der Datei Info.plist der App aufgeführt ist.
  6. Optional: Wenn Ihre App im Apple App Store angezeigt wird, geben Sie die App Store-ID ein.
  7. Optional: Geben Sie unter „Team-ID“ die eindeutige zehnstellige Zeichenfolge ein, die von Apple generiert und Ihrem Team zugewiesen wurde.
  8. Klicken Sie auf Erstellen. Der Bildschirm "OAuth-Client erstellt" wird mit Ihrer neuen Client-ID und Ihrem neuen Clientschlüssel angezeigt.
  9. Klicken Sie auf OK. Die neu erstellten Anmeldedaten werden unter „OAuth 2.0-Client-IDs“ angezeigt.

Chrome App

  1. Öffnen Sie in der Google Cloud Console das Dreistrich-Menü &gt; APIs und Dienste &gt; Anmeldedaten.

    Zu den Anmeldedaten

  2. Klicken Sie auf Anmeldedaten erstellen &gt; OAuth-Client-ID.
  3. Klicken Sie auf Anwendungstyp &gt; Chrome-App.
  4. Geben Sie im Feld „Name“ einen Namen für die Anmeldedaten ein. Dieser Name wird nur in der Google Cloud Console angezeigt.
  5. Wählen Sie im Feld „Anwendungs-ID“ die eindeutige 32-stellige ID-Zeichenfolge Ihrer Anwendung ein. Sie finden diesen ID-Wert in der Chrome Web Store-URL Ihrer App und im Chrome Web Store-Entwickler-Dashboard.
  6. Klicken Sie auf Erstellen. Der Bildschirm "OAuth-Client erstellt" wird mit Ihrer neuen Client-ID und Ihrem neuen Clientschlüssel angezeigt.
  7. Klicken Sie auf OK. Die neu erstellten Anmeldedaten werden unter „OAuth 2.0-Client-IDs“ angezeigt.

Desktopanwendung

  1. Öffnen Sie in der Google Cloud Console das Dreistrich-Menü &gt; APIs und Dienste &gt; Anmeldedaten.

    Zu den Anmeldedaten

  2. Klicken Sie auf Anmeldedaten erstellen &gt; OAuth-Client-ID.
  3. Klicken Sie auf Anwendungstyp &gt; Desktop-App.
  4. Geben Sie in das Feld Name einen Namen für die Anmeldedaten ein. Dieser Name wird nur in der Google Cloud Console angezeigt.
  5. Klicken Sie auf Erstellen. Der Bildschirm "OAuth-Client erstellt" wird mit Ihrer neuen Client-ID und Ihrem neuen Clientschlüssel angezeigt.
  6. Klicken Sie auf OK. Die neu erstellten Anmeldedaten werden unter OAuth 2.0-Client-IDs angezeigt.

Fernseher und Geräte mit begrenzter Eingabe

  1. Öffnen Sie in der Google Cloud Console das Dreistrich-Menü &gt; APIs und Dienste &gt; Anmeldedaten.

    Zu den Anmeldedaten

  2. Klicken Sie auf Anmeldedaten erstellen &gt; OAuth-Client-ID.
  3. Klicken Sie auf App-Typ &gt; Fernseher und Geräte mit begrenzter Eingabe.
  4. Geben Sie im Feld „Name“ einen Namen für die Anmeldedaten ein. Dieser Name wird nur in der Google Cloud Console angezeigt.
  5. Klicken Sie auf Erstellen. Der Bildschirm "OAuth-Client erstellt" wird mit Ihrer neuen Client-ID und Ihrem neuen Clientschlüssel angezeigt.
  6. Klicken Sie auf OK. Die neu erstellten Anmeldedaten werden unter „OAuth 2.0-Client-IDs“ angezeigt.

Universal Windows Platform (UWP)

  1. Öffnen Sie in der Google Cloud Console das Dreistrich-Menü &gt; APIs und Dienste &gt; Anmeldedaten.

    Zu den Anmeldedaten

  2. Klicken Sie auf Anmeldedaten erstellen &gt; OAuth-Client-ID.
  3. Klicken Sie auf Anwendungstyp &gt; Universelle Windows-Plattform (UWP).
  4. Geben Sie im Feld „Name“ einen Namen für die Anmeldedaten ein. Dieser Name wird nur in der Google Cloud Console angezeigt.
  5. Im Feld „Shop-ID“ den eindeutigen 12-stelligen Microsoft Store-ID-Wert für Ihre App ein. Sie finden diese ID in der Microsoft Store-URL Ihrer App und im Partnercenter.
  6. Klicken Sie auf Erstellen. Der Bildschirm "OAuth-Client erstellt" wird mit Ihrer neuen Client-ID und Ihrem neuen Clientschlüssel angezeigt.
  7. Klicken Sie auf OK. Die neu erstellten Anmeldedaten werden unter „OAuth 2.0-Client-IDs“ angezeigt.

Clientschlüssel-JSON-Datei herunterladen

Die Clientschlüsseldatei ist eine JSON-Darstellung der OAuth-Client-ID. Anmeldedaten, auf die sich Ihre App beim Bereitstellen von Anmeldedaten beziehen kann.

  1. Öffnen Sie in der Google Cloud Console das Menü . &gt; APIs und Dienste &gt; Anmeldedaten.

    Zu den Anmeldedaten

  2. Klicken Sie unter OAuth 2.0-Client-IDs auf die erstellte Client-ID.

  3. Klicken Sie auf JSON herunterladen.

  4. Speichern Sie die Datei als client_secrets.json.

Pub/Sub-Thema erstellen und abonnieren

In diesem Abschnitt erstellen Sie ein Pub/Sub-Thema und -Abo zum Thema. Ihr Pub/Sub-Thema dient als Benachrichtigungsendpunkt, an den Ihr Google Workspace-Abo gesendet wird Ereignisse.

Weitere Informationen zum Erstellen und Verwalten von Pub/Sub-Themen finden Sie unter Pub/Sub Dokumentation .

So erstellen Sie ein Pub/Sub-Thema und abonnieren es:

Google Cloud Console

  1. Rufen Sie in der Google Cloud Console die Pub/Sub-Seite auf:

    Zu Google Cloud Pub/Sub

    Achten Sie darauf, dass das Cloud-Projekt für Ihre Anwendung ausgewählt ist.

  2. Klicken Sie auf Thema erstellen und Gehen Sie so vor:

    1. Geben Sie einen Namen für das Thema ein, z. B. workspace-events-topic.
    2. Lassen Sie Standardabo hinzufügen ausgewählt. Pub/Sub benennt diesen Standardabo, das dem Namen Ihres Themas ähnelt, z. B. workspace-events-topic-sub
    3. Optional: Aktualisieren oder konfigurieren Sie zusätzliche Properties. zu Ihrem Thema.
  3. Klicken Sie auf Erstellen. Ihr vollständiger Themenname hat folgendes Format: projects/PROJECT_ID/topics/TOPIC_ID Sie verwenden diesen vollständigen Namen in einem späteren Schritt.

  4. Gewähren Sie Zugriff zum Veröffentlichen von Pub/Sub-Nachrichten zu Ihrem Thema:

    1. Öffnen Sie auf der Themenseite in der Seitenleiste das Berechtigungen.
    2. Klicken Sie auf Hauptkonto hinzufügen.
    3. Fügen Sie im Feld Hauptkonten hinzufügen das Dienstkonto für das Google Workspace-Anwendung, die Ereignisse an Ihre Abo:
      1. Bei Chat-Ereignissen: chat-api-push@system.gserviceaccount.com
      2. Bei Meet-Terminen: meet-api-event-push@system.gserviceaccount.com
    4. Wählen Sie im Menü Rollen zuweisen die Option Pub/Sub Publisher aus.
    5. Klicken Sie auf Speichern. Es kann einige Minuten dauern, bis die Berechtigungen aktualisiert sind zu Ihrem Thema.

gcloud

  1. Erstellen Sie in Ihrem Cloud-Projekt ein Thema, indem Sie Folgendes ausführen: Befehl:

    gcloud pubsub topics create TOPIC_ID
    

    Ersetzen Sie TOPIC_ID durch eine eindeutige ID für Ihr Thema, z. B. als workspace-events-topic.

    Die Ausgabe zeigt den vollständigen Themennamen im Format projects/PROJECT_ID/topics/TOPIC_ID Notieren Sie sich den Namen und stellen Sie sicher, dass der Wert für PROJECT_ID ist die ID des Cloud-Projekts. für Ihre App. Sie verwenden den Themennamen im nächsten Schritt und um das Google Workspace-Abo abschließen.

  2. Gewähren Sie Zugriff, um Nachrichten zu Ihrem Thema zu veröffentlichen:

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

    Ersetzen Sie Folgendes:

    • TOPIC_NAME: Der vollständige Name des Themas, also der aus dem vorherigen Schritt. Formatiert als projects/PROJECT_ID/topics/TOPIC_ID
    • GOOGLE_WORKSPACE_APPLICATION: Die Google Workspace-Anwendung, die Ereignisse an Nutzer senden muss Ihr Abo:

      • Um Ereignisse aus Google Chat zu erhalten, verwenden Sie chat-api-push@system.gserviceaccount.com
      • Wenn Sie Termine aus Meet erhalten möchten, verwenden Sie meet-api-event-push@system.gserviceaccount.com

    Es kann einige Minuten dauern, bis die Berechtigungen für Ihr Thema aktualisiert sind.

  3. Erstellen Sie ein Pub/Sub-Abo für das Thema:

     gcloud pubsub subscriptions create SUBSCRIPTION_NAME --topic=TOPIC_NAME
    

    Ersetzen Sie Folgendes:

    • SUBSCRIPTION_NAME: Ein Name für Ihr Abo. z. B. workspace-events-subscription.
    • TOPIC_NAME: Der Name des Themas, das Sie erstellt haben. aus dem vorherigen Schritt.

Google Workspace-Ressourcen abonnieren

In diesem Abschnitt abonnieren Sie die Google Workspace-Ressource, die die Sie auf Ereignisse überwachen möchten.

Zielressource auswählen und identifizieren

In einem Google Workspace-Abo ist die Zielressource die Google Workspace-Ressource, die Sie auf Ereignisse überwachen. Das Ziel Ressource wird im Feld targetResource des Abos dargestellt, das folgendermaßen formatiert ist: den vollständigen Ressourcennamen. Für ein Abo, das einen Google Chat-Bereich (spaces/AAAABBBBBBB), der Wert von targetResource lautet //chat.googleapis.com/spaces/AAAABBBBBBB

Lesen Sie vor dem Erstellen des Abos in den folgenden Abschnitten, wie Sie um die Zielressource zu identifizieren und zu formatieren.

Zielressource für Google Chat identifizieren

Zielressource Format Einschränkungen
Leerzeichen

//chat.googleapis.com/spaces/SPACE

Dabei ist SPACE die ID im Ressourcenname der space-Ressource der Chat API. Sie finden die ID in der URL des Gruppenbereichs oder mithilfe des spaces.list()-Methode.

Der Chat-Nutzer, der das Abo autorisiert, muss Sie müssen über Google Workspace oder Google Konto.
Alle Gruppenbereiche eines Nutzers

//chat.googleapis.com/spaces/-

Das Abo erhält nur Ereignisse für die Gruppenbereiche, in denen sich der Nutzer befindet über sein Google Workspace- oder Google-Konto.
Nutzer

//cloudidentity.googleapis.com/users/USER

Dabei ist USER die ID im Ressourcenname der user-Ressource der Chat API. Weitere Informationen finden Sie unter Identifizieren und definieren Sie Google Chat-Nutzer

Das Abo erhält nur Ereignisse über den Nutzer, die das Abo autorisiert haben. Ein Nutzer kann auf im Namen anderer Nutzer.

Zielressource für Meet bestimmen

Zielressource Format Einschränkungen (falls zutreffend)
Konferenzraum //meet.googleapis.com/spaces/SPACE

Dabei ist SPACE die ID im Ressourcenname der space-Ressource der Meet REST API. Weitere Informationen finden Sie unter Wie Meet erkennt einen Konferenzraum.

Nutzer //cloudidentity.googleapis.com/users/USER

Dabei ist USER die ID im signedinUser.user der participant-Ressource für die Meet REST API. Weitere Informationen finden Sie unter Mit Teilnehmern zusammenarbeiten

Das Abo erhält Ereignisse zu Konferenzräumen, User ist einer der folgenden:

  • Der Eigentümer des Konferenzraums.
  • Den Organizer des mit dem Konferenzraum verknüpften Google Kalender-Termins.

Google Workspace-Abo erstellen

Wenn Sie ein Abo erstellen möchten, verwenden Sie die subscriptions.create()-Methode zum Erstellen Subscription . Sie geben die folgenden Felder an:

  • targetResource: Ein Google Workspace-Konto, das Sie in der vorherigen Abschnitt mit dem vollständigen Ressourcennamen formatiert.
  • eventTypes: ein Array mit einem oder mehreren Ereignistypen, über die Sie Informationen erhalten möchten auf die Ressource zugreifen. Wenn Ihre App z. B. nur über neue Nachrichten informiert werden muss, in einem Chatbereich gepostet wurde, kann Ihre App einfach Ereignisse abonnieren, zu erstellten Nachrichten.
  • notificationEndpoint: Ein Benachrichtigungsendpunkt, an dem Ihr Google Workspace-Abos liefern Ereignisse. Sie verwenden die Pub/Sub-Thema, das Sie im vorherigen Abschnitt erstellt haben.
  • payloadOptions: Optionen zum Angeben, wie viele Ressourcendaten berücksichtigt werden sollen die Ereignisnutzlast. Diese Konfiguration wirkt sich auf die Ablaufzeit für Ihre Abo. Weitere Informationen finden Sie unter Ereignis- Daten.

So erstellen Sie ein Google Workspace-Abo:

Apps Script

  1. Erstellen Sie in Ihrem Apps Script-Projekt eine neue Skriptdatei. namens createSubscription und fügen Sie den folgenden Code hinzu:

    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);
    }
    

    Ersetzen Sie Folgendes:

    • TARGET_RESOURCE: Die Google Workspace-Ressource die Sie abonnieren, formatiert als der vollständige Ressourcenname. Für Beispiel: Sie können einen Google Chat-Bereich mit der ID des Gruppenbereichs abonnieren, AAAABBBB, //chat.googleapis.com/spaces/AAAABBBB verwenden.
    • EVENT_TYPES: mindestens ein Ereignistyp die Sie in der Zielressource abonnieren möchten. Formatieren als Array von Strings wie 'google.workspace.chat.message.v1.created'.
    • TOPIC_NAME: Der vollständige Name des Pub/Sub-Themas, das die Sie in Ihrem Cloud-Projekt erstellt haben. Formatiert als projects/PROJECT_ID/topics/TOPIC_ID
    • RESOURCE_DATA: Ein boolescher Wert, der angibt, enthält Ressourcendaten in die Nutzlast:

      • True: Enthält alle Ressourcendaten. Um einzuschränken, welche Felder enthalten, fügen Sie den fieldMask und geben Sie mindestens ein Feld für die geänderte Ressource an. Nur Abos von Chat-Ressourcen, Support einschließlich Ressourcendaten.
      • False: Schließt Ressourcendaten aus.
  2. Führen Sie die Funktion aus, um das Google Workspace-Abo zu erstellen createSubscription in Ihrem Apps Script-Projekt

Python

  1. Erstellen Sie in Ihrem Arbeitsverzeichnis eine Datei mit dem Namen create_subscription.py. und fügen Sie den folgenden Code hinzu:

    """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)
    

    Ersetzen Sie Folgendes:

    • SCOPES: Ein oder mehrere OAuth-Bereiche, die jeden Ereignistyp unterstützen für das Abo. Formatiert als String-Array. Wenn Sie mehrere Bereiche auflisten möchten, trennen Sie sie durch Kommas. Beispiel: 'https://www.googleapis.com/auth/chat.spaces.readonly', 'https://www.googleapis.com/auth/chat.memberships.readonly'
    • TARGET_RESOURCE: Die Google Workspace-Ressource die Sie abonnieren, formatiert als der vollständige Ressourcenname. Für Beispiel: Sie können einen Google Chat-Bereich mit der ID des Gruppenbereichs abonnieren, AAAABBBB, //chat.googleapis.com/spaces/AAAABBBB verwenden.
    • EVENT_TYPES: mindestens ein Ereignistyp die Sie in der Zielressource abonnieren möchten. Formatieren als Array von Strings wie z. B. 'google.workspace.chat.message.v1.created'.
    • TOPIC_NAME: Der vollständige Name des Pub/Sub-Themas, das die Sie in Ihrem Cloud-Projekt erstellt haben. Formatiert als projects/PROJECT_ID/topics/TOPIC_ID
    • RESOURCE_DATA: Ein boolescher Wert, der angibt, enthält Ressourcendaten in die Nutzlast:

      • True: Enthält alle Ressourcendaten. Um einzuschränken, welche Felder enthalten, fügen Sie den fieldMask und geben Sie mindestens ein Feld für die geänderte Ressource an. Nur Abos von Chat-Ressourcen, Support einschließlich Ressourcendaten.
      • False: Schließt Ressourcendaten aus.
  2. Führen Sie folgenden Befehl aus, um das Google Workspace-Abo zu erstellen: Ihrem Terminal:

    python3 create_subscription.py
    

Die Google Workspace Events API gibt einen abgeschlossenen lang andauernden Vorgang, der den Parameter Instanz der von Ihnen erstellten Subscription-Ressource.

Google Workspace-Abo testen

Wenn Sie testen möchten, ob Sie Google Workspace-Ereignisse erhalten, können Sie eine und Pull-Nachrichten an das Pub/Sub-Abo senden.

So testen Sie Ihr Google Workspace-Abo:

Google Cloud Console

  1. Lösen Sie einen oder mehrere Ereignistypen in der Zielressource Ihrer Google Workspace-Abo. Wenn Sie beispielsweise neue Nachrichten in einem Chatbereich haben, posten Sie eine Nachricht im Gruppenbereich.

  2. Rufen Sie in der Google Cloud Console die Pub/Sub-Seite auf:

    Zu Pub/Sub

    Achten Sie darauf, dass das Cloud-Projekt für Ihre Anwendung ausgewählt ist.

  3. Klicken Sie im Menü Pub/Sub auf Subscriptions (Abos).

  4. Suchen Sie in der Tabelle nach dem Pub/Sub-Abo für Ihr Thema und klicken Sie auf den Namen des Abos.

  5. Klicken Sie auf den Tab Nachrichten.

  6. Klicken Sie auf Pull. Es kann einige Minuten dauern, bis ein Ereignis Pub/Sub-Nachricht.

gcloud

  1. Lösen Sie einen oder mehrere Ereignistypen in der Zielressource Ihrer Google Workspace-Abo. Wenn Sie beispielsweise neue Nachrichten in einem Chatbereich haben, posten Sie eine Nachricht im Gruppenbereich.

  2. Führen Sie dazu diesen Befehl aus:

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

    Ersetzen Sie Folgendes:

    • PUBSUB_SUBSCRIPTION_NAME: Der vollständige Name Ihres Pub/Sub-Abo, formatiert als projects/SUBSCRIPTION_ID/subscriptions/SUBSCRIPTION_ID.
    • MESSAGE_COUNT: Die maximale Anzahl von Pub/Sub-Nachrichten, die Sie abrufen möchten.

    Es kann einige Minuten dauern, bis ein Ereignis ein Pub/Sub generiert. angezeigt.

Für jedes Google Workspace-Ereignis, das Sie ausgelöst haben, wird eine Nachricht an das Pub/Sub-Abo gesendet wird, das das Ereignis enthält. Weitere Informationen finden Sie unter Ereignisse als Google Cloud Pub/Sub-Nachrichten empfangen

Konfigurieren, wie Ihre App Ereignisse empfängt

Das von Ihnen erstellte Pub/Sub-Abo ist Pull-basiert. Nachdem Sie die dass Ihr Pub/Sub-Abo abgeschlossen ist, können Sie den Zustellungstyp aktualisieren, um zu ändern, Ereignisse empfangen. Sie können z. B. Pub/Sub konfigurieren, einen Push-Zustellungstyp zu abonnieren, damit Ihre App Ereignisse empfangen kann direkt an einen App-Endpunkt senden.

Informationen zum Konfigurieren eines Pub/Sub-Abos finden Sie in der Pub/Sub-Dokumentation Dokumentation.