Questa guida spiega come utilizzare il metodo get
su una risorsa Space
del
l'API Google Chat per vedere i dettagli di uno spazio, come il nome visualizzato, la descrizione
e linee guida.
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.
Autenticazione con autenticazione app consente a un'app di Chat di recuperare spazi L'app Chat ha accesso in Google Chat (ad esempio, spazi di cui l'app fa parte). Autenticazione con autenticazione degli utenti consente di ottenere 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.
- Crea le credenziali di accesso in base a come vuoi eseguire l'autenticazione nella richiesta API Google Chat:
- Per autenticarti come utente di Chat,
crea ID client OAuth
credenziali e salvale come file JSON denominato
client_secrets.json
alla tua directory locale. - Per autenticarti come app Chat, crea account di servizio credenziali.
- Per autenticarti come utente di Chat,
crea ID client OAuth
credenziali e salvale come file JSON denominato
- Scegli un ambito di autorizzazione a seconda che tu voglia eseguire l'autenticazione come utente o come App Chat.
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.
- Crea le credenziali di accesso in base a come vuoi eseguire l'autenticazione nella richiesta API Google Chat:
- Per autenticarti come utente di Chat,
crea ID client OAuth
credenziali e salvale come file JSON denominato
client_secrets.json
alla tua directory locale. - Per autenticarti come app Chat, crea account di servizio credenziali.
- Per autenticarti come utente di Chat,
crea ID client OAuth
credenziali e salvale come file JSON denominato
- Scegli un ambito di autorizzazione a seconda che tu voglia eseguire l'autenticazione come utente o come App Chat.
Ottieni uno spazio
Per ottenere uno spazio in Google Chat, trasmetti quanto segue nel tuo richiesta:
- Con
autenticazione delle app,
specificare l'ambito dell'autorizzazione
chat.bot
. Con autenticazione degli utenti, specifica l'ambito dell'autorizzazionechat.spaces.readonly
ochat.spaces
. - Chiama il
Metodo
get
ilSpace
risorsa, passando ilname
dello spazio per ottenere. Ottenere il nome dello spazio dagli spazi da una risorsa di Google Chat o dall'URL di uno spazio.
Recuperare i dettagli dello spazio con l'autenticazione utente
Ecco come ottenere i dettagli dello spazio con autenticazione utente:
Python
- Nella directory di lavoro, crea un file denominato
chat_space_get_user.py
. Includi il seguente codice in
chat_space_get_user.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 gets details about a specified space. ''' # 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().get( # The space to get. # # 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' ).execute() # Prints details about the space. print(result) if __name__ == '__main__': main()
Nel codice, sostituisci
SPACE
con il nome di uno spazio, che che puoi ottenere Metodospaces.list
nell'API Chat o dall'URL di uno spazio.Nella directory di lavoro, crea ed esegui l'esempio:
python3 chat_space_get_user.py
Node.js
- Nella directory di lavoro, crea un file denominato
get-space.js
. Includi il seguente codice in
get-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Gets details about a Chat space by name. * @return {!Object} */ async function getSpace() { 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.get({name: 'spaces/SPACE'}); } getSpace().then(console.log);
Nel codice, sostituisci
SPACE
con il nome di uno spazio, che che puoi ottenere Metodospaces.list
nell'API Chat o dall'URL di uno spazio.Nella directory di lavoro, esegui l'esempio:
node get-space.js
L'API Chat restituisce un'istanza
Space
che descrive in dettaglio lo spazio specificato.
Ricevere dettagli dello spazio con l'autenticazione delle app
Ecco come ottenere i dettagli dello spazio con autenticazione app:
Python
- Nella directory di lavoro, crea un file denominato
chat_space_get_app.py
. Includi il seguente codice in
chat_space_get_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().get( # The space to get. # # 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' ).execute() print(result)
Nel codice, sostituisci
SPACE
con il nome di uno spazio, che che puoi ottenerespaces.list()
nel dall'API Chat o dall'URL di uno spazio.Nella directory di lavoro, crea ed esegui l'esempio:
python3 chat_space_get_app.py
Node.js
- Nella directory di lavoro, crea un file denominato
app-get-space.js
. Includi il seguente codice in
app-get-space.js
:const chat = require('@googleapis/chat'); /** * Gets details about a Chat space by name. * @return {!Promise<!Object>} */ async function getSpace() { 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.get({name: 'spaces/SPACE'}); } getSpace().then(console.log);
Nel codice, sostituisci
SPACE
con il nome di uno spazio, che che puoi ottenere Metodospaces.list
nell'API Chat o dall'URL di uno spazio.Nella directory di lavoro, esegui l'esempio:
node app-get-space.js
L'API Chat restituisce un'istanza
Space
che descrive in dettaglio lo spazio specificato.
Argomenti correlati
- Crea uno spazio.
- Configura uno spazio.
- Elenca spazi.
- Aggiornare uno spazio.
- Eliminare uno spazio.
- Trova uno spazio per i messaggi diretti.