Łączenie aplikacji Google Chat z innymi usługami i narzędziami

Na tej stronie dowiesz się, jak połączyć aplikację Google Chat z usługą lub narzędziem spoza Google Chat. Chociaż aplikacje do obsługi czatu są bardzo wydajne samodzielnie, często współpracują z innymi systemami i wymagają aplikacji towarzyszących do łączenia kont, autoryzowania dostępu do danych, wyświetlania dodatkowych danych lub konfigurowania ustawień użytkownika.

Poproś użytkownika o konfigurację aplikacji do obsługi czatu

Jeśli wykonanie żądania wymaga dodatkowej konfiguracji, której nie można wykonać bezpośrednio w aplikacji Google Chat, zwróć użytkownikowi adres URL konfiguracji w ramach zwykłej odpowiedzi lub pokaż go prywatnie, korzystając z tego formularza:

{
  "actionResponse": {
    "type": "REQUEST_CONFIG",
    "url": "CONFIGURATION_URL"
  }
}

Dzięki temu Google Chat wyświetli użytkownikowi prywatny prompt, gdzie CONFIGURATION_URL to link do strony, do której użytkownik może przejść w celu dodatkowego uwierzytelniania, autoryzacji lub konfiguracji. Odpowiedź REQUEST_CONFIG wzajemnie się wyklucza ze zwykłej wiadomości z odpowiedzią. Tekst, karty i inne atrybuty są ignorowane.

Wykonaj żądanie konfiguracji

Każde zdarzenie interakcji MESSAGE odbierane przez aplikację Google Chat zawiera też parametr configCompleteRedirectUrl. Ten adres URL powinien być zakodowany w adresie URL konfiguracji, aby był używany po zakończeniu procesu. Przekierowanie na ten adres URL sygnalizuje do Google Chat, że prośba o konfigurację została zrealizowana.

Po uruchomieniu aplikacji do obsługi czatu proces przebiega w zależności od otrzymanej wiadomości. W odpowiedzi na komunikat taki jak @app help aplikacja do obsługi czatu powinna wysłać wiadomość bez konieczności dodatkowej konfiguracji.

Gdy użytkownik zostanie przekierowany na adres configCompleteRedirectUrl podany w pierwotnej wiadomości, Google Chat wykona te czynności:

  1. Usuń komunikat wyświetlony użytkownikowi inicjującym.
  2. Skonwertuj oryginalną wiadomość na publiczną, aby była widoczna dla innych osób w pokoju.
  3. Wyślij oryginalną wiadomość po raz drugi do tej samej aplikacji do obsługi czatu.

Odwiedzenie strony configCompleteRedirectUrl ma wpływ tylko na 1 wiadomość użytkownika. Jeśli użytkownik próbował wysłać wiadomość w aplikacji Google Chat wiele razy i w rezultacie otrzymał wiele próśb, kliknięcie konkretnego komunikatu i ukończenie procesu uwierzytelniania i konfiguracji ma wpływ tylko na tę konkretną wiadomość. Pozostałe komunikaty nie zostaną zmienione.

Gdy zdarzenie interakcji MESSAGE jest ponownie wysyłane w ten sposób, powinno być identyczne z pierwotnym zdarzeniem. Jednak w pewnych sytuacjach zdarzenia interakcji MESSAGE mogą się różnić. Jeśli na przykład w wiadomości jest wspomniana zarówno aplikacja Google Chat A, jak i aplikacja Google Chat B, użytkownik może ją edytować, jeśli przed uwierzytelnianiem w aplikacji Google Chat B wysyła zwykłą wiadomość. W takim przypadku aplikacja do obsługi czatu B otrzyma zmodyfikowany tekst wiadomości, gdy użytkownik zakończy uwierzytelnianie i konfigurację.

Uwierzytelnianie użytkownika Google Chat poza Google Chat

W niektórych przypadkach, takich jak żądanie autoryzacji OAuth dla interfejsu API, aplikacja musi połączyć się z adresem URL poza Google Chat przy zachowaniu tożsamości użytkownika. W takich przypadkach najlepszym sposobem na rozpoznanie użytkownika jest zabezpieczenie aplikacji docelowej za pomocą funkcji Logowanie przez Google.

Aby uzyskać identyfikator użytkownika, użyj tokena tożsamości wydanego podczas logowania. Roszczenie sub zawiera unikalny identyfikator użytkownika i można je skorelować z identyfikatorem użytkownika z Google Chat.

Te dwa identyfikatory nie są identyczne, ale można je przekształcać. Aby zastosować wartość roszczenia sub do elementu users/{user} w Google Chat, dołącz wartość na początku users/. Na przykład wartość deklaracji 123 jest odpowiednikiem nazwy użytkownika users/123 w wiadomościach wysyłanych do aplikacji Google Chat.