Na tej stronie znajdziesz omówienie tworzenia interfejsów użytkownika dla dodatków Google Workspace, które rozszerzają Google Chat.
W Google Chat dodatki są widoczne dla użytkowników jako aplikacje Google Chat. Więcej informacji znajdziesz w artykule Więcej informacji o rozszerzaniu Google Chat.
Aby tworzyć interfejsy aplikacji Google Chat, możesz używać tych komponentów dodatkowych:
- Reguły: sposoby, w jakie użytkownicy Google Chat mogą wywoływać aplikację Google Chat, na przykład dodając ją do pokoju lub wysyłając do niej wiadomość.
- Obiekty zdarzeń: dane, które aplikacje Google Chat otrzymują z wyzwalaczy lub interakcji z interfejsem użytkownika.
- Czynności: sposoby, w jakie aplikacje do czatu mogą reagować na interakcje, takie jak wysyłanie wiadomości lub zwracanie interfejsu użytkownika opartego na kartach.
Aplikacje czatu mogą tworzyć i wyświetlać karty w tych interfejsach:
- Wiadomości mogą zawierać tekst, karty statyczne lub interaktywne oraz przyciski.
- Okna, czyli karty, które otwierają się w nowym oknie i zwykle proszą użytkowników o przesłanie informacji.
- Podgląd linków, czyli karty zawierające informacje o usłudze zewnętrznej.
Reguły
W tej sekcji opisujemy wyzwalacze, których w Google Chat używają dodatki Google Workspace.
Wyzwalacze to konkretne sposoby, w jakich użytkownicy uruchamiają aplikację Google Chat za pomocą interfejsu Google Chat, na przykład za pomocą @wzmianek lub poleceń aplikacji.
W tabeli poniżej znajdziesz opisy uruchamiających czaty zdarzeń i działania, jakie zwykle podejmują aplikacje czatu:
Wyzwalacz | Opis | Typowa odpowiedź |
---|---|---|
Dodano do pokoju |
Użytkownik dodaje aplikację Google Chat do pokoju lub administrator Google Workspace instaluje aplikację Google Chat w pokojach czatu dla użytkowników w organizacji. Informacje o aplikacjach do obsługi czatu zainstalowanych przez administratorów znajdziesz w dokumentacji pomocy dla administratorów Google Workspace w artykule Instalowanie aplikacji z Marketplace w domenie. |
Aplikacja Google Chat wysyła wiadomość powitalną, która wyjaśnia, do czego służy i jak użytkownicy w pokoju mogą z niej korzystać. |
Wiadomość |
Użytkownik wchodzi w interakcję z aplikacją Google Chat w wiadomości w jeden z tych sposobów:
|
Aplikacja Google Chat odpowiada na podstawie treści wiadomości. Na przykład aplikacja Google Chat odpowiada na polecenie /about wiadomością z wyjaśnieniem zadań, które może wykonać.
|
Usunięto z pokoju |
Użytkownik usuwa aplikację Google Chat z pokoju lub administrator Google Workspace odinstalowuje aplikację Google Chat dla użytkownika w organizacji. Użytkownicy nie mogą usuwać aplikacji Google Chat zainstalowanych przez administratora. Jeśli użytkownik miał wcześniej zainstalowaną aplikację Google Chat, aplikacja ta pozostanie zainstalowana niezależnie od tego, czy administrator Google Workspace spróbuje ją odinstalować. |
Aplikacja Google Chat usuwa wszystkie przychodzące powiadomienia skonfigurowane dla pokoju (np. usuwanie webhooka) i czyści pamięć wewnętrzną. Aplikacje do czatu nie mogą odpowiadać na ten czynnik wiadomościami, ponieważ użytkownicy nie są już członkami pokoju. |
Polecenie aplikacji |
Użytkownik używa szybkiego polecenia lub polecenia po ukośniku w aplikacji Chat. |
Aplikacja Google Chat reaguje na polecenie. Na przykład: odpowiedzieć wiadomością lub otworzyć okno dialogowe. |
W przeciwieństwie do innych dodatków do Google Workspace musisz skonfigurować funkcje wywołania zwrotnego dla tych wyzwalaczy za pomocą interfejsu Google Chat API. Więcej informacji znajdziesz w artykule Konfigurowanie aplikacji Google Chat.
Aby odpowiedzieć na żądanie, zapoznaj się z tymi przewodnikami:
- Wysyłanie wiadomości w Google Chat
- Otwieranie interaktywnych dialogów
- Podgląd linków w wiadomościach Google Chat
Obiekty zdarzeń
W tej sekcji definiujemy i omawiamy wszystkie elementy obiektów zdarzeń czatu. Więcej informacji znajdziesz w artykule [GA4] Obiekty zdarzenia.
Obiekt zdarzenia | |
---|---|
commonEventObject |
object
(CommonEventObject)
Obiekt zawierający informacje wspólne dla wszystkich obiektów zdarzeń, niezależnie od aplikacji hosta. |
chat |
object
(Chat)
Obiekt zawierający wszystkie informacje o interakcjach w Google Chat. |
Czat
Czat | |
---|---|
chat.user |
object
(User)
Użytkownik Google Chat, który wszedł w interakcję z aplikacją Google Chat. |
chat.space |
object
(Space)
Pokój Google Chat, w którym użytkownik wszedł w interakcję z aplikacją Google Chat. |
chat.eventTime |
|
Pole unii
|
|
chat.messagePayload |
Dane, które aplikacje Google Chat otrzymują z wyzwalacza typu wiadomość. |
chat.addedToSpacePayload |
Dane, które aplikacje Google Chat otrzymują z trybu dodania do pokoju. |
chat.removedFromSpacePayload |
Dane, które aplikacje czatu otrzymują z usuniętego z pokoju. |
chat.buttonClickedPayload |
Dane, które aplikacje do czatu otrzymują, gdy użytkownicy klikną przycisk w wiadomości lub na karcie. Jeśli użytkownik kliknie przycisk, aby przesłać informacje, obiekt |
chat.widgetUpdatedPayload |
Dane, które aplikacje Google Chat otrzymują, gdy użytkownicy wpisują tekst w menu wielowyboru widżetu
Obiekt |
chat.appCommandPayload |
Dane, które aplikacje do obsługi czatu otrzymują, gdy użytkownik użyje polecenia z aplikacji do obsługi czatu. |
Ładunek
W zależności od typu interakcji zdarzenie zawiera ładunek z co najmniej 1 zasobem interfejsu API czatu.
Ładunek wiadomości
MessagePayload | |
---|---|
chat.messagePayload.message |
object
(Message)
Wiadomość w Google Chat, która wywołała zdarzenie. |
chat.messagePayload.space |
object
(Space)
Pokój czatu, w którym użytkownik wysłał wiadomość, która wywołała aplikację Google Chat. |
Dodano do ładunku przestrzeni
AddedToSpacePayload | |
---|---|
chat.addedToSpacePayload.space |
object
(Space)
Pokój Google Chat, do którego użytkownik dodał lub zainstalował aplikację Google Chat. Gdy administratorzy instalują aplikacje Google Chat, pole |
chat.addedToSpacePayload.interactionAdd |
boolean Czy użytkownik dodał aplikację Google Chat do pokoju, używając wiadomości. Na przykład @mentions the Chat app or uses a slash command. Jeśli true , Google Chat wysyła kolejny obiekt zdarzenia z messagePayload , który zawiera informacje o wiadomości.
|
Usunięto z ładunku pokoju
RemovedFromSpacePayload | |
---|---|
chat.removedFromSpacePayload.space |
object
(Space)
Pokój Google Chat, z którego użytkownik usunął lub odinstalował aplikację Google Chat. Gdy administratorzy odinstalują aplikacje Google Chat, pole |
Ładunek kliknięcia przycisku
ButtonClickedPayload | |
---|---|
chat.buttonClickedPayload.message |
object
(Message)
Wiadomość na czacie zawierająca przycisk, który użytkownik kliknął. |
chat.buttonClickedPayload.space |
object
(Space)
Pokój czatu, w którym użytkownik kliknął przycisk w wiadomości z aplikacji Google Chat. |
chat.buttonClickedPayload.isDialogEvent |
boolean Czy użytkownik kliknął przycisk, aby wejść w interakcję z oknem. |
chat.buttonClickedPayload.dialogEventType |
enum (DialogEventType) Jeśli isDialogEvent to true , typ interakcji w dialogu.
|
Wyliczenie Wartość |
|
TYPE_UNSPECIFIED |
Wartość domyślna. Nie określono. |
REQUEST_DIALOG |
Użytkownik prosi o dialog. Może to być na przykład użycie polecenia / lub kliknięcie przycisku w wiadomości. |
SUBMIT_DIALOG |
Użytkownik klika element interaktywny w dialogu. Na przykład użytkownik wypełnia informacje w oknie dialogowym i klika przycisk, aby je przesłać. |
Payload zaktualizowanego widżetu
WidgetUpdatedPayload | |
---|---|
chat.widgetUpdatedPayload.space |
object
(Space)
Pokój czatu, w którym miała miejsce interakcja. |
Ładunek polecenia aplikacji
AppCommandPayload | |
---|---|
chat.appCommandPayload.appCommandMetadata |
object
(AppCommandMetadata)
Metadane o tym, którego polecenia użył użytkownik i jak je aktywował. |
chat.appCommandPayload.space |
object
(Space)
Pokój czatu, w którym użytkownik użył polecenia. |
chat.appCommandPayload.thread |
object
(Thread)
Jeśli interakcja miała miejsce w wątku, to wątku czatu, w którym użytkownik użył polecenia. |
chat.appCommandPayload.message |
object
(Message)
Wiadomość wysłana przez użytkownika za pomocą polecenia po ukośniku. |
chat.appCommandPayload.configCompleteRedirectUri |
string Jeśli polecenie wymaga autoryzacji lub konfiguracji, adres URL, do którego użytkownik zostanie przekierowany po zakończeniu procesu poza Google Chat. |
chat.appCommandPayload.isDialogEvent |
boolean Czy polecenie otwiera okno. |
chat.appCommandPayload.dialogEventType |
enum (DialogEventType) Typ interakcji z oknem dialogowym. |
Wyliczenie Wartość |
|
TYPE_UNSPECIFIED |
Wartość domyślna. Nie określono. |
REQUEST_DIALOG |
Użytkownik prosi o dialog. Może to być na przykład użycie polecenia / lub kliknięcie przycisku w wiadomości. |
SUBMIT_DIALOG |
Użytkownik klika element interaktywny w dialogu. Na przykład użytkownik wypełnia informacje w oknie dialogowym i klika przycisk, aby je przesłać. |
Metadane polecenia aplikacji
AppCommandMetadata | |
---|---|
chat.appCommandPayload.appCommandMetadata.appCommandId |
Identyfikator polecenia. |
chat.appCommandPayload.appCommandMetadata.appCommandType |
enum (AppCommandType) Typ polecenia. |
Wyliczenie Wartość |
|
APP_COMMAND_TYPE_UNSPECIFIED |
Wartość domyślna. Nie określono. |
SLASH_COMMAND |
Użytkownik używa polecenia, wysyłając wiadomość, która zaczyna się od ukośnika / . |
Działania na czacie
W tej sekcji wyjaśniamy, jak aplikacje do obsługi czatu mogą używać czynności dodatkowych do reagowania na interakcje użytkowników.
Aby odpowiedzieć za pomocą działania dodatku, aplikacja Google Chat musi odpowiedzieć w ciągu 30 sekund, a odpowiedź musi zostać opublikowana w pokoju, w którym miała miejsce interakcja. W przeciwnym razie aplikacja Google Chat musi skonfigurować uwierzytelnianie i wywołać interfejs Google Chat API, aby odpowiedzieć.
Aplikacje do czatu mogą obsługiwać interakcje i reagować na nie na wiele sposobów. W wielu przypadkach aplikacje do czatu odpowiadają wiadomością. Aplikacje do czatu mogą też wyszukiwać informacje w źródłach danych, rejestrować informacje o obiekcie zdarzenia lub po prostu o czymkolwiek innym. To zachowanie definiuje aplikację Google Chat.
Aby odpowiadać na interakcje użytkownika, aplikacje do obsługi czatu muszą obsługiwać odpowiedni obiekt zdarzenia i zwracać jeden z tych obiektów JSON:
DataActions
: tworzy lub aktualizuje dane Google Workspace. Aby wysyłać lub aktualizować wiadomości w Google Chat, obiekt musi zawierać znaczniki, które definiują zmiany w danychMessage
, reprezentowane przezchatDataActionMarkup
.RenderActions
: wyświetla lub przełącza się między kartami w wiadomościach i dialogach.basic_authorization_prompt
: wyświetla użytkownikom karty autoryzacyjne, aby mogli zalogować się lub uwierzytelnić się w usłudze zewnętrznej w Google. Szczegółowe informacje znajdziesz w artykule Łączenie dodatku do Google Workspace z usługą innej firmy.
Pożądana odpowiedź aplikacji do obsługi czatu | Wymagane działanie w przypadku zwrotu |
---|---|
Wyślij lub zaktualizuj wiadomość. | DataActions |
Otwórz, zaktualizuj lub zamknij okno. | RenderActions |
Aby zbierać informacje z karty lub okna dialogowego, sugeruj elementy wyboru na podstawie tego, co użytkownicy wpisują w menu wielokrotnego wyboru. | RenderActions |
Podgląd linków w wiadomościach wysyłanych przez użytkowników czatu w pokoju. | DataActions |
Odpowiadanie za pomocą interfejsu Google Chat API
Zamiast zwracać działanie dodatku aplikacje czatu mogą potrzebować interfejsu Google Chat API do odpowiedzi na interakcję. Na przykład aplikacje czatu muszą wywoływać interfejs Google Chat API, aby:
- Odpowiedz na interakcję w ciągu 30 sekund.
- wykonywać czynności poza pokojem, w którym doszło do interakcji;
- wykonywanie w Google Chat zadań, które nie są dostępne jako dodatki. Możesz na przykład wyświetlić listę pokoi, w których znajduje się użytkownik lub aplikacja do obsługi czatu, albo dodać użytkowników do pokoju.
- Wykonywanie zadań w imieniu użytkownika Google Chat (wymaga uwierzytelnienia użytkownika).
Więcej informacji o uwierzytelnianiu i wywoływaniu interfejsu Chat API znajdziesz w artykule Przegląd interfejsu Chat API.