Z tego przewodnika dowiesz się, jak używać metody list
w zasobie membership
interfejsu Google Chat API do wyświetlania listy użytkowników i aplikacji Google Chat w pokoju w formie podzielonej na strony, możliwej do filtrowania listy użytkowników w pokoju. Wyświetlanie listy wspierających z uwierzytelnianiem aplikacji
wskazuje subskrypcje pokoi, do których aplikacja Google Chat ma dostęp, ale nie uwzględnia wspierania w aplikacji Google Chat, w tym własnych. Wyświetlanie listy członków z uwierzytelnianiem użytkownika
lista użytkowników w pokojach, do których ma dostęp uwierzytelniony użytkownik.
Zasób Membership
wskazuje, czy użytkownik został zaproszony do pokoju, użytkownik lub aplikacja Google Chat został(a) zaproszony(a) lub nie ma go w pokoju.
Wymagania wstępne
Python
- Python 3.6 lub nowszy
- Narzędzie do zarządzania pakietami pip
Najnowsze biblioteki klienta Google do języka Python. Aby je zainstalować lub zaktualizować, uruchom w interfejsie wiersza poleceń to polecenie:
pip3 install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib oauth2client
Opublikowana aplikacja Google Chat. Aby utworzyć i opublikować aplikację do obsługi czatu, przeczytaj artykuł Tworzenie aplikacji Google Chat.
Autoryzacja skonfigurowana dla aplikacji Google Chat. Członkostwa z listą użytkowników obsługują obie te metody uwierzytelniania:
- Uwierzytelnianie użytkownika z zakresem autoryzacji
chat.memberships.readonly
lubchat.memberships
. - Uwierzytelnianie aplikacji przy użyciu zakresu autoryzacji
chat.bot
.
- Uwierzytelnianie użytkownika z zakresem autoryzacji
Wyświetlanie listy użytkowników i aplikacji do obsługi czatu w pokoju z uwierzytelnianiem użytkowników
Aby wyświetlić listę użytkowników i aplikacji do obsługi czatu w pokoju, do którego ma dostęp uwierzytelniony użytkownik, przekaż w żądaniu te elementy:
- W przypadku uwierzytelniania użytkownika określ zakres autoryzacji
chat.memberships.readonly
lubchat.memberships
. - Wywołaj metodę
list
w zasobiemembership
.
Ten przykład zawiera listę osób (nie menedżerów pokoju) widocznych dla uwierzytelnionego użytkownika, ponieważ właściwość filter
ma wartość ROLE_Member
:
Python
- W katalogu roboczym utwórz plik o nazwie
chat_member_list_user.py
. Umieść ten kod w pliku
chat_member_list_user.py
:import os.path from google.auth.transport.requests import Request from google.oauth2.credentials import Credentials from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build from googleapiclient.errors import HttpError # 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 human space members (but not space managers) 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', # An optional filter that returns only human space members. filter = 'member.type = "HUMAN" AND role = "ROLE_MEMBER"' ).execute() # Prints details about the created membership. print(result) if __name__ == '__main__': main()
W kodzie zastąp
SPACE
nazwą pokoju, którą możesz uzyskać za pomocą metodyspaces.list
w interfejsie Chat API lub z adresu URL pokoju.W katalogu roboczym skompiluj i uruchom przykład:
python3 chat_member_list_user.py
Google Chat API zwraca listę osób (z wyjątkiem menedżerów pokoju) i użytkowników aplikacji z określonego pokoju.
Wyświetlanie listy użytkowników i aplikacji do obsługi czatu w pokoju z uwierzytelnianiem aplikacji
Aby wyświetlić listę użytkowników i aplikacji do obsługi czatu w pokoju, do którego ma dostęp uwierzytelniona aplikacja, przekaż w żądaniu te elementy:
- W przypadku uwierzytelniania aplikacji określ zakres autoryzacji
chat.bot
. - Wywołaj metodę
list
w zasobiemember
.
Ten przykład przedstawia listę osób (nie menedżerów pokoju) widocznych dla aplikacji Google Chat:
Python
- W katalogu roboczym utwórz plik o nazwie
chat_member_list_app.py
. Umieść ten kod w pliku
chat_member_list_app.py
:from httplib2 import Http from oauth2client.service_account import ServiceAccountCredentials from apiclient.discovery import build # Specify required scopes. SCOPES = ['https://www.googleapis.com/auth/chat.bot'] # Specify service account details. CREDENTIALS = ServiceAccountCredentials.from_json_keyfile_name( 'credentials.json', SCOPES) # Build the URI and authenticate with the service account. chat = build('chat', 'v1', http=CREDENTIALS.authorize(Http())) # 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)
W kodzie zastąp
SPACE
nazwą pokoju, którą możesz uzyskać za pomocą metodyspaces.list
w interfejsie Chat API lub z adresu URL pokoju.W katalogu roboczym skompiluj i uruchom przykład:
python3 chat_member_list_app.py
Google Chat API zwraca listę osób (z wyjątkiem menedżerów pokoju) z podanego pokoju.
Dostosuj podział na strony lub filtruj listę
Aby wyświetlić listę członków, przekaż te parametry zapytania w celu dostosowania podziału na strony lub filtrowania wymienionych elementów:
pageSize
: maksymalna liczba subskrypcji do zwrócenia. Usługa może zwrócić mniejszą wartość od tej wartości. Jeśli nie określono inaczej, zwracanych jest maksymalnie 100 spacji. Maksymalna wartość to 1000, a wartości powyżej 1000 są automatycznie zmieniane na 1000.pageToken
: token strony otrzymany z poprzedniego wywołania list pokoi. Podaj ten token, aby pobrać kolejną stronę. Podczas podziału na strony wartość filtra powinna odpowiadać wywołaniu, które dostarczyło token strony. Przekazywanie innej wartości może doprowadzić do nieoczekiwanych wyników.filter
: filtr zapytania. Wymaga uwierzytelniania użytkownika. Szczegółowe informacje o obsługiwanych zapytaniach znajdziesz w opisie metodyspaces.members.list
.
Powiązane artykuły
- Wyświetlanie szczegółowych informacji o subskrypcjach użytkownika lub aplikacji do obsługi czatu
- Zaproś do pokoju użytkownika lub aplikację do obsługi czatu albo dodaj do niego użytkownika
- Usuwanie użytkownika lub aplikacji do obsługi czatu z pokoju