In dieser Anleitung wird erläutert, wie Sie mit der Methode patch
in der 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 (DMs) 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 aktuellen 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, in dem die Google Chat API aktiviert und konfiguriert ist. Eine entsprechende Anleitung finden Sie unter Google Chat-App erstellen.
Für die Chat-App konfigurierte Autorisierung. Zum Aktualisieren eines Gruppenbereichs ist eine Nutzerauthentifizierung mit dem Autorisierungsbereich
chat.spaces
erforderlich.
Node.js
- Node.js und npm
Aktuelle Google-Clientbibliotheken für Node.js Führen Sie den folgenden Befehl über die Befehlszeile aus, um sie zu installieren:
npm install @google-cloud/local-auth @googleapis/chat
- Ein Google Cloud-Projekt, in dem die Google Chat API aktiviert und konfiguriert ist. Eine entsprechende Anleitung finden Sie unter Google Chat-App erstellen.
Für die Chat-App konfigurierte Autorisierung. Zum Aktualisieren eines Gruppenbereichs 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 RessourceSpace
auf und übergeben Sie denname
des zu aktualisierenden Bereichs sowie einenupdateMask
und einbody
für die aktualisierten Gruppenbereichsattribute. - Mit
updateMask
werden die Aspekte des zu aktualisierenden Bereichs angegeben. Dazu gehören:displayName
: Aktualisiert den für Nutzer lesbaren Namen des Gruppenbereichs, der in der Google Chat-UI angezeigt wird. Unterstützt nur das Ändern des Anzeigenamens eines Gruppenbereichs mit dem TypSPACE
oder wenn zusätzlich die MaskespaceType
einbezogen wird, um einenGROUP_CHAT
-Bereichstyp inSPACE
zu ändern. Der Versuch, den Anzeigenamen einesGROUP_CHAT
- oderDIRECT_MESSAGE
-Bereichs zu aktualisieren, führt zu einem Fehler mit einem ungültigen Argument.spaceType
: Aktualisiert den Typ des Gruppenbereichs, kann aber nur den TypGROUP_CHAT
inSPACE
ändern. Fügen SiedisplayName
zusammen mitspaceType
in die Aktualisierungsmaske ein und achten Sie darauf, dass für das angegebene LeerzeichendisplayName
und der BereichstypSPACE
nicht leer sind. Wenn der vorhandene Bereich bereits den TypSPACE
hat, ist einschließlich der MaskespaceType
und des TypsSPACE
im angegebenen Bereich beim Aktualisieren des Anzeigenamens optional . Wenn Sie versuchen, den Bereichstyp auf andere Weise zu aktualisieren, wird ein Fehler aufgrund eines ungültigen Arguments ausgegeben.spaceDetails
: Details zum Gruppenbereich, einschließlich einer Beschreibung und Regeln.spaceHistoryState
: Unterstützt die Aktivierung oder Deaktivierung des Verlaufs für den Gruppenbereich, wenn in der Organisation Nutzer ihre Verlaufseinstellungen ändern können. Schließt sich mit allen anderen Feldpfaden gegenseitig aus.
So aktualisieren Sie die spaceDetails
eines vorhandenen Gruppenbereichs:
Python
- Erstellen Sie in Ihrem Arbeitsverzeichnis eine Datei mit dem Namen
chat_space_update.py
. 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()
Ersetzen Sie im Code
SPACE
durch den Namen eines Gruppenbereichs, den Sie mit der Methodespaces.list
in der Chat API oder aus der URL eines Gruppenbereichs abrufen können.Erstellen Sie das Beispiel in Ihrem Arbeitsverzeichnis und führen Sie es aus:
python3 chat_space_update.py
Node.js
- Erstellen Sie in Ihrem Arbeitsverzeichnis eine Datei mit dem Namen
update-space.js
. 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);
Ersetzen Sie im Code
SPACE
durch den Namen eines Gruppenbereichs, den Sie mit der Methodespaces.list
in der Chat API oder aus der URL eines Gruppenbereichs abrufen können.Führen Sie das Beispiel in Ihrem Arbeitsverzeichnis aus:
node update-space.js
Die Google Chat API gibt eine Instanz der Ressource Space
zurück, die die Aktualisierungen widerspiegelt.
Weitere Informationen
- Details zu einem Gruppenbereich abrufen
- Gruppenbereiche auflisten.
- Gruppenbereiche löschen
- Richten Sie einen Gruppenbereich ein.
- Suchen Sie einen Gruppenbereich für Direktnachrichten.