Mit dem erweiterten Chat-Dienst können Sie die Google Chat API in Apps Script verwenden. Mit dieser API können Scripts Google Chat-Gruppenbereiche finden, erstellen und ändern, Gruppenbereichen Mitglieder hinzufügen oder daraus entfernen und Nachrichten mit Text, Karten, Anhängen und Reaktionen lesen oder posten.
Vorbereitung
- Eine Google Chat-App in Apps Script, die auf der Seite „Chat API-Konfiguration“ in der Google Cloud Console konfiguriert ist. Für das Apps Script-Projekt der App muss ein Google Cloud-Standardprojekt verwendet werden, anstatt des automatisch für Apps Script-Projekte erstellten Standardprojekts. Informationen zum Erstellen einer kompatiblen Google Chat-App finden Sie unter Google Chat-App mit Apps Script erstellen.
- Für die Chat-App konfigurierte Authentifizierung. Für die Ausführung einer Aktion im Namen eines Nutzers ist eine Nutzerauthentifizierung erforderlich. Für die Ausführung einer Aktion als Chat-App ist die Anwendungsauthentifizierung mit einem Dienstkonto erforderlich. Informationen dazu, welche Authentifizierungsform von einer Chat API-Methode unterstützt wird, finden Sie unter Erforderliche Authentifizierungstypen für Google Chat API-Aufrufe.
Referenz
Weitere Informationen zu diesem Dienst finden Sie in der Referenzdokumentation zur Chat API. Wie alle erweiterten Dienste in Apps Script verwendet der Chatdienst dieselben Objekte, Methoden und Parameter wie die öffentliche API.
Beispielcode
In diesen Beispielen wird gezeigt, wie Sie mit dem erweiterten Dienst gängige Aktionen der Google Chat API ausführen.
Nachricht mit Nutzeranmeldedaten posten
Im folgenden Beispiel wird gezeigt, wie Sie im Namen des Nutzers eine Nachricht in einem Chatbereich posten.
Fügen Sie der Datei
appsscript.json
des Apps Script-Projekts den Autorisierungsbereichchat.messages.create
hinzu:"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.create" ]
Fügen Sie dem Code des Apps Script-Projekts eine Funktion wie diese hinzu:
Nachricht mit App-Anmeldedaten posten
Im folgenden Beispiel wird gezeigt, wie Sie im Namen der App eine Nachricht in einem Chatbereich posten. Wenn Sie den erweiterten Chatdienst mit einem Dienstkonto verwenden, müssen Sie keine Autorisierungsbereiche in appsscript.json
angeben. Weitere Informationen zur Authentifizierung mit Dienstkonten finden Sie unter Als Google Chat-App authentifizieren.
Gruppenbereich erhalten
Das folgende Beispiel zeigt, wie Sie Informationen zu einem Chatbereich abrufen.
Fügen Sie der Datei
appsscript.json
des Apps Script-Projekts den Autorisierungsbereichchat.spaces.readonly
hinzu:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.readonly" ]
Fügen Sie dem Code des Apps Script-Projekts eine Funktion wie diese hinzu:
Gruppenbereich erstellen
Im folgenden Beispiel wird gezeigt, wie Sie einen Chatbereich erstellen.
Fügen Sie der Datei
appsscript.json
des Apps Script-Projekts den Autorisierungsbereichchat.spaces.create
hinzu:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.create" ]
Fügen Sie dem Code des Apps Script-Projekts eine Funktion wie diese hinzu:
Mitgliedschaften auflisten
Im folgenden Beispiel wird gezeigt, wie Sie alle Mitglieder eines Chatbereichs auflisten.
Fügen Sie der Datei
appsscript.json
des Apps Script-Projekts den Autorisierungsbereichchat.memberships.readonly
hinzu:"oauthScopes": [ "https://www.googleapis.com/auth/chat.memberships.readonly" ]
Fügen Sie dem Code des Apps Script-Projekts eine Funktion wie diese hinzu:
Fehlerbehebung
Wenn Sie Error 400: invalid_scope
mit der Fehlermeldung Some requested scopes cannot be shown
sehen, haben Sie in der Datei appsscript.json
des Apps Script-Projekts keine Autorisierungsbereiche angegeben. In den meisten Fällen wird in Apps Script automatisch ermittelt, welche Berechtigungsbereiche für ein Script erforderlich sind. Wenn Sie jedoch den erweiterten Chat-Dienst verwenden, müssen Sie die Berechtigungsbereiche, die Ihr Script verwendet, manuell zur Manifestdatei Ihres Apps Script-Projekts hinzufügen. Weitere Informationen finden Sie unter Ausdrückliche Bereiche festlegen.
Fügen Sie der Datei appsscript.json
des Apps Script-Projekts die entsprechenden Autorisierungsbereiche als Teil des Arrays oauthScopes
hinzu, um den Fehler zu beheben. Wenn Sie beispielsweise die Methode spaces.messages.create
aufrufen möchten, fügen Sie Folgendes hinzu:
"oauthScopes": [
"https://www.googleapis.com/auth/chat.messages.create"
]
Einschränkungen und Hinweise
Der erweiterte Google Chat-Dienst unterstützt Folgendes nicht:
- Die Chat API-Methode
media.download
. - Chat API-Methoden, die in der Entwicklervorschau verfügbar sind
Wenn Sie einen Nachrichtenanhang herunterladen oder eine Methode der Entwicklervorschau aufrufen möchten, verwenden Sie stattdessen UrlFetchApp
.