Gruppenbereich aktualisieren

In dieser Anleitung wird erläutert, wie Sie mit der Methode patch für die Ressource Space der Google Chat API einen Gruppenbereich aktualisieren. Sie können einen Gruppenbereich aktualisieren, um Attribute zu ändern, z. B. den für den Nutzer sichtbaren Anzeigenamen, die Beschreibung und Richtlinien.

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.

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.

  • Für die Chat-Anwendung konfigurierte Autorisierung. Zum Aktualisieren eines Bereichs ist eine Nutzerauthentifizierung mit dem Autorisierungsbereich chat.spaces erforderlich.

Gruppenbereiche aktualisieren

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

  • Geben Sie den Autorisierungsbereich chat.spaces an.
  • Rufen Sie die Methode patch für die Ressource Space auf und übergeben Sie den name des zu aktualisierenden Bereichs sowie einen updateMask- und einen body-Wert, der die aktualisierten Attribute des Gruppenbereichs angibt.
  • updateMask gibt die Aspekte des zu aktualisierenden Bereichs an und umfasst Folgendes:
    • displayName: Aktualisiert den für Nutzer lesbaren Namen des Gruppenbereichs, der in der Google Chat-Benutzeroberfläche angezeigt wird. Unterstützt nur das Ändern des Anzeigenamens eines Gruppenbereichs mit dem Typ SPACE oder wenn zusätzlich die Maske spaceType einbezogen wird, um den Gruppenbereichstyp GROUP_CHAT in SPACE zu ändern. Wenn Sie versuchen, den Anzeigenamen eines GROUP_CHAT- oder DIRECT_MESSAGE-Bereichs zu aktualisieren, wird ein Fehler aufgrund eines ungültigen Arguments ausgegeben.
    • spaceType: Aktualisiert den Typ des Gruppenbereichs, unterstützt aber nur die Änderung des Gruppenbereichstyps GROUP_CHAT in SPACE. Fügen Sie displayName zusammen mit spaceType in die Aktualisierungsmaske ein und achten Sie darauf, dass im angegebenen Bereich ein nicht leeres displayName und der Bereichstyp SPACE enthalten sind. Wenn der vorhandene Gruppenbereich bereits den Typ SPACE hat, ist einschließlich der Maske spaceType und des Typs SPACE im angegebenen Bereich beim Aktualisieren des Anzeigenamens optional . Wenn Sie versuchen, den Gruppenbereichstyp auf andere Weise zu aktualisieren, wird ein Fehler aufgrund eines ungültigen Arguments zurückgegeben.
    • spaceDetails: Details zum Gruppenbereich, einschließlich Beschreibung und Regeln.
    • spaceHistoryState: Unterstützt das Aktivieren oder Deaktivieren des Verlaufs für den Gruppenbereich, wenn Nutzer in der Organisation ihre Einstellungen für das Chatprotokoll ändern können. Schließt sich mit allen anderen Feldpfaden gegenseitig aus.

So aktualisieren Sie die 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:

    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"]
    
    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 created membership.
        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_update.py
    

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