Questa guida spiega come utilizzare la risorsa list
sulla risorsa Space
di
l'API Google Chat per elencare gli spazi. Gli spazi scheda restituiscono un'intestazione impaginata e filtrabile
dell'elenco degli spazi.
La
Space
risorsa
rappresenta un luogo in cui le persone e le app di chat possono inviare messaggi,
condividere file e collaborare. Esistono diversi tipi di spazi:
- I messaggi diretti sono conversazioni tra due utenti o un utente e un'app di Chat.
- Le chat di gruppo sono conversazioni tra tre o più utenti e App di chat.
- Gli spazi con nome sono luoghi permanenti in cui le persone inviano messaggi, condividono file e collaborare.
Elenco degli spazi con autenticazione app elenca gli spazi a cui ha accesso l'app Chat. Scheda spazi con Autenticazione degli utenti elenca gli spazi a cui l'utente autenticato ha accesso.
Prerequisiti
Python
- Un'azienda o un'impresa Google Workspace con accesso a Google Chat.
- Python 3.6 o versioni successive
- Lo strumento di gestione dei pacchetti pip
- Le librerie client di Google più recenti. Per installarle o aggiornarle,
esegui questo comando nell'interfaccia a riga di comando:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- Configura l'ambiente:
- Creare un progetto Google Cloud.
- Configura la schermata per il consenso OAuth.
- Abilita e configura l'API Google Chat con un nome, l'icona e la descrizione dell'app Chat.
- Scegli un ambito di autorizzazione.
Node.js
- Un'azienda o un'impresa Google Workspace con accesso a Google Chat.
- Node.js 14 o versioni successive
- npm strumento di gestione dei pacchetti
- Le librerie client di Google più recenti. Per installarle o aggiornarle,
esegui questo comando nell'interfaccia a riga di comando:
npm install @google-cloud/local-auth @googleapis/chat
- Configura l'ambiente:
- Creare un progetto Google Cloud.
- Configura la schermata per il consenso OAuth.
- Abilita e configura l'API Google Chat con un nome, l'icona e la descrizione dell'app Chat.
- Scegli un ambito di autorizzazione.
Elenca gli spazi con autenticazione utente
Per elencare gli spazi in Google Chat, trasmetti quanto segue nel richiesta:
- Con
autenticazione degli utenti,
specifica l'ambito dell'autorizzazione
chat.spaces.readonly
ochat.spaces
. - Chiama il
Metodo
list
ilSpace
risorsa.
L'esempio seguente elenca spazi denominati e chat di gruppo (ma non dirette messaggi che vengono filtrati) visibili all'utente autenticato:
Python
- Nella directory di lavoro, crea un file denominato
chat_space_list.py
. Includi il seguente codice in
chat_space_list.py
: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.readonly"] def main(): ''' Authenticates with Chat API via user credentials, then lists named spaces and group chats (but not direct messages) visible to the authenticated user. ''' # 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().list( # An optional filter that returns named spaces or unnamed group chats, # but not direct messages (DMs). filter='spaceType = "SPACE" OR spaceType = "GROUP_CHAT"' ).execute() # Prints the returned list of spaces. print(result) if __name__ == '__main__': main()
Nella directory di lavoro, crea ed esegui l'esempio:
python3 chat_space_list.py
Node.js
- Nella directory di lavoro, crea un file denominato
list-spaces.js
. Includi il seguente codice in
list-spaces.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * List Chat spaces. * @return {!Promise<!Object>} */ async function listSpaces() { const scopes = [ 'https://www.googleapis.com/auth/chat.spaces.readonly', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.list({ filter: 'spaceType = "SPACE" OR spaceType = "GROUP_CHAT"' }); } listSpaces().then(console.log);
Nella directory di lavoro, esegui l'esempio:
node list-spaces.js
L'API Chat restituisce un array suddiviso in pagine di spazi denominati e chat di gruppo.
Elenca gli spazi con autenticazione delle app
Per elencare gli spazi in Google Chat, trasmetti quanto segue nel richiesta:
- Con
autenticazione delle app,
specificare l'ambito dell'autorizzazione
chat.bot
. - Chiama il
Metodo
list
ilSpace
risorsa.
L'esempio seguente elenca spazi denominati e chat di gruppo (ma non dirette messaggi) visibili all'app Chat:
Python
- Nella directory di lavoro, crea un file denominato
chat_space_list_app.py
. Includi il seguente codice in
chat_space_list_app.py
:from google.oauth2 import service_account from apiclient.discovery import build # Specify required scopes. SCOPES = ['https://www.googleapis.com/auth/chat.bot'] # Specify service account details. CREDENTIALS = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build the URI and authenticate with the service account. chat = build('chat', 'v1', credentials=CREDENTIALS) # Use the service endpoint to call Chat API. result = chat.spaces().list( # An optional filter that returns named spaces or unnamed # group chats, but not direct messages (DMs). filter='spaceType = "SPACE" OR spaceType = "GROUP_CHAT"' ).execute() print(result)
Nella directory di lavoro, crea ed esegui l'esempio:
python3 chat_space_list_app.py
Node.js
- Nella directory di lavoro, crea un file denominato
app-list-spaces.js
. Includi il seguente codice in
app-list-spaces.js
:const chat = require('@googleapis/chat'); /** * List Chat spaces. * @return {!Promise<!Object>} */ async function listSpaces() { const scopes = [ 'https://www.googleapis.com/auth/chat.bot', ]; const auth = new chat.auth.GoogleAuth({ scopes, keyFilename: 'credentials.json', }); const authClient = await auth.getClient(); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.list({ filter: 'spaceType = "SPACE" OR spaceType = "GROUP_CHAT"' }); } listSpaces().then(console.log);
Nella directory di lavoro, esegui l'esempio:
node app-list-spaces.js
L'API Chat restituisce un array di spazi impaginato.
Personalizzare l'impaginazione o filtrare l'elenco
Per elencare gli spazi in Google Chat, trasmetti il seguente modulo facoltativo parametri di query per personalizzare l'impaginazione o filtrare gli spazi elencati:
pageSize
: il numero massimo di spazi da restituire. Il servizio potrebbe restituire inferiore a questo valore. Se non specificati, vengono restituiti al massimo 100 spazi. La il valore massimo è 1000; superiori a 1000 vengono automaticamente modificati in 1000.pageToken
: un token di pagina, ricevuto da una precedente chiamata agli spazi elenco. Fornisci questo token per recuperare la pagina successiva. Durante l'impaginazione, il valore del filtro deve corrispondere alla chiamata che ha fornito il token della pagina. Il superamento di un un valore diverso potrebbe portare a risultati imprevisti.filter
: un filtro query. Per i dettagli delle query supportate, consulta Metodospaces.list
.
Argomenti correlati
- Crea uno spazio.
- Configura uno spazio.
- Ottenere dettagli su uno spazio.
- Aggiornare uno spazio.
- Eliminare uno spazio.
- Trova uno spazio per i messaggi diretti.