// dokumentacja openclaw

Integracja OpenClaw z Google Chat — konfiguracja aplikacji

Wprowadzenie

OpenClaw integruje się z Google Chat przez Google Chat API i webhooks HTTP. Obsługiwane są wiadomości bezpośrednie i pokoje (spaces). Ten przewodnik przeprowadzi Cię przez pełną konfigurację, od utworzenia projektu w Google Cloud po uruchomienie bota.

Konfiguracja krok po kroku

  1. Utwórz projekt Google Cloud — przejdź do konsoli Google Cloud i utwórz nowy projekt
  2. Włącz Chat API — w sekcji API i usługi znajdź i włącz Google Chat API
  3. Utwórz konto usługi (Service Account) — nazwij je np. openclaw-chat
  4. Wygeneruj klucz JSON — w zakładce Keys konta usługi wygeneruj i pobierz plik JSON
  5. Zapisz plik lokalnie — np. w ~/.openclaw/googlechat-service-account.json
  6. Skonfiguruj aplikację Chat w konsoli Google Cloud:
    • Nazwa aplikacji, URL awatara i opis
    • Włącz funkcje interaktywne
    • Włącz dostęp do konwersacji grupowych
    • Ustaw endpoint HTTP na ścieżkę /googlechat Twojego Gateway
    • Ogranicz widoczność do wybranych użytkowników
  7. Zmień status aplikacji na „Live — available to users"

Dodawanie bota do Google Chat

Użytkownicy szukają bota po skonfigurowanej nazwie w interfejsie wiadomości bezpośrednich Google Chat (nie przez Marketplace, ponieważ aplikacja jest prywatna).

Eksponowanie publicznego URL

Tailscale Funnel (zalecane)

Eksponuj webhook publicznie przez Tailscale Funnel, udostępniając tylko ścieżkę /googlechat:

tailscale serve --bg 8443
tailscale funnel --bg /googlechat

Wynikowy URL: https://<node>.<tailnet>.ts.net/googlechat

Reverse proxy

Skieruj tylko ścieżkę /googlechat* przez usługę taką jak Caddy, blokując pozostałe ścieżki.

Cloudflare Tunnel

Skonfiguruj reguły ingress, aby kierować /googlechat do Gateway, a resztę odrzucać z kodem 404.

Uwierzytelnianie i weryfikacja

System weryfikuje tokeny bearer w żądaniach webhook na podstawie skonfigurowanego typu audytorium:

  • app-url — audytorium odpowiada adresowi URL webhooka HTTPS
  • project-number — audytorium odpowiada numerowi projektu Cloud

Routing wiadomości

  • Wiadomości bezpośrednie: klucz sesji agent:<agentId>:googlechat:direct:<spaceId>
  • Pokoje grupowe: agent:<agentId>:googlechat:group:<spaceId>
  • DM domyślnie wymagają zatwierdzenia parowania
  • Pokoje grupowe wymagają wzmianki @bot, chyba że skonfigurowano inaczej

Przykład konfiguracji

{
  channels: {
    googlechat: {
      serviceAccountFile: "~/.openclaw/googlechat-service-account.json",
      audienceType: "app-url",
      webhookPath: "/googlechat",
      dmPolicy: "pairing",
      groupPolicy: "allowlist",
      groups: {
        "spaces/ABC123": { requireMention: true }
      },
      mediaMaxMb: 20,
      sendTyping: true
    }
  }
}

Identyfikatory celów

  • Wiadomości bezpośrednie: users/<userId> (preferowane)
  • Pokoje: spaces/<spaceId>
  • Dopasowanie po e-mailu jest dostępne, ale oznaczone jako zmienne i niezalecane

Rozwiązywanie problemów

Błąd 405 Method Not Allowed zwykle oznacza:

  • Brakującą konfigurację channels.googlechat
  • Wyłączoną wtyczkę Google Chat
  • Gateway nie został zrestartowany po zmianach konfiguracji

Komendy diagnostyczne: openclaw channels status i openclaw channels status --probe z weryfikacją błędów uwierzytelniania.