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 na temat
listę obsługiwanych typów zdarzeń i ładunków zdarzeń. Więcej informacji znajdziesz w dokumentach eventType
oraz
Pola payload
zasobu SpaceEvent
dokumentacji referencyjnej.
Możesz podać listę zdarzeń do 28 dni przed wysłaniem prośby. 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 nowy
Użytkownicy zostali usunięci w żądanym okresie, ładunek zdarzenia zawiera
pusty zasób Membership
.
Aby wywołać tę metodę, musisz użyć polecenia user Do wyświetlenia zdarzeń z pokoju, uwierzytelniony użytkownik musi być jego członkiem.
Wymagania wstępne
Python
- Firmy lub przedsiębiorstwa Konto Google Workspace 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ć listę wydarzeń w pokoju z pokoju czatu:
- Wywołaj metodę
list
wSpaceEvent
. - Za pomocą parametru
filter
. Musisz określić co najmniej 1 typ zdarzenia. Możesz go też filtrować według datę. 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, zobacz Omówienie uwierzytelniania i autoryzacji.
W poniższym przykładowym kodzie wymieniono zdarzenia dotyczące nowych członkostwa oraz 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ę
Zasoby (SpaceEvent
)
zdarzenia dotyczące nowych
członkostwa i wiadomości.
Dostosuj podział na strony
Opcjonalnie możesz przekazać te parametry zapytania, aby dostosować podział na strony:
pageSize
: maksymalna liczba zasobów (SpaceEvent
) 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ę. Przy dzieleniu na strony wartość filtra powinna pasować do wywołania, które dostarczyło token strony. Podanie wyniku może prowadzić do nieoczekiwanych rezultatów.