Details zu einem Gruppenbereich abrufen

In diesem Leitfaden wird erläutert, wie Sie die Methode get für eine Space-Ressource der Google Chat API verwenden, um Details zu einem Gruppenbereich wie den Anzeigenamen, die Beschreibung und Richtlinien abzurufen.

Die Ressource Space stellt einen Ort dar, an dem Nutzer und Chat-Apps Nachrichten senden, Dateien freigeben und zusammenarbeiten können. Es gibt verschiedene Arten von Gruppenbereichen:

  • Direktnachrichten (DN) sind Unterhaltungen zwischen zwei Nutzern oder einem Nutzer und einer Chat-App.
  • Gruppenchats sind Unterhaltungen zwischen drei oder mehr Nutzern und Chat-Apps.
  • Benannte Gruppenbereiche sind persistente Orte, an denen Nutzer Nachrichten senden, Dateien freigeben und zusammenarbeiten.

Durch die Authentifizierung bei der App-Authentifizierung kann eine Chat-Anwendung Gruppenbereiche abrufen, auf die sie in Google Chat zugreifen kann (z. B. Gruppenbereiche, in denen die Anwendung Mitglied ist). Durch die Authentifizierung über die Nutzerauthentifizierung erhalten Sie Gruppenbereiche, auf die der authentifizierte Nutzer Zugriff hat.

Voraussetzungen

Python

  • Python 3.6 oder höher
  • Das Paketverwaltungstool pip
  • Die neuesten Google-Clientbibliotheken für Python Führen Sie den folgenden Befehl in der Befehlszeile aus, um sie zu installieren oder zu aktualisieren:

    pip3 install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib oauth2client
    
  • Eine veröffentlichte Chat-App. Informationen zum Erstellen und Veröffentlichen einer Chat-App finden Sie unter Google Chat-App erstellen.

  • Die für die Chat-Anwendung konfigurierte Autorisierung. Beim Anfordern eines Gruppenbereichs werden die beiden folgenden Authentifizierungsmethoden unterstützt:

Gruppenbereich erstellen

Übergeben Sie in Ihrer Anfrage Folgendes, um einen Gruppenbereich in Google Chat zu erhalten:

  • Geben Sie bei der Anwendungsauthentifizierung den Autorisierungsbereich chat.bot an. Geben Sie bei der Nutzerauthentifizierung den Autorisierungsbereich chat.spaces.readonly oder chat.spaces an.
  • Rufen Sie die Methode get für die Ressource Space auf und übergeben Sie den name des abzurufenden Bereichs. Rufen Sie den Namen des Gruppenbereichs aus der Gruppenbereichsressource von Google Chat oder aus der URL eines Gruppenbereichs ab.

Details zum Gruppenbereich mit Nutzerauthentifizierung abrufen

So rufen Sie mit der Nutzerauthentifizierung Details zum Gruppenbereich ab:

Python

  1. Erstellen Sie in Ihrem Arbeitsverzeichnis eine Datei mit dem Namen chat_space_get_user.py.
  2. Fügen Sie den folgenden Code in chat_space_get_user.py ein:

    import os.path
    
    from google.auth.transport.requests import Request
    from google.oauth2.credentials import Credentials
    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    from googleapiclient.errors import HttpError
    
    # Define your app's authorization scopes.
    # When modifying these scopes, delete the file token.json, if it exists.
    SCOPES = ["https://www.googleapis.com/auth/chat.spaces.readonly"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then gets details about a specified space.
        '''
    
        # Authenticate with Google Workspace
        # and get user authorization.
        flow = InstalledAppFlow.from_client_secrets_file(
                          'client_secrets.json', SCOPES)
        creds = flow.run_local_server()
    
        # Build a service endpoint for Chat API.
        chat = build('chat', 'v1', credentials=creds)
    
        # Use the service endpoint to call Chat API.
        result = chat.spaces().get(
    
              # The space to get.
              #
              # Replace SPACE with a space name.
              # Obtain the space name from the spaces resource of Chat API,
              # or from a space's URL.
              name='spaces/SPACE'
    
          ).execute()
    
        # Prints details about the space.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Ersetzen Sie im Code SPACE durch den Namen eines Gruppenbereichs, den Sie in der Chat API mit der Methode spaces.list oder aus der URL eines Gruppenbereichs abrufen können.

  4. Erstellen Sie das Beispiel in Ihrem Arbeitsverzeichnis und führen Sie es aus:

    python3 chat_space_get_user.py
    

Die Chat API gibt eine Instanz von Space zurück, die Details zum angegebenen Gruppenbereich enthält.

Details zum Gruppenbereich mit App-Authentifizierung abrufen

So rufen Sie mit der App-Authentifizierung Details zum Gruppenbereich ab:

Python

  1. Erstellen Sie in Ihrem Arbeitsverzeichnis eine Datei mit dem Namen chat_space_get_app.py.
  2. Fügen Sie den folgenden Code in chat_space_get_app.py ein:

    from httplib2 import Http
    from oauth2client.service_account import ServiceAccountCredentials
    from apiclient.discovery import build
    
    # Specify required scopes.
    SCOPES = ['https://www.googleapis.com/auth/chat.bot']
    
    # Specify service account details.
    CREDENTIALS = ServiceAccountCredentials.from_json_keyfile_name(
        'credentials.json', SCOPES)
    
    # Build the URI and authenticate with the service account.
    chat = build('chat', 'v1', http=CREDENTIALS.authorize(Http()))
    
    # Use the service endpoint to call Chat API.
    result = chat.spaces().get(
    
        # The space to get.
        #
        # Replace SPACE with a space name.
        # Obtain the space name from the spaces resource of Chat API,
        # or from a space's URL.
        name='spaces/SPACE'
    
    ).execute()
    
    print(result)
    
  3. Ersetzen Sie im Code SPACE durch den Namen des Gruppenbereichs. Diesen finden Sie in der Chat API mit der Methode spaces.list() oder aus der URL eines Gruppenbereichs.

  4. Erstellen Sie das Beispiel in Ihrem Arbeitsverzeichnis und führen Sie es aus:

    python3 chat_space_get_app.py
    

Die Chat API gibt eine Instanz von Space zurück, die Details zum angegebenen Gruppenbereich enthält.