In diesem Leitfaden wird erläutert, wie Sie die
get()
Methode für die Ressource SpaceEvent der Google Chat API verwenden, um Details zu
einem Ereignis aus einem Google Chat-Gruppenbereich abzurufen.
Die
SpaceEvent Ressource
stellt eine Änderung an einem Gruppenbereich oder seinen untergeordneten Ressourcen dar, z. B. Nachrichten,
Reaktionen und Mitgliedschaften. Informationen zu den unterstützten Ereignistypen finden Sie im
eventType Feld der SpaceEvent Ressource
Referenzdokumentation.
Sie können Ereignisse bis zu 28 Tage vor dem Zeitpunkt der Anfrage anfordern. Das Ereignis enthält die aktuelle Version der geänderten Ressource. Wenn Sie beispielsweise ein Ereignis zu einer neuen Nachricht anfordern, die Nachricht aber später aktualisiert wurde, gibt der Server die aktualisierte Ressource Message in der Ereignisnutzlast zurück.
Zum Aufrufen dieser Methode müssen Sie die Nutzerauthentifizierung verwenden. Um ein Ereignis abzurufen, muss der authentifizierte Nutzer Mitglied des Gruppenbereichs sein, in dem das Ereignis aufgetreten ist.
Vorbereitung
Node.js
- Ein Google Workspace-Konto für Unternehmen oder ein Enterprise Google Workspace-Konto mit Zugriff auf Google Chat.
- Umgebung einrichten:
- Google Cloud-Projekt erstellen.
- OAuth-Zustimmungsbildschirm konfigurieren.
- Aktivieren und konfigurieren Sie die Google Chat API mit einem Namen, Symbol und einer Beschreibung für Ihre Chat-App.
- Installieren Sie die Cloud-Clientbibliothek für Node.js.
- Erstellen Sie Zugriffsanmeldedaten basierend darauf, wie Sie sich in Ihrer Google Chat API
Anfrage:
- Wenn Sie sich als Chat-Nutzer authentifizieren möchten,
erstellen Sie Anmeldedaten für die OAuth-Client-ID und speichern Sie sie als JSON-Datei mit dem Namen
credentials.jsonin Ihrem lokalen Verzeichnis. - Wenn Sie sich als Chat-App authentifizieren möchten,
erstellen Sie Anmeldedaten für das Dienstkonto und speichern Sie sie als JSON-Datei mit dem Namen
credentials.json.
- Wenn Sie sich als Chat-Nutzer authentifizieren möchten,
erstellen Sie Anmeldedaten für die OAuth-Client-ID und speichern Sie sie als JSON-Datei mit dem Namen
- Wählen Sie einen Autorisierungsbereich aus, je nachdem, ob Sie sich als Nutzer oder als die Chat-App authentifizieren möchten.
Python
- Ein Google Workspace-Konto für Unternehmen oder ein Enterprise Google Workspace-Konto mit Zugriff auf Google Chat.
- Umgebung einrichten:
- Google Cloud-Projekt erstellen.
- OAuth-Zustimmungsbildschirm konfigurieren.
- Aktivieren und konfigurieren Sie die Google Chat API mit einem Namen, Symbol und einer Beschreibung für Ihre Chat-App.
- Installieren Sie die Cloud-Clientbibliothek für Python.
- Erstellen Sie Zugriffsanmeldedaten basierend darauf, wie Sie sich in Ihrer Google Chat API
Anfrage:
- Wenn Sie sich als Chat-Nutzer authentifizieren möchten,
erstellen Sie Anmeldedaten für die OAuth-Client-ID und speichern Sie sie als JSON-Datei mit dem Namen
credentials.jsonin Ihrem lokalen Verzeichnis. - Wenn Sie sich als Chat-App authentifizieren möchten,
erstellen Sie Anmeldedaten für das Dienstkonto und speichern Sie sie als JSON-Datei mit dem Namen
credentials.json.
- Wenn Sie sich als Chat-Nutzer authentifizieren möchten,
erstellen Sie Anmeldedaten für die OAuth-Client-ID und speichern Sie sie als JSON-Datei mit dem Namen
- Wählen Sie einen Autorisierungsbereich aus, je nachdem, ob Sie sich als Nutzer oder als die Chat-App authentifizieren möchten.
Details zu einem Gruppenbereich-Ereignis abrufen (Nutzerauthentifizierung)
Wenn Sie Details zu einem Gruppenbereich-Ereignis in Google Chat abrufen möchten, übergeben Sie Folgendes in Ihrer Anfrage:
- Geben Sie in Ihrer Anfrage einen Autorisierungsbereich an, der den Ereignistyp unterstützt. Wählen Sie möglichst den restriktivsten Bereich aus, der es Ihrer App weiterhin ermöglicht, zu funktionieren.
- Rufen Sie die
GetSpaceEvent()Methode auf und übergeben Sie dennamedes Gruppenbereich-Ereignisses, das Sie abrufen möchten.
Im folgenden Beispiel wird ein Gruppenbereich-Ereignis abgerufen:
Node.js
In diesem Node.js-Codebeispiel wird die Chat RPC API verwendet.
Ersetzen Sie in diesem Beispiel Folgendes:
SCOPE_NAME: ein Autorisierungsbereich basierend auf dem Ereignistyp. Wenn Sie beispielsweise ein Gruppenbereich-Ereignis zu einer neuen Mitgliedschaft abrufen, verwenden Sie den Bereichchat.memberships.readonlyim Formathttps://www.googleapis.com/auth/chat.memberships.readonly. Sie können den Ereignistyp mit derListSpaceEvents()Methode abrufen. Informationen zur Verwendung dieser Methode finden Sie unter Ereignisse aus einem Gruppenbereich auflisten.SPACE_NAME: die ID aus dem Gruppenbereichsname. Sie können die ID abrufen, indem Sie dieListSpaces()Methode aufrufen oder die URL des Gruppenbereichs verwenden.SPACE_EVENT_NAME: die ID aus dem Gruppenbereich-Ereignissesname. Sie können die ID mit derListSpaceEvents()Methode abrufen. Informationen zur Verwendung dieser Methode finden Sie unter Ereignisse aus einem Gruppenbereich auflisten.
Die Chat API gibt eine Instanz von
SpaceEvent
mit Details zum Ereignis zurück.
Details zu einem Gruppenbereich-Ereignis abrufen (Authentifizierung der Chat-App)
Für die App-Authentifizierung ist eine einmalige Administratorgenehmigung erforderlich.
Wenn Sie Details zu einem Gruppenbereich-Ereignis aus einem Gruppenbereich mit App-Authentifizierung über die Chat REST API, abrufen möchten, übergeben Sie Folgendes in Ihrer Anfrage:
- Geben Sie in Ihrer Anfrage einen oder mehrere Autorisierungsbereiche an, um jeden Ereignistyp zu unterstützen. Wählen Sie möglichst den restriktivsten Bereich aus, der es Ihrer App weiterhin ermöglicht, zu funktionieren. Weitere Informationen zur Auswahl eines Bereichs finden Sie unter
Authentifizierung und Autorisierung.
https://www.googleapis.com/auth/chat.app.membershipshttps://www.googleapis.com/auth/chat.app.memberships.readonlyhttps://www.googleapis.com/auth/chat.app.messages.readonlyhttps://www.googleapis.com/auth/chat.app.spaceshttps://www.googleapis.com/auth/chat.app.spaces.readonly
- Rufen Sie die
getMethode für diespaceEventsRessource auf. - Übergeben Sie den
namedes Gruppenbereichs, aus dem Sie Ereignisdetails abrufen möchten.
Skript zum Aufrufen der Chat API schreiben
So rufen Sie Details zu einem Gruppenbereich-Ereignis mit App-Authentifizierung und der Chat REST API ab:
Python
In diesem Python-Codebeispiel wird die Chat REST API verwendet.
- Erstellen Sie in Ihrem Arbeitsverzeichnis eine Datei mit dem Namen
chat_spaceevents_get_app.py. Fügen Sie den folgenden Code in
chat_spaceevents_get_app.pyein:from google.oauth2 import service_account from apiclient.discovery import build # Define your app's authorization scopes. # Set authorization scopes based on the # event type. For example, if you are getting a space event # about a new membership, use the `chat.app.memberships` scope. # # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.app.memberships", "https://www.googleapis.com/auth/chat.app.memberships.readonly", "https://www.googleapis.com/auth/chat.app.messages.readonly", "https://www.googleapis.com/auth/chat.app.spaces", "https://www.googleapis.com/auth/chat.app.spaces.readonly"] def main(): ''' Authenticates with Chat API using app authentication, then lists space events from a specified space. ''' # Specify service account details. creds = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds) # Use the service endpoint to call Chat API. result = chat.spaces().spaceEvents().get( # The space to get event details from. # # Replace SPACE_NAME with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. name='spaces/SPACE_NAME/spaceEvents/SPACE_EVENT_NAME', ).execute() # Print Chat API's response in your command line interface. print(result) if __name__ == '__main__': main()Ersetzen Sie im Code Folgendes:
SPACE_NAME: ein Gruppenbereichsname, den Sie mit der Methodespaces.listin der Chat API oder über die URL eines Gruppenbereichs abrufen können.SPACE_EVENT_NAME: die ID aus dem Gruppenbereich-Ereignissesname. Sie können die ID mit derListSpaceEvents()Methode abrufen. Informationen zur Verwendung dieser Methode finden Sie unter Ereignisse aus einem Gruppenbereich auflisten.
Erstellen Sie das Beispiel in Ihrem Arbeitsverzeichnis und führen Sie es aus:
python3 chat_spaceevents_get_app.py
Die Chat API gibt eine Liste von paginierte Liste von Gruppenbereich-Ereignissen zu neuen Mitgliedschaften und Nachrichten zurück.