Recuperare i metadati relativi a un allegato a un messaggio

Questa guida spiega come utilizzare il metodo get nella risorsa Media del API Google Chat per ottenere i metadati relativi all'allegato di un messaggio. La risposta è dell'oggetto Attachment risorsa.

Quando l'utente invia un messaggio alla tua app, Google Chat invia un Evento di interazione MESSAGE. L'evento di interazione ricevuto dalla tua app include un corpo della richiesta, ovvero Payload JSON che rappresenta l'evento di interazione, inclusi eventuali allegati. La dati nell'allegato sono diversi a seconda che l'allegato sia contenuti caricati (un file locale) o è un file archiviato su Drive. La Media risorsa rappresenta un file caricato su Google Chat, come immagini, video e documenti. La Attachment risorsa rappresenta un'istanza di un elemento multimediale, ovvero un file, allegato a un messaggio. Attachment La risorsa include i metadati sull'allegato, ad esempio dove viene salvato.

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
    

Ottieni un allegato del messaggio

Per ottenere in modo asincrono i metadati relativi a un allegato di un messaggio in Google Chat, passa quanto segue nella tua richiesta:

Ecco come ottenere i metadati relativi all'allegato di un messaggio:

Python

  1. Nella directory di lavoro, crea un file denominato chat_get_message_attachment.py.
  2. Includi il seguente codice in chat_get_message_attachment.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)
    
    # Get a Chat message.
    result = chat.spaces().messages().attachments().get(
    
        # The message 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.
        #
        # Replace MESSAGE with a message name.
        # Obtain the message name from the response body returned
        # after creating a message asynchronously with Chat REST API.
        name='spaces/SPACE/messages/MESSAGE/attachments/ATTACHMENT'
    
      ).execute()
    
    # Print Chat API's response in your command line interface.
    print(result)
    
  3. Nel codice, sostituisci spaces/SPACE/messages/MESSAGE/attachments/ATTACHMENT con il nome dell'allegato al messaggio.

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

    python3 chat_get_message_attachment.py
    

L'API Chat restituisce un'istanza Attachment che descrive in dettaglio i metadati relativi all'allegato del messaggio specificato.