Questa guida spiega come utilizzare il metodo get
nella risorsa Media
dell'API Google Chat per ottenere i metadati relativi all'allegato di un messaggio. La risposta è un'istanza della risorsa Attachment
.
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, che è il payload JSON che rappresenta l'evento di interazione, inclusi gli eventuali allegati. I dati dell'allegato sono diversi a seconda che si tratti di contenuti caricati (un file locale) o di un file archiviato su Drive. La risorsa Media
rappresenta un file caricato su Google Chat, come immagini, video e documenti.
La risorsa Attachment
rappresenta un'istanza di contenuti multimediali (un file) allegato a un messaggio. La risorsa Attachment
include i metadati relativi all'allegato, ad esempio dove è stato salvato.
Prerequisiti
Python
- Python 3.6 o versioni successive
- Lo strumento di gestione dei pacchetti pip
Le librerie client di Google più recenti per Python. Per installarli o aggiornarli, esegui questo comando nell'interfaccia a riga di comando:
pip3 install --upgrade google-api-python-client google-auth-oauthlib google-auth
- Un progetto Google Cloud in cui l'API Google Chat è abilitata e configurata. Per i passaggi da seguire, consulta Creare un'app Google Chat.
Autorizzazione configurata per l'app di Chat. Per ricevere un messaggio è necessaria l'autenticazione dell'app con l'ambito di autorizzazione
chat.bot
.
Recupera un allegato messaggio
Per ottenere in modo asincrono i metadati relativi all'allegato di un messaggio in Google Chat, trasmetti quanto segue nella richiesta:
- Specifica l'ambito dell'autorizzazione
chat.bot
. - Chiama il metodo
get
nella risorsaAttachment
, - Passa il
name
dell'allegato al messaggio.
Ecco come ottenere i metadati relativi all'allegato di un messaggio:
Python
- Nella directory di lavoro, crea un file denominato
chat_get_message_attachment.py
. 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)
Nel codice, sostituisci
spaces/SPACE/messages/MESSAGE/attachments/ATTACHMENT
con il nome dell'allegato al messaggio.Nella directory di lavoro, crea ed esegui l'esempio:
python3 chat_get_message_attachment.py
L'API Chat restituisce un'istanza di
Attachment
che mostra in dettaglio i metadati dell'allegato del messaggio specificato.
Argomenti correlati
- Caricare contenuti multimediali come file allegato
- Scaricare i contenuti multimediali come file allegato