Visualizzare i dettagli di uno spazio

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

  • 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
    

Node.js

  • 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
    

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'autorizzazione chat.spaces.readonly o chat.spaces.
  • Chiama il Metodo get il Space risorsa, passando il name 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

  1. Nella directory di lavoro, crea un file denominato chat_space_get_user.py.
  2. 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()
    
  3. Nel codice, sostituisci SPACE con il nome di uno spazio, che che puoi ottenere Metodo spaces.list nell'API Chat o dall'URL di uno spazio.

  4. Nella directory di lavoro, crea ed esegui l'esempio:

    python3 chat_space_get_user.py
    

Node.js

  1. Nella directory di lavoro, crea un file denominato get-space.js.
  2. 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);
    
  3. Nel codice, sostituisci SPACE con il nome di uno spazio, che che puoi ottenere Metodo spaces.list nell'API Chat o dall'URL di uno spazio.

  4. 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

  1. Nella directory di lavoro, crea un file denominato chat_space_get_app.py.
  2. 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)
    
  3. Nel codice, sostituisci SPACE con il nome di uno spazio, che che puoi ottenere spaces.list() nel dall'API Chat o dall'URL di uno spazio.

  4. Nella directory di lavoro, crea ed esegui l'esempio:

    python3 chat_space_get_app.py
    

Node.js

  1. Nella directory di lavoro, crea un file denominato app-get-space.js.
  2. 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);
    
  3. Nel codice, sostituisci SPACE con il nome di uno spazio, che che puoi ottenere Metodo spaces.list nell'API Chat o dall'URL di uno spazio.

  4. 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.