Na tej stronie opisujemy zdarzenia w Google Chat, które aplikacja Google Chat może subskrybować za pomocą interfejsu Google Workspace Events API. Po określeniu, jakich typów zdarzeń potrzebujesz, utwórz subskrypcję, aby zacząć otrzymywać zdarzenia z Google Chat.
Oprócz subskrybowania zdarzeń możesz też wysyłać zapytania o zdarzenia, wywołując interfejs Chat API. Wywoływanie interfejsu Chat API umożliwia okresowe pobieranie zdarzeń lub nadrabianie zaległości w zdarzeniach, które mogły zostać pominięte w subskrypcji z powodu awarii. Więcej informacji o sposobach otrzymywania zdarzeń w Google Chat i odpowiadania na nie znajdziesz w artykule Praca ze zdarzeniami z Google Chat w dokumentacji Google Chat.
Obsługiwane zdarzenia Google Chat
Subskrypcje Google Workspace umożliwiają otrzymywanie zdarzeń dotyczących tych typów zmian w Chat:
- Nowe, zaktualizowane lub usunięte wiadomości w pokoju.
- nowe lub usunięte reakcje na wiadomość;
- Nowi, zaktualizowani lub usunięci członkowie pokoju.
- Zmiany w pokoju, do którego subskrybujesz, takie jak zaktualizowana nazwa lub opis pokoju.
Zasoby, które możesz monitorować pod kątem zdarzeń
Aby odbierać zdarzenia, musisz określić zasób Google Chat do monitorowania, który jest nazywany zasobem docelowym subskrypcji.
Google Workspace Events API obsługuje te zasoby docelowe w Chat:
Zasób docelowy | Format | Ograniczenia |
---|---|---|
Spacja |
gdzie SPACE to identyfikator w
nazwie zasobu zasobu |
Użytkownik Google Chat lub aplikacja Google Chat, która autoryzuje subskrypcję, musi być członkiem pokoju na koncie Google Workspace lub Google. Obsługiwane: |
Wszystkie przestrzenie użytkownika |
|
Subskrypcja otrzymuje tylko wydarzenia dotyczące pokoi, w których użytkownik jest członkiem za pomocą konta Google Workspace lub konta Google. Obsługuje tylko uwierzytelnianie użytkownika. |
Użytkownik |
gdzie USER to identyfikator w
nazwie zasobu zasobu |
Subskrypcja otrzymuje tylko zdarzenia dotyczące użytkownika, który ją autoryzował. Użytkownik nie może autoryzować subskrypcji w imieniu innych użytkowników. Obsługuje tylko uwierzytelnianie użytkownika. |
Typy zdarzeń do tworzenia subskrypcji
Podczas tworzenia subskrypcji używasz pola eventTypes[]
, aby określić, jakie typy zdarzeń chcesz otrzymywać. Typy zdarzeń są sformatowane zgodnie ze specyfikacją CloudEvents, np. google.workspace.APPLICATION.RESOURCE.VERSION.ACTION
.
Aby na przykład otrzymywać zdarzenia dotyczące użytkowników dołączających do pokoju w Google Chat, musisz określić pokój jako zasób docelowy, a typ zdarzenia jako google.workspace.chat.membership.v1.created
. Aby otrzymywać zdarzenia dotyczące dołączenia danego użytkownika do dowolnej przestrzeni, określ użytkownika jako zasób docelowy, a typ zdarzenia jako google.workspace.chat.membership.v1.created
. Więcej informacji o tym, jak działają zdarzenia, znajdziesz w artykule Struktura zdarzeń Google Workspace.
W tabeli poniżej znajdziesz informacje o tym, które typy zdarzeń są obsługiwane w przypadku subskrypcji przestrzeni i subskrypcji użytkowników. Więcej informacji o wyjątkach dotyczących tego, co wywołuje zdarzenie, znajdziesz w sekcji Ograniczenia.
Typ wydarzenia | Format | Dane zasobów | ||
---|---|---|---|---|
Subskrypcje pokoi | ||||
Wiadomość została opublikowana. |
|
|
||
zaktualizowanie wiadomości, |
|
|
||
Wiadomość zostanie usunięta. |
|
|
||
Reakcja zostanie utworzona. |
|
|
||
Reakcja zostanie usunięta. |
|
|
||
Użytkownik zostanie dodany do pokoju. |
|
|
||
Członek grupy zostanie zaktualizowany w pokoju. |
|
|
||
Użytkownik zostanie usunięty z pokoju. |
|
|
||
Pokój zostanie zaktualizowany. |
|
|
||
Pokój zostanie usunięty. |
|
|
||
Subskrypcje użytkowników | ||||
Użytkownik staje się członkiem pokoju.
Nie wszyscy nowi członkowie wywołują zdarzenia. Więcej informacji znajdziesz w sekcji Ograniczenia. |
|
|
||
Zaktualizowano członkostwo użytkownika w pokoju. |
|
|
||
Użytkownik zostanie usunięty jako bezpośredni członek pokoju. |
|
|
Typy zdarzeń wsadowych (tylko dane wyjściowe)
Oprócz typów zdarzeń, które subskrybujesz, aplikacja do czatu może też otrzymywać zdarzenia zbiorcze. Zdarzenie zbiorcze to zdarzenie reprezentujące wiele zdarzeń tego samego typu, które występują w krótkim czasie. Ładunek zdarzenia zbiorczego zawiera listę wszystkich zmienionych zasobów.
Jeśli na przykład użytkownik doda do pokoju 20 użytkowników jednocześnie, Twoja aplikacja do obsługi czatu może otrzymać zdarzenie wsadowe (google.workspace.chat.membership.v1.batchCreated
). Ładunek zdarzenia zawiera listę wszystkich nowych zasobów Membership
, które zostały utworzone, gdy użytkownik dodał członków do pokoju.
Otrzymujesz zdarzenie wsadowe dla każdego typu zdarzenia, które subskrybujesz, więc podczas tworzenia subskrypcji nie musisz określać zdarzeń wsadowych. Jeśli na przykład subskrybujesz nowe reakcje (google.workspace.chat.reaction.v1.created
), aplikacja do czatu zostanie automatycznie skonfigurowana do odbierania zdarzeń reakcji zbiorczych (google.workspace.chat.reaction.v1.batchCreated
).
W tabeli poniżej znajdziesz możliwe zdarzenia zbiorcze dotyczące subskrypcji:
Typ zdarzenia wsadowego | Format |
---|---|
Opublikowano wiele wiadomości. |
|
Zaktualizowano wiele wiadomości. |
|
Wiele wiadomości zostanie usuniętych. |
|
Utworzonych jest wiele reakcji. |
|
Wiele reakcji zostanie usuniętych. |
|
Do subskrybowanego pokoju dodano wielu użytkowników lub subskrybujący użytkownik został dodany do wielu pokoi. |
|
W pokoju, w którym subskrybujesz, lub w przypadku subskrybowanego użytkownika aktualizowane są różne członkostwa. |
|
Z subskrybowanego pokoju usunięto wielu użytkowników lub subskrybujący użytkownik został usunięty z wielu pokoi. |
|
Pokój ma wiele aktualizacji. |
|
Dane zdarzenia
W tej sekcji opisujemy dane zdarzeń i przykładowe ładunki zdarzeń w Chat.
Gdy subskrypcja Google Workspace otrzyma zdarzenie z Google Chat, pole data
zawiera ładunek zdarzenia. Ten ładunek zawiera informacje o zmienionym zasobie Google Workspace. Jeśli na przykład subskrybujesz zdarzenia dotyczące członkostwa w przestrzeni, ładunek tych zdarzeń zawiera informacje o zmienionym zasobie spaces.membership
.
Dane zasobu w ładunku zdarzenia
Podczas tworzenia subskrypcji możesz określić, czy chcesz, aby ładunek zawierał szczegóły zasobu, czy tylko jego nazwę. Jeśli na przykład chcesz otrzymywać zdarzenia dotyczące użytkowników w pokoju na czacie, możesz określić, które pola zasobu członkostwa chcesz otrzymywać w ładunku zdarzenia.
W tabeli poniżej znajdziesz przykłady ładunków JSON w przypadku subskrypcji pokoju w Chat spaces/AAAABBBBBB
. W przypadku każdego zdarzenia, które otrzymuje subskrypcja, ładunek pojawia się w polu data
zdarzenia:
Przykład | Typ wydarzenia | Ładunek JSON |
---|---|---|
Użytkownik publikuje w pokoju wiadomość „Hello world”. |
|
Zawiera dane o zasobach: { "message": { "name": "spaces/ Wyklucza dane o zasobach: { "message": { "name": "spaces/ |
Użytkownik staje się menedżerem pokoju. |
|
Zawiera dane o zasobach: { "membership": { "name": "spaces/ Wyklucza dane o zasobach: { "membership": { "name": "spaces/ |
Użytkownik aktualizuje opis pokoju na „Zespół sprzedaży Cymbal Labs”. | google.workspace.chat.space.v1.updated |
Zawiera dane o zasobach:
{
"space":
{
"name": "spaces/ Wyklucza dane o zasobach:
{
"space":
{
"name": "spaces/ |
Do pokoju dodano jednocześnie 2 użytkowników Google Chat. | google.workspace.chat.membership.v1.batchCreated |
Zawiera dane o zasobach: { "memberships": [ { "membership": { "name": "spaces/ Wyklucza dane o zasobach: { "memberships": [ { "membership": { "name": "spaces/ |
Użytkownik reaguje na wiadomość emotikonem 😊. | google.workspace.chat.reaction.v1.created |
Zawiera dane o zasobach: { "reaction": { "name": "spaces/ Wyklucza dane o zasobach: { "reaction": { "name": "spaces/ |
Użytkownicy reagują na wiadomość za pomocą emotikonów 😊 i 😸. | google.workspace.chat.reaction.v1.batchCreated |
Zawiera dane o zasobach: { "reactions": [ { "reaction": { "name": "spaces/ Wyklucza dane o zasobach: { "reactions": [ { "reaction": { "name": "spaces/ |
Ograniczenia
-
W przypadku subskrypcji użytkowników zdarzenia dotyczące nowych członków w wiadomościach bezpośrednich lub czatach grupowych bez nazwy (
google.workspace.chat.membership.v1.created
) są wywoływane dopiero po opublikowaniu pierwszej wiadomości. - Aby otrzymywać zdarzenia dotyczące członkostwa, użytkownik lub aplikacja Google Chat musi być bezpośrednim członkiem pokoju. Jeśli użytkownik został dodany, zaktualizowany lub usunięty z pokoju pośrednio za pomocą grupy dyskusyjnej Google, subskrypcja nie będzie otrzymywać tych zdarzeń związanych z członkostwem. Aby dowiedzieć się, jak działają członkostwa w grupach dyskusyjnych Google, zapoznaj się z artykułem Dodawanie grupy dyskusyjnej Google do pokoju.
Powiązane artykuły
- Struktura wydarzeń Google Workspace
- Wybieranie zakresów protokołu OAuth
- Utwórz subskrypcję, aby otrzymywać zdarzenia z Google Chat.