Il servizio Advanced Chat consente di utilizzare l'API Google Chat in Apps Script. Questa API consente agli script di trovare, creare e modificare spazi di Chat, aggiungere o rimuovere membri negli spazi e leggere o pubblicare messaggi con testo, schede, allegati e reazioni.
Prerequisiti
- Un'app Google Chat di Apps Script configurata nella pagina di configurazione dell'API Chat nella console Google Cloud. Il progetto Apps Script dell'app deve utilizzare un progetto Google Cloud standard anziché quello predefinito creato automaticamente per i progetti Apps Script. Per creare un'app Google Chat compatibile, consulta Creare un'app Google Chat con Apps Script.
- L'autenticazione configurata per l'app di Chat. L'esecuzione di un'azione per conto di un utente richiede l'autenticazione dell'utente. L'esecuzione di un'azione come app Chat richiede l'autenticazione dell'app con un account di servizio. Per verificare quale forma di autenticazione è supportata da un metodo dell'API Chat, consulta Tipi di autenticazione richiesta per le chiamate API Google Chat.
Riferimento
Per ulteriori informazioni su questo servizio, consulta la documentazione di riferimento dell'API Chat. Come tutti i servizi avanzati di Apps Script, il servizio Chat utilizza gli stessi oggetti, metodi e parametri dell'API pubblica.
Codice campione
Questi esempi mostrano come eseguire azioni comuni dell'API Google Chat utilizzando il servizio avanzato.
Pubblicare un messaggio con le credenziali utente
L'esempio seguente mostra come pubblicare un messaggio in uno spazio di Chat per conto dell'utente.
Aggiungi l'ambito dell'autorizzazione
chat.messages.create
al fileappsscript.json
del progetto Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.create" ]
Aggiungi una funzione come questa al codice del progetto Apps Script:
Pubblicare un messaggio con le credenziali dell'app
L'esempio seguente mostra come pubblicare un messaggio in uno spazio di Chat per conto dell'app. L'utilizzo del servizio Chat avanzato con un account di servizio non richiede di specificare gli ambiti di autorizzazione in appsscript.json
. Per maggiori dettagli sull'autenticazione con gli account di servizio, consulta Autenticare come app Google Chat.
Ottieni uno spazio
L'esempio seguente mostra come ottenere informazioni su uno spazio di Chat.
Aggiungi l'ambito dell'autorizzazione
chat.spaces.readonly
al fileappsscript.json
del progetto Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.readonly" ]
Aggiungi una funzione come questa al codice del progetto Apps Script:
Crea uno spazio
L'esempio seguente mostra come creare uno spazio di Chat.
Aggiungi l'ambito dell'autorizzazione
chat.spaces.create
al fileappsscript.json
del progetto Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.create" ]
Aggiungi una funzione come questa al codice del progetto Apps Script:
Appartenenze agli elenchi
L'esempio seguente mostra come elencare tutti i membri di uno spazio di Chat.
Aggiungi l'ambito dell'autorizzazione
chat.memberships.readonly
al fileappsscript.json
del progetto Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.memberships.readonly" ]
Aggiungi una funzione come questa al codice del progetto Apps Script:
Risolvi il problema
Se vedi Error 400: invalid_scope
con il messaggio di errore
Some requested scopes cannot be shown
,
significa che non hai specificato ambiti di autorizzazione nel
file appsscript.json
del progetto Apps Script. Nella maggior parte dei casi, Apps Script determina automaticamente gli ambiti necessari a uno script, ma quando utilizzi il servizio avanzato di Chat, devi aggiungere manualmente gli ambiti di autorizzazione utilizzati dallo script al file manifest del tuo progetto Apps Script. Consulta la pagina Impostare ambiti espliciti.
Per risolvere l'errore, aggiungi gli ambiti di autorizzazione appropriati al file appsscript.json
del progetto Apps Script come parte dell'array oauthScopes
. Ad esempio, per chiamare il metodo
spaces.messages.create
, aggiungi quanto segue:
"oauthScopes": [
"https://www.googleapis.com/auth/chat.messages.create"
]
Limiti e considerazioni
Il servizio chat avanzato non supporta:
- Il metodo dell'API Chat
media.download
. - Metodi dell'API Chat disponibili in Anteprima per sviluppatori
Per scaricare l'allegato di un messaggio o chiamare un metodo di anteprima per gli sviluppatori, utilizza UrlFetchApp
.