Z tego przewodnika dowiesz się, jak korzystać z narzędzia list
w zasobie SpaceEvent
interfejsu Google Chat API w celu wyświetlania listy zmian zasobów w pokoju.
SpaceEvent
oznacza zmianę pokoju docelowego, w tym jego zasobów podrzędnych
takich jak wiadomości, reakcje
i członkostwo. Więcej informacji o liście obsługiwanych typów zdarzeń i ładunków zdarzeń znajdziesz w polach eventType
i payload
w dokumentacji referencyjnej dotyczącej zasobu SpaceEvent
.
Możesz wyświetlić zdarzenia z okresu do 28 dni przed datą wysłania żądania. Serwer
zwraca zdarzenia zawierające najnowszą wersję zasobu, którego dotyczy problem.
Jeśli na przykład wyświetlisz listę zdarzeń dotyczących nowych osób w pokoju, serwer zwróci
Membership
zasobów, które zawierają najnowsze informacje o członkostwie. Jeśli w okresie objętym żądaniem usunięto nowych członków, ładunek zdarzenia zawiera pusty zasób Membership
.
Aby wywołać tę metodę, musisz użyć uwierzytelniania użytkownika. Aby wyświetlić listę wydarzeń z pokoju, uwierzytelniony użytkownik musi być użytkownikiem tego pokoju.
Wymagania wstępne
Python
- Konto Google Workspace w wersji Business lub Enterprise z dostępem do Google Chat.
- Skonfiguruj środowisko:
- Utwórz projekt Google Cloud.
- Skonfiguruj ekran zgody OAuth
- Włącz i skonfiguruj interfejs Google Chat API pod nazwą. ikonę i opis aplikacji Google Chat.
-
Utwórz dane logowania na podstawie identyfikatora klienta OAuth dla aplikacji komputerowej. Aby uruchomić próbkę w tym
Przewodnika, zapisz dane logowania w pliku JSON o nazwie
client_secrets.json
katalog lokalny.
- Wybierz zakres autoryzacji, który obsługuje uwierzytelnianie użytkowników.
Wyświetl listę zdarzeń dotyczących pokoju
Aby wyświetlić zdarzenia pokoju z Google Chat, wykonaj te czynności:
- Wywołaj metodę
list
zasobuSpaceEvent
. - Określ, które typy zdarzeń mają się wyświetlać, za pomocą pola
filter
. Musisz określić co najmniej 1 typ zdarzenia. Możesz też filtrować według daty. Listę obsługiwanych typów zdarzeń znajdziesz w sekcjieventType
. - Z: user uwierzytelnianie, określ co najmniej 1 zakres autoryzacji do obsługi poszczególnych typów zdarzeń w Twoim żądaniu. Zalecamy wybranie najbardziej restrykcyjnego zakresu, który umożliwia działanie aplikacji. Aby wybrać zakres, zapoznaj się z artykułem Omówienie uwierzytelniania i autoryzacji.
W poniższym przykładzie kodu wyświetlasz listę zdarzeń dotyczących nowych członkostw i wiadomości w pokoju.
Python
- W katalogu roboczym utwórz plik o nazwie
chat_space_event_list.py
. Umieść w pliku
chat_space_event_list.py
ten kod:"""Lists SpaceEvent resources from the Chat API.""" 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", "https://www.googleapis.com/auth/chat.messages.readonly"] # 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().spaceEvents().list( # The space from which to list events. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE', # A required filter. Filters and returns events about new memberships and messages filter='event_types:"google.workspace.chat.membership.v1.created" OR event_types:"google.workspace.chat.message.v1.created"' ).execute() # Prints details about the created space events. print(result)
Zastąp w kodzie następujące elementy:
SPACE
: nazwa pokoju, którą możesz uzyskać z: metodaspaces.list
w interfejsie Chat API lub z adresu URL pokoju.
W katalogu roboczym skompiluj i uruchom przykład:
python3 chat_space_event_list.py
Interfejs Chat API zwraca listę zdarzeń SpaceEvent
resources dotyczących nowych członkostw i wiadomości.
Dostosuj podział na strony
Opcjonalnie możesz przekazać te parametry zapytania, aby dostosować podział na strony:
pageSize
: maksymalna liczba zasobówSpaceEvent
do zwrócenia. Usługa może zwrócić mniej niż ta wartość. Wartości ujemne zwracają błądINVALID_ARGUMENT
błąd.pageToken
: token strony otrzymany z poprzedniego wywołania zdarzenia w pokoju listy. Podaj ten token, aby pobrać kolejną stronę. Podczas podziału na strony wartość filtra powinna odpowiadać wywołaniu, które dostarczyło token strony. Podanie wyniku może prowadzić do nieoczekiwanych rezultatów.