Obtenir des informations sur l'adhésion d'un utilisateur ou à l'application Google Chat

Ce guide explique comment utiliser la méthode get sur la ressource membership de l'API Google Chat pour obtenir des informations sur l'appartenance d'un utilisateur ou d'une application Chat à un espace.

La ressource Membership indique si un utilisateur humain ou une application Google Chat est invité à un espace, en fait partie ou absent.

L'authentification d'application permet à une application Chat d'obtenir des membres des espaces auxquels elle a accès dans Google Chat (par exemple, les espaces dont elle est membre), mais exclut les adhésions à l'application Chat, y compris les siennes. L'authentification via l'authentification des utilisateurs renvoie les membres des espaces auxquels l'utilisateur authentifié a accès.

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
    
  • 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. Obtenir une adhésion est compatible avec les deux méthodes d'authentification suivantes:

Obtenir des informations sur l'adhésion d'un utilisateur ou d'une application Chat

Pour obtenir des informations sur une souscription dans Google Chat, transmettez les éléments suivants dans votre requête:

  • Avec l'authentification d'application, spécifiez le champ d'application des autorisations chat.bot. Avec l'authentification des utilisateurs, spécifiez le niveau d'autorisation chat.memberships.readonly ou chat.memberships. Nous vous recommandons de choisir le champ d'application le plus restrictif permettant toujours le fonctionnement de votre application.
  • Appelez la méthode get sur la ressource membership.
  • Transmettez le name de l'abonnement pour l'obtenir. Obtenez le nom de l'appartenance à partir de la ressource d'appartenance de Google Chat.

Voici comment obtenir une adhésion avec l'authentification des utilisateurs:

Python

  1. Dans votre répertoire de travail, créez un fichier nommé chat_membership_get.py.
  2. Incluez le code suivant dans chat_membership_get.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.memberships.readonly"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then gets details about a specified membership.
        '''
    
        # 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().members().get(
    
            # The membership 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 MEMBER with a membership name.
            # Obtain the membership name from the memberships resource of
            # Chat API.
            name='spaces/SPACE/members/MEMBER'
    
        ).execute()
    
        # Prints details about the created membership.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. Dans le code, remplacez ce qui suit:

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

    python3 chat_membership_get.py
    

L'API Chat renvoie une instance de membership qui détaille l'appartenance spécifiée.