Obtenir les métadonnées d'une pièce jointe à un message

Ce guide explique comment utiliser la méthode get sur la ressource Media de l'API Google Chat pour obtenir des métadonnées sur la pièce jointe d'un message. La réponse est une instance de la ressource Attachment.

Lorsque l'utilisateur envoie un message à votre application, Google Chat envoie un événement d'interaction MESSAGE. L'événement d'interaction reçu par votre application inclut un corps de requête, qui correspond à la charge utile JSON représentant l'événement d'interaction, y compris les éventuelles pièces jointes. Les données de la pièce jointe diffèrent selon qu'il s'agit d'un contenu importé (fichier local) ou d'un fichier stocké sur Drive. La ressource Media représente un fichier importé dans Google Chat, par exemple des images, des vidéos et des documents. La ressource Attachment représente une instance de contenu multimédia (fichier) jointe à un message. La ressource Attachment inclut les métadonnées sur le rattachement, telles que son emplacement d'enregistrement.

Prérequis

Python

  • Python 3.6 ou version ultérieure
  • L'outil de gestion des packages pip
  • Les dernières bibliothèques clientes Google pour Python. Pour les installer ou les mettre à jour, exécutez la commande suivante dans votre interface de ligne de commande:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib google-auth
    
  • Un projet Google Cloud avec l'API Google Chat activée et configurée Pour connaître la procédure à suivre, consultez Créer une application Google Chat.
  • Autorisation configurée pour l'application Chat. L'obtention d'un message nécessite l'authentification de l'application avec le niveau d'autorisation chat.bot.

Recevoir une pièce jointe

Pour obtenir de manière asynchrone les métadonnées d'une pièce jointe dans Google Chat, transmettez les éléments suivants dans votre requête:

  • Spécifiez le champ d'application des autorisations chat.bot.
  • Appelez la méthode get sur la ressource Attachment.
  • Transmettez le name de la pièce jointe du message.

Pour obtenir les métadonnées d'une pièce jointe, procédez comme suit:

Python

  1. Dans votre répertoire de travail, créez un fichier nommé chat_get_message_attachment.py.
  2. Incluez le code suivant dans 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. Dans le code, remplacez spaces/SPACE/messages/MESSAGE/attachments/ATTACHMENT par le nom de la pièce jointe.

  4. Dans votre répertoire de travail, créez et exécutez l'exemple:

    python3 chat_get_message_attachment.py
    

L'API Chat renvoie une instance de Attachment qui détaille les métadonnées sur la pièce jointe de message spécifiée.