Otrzymywanie interakcji z aplikacją Google Chat i odpowiadanie na nie

Na tej stronie opisujemy, jak aplikacja Google Chat może odbierać interakcje użytkowników i na nie reagować, nazywane też zdarzeniami interakcji z aplikacją Google Chat.

Zdarzenie interakcji z aplikacją Google Chat reprezentuje dowolne działanie wykonywane przez użytkownika w celu wywołania aplikacji do obsługi czatu lub interakcji z nią, na przykład @wzmianka o aplikacji do obsługi czatu lub dodanie jej do pokoju. Gdy użytkownicy wchodzą w interakcję z aplikacją do obsługi czatu, Google Chat wysyła do niej zdarzenie interakcji. Aplikacja Google Chat może wykorzystać to zdarzenie do przetworzenia interakcji i utworzenia odpowiedzi.

Aplikacje do obsługi czatu korzystają na przykład ze zdarzeń interakcji do:

Przykład zdarzenia interakcji Typowa odpowiedź z aplikacji Google Chat
Użytkownik wywołuje aplikację do obsługi czatu, dodając @wzmiankę o niej lub używając polecenia po ukośniku. Aby utworzyć wiadomość, aplikacja Google Chat przetwarza treść wiadomości. Na przykład aplikacja do obsługi czatu odpowiada na polecenie /about komunikatem objaśniającym zadania, jakie może wykonywać aplikacja Google Chat.
Użytkownik dodaje aplikację Google Chat do pokoju. Aplikacja Google Chat wysyła wiadomość wprowadzającą, która wyjaśnia, co robi, i jak użytkownicy w pokoju mogą z niego korzystać.
Użytkownik usuwa aplikację Google Chat z pokoju. Aplikacja Google Chat usunie wszystkie przychodzące powiadomienia skonfigurowane dla pokoju (takie jak usunięcie webhooka) i wyczyści pamięć wewnętrzną.
Użytkownik klika przycisk na karcie lub w oknie wysłanym przez aplikację Google Chat. Aplikacja Google Chat przetwarza i przechowuje dane przesłane przez użytkownika albo zwraca inną kartę lub okno.

W przypadku każdego typu interakcji Google Chat wysyła inny typ zdarzenia interakcji. Na przykład Google Chat używa typu zdarzenia MESSAGE w przypadku każdej interakcji, w której użytkownik wywołuje aplikację Google Chat w wiadomości. Więcej informacji znajdziesz w artykule Rodzaje zdarzeń interakcji z aplikacją Google Chat.

Na tej stronie opisano, jak:

  • Skonfiguruj aplikację do obsługi czatu, aby otrzymywać zdarzenia.
  • Przetwarzanie zdarzenia interakcji w swojej infrastrukturze.
  • W razie potrzeby reaguj na zdarzenia interakcji.

Odbieranie zdarzeń interakcji z aplikacją Google Chat

Z tej sekcji dowiesz się, jak odbierać i przetwarzać zdarzenia interakcji w aplikacji Google Chat.

Skonfiguruj aplikację Google Chat, aby otrzymywać zdarzenia interakcji

Nie wszystkie aplikacje do obsługi czatu są interaktywne. Na przykład webhooki przychodzące mogą tylko wysyłać wiadomości wychodzące i nie mogą odpowiadać użytkownikom. Jeśli tworzysz interaktywną aplikację do obsługi czatu, musisz wybrać punkt końcowy, który umożliwia jej odbieranie i przetwarzanie zdarzeń interakcji oraz reagowanie na nie. Więcej informacji na temat projektowania aplikacji do obsługi czatu znajdziesz w artykule na temat architektury wdrażania aplikacji do obsługi czatu.

Jeśli masz interaktywną aplikację Google Chat, musisz skonfigurować interfejs Google Chat API, aby mógł wysyłać Ci zdarzenia interakcji:

  1. W konsoli Google Cloud otwórz stronę Google Chat API:

    Otwórz stronę interfejsu Google Chat API

  2. Kliknij kartę Configuration (Konfiguracja).
  3. W sekcji Funkcje interaktywne kliknij przełącznik Włącz funkcje interaktywne w pozycji włączenia.
  4. W sekcji Funkcjonalność zaznacz co najmniej jedno z tych pól wyboru:
    1. Odbieranie wiadomości 1:1: pozwala użytkownikom korzystać z aplikacji Google Chat w pokojach czatu. Aplikacja Google Chat odbiera zdarzenia interakcji za każdym razem, gdy użytkownik wysyła wiadomość w pokoju czatu.
    2. Dołączanie do pokoi i rozmów grupowych: pozwala użytkownikom dodawać aplikację Google Chat do pokoi z więcej niż jedną osobą i usuwać ją z tych pokoi. Aplikacja do obsługi czatu otrzymuje zdarzenia interakcji za każdym razem, gdy zostanie dodane do pokoju lub z niego usunięte, a także za każdym razem, gdy użytkownik doda @wzmiankę lub użyje w pokoju polecenia po ukośniku.
  5. W sekcji Ustawienia połączenia określ, gdzie Google Chat wysyła zdarzenia interakcji z aplikacją Google Chat.
  6. Opcjonalnie: w sekcji Polecenia po ukośniku dodaj i skonfiguruj co najmniej 1 polecenie po ukośniku. Więcej informacji znajdziesz w artykule Konfigurowanie poleceń po ukośniku.
  7. Opcjonalnie: w sekcji Podgląd linków dodaj i skonfiguruj co najmniej 1 wzorzec adresu URL wyświetlany w aplikacji do obsługi czatu. Więcej informacji znajdziesz w sekcji Podgląd linków.
  8. Kliknij Zapisz.

Aplikacja do obsługi czatu jest teraz skonfigurowana tak, aby odbierać zdarzenia interakcji z Google Chat.

Obsługa ponownych prób wywołań HTTP do usługi

Jeśli żądanie HTTPS wysłane do Twojej usługi nie powiedzie się (na przykład upłynie czas oczekiwania, tymczasowa awaria sieci lub kod stanu HTTPS inny niż 2xx), Google Chat może ponawiać próbę dostarczenia w ciągu kilku minut (ale nie jest to gwarantowane). Dlatego w pewnych sytuacjach aplikacja do obsługi czatu może kilka razy otrzymać tę samą wiadomość. Jeśli żądanie zakończy się powodzeniem, ale zwróci nieprawidłowy ładunek wiadomości, Google Chat nie ponawia żądania.

Przetwarzanie zdarzeń interakcji i reagowanie na nie

W tej sekcji wyjaśniamy, jak aplikacje Google Chat mogą przetwarzać zdarzenia interakcji i reagować na nie.

Gdy aplikacja do obsługi czatu otrzyma zdarzenie interakcji z Google Chat, może zareagować na wiele sposobów. W wielu przypadkach interaktywne aplikacje do obsługi czatu wysyłają użytkownikowi wiadomość. Aplikacja Google Chat może też wyszukiwać niektóre informacje ze źródła danych, rejestrować informacje o zdarzeniu interakcji oraz wykonywać dowolne inne działania. To właśnie proces przetwarzania danych definiuje aplikację Google Chat.

W przypadku każdego zdarzenia interakcji aplikacje do obsługi czatu otrzymują treść żądania, która jest ładunkiem JSON reprezentującym zdarzenie. Informacje te mogą posłużyć do przetworzenia odpowiedzi. Przykłady ładunków zdarzeń znajdziesz w artykule Rodzaje zdarzeń interakcji z aplikacją Google Chat.

Poniższy diagram przedstawia, jak aplikacja Google Chat zazwyczaj przetwarza różne typy zdarzeń interakcji lub na nie reaguje:

Architektura sposobu przetwarzania zdarzeń interakcji przez aplikacje do Google Chat.

Wyświetlaj odpowiedź w trakcie jej generowania

Zdarzenia interakcji pozwalają aplikacjom Google Chat odpowiadać w czasie rzeczywistym lub synchronicznie. Synchroniczne odpowiedzi nie wymagają uwierzytelniania.

Jeśli chcesz utworzyć synchroniczne odpowiedzi na zdarzenia interakcji, zapoznaj się z tymi przewodnikami:

Aby odpowiadać synchronicznie, aplikacja do obsługi czatu musi odpowiedzieć w ciągu 30 sekund, a odpowiedź musi być opublikowana w pokoju, w którym nastąpiła interakcja. W przeciwnym razie aplikacja Google Chat może odpowiadać asynchronicznie.

Odpowiadaj asynchronicznie

Czasami aplikacje do obsługi czatu muszą odpowiedzieć na zdarzenie interakcji po 30 sekundach lub wykonać zadania poza pokojem, w którym zostało wygenerowane zdarzenie interakcji. Na przykład aplikacja do obsługi czatu może być zmuszona do udzielenia użytkownikowi odpowiedzi po wykonaniu długo trwającego zadania. W takim przypadku aplikacje do obsługi czatu mogą odpowiadać asynchronicznie, wywołując interfejs Google Chat API.

Aby utworzyć wiadomość przy użyciu interfejsu Chat API, przeczytaj artykuł Tworzenie wiadomości. Wskazówki dotyczące używania dodatkowych metod interfejsu Chat API znajdziesz w omówieniu interfejsu Chat API.