Obtén detalles sobre la membresía de un usuario o una app de Google Chat

En esta guía, se explica cómo usar el método get en el recurso membership de la API de Google Chat para obtener detalles sobre la membresía de un usuario o una app de Chat en un espacio.

El recurso Membership representa si un usuario humano o una app de Google Chat están invitados a un espacio, son parte de él o no lo están.

La autenticación con la autenticación de la app permite que una app de Chat obtenga membresías de espacios a los que tiene acceso en Google Chat (por ejemplo, espacios de los que es miembro), pero excluye las membresías de la app de Chat, incluidas las propias. La autenticación con autenticación de usuario muestra membresías de espacios a los que tiene acceso el usuario autenticado.

Requisitos previos

Python

  • Python 3.6 o superior
  • La herramienta de administración de paquetes pip
  • Las bibliotecas cliente de Google más recientes para Python. Para instalarlos o actualizarlos, ejecuta el siguiente comando en tu interfaz de línea de comandos:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    
  • Un proyecto de Google Cloud con la API de Google Chat habilitada y configurada Para conocer los pasos, consulta Compila una app de Google Chat.
  • Autorización configurada para la app de Chat. Obtener una membresía admite los siguientes métodos de autenticación:

Obtén detalles sobre la membresía de un usuario o una app de Chat

Para obtener detalles sobre una membresía en Google Chat, pasa lo siguiente en tu solicitud:

  • Con la autenticación de la app, especifica el alcance de la autorización chat.bot. Con la autenticación de usuario, especifica el alcance de la autorización chat.memberships.readonly o chat.memberships. Como práctica recomendada, elige el alcance más restrictivo que permita que tu app funcione.
  • Llama al método get en el recurso membership.
  • Pasa el name de la membresía para obtenerlo. Obtén el nombre de la membresía del recurso de membresías de Google Chat.

Sigue estos pasos para obtener una membresía con la autenticación de usuarios:

Python

  1. En el directorio de trabajo, crea un archivo llamado chat_membership_get.py.
  2. Incluye el siguiente código en 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. En el código, reemplaza lo siguiente:

    • SPACE: Es un nombre de espacio, que puedes obtener del método spaces.list en la API de Chat o desde la URL de un espacio.
    • MEMBER: Es un nombre de membresía, que puedes obtener del método spaces.members.list en la API de Chat.
  4. En el directorio de trabajo, compila y ejecuta la muestra:

    python3 chat_membership_get.py
    

La API de Chat muestra una instancia de membership en la que se detalla la membresía especificada.