Gruppenbereich aktualisieren

In diesem Leitfaden wird erläutert, wie Sie die Methode patch für die Ressource Space der Google Chat API verwenden, um einen Gruppenbereich zu aktualisieren. Aktualisieren Sie einen Gruppenbereich, um Attribute eines Gruppenbereichs zu ändern, z. B. den für den Nutzer sichtbaren Anzeigenamen, die Beschreibung und Richtlinien.

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

  • Direktnachrichten (DNs) 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 dauerhafte Orte, an denen Nutzer Nachrichten senden, Dateien freigeben und mit anderen zusammenarbeiten.

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-oauthlib
    
  • Ein Google Cloud-Projekt mit aktivierter und konfigurierter Google Chat API. Eine Anleitung dazu finden Sie unter Google Chat-App erstellen.
  • Für die Chat-App konfigurierte Autorisierung. Zum Aktualisieren eines Bereichs ist eine Nutzerauthentifizierung mit dem Autorisierungsbereich chat.spaces erforderlich.

Node.js

  • Node.js und npm
  • Die neuesten Google-Clientbibliotheken für Node.js. Führen Sie den folgenden Befehl in der Befehlszeile aus, um sie zu installieren:

    npm install @google-cloud/local-auth @googleapis/chat
    
  • Ein Google Cloud-Projekt mit aktivierter und konfigurierter Google Chat API. Eine Anleitung dazu finden Sie unter Google Chat-App erstellen.
  • Für die Chat-App konfigurierte Autorisierung. Zum Aktualisieren eines Bereichs ist eine Nutzerauthentifizierung mit dem Autorisierungsbereich chat.spaces erforderlich.

Gruppenbereich aktualisieren

Um einen vorhandenen Bereich in Google Chat zu aktualisieren, übergeben Sie in Ihrer Anfrage Folgendes:

  • Geben Sie den Autorisierungsbereich chat.spaces an.
  • Rufen Sie die Methode patch für die Ressource Space auf. In der Anfrage geben Sie das Feld name, das Feld updateMask mit einem oder mehrere zu aktualisierende Felder und ein body mit den aktualisierten Informationen zum Gruppenbereich an.

Sie können u. a. den Anzeigenamen, den Gruppenbereichstyp und den Verlaufsstatus aktualisieren. Eine Übersicht aller Felder, die aktualisiert werden können, finden Sie in der Referenzdokumentation.

So aktualisieren Sie das Feld spaceDetails eines vorhandenen Gruppenbereichs:

Python

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

    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    
    # 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"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then updates the specified space description and guidelines.
        '''
    
        # 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().patch(
    
          # The space to update, and the updated space details.
          #
          # 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',
          updateMask='spaceDetails',
          body={
    
            'spaceDetails': {
              'description': 'This description was updated with Chat API!',
              'guidelines': 'These guidelines were updated with Chat API!'
            }
    
          }
    
        ).execute()
    
        # Prints details about the updated space.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Ersetzen Sie im Code SPACE durch einen Namen für den Gruppenbereich, den Sie über die Methode spaces.list in der Chat API oder über die URL eines Gruppenbereichs abrufen können.

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

    python3 chat_space_update.py
    

Node.js

  1. Erstellen Sie in Ihrem Arbeitsverzeichnis eine Datei mit dem Namen update-space.js.
  2. Fügen Sie den folgenden Code in update-space.js ein:

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Updates a Chat space with the description and guidelines.
    * @return {!Promise<!Object>}
    */
    async function updateSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.spaces',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.patch({
        name: 'spaces/SPACE',
        updateMask: 'spaceDetails',
        requestBody: {
          spaceDetails: {
            description: 'This description was updated with Chat API!',
            guidelines: 'These guidelines were updated with Chat API!'
          },
        }
      });
    }
    
    updateSpace().then(console.log);
    
  3. Ersetzen Sie im Code SPACE durch einen Namen für den Gruppenbereich, den Sie über die Methode spaces.list in der Chat API oder über die URL eines Gruppenbereichs abrufen können.

  4. Führen Sie das Beispiel in Ihrem Arbeitsverzeichnis aus:

    node update-space.js
    

Die Google Chat API gibt eine Instanz der Space-Ressource zurück, die die Aktualisierungen widerspiegelt.