Listar os participantes de um espaço

Este guia explica como usar o método list no recurso membership da API Google Chat para listar os participantes em um espaço como uma lista paginada e filtrável de associações em um espaço. Listagem das assinaturas com autenticação de apps Lista as associações nos espaços do app do Chat acesso, mas exclui as assinaturas do app do Chat, incluindo por conta própria. Listagem das assinaturas com Autenticação de usuários lista as associações em espaços aos quais o usuário autenticado tem acesso.

O Recurso Membership representa se um usuário humano ou um app do Google Chat foi convidado. ausente ou faz parte de um espaço.

Pré-requisitos

Python

  • Python 3.6 ou superior
  • a ferramenta de gerenciamento de pacotes PIP;
  • As bibliotecas de cliente mais recentes do Google. Para instalar ou atualizar esses recursos, execute o seguinte comando na interface de linha de comando:
    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    

Listar participantes em um espaço com autenticação de usuário

Para listar usuários, Grupos do Google e app do Chat em um espaço que o usuário autenticado pode acessar, transmita o seguinte na sua solicitação:

O exemplo a seguir lista os membros do Grupo do Google, humanos e do app visíveis para o usuário autenticado.

Python

  1. No diretório de trabalho, crie um arquivo chamado chat_member_list_user.py.
  2. Inclua o seguinte código em chat_member_list_user.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 lists Google Group, human, and app members in a specified space.
        '''
    
        # 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().list(
    
            # The space for which to list memberships.
            parent = 'spaces/SPACE',
    
            # Set this parameter to list Google Groups.
            showGroups = 'true'
    
        ).execute()
    
        # Prints the list of memberships.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. No código, substitua SPACE por um nome de espaço, que que você pode conseguir na Método spaces.list na API Chat ou pelo URL de um espaço.

  4. No diretório de trabalho, crie e execute o exemplo:

    python3 chat_member_list_user.py
    

A API Google Chat retorna uma lista de membros do Grupo do Google, de usuários e de apps da espaço especificado.

Listar participantes em um espaço com autenticação de apps

Para listar os usuários e o app do Chat em um espaço que o app autenticado pode acessar, transmita o seguinte na sua solicitação:

O exemplo a seguir lista membros do espaço humano (não administradores do espaço) visíveis para do app do Chat:

Python

  1. No diretório de trabalho, crie um arquivo chamado chat_member_list_app.py.
  2. Inclua o seguinte código em chat_member_list_app.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)
    
    # Use the service endpoint to call Chat API.
    result = chat.spaces().members().list(
    
            # The space for which to list memberships.
            parent = 'spaces/SPACE',
    
            # An optional filter that returns only human space members.
            filter = 'member.type = "HUMAN" AND role = "ROLE_MEMBER"'
    
        ).execute()
    
    print(result)
    
  3. No código, substitua SPACE por um nome de espaço, que que você pode conseguir na Método spaces.list na API Chat ou pelo URL de um espaço.

  4. No diretório de trabalho, crie e execute o exemplo:

    python3 chat_member_list_app.py
    

A API Google Chat retorna uma lista de participantes do espaço humano (excluindo o espaço) gerentes) no espaço especificado.

Personalizar a paginação ou filtrar a lista

Para listar as associações, transmita os seguintes parâmetros de consulta para personalizar a paginação ou filtrar as associações listadas:

  • pageSize: o número máximo de assinaturas a serem retornadas. O serviço pode retornam menos que esse valor. Se não for especificado, serão permitidos no máximo 100 espaços retornados. O valor máximo é 1.000; valores acima de 1.000 são automaticamente alterado para 1.000.
  • pageToken: um token de página, recebido de uma chamada anterior de espaços de lista. Forneça esse token para recuperar a página subsequente. Na paginação, o O valor do filtro precisa corresponder à chamada que forneceu o token da página. Transmitir um valor de um valor diferente pode levar a resultados inesperados.
  • filter: um filtro de consulta. Requer autenticação do usuário. Para obter detalhes sobre as consultas aceitas, consulte a método spaces.members.list.