Otrzymuj interakcje użytkowników i reaguj na nie

Na tej stronie dowiesz się, jak aplikacja Google Chat może odbierać i wysyłać reagowanie na interakcje użytkowników (tzw. aplikacja Google Chat); Interakcje.

Na tej stronie dowiesz się, jak:

  • Konfigurowanie aplikacji Google Chat pod kątem możliwości interakcji zdarzeń.
  • Przetwórz zdarzenie interakcji w swojej infrastrukturze.
  • W razie potrzeby reaguj na zdarzenia interakcji.

Wymagania wstępne

Aplikacja Google Chat, w której można korzystać z funkcji interaktywnych. Aby utworzyć interaktywna aplikacja do obsługi czatu, wykonaj jedno z tych krótkich wprowadzeń dotyczące architektury aplikacji, której chcesz używać:

Jak działają zdarzenia interakcji

Zdarzenie interakcji z aplikacją Google Chat oznacza dowolne działanie, które które użytkownik wykonuje w celu wywołania aplikacji do obsługi czatu lub wchodzenia z nią w interakcję, @wzmianka o aplikacji Google Chat lub dodanie jej do kosmosu. Gdy użytkownicy korzystają z aplikacji Google Chat, Google Chat wysyła do aplikacji Google Chat zdarzenie interakcji. Aplikacja Google Chat może używać zdarzenia do przetwarzania i w ten sposób stworzysz odpowiedź.

Na przykład aplikacje do obsługi czatu używają zdarzeń interakcji do wykonywania :

Przykład zdarzenia interakcji Typowa odpowiedź z aplikacji Google Chat
Użytkownik wywołuje aplikację Google Chat przez: dodanie @wzmianki lub użycie polecenia po ukośniku, Aplikacja do obsługi czatu przetwarza treść wiadomości utworzyć wiadomość. Na przykład aplikacja Google Chat odpowiada na /about z komunikatem objaśniającym zadania, które co potrafi aplikacja Google Chat.
Użytkownik dodaje aplikację Google Chat do: w pokoju. Aplikacja Google Chat wysyła wprowadzenie (komunikat wyjaśniający, do czego służy i jak użytkownicy w pokoju mogą wchodzić w interakcje .
Użytkownik usuwa aplikację do obsługi czatu z pokoju, Aplikacja do obsługi czatu usuwa wszystkie przychodzące powiadomienia skonfigurowane dla pokoju (na przykład usunięcie webhook) i usuwa wszystkie pamięci wewnętrznej.
Użytkownik klika przycisk na karcie lub w oknie dialogowym wysłanym przez aplikacja Google Chat. Aplikacja Google Chat przetwarza i zapisuje przesłane przez użytkownika albo zwrócone przez inną kartę lub okno.

W przypadku każdego typu interakcji Google Chat wysyła inny typ zdarzenie interakcji, które pomaga aplikacji Google Chat w obsłudze odpowiedniego typu zdarzenia. Na przykład Google Chat używa typu zdarzenia ADDED_TO_SPACE w przypadku każdej interakcji, w której użytkownik dodał element do pokoju. Aplikacja do obsługi czatu może obsługiwać odpowiedzi, takie jak publikowanie wiadomość powitalną w pokoju. Aby zobaczyć wszystkie obsługiwane zdarzenia interakcji, otwórz EventType – dokumentacja dokumentacji.

Odbieranie zdarzeń interakcji z aplikacją Google Chat

W tej sekcji opisano, jak odbierać i przetwarzać zdarzenia interakcji w ramach aplikacja Google Chat.

Konfigurowanie aplikacji Google Chat pod kątem odbierania zdarzeń interakcji

Nie wszystkie aplikacje do obsługi czatu są interaktywne. Przykład: webhooki przychodzące mogą tylko wysyłać wiadomości wychodzące oraz nie mogą odpowiadać użytkownikom. Jeśli tworzysz interaktywny aplikacji do obsługi czatu, musisz wybrać punkt końcowy, który pozwoli Odbieranie, przetwarzanie i reagowanie na interakcję przez komunikator zdarzeń. Aby dowiedzieć się więcej o projektowaniu aplikacji Google Chat, zapoznaj się z artykułem Architektury implementacji aplikacji do obsługi czatu.

Dla każdej funkcji interaktywnej, którą chcesz utworzyć, musisz zaktualizować skonfigurować ustawienia w interfejsie Chat API, aby umożliwić wysyłanie powiązane zdarzenia interakcji z Twoją aplikacją Google Chat:

  1. W konsoli Google Cloud otwórz stronę interfejsu Chat API i kliknij Strona Konfiguracja:

    Otwórz stronę konfiguracji interfejsu Chat API

  2. W sekcji Funkcje interaktywne sprawdź ustawienia i wprowadź odpowiednie zmiany. funkcje, które chcesz utworzyć:

    Pole Opis
    Funkcjonalność Wymagane. Zbiór pól, które określają, jak aplikacja do obsługi czatu może wchodzić w interakcje z użytkownikami:
    • Odbieranie wiadomości 1:1: użytkownicy mogą znaleźć aplikację Google Chat i wysłać do niej wiadomość bezpośrednio w Google Chat.
    • Dołączanie do pokoi i rozmów grupowych: użytkownicy mogą dodawać aplikację Google Chat do pokoi i rozmów grupowych.
    Ustawienia połączenia Wymagane. Punkt końcowy aplikacji Google Chat, który jest jednym z tych:
    • App URL: punkt końcowy HTTPS, który hostuje implementację aplikacji Google Chat.
    • Projekt Apps Script: identyfikator wdrożenia projektu Apps Script, w którym zaimplementowano aplikację Google Chat.
    • Nazwa tematu Cloud Pub/Sub: temat Pub/Sub subskrybowany przez aplikację Google Chat jako punkt końcowy.
    • Dialogflow: rejestruje aplikację Google Chat przy użyciu integracji Dialogflow. Więcej informacji znajdziesz w artykule Tworzenie aplikacji Dialogflow do Google Chat rozumiejącej język naturalny.
    Polecenia rozpoczynające się ukośnikiem Opcjonalnie: Polecenia, które mogą wyświetlać się użytkownikom w Google Chat. Umożliwia użytkownikom wyświetlanie głównych działań w aplikacji Google Chat w Google Chat i wybieranie określonych działań. Więcej informacji znajdziesz w artykule Odpowiadanie na polecenia po ukośniku jako aplikacja do obsługi czatu.
    Podgląd linków Opcjonalnie: Wzorce adresów URL rozpoznawane przez aplikację Google Chat i udostępniające dodatkowe treści, gdy użytkownicy wysyłają linki. Więcej informacji znajdziesz w sekcji Podgląd linków.
    Widoczność Opcjonalnie: Maksymalnie 5 osób lub co najmniej 1 grupa dyskusyjna Google, która może wyświetlać i zainstalować Twoją aplikację Google Chat. Użyj tego pola, aby przetestować aplikację Google Chat lub udostępnić ją swojemu zespołowi. Więcej informacji znajdziesz w artykule Testowanie funkcji interaktywnych.
  3. Kliknij Zapisz. Gdy zapisujesz aplikację Google Chat aplikacja Google Chat będzie dostępna w określonych użytkowników w Twojej organizacji Google Workspace.

Aplikacja Google Chat jest teraz skonfigurowana tak, aby można było wchodzić z nimi w interakcję wydarzenia z Google Chat.

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

Jeśli nie uda się wysłać żądania HTTPS do usługi (np. przekroczenie limitu czasu, sieć tymczasowa lub kod stanu HTTPS innego niż 2xx), Google Chat może ponowić próbę dostarczenia kilka minut (ale nie jest to gwarantowane). W rezultacie Aplikacja do obsługi czatu może kilka razy otrzymać tę samą wiadomość w w pewnych sytuacjach. Jeśli żądanie zostanie zrealizowane, ale zwróci nieprawidłową wartość wiadomości, Google Chat nie ponawia próby dostarczenia.

Przetwarzanie zdarzeń interakcji i reagowanie na nie

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

Gdy aplikacja do obsługi czatu otrzyma zdarzenie interakcji z Google Chat, mogą odpowiadać na wiele sposobów. W wielu przypadkach Aplikacje do obsługi czatu odpowiadają użytkownikowi, wysyłając wiadomość. Aplikacja Google Chat może też wyszukiwać niektóre informacje z danych rejestrować informacje o zdarzeniu interakcji lub cokolwiek innego. Taki sposób przetwarzania zasad zasadniczo określa aplikacji Google Chat.

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

W przypadku każdego zdarzenia interakcji aplikacje do obsługi czatu otrzymują treści żądania, czyli ładunek JSON reprezentujący zdarzenie. Za pomocą informacje potrzebne do przetworzenia odpowiedzi. Przykłady ładunków zdarzeń: Typy zdarzeń interakcji z aplikacją Google Chat.

Poniższy diagram pokazuje, Aplikacja Google Chat zwykle przetwarza różne typy zdarzenia interakcji:

Architektura sposobu, w jaki aplikacje w Google Chat przetwarzają zdarzenia interakcji.

Wyświetlaj odpowiedź w trakcie jej generowania

zdarzenia interakcji pozwalają aplikacjom na czacie odpowiadać w czasie rzeczywistym, synchronicznie. Synchroniczne odpowiedzi nie wymagają authentication.

Odpowiadanie na dołączenie do pokoju

W tym przykładzie aplikacja Google Chat tworzy i wysyła tekst za każdym razem, gdy zostanie dodana do pokoju. Aby poznać sprawdzone metody dotyczące użytkowników wprowadzających, patrz: Przedstaw użytkownikom aplikację Google Chat.

Aby wysłać SMS-a, gdy użytkownik doda Twoją aplikację Google Chat do pokoju, aplikacji Google Chat odpowiada na: ADDED_TO_SPACE zdarzenia interakcji. Aby odpowiedzieć na: Zdarzenia interakcji z SMS-em w aplikacji ADDED_TO_SPACE. Użyj tego kodu:

Node.js

/**
 * Sends an onboarding message when the Chat app is added to a space.
 *
 * @param {Object} req The event object from Chat API.
 * @param {Object} res The response object from the Chat app. An onboarding message that
 * introduces the app and helps people get started with it.
 */
exports.onMessage = function onMessage(req, res) {
  if (req.method === 'GET' || !req.body.message) {
    res.send(
      'Hello! This function is meant to be used in a Google Chat space.');
  }

  // Send an onboarding message when added to a Chat space
  if (req.body.type === 'ADDED_TO_SPACE') {
    res.json({
      'text': 'Hi, Cymbal at your service. I help you manage your calendar
      from Google Chat. Take a look at your schedule today by typing
      `/checkCalendar`, or schedule a meeting with `/scheduleMeeting`. To
      learn what else I can do, type `/help`.'
    });
  }
};

Google Apps Script

/**
 * Sends an onboarding message when the Chat app is added to a space.
 *
 * @param {Object} event The event object from Chat API.
 * @return {Object} Response from the Chat app. An onboarding message that
 * introduces the app and helps people get started with it.
 */
function onAddToSpace(event) {

  return {
    'text': 'Hi, Cymbal at your service. I help you manage your calendar
    from Google Chat. Take a look at your schedule today by typing
    `/checkCalendar`, or schedule a meeting with `/scheduleMeeting`. To learn
    what else I can do, type `/help`.'
  }
}

Przykładowy kod zwraca taki komunikat tekstowy:

Przykładowa wiadomość wprowadzająca.

Inne przykłady reakcji na interakcje

Aby utworzyć synchroniczne odpowiedzi na zdarzenia interakcji, zapoznaj się z następującymi artykułami przewodniki:

Odpowiadaj asynchronicznie

Czasami aplikacje do obsługi czatu muszą zareagować na zdarzenie interakcji po 30 sekundach sekund lub wykonywać zadania poza pokojem, w którym było zdarzenie interakcji. . Aplikacja Google Chat może na przykład wymagać: odpowiedzieć użytkownikowi po wykonaniu długotrwałego zadania. W tym przypadku Aplikacje do obsługi czatu mogą odpowiadać asynchronicznie, wywołując interfejs Google Chat API.

Aby utworzyć wiadomość za pomocą interfejsu Chat API, zapoznaj się z artykułem Utwórz wiadomość. Przewodniki dotyczące używania dodatkowych metod interfejsu Chat API znajdziesz w dokumentacji Omówienie interfejsu Chat API.