Łą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 działają w połączeniu z innymi systemami i wymagają aplikacji towarzyszących do łączenia kont, autoryzowania dostępu do danych, wyświetlania dodatkowych danych czy konfigurowania preferencji użytkownika.

Wysyłanie do użytkownika prośby o konfigurację aplikacji do obsługi czatu

Jeśli wykonanie żądania wymaga dodatkowej konfiguracji, której nie można wykonać bezpośrednio w aplikacji do obsługi czatu, zwróć użytkownikowi adres URL konfiguracji w ramach normalnej odpowiedzi lub pokaż go prywatnie w tym formularzu:

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

Dzięki temu Google Chat wyświetli użytkownikowi prywatne potwierdzenie, gdzie CONFIGURATION_URL to link do 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ę do obsługi czatu zawiera też parametr configCompleteRedirectUrl. Ten adres URL powinien być zakodowany w adresie URL konfiguracji, który ma być używany do zakończenia 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 zależy od otrzymanej wiadomości. W odpowiedzi na komunikat taki jak @app help aplikacja do obsługi czatu powinna przesłać wiadomość bez konieczności dodatkowej konfiguracji.

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

  1. Usuń komunikat wyświetlany użytkownikowi inicjującego.
  2. Przekonwertuj oryginalną wiadomość na publiczną, aby była widoczna dla innych osób w pokoju.
  3. Ponownie wyślij oryginalną wiadomość do tej samej aplikacji.

Odwiedzenie configCompleteRedirectUrl ma wpływ tylko na jedną wiadomość dla użytkownika. Jeśli użytkownik kilkakrotnie próbował wysłać wiadomość do aplikacji Google Chat i w rezultacie otrzymał wiele próśb, kliknięcie konkretnego komunikatu i zakończenie procesu uwierzytelniania i konfiguracji ma wpływ tylko na tę konkretną wiadomość. Pozostałe wiadomości nie ulegną zmianie.

Jeśli zdarzenie interakcji MESSAGE jest wysyłane ponownie w ten sposób, powinno być identyczne z pierwotnym zdarzeniem. Czasami jednak zdarzenia interakcji MESSAGE mogą się różnić. Jeśli na przykład w wiadomości jest wspomniana zarówno aplikacja do obsługi czatu A, jak i aplikacja B do obsługi czatu, użytkownik może ją edytować, o ile aplikacja A przed uwierzytelnieniem się w aplikacji B odpowie zwykłą wiadomością. W takim przypadku aplikacja do obsługi czatu B otrzyma zmieniony 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 spoza 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.

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

Chociaż te dwa identyfikatory nie są identyczne, można je zmienić. Aby wymusić wartość roszczenia sub do elementu users/{user} w Google Chat, na początku dodaj wartość z atrybutem users/. Na przykład wartość deklaracji 123 jest odpowiednikiem nazwy użytkownika users/123 w wiadomościach wysyłanych do Twojej aplikacji Google Chat.