Il servizio Chat avanzata ti consente di utilizzare l'API Google Chat in Apps Script. Questa API consente agli script di trovare, creare e modificare gli spazi di Chat, aggiungere o rimuovere membri dagli 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.
- Autenticazione configurata per l'app 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 richiesti per le chiamate all'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 di esempio
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 Chat per conto dell'utente.
Aggiungi l'ambito di 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 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, vedi Autenticarsi come app Google Chat.
Acquista uno spazio
L'esempio seguente mostra come ottenere informazioni su uno spazio Chat.
Aggiungi l'ambito di 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
Il seguente esempio mostra come creare uno spazio di Chat.
Aggiungi l'ambito di 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:
Elenco appartenenze
L'esempio seguente mostra come elencare tutti i membri di uno spazio di Chat.
Aggiungi l'ambito di 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:
Risoluzione dei problemi
Se riscontri Error 400: invalid_scope
con il messaggio di errore
Some requested scopes cannot be shown
,
significa che non hai specificato alcun ambito di autorizzazione nel
file appsscript.json
del progetto di Apps Script. Nella maggior parte dei casi,
Apps Script determina automaticamente gli ambiti di cui uno script ha bisogno,
ma quando utilizzi il servizio avanzato di Chat, devi aggiungere manualmente
gli ambiti di autorizzazione utilizzati dallo script al
file manifest del progetto Apps Script. Consulta
Impostare ambiti espliciti.
Per risolvere l'errore, aggiungi gli ambiti di autorizzazione appropriati al file appsscript.json
del progetto Apps Script nell'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 avanzata non supporta:
- Il metodo API Chat
media.download
. - Metodi dell'API Chat disponibili in Anteprima per sviluppatori
Per scaricare un allegato di un messaggio o chiamare un metodo di anteprima per gli sviluppatori, utilizza invece UrlFetchApp
.