OpenClaw

OpenClaw WhatsApp Kanal

Messaging
Mittel

Verbinden Sie OpenClaw mit WhatsApp über das Baileys-Protokoll. Diese Integration ermöglicht es Ihrem KI-Assistenten, Nachrichten auf WhatsApp zu senden und zu empfangen, ohne eine Business-API zu benötigen — scannen Sie einfach einen QR-Code mit Ihrem Telefon und schon kann es losgehen. Eine dedizierte Telefonnummer wird für sauberes Routing empfohlen.

Kurzinfo
SchwierigkeitsgradMittel
KategorieMessaging
Unterstützte Funktionen5 / 6

WhatsApp Unterstützte Funktionen

Textnachrichten

Unterstützt

Medien & Dateien

Unterstützt

Reaktionen

Unterstützt

Threads

Nicht unterstützt

Sprachnachrichten

Unterstützt

Gruppenchat

Unterstützt

WhatsApp Voraussetzungen

  • Eine dedizierte Telefonnummer für WhatsApp (empfohlen, getrennt von der persönlichen)
  • Node.js 18+ auf Ihrem Server installiert (Bun wird nicht empfohlen)
  • OpenClaw Gateway läuft und ist konfiguriert

WhatsApp Schnelleinrichtung

1

WhatsApp-Kanalkonfiguration hinzufügen

Fügen Sie die WhatsApp-Kanalkonfiguration zu ~/.openclaw/openclaw.json hinzu. Stellen Sie die dmPolicy (allowlist, pairing oder open) und die allowFrom-Liste ein, um zu steuern, wer Ihrem Assistenten Nachrichten senden kann.

2

Login-Befehl ausführen und QR-Code scannen

Führen Sie 'openclaw channels login' in Ihrem Terminal aus. Ein QR-Code wird angezeigt. Scannen Sie ihn mit WhatsApp auf Ihrem Telefon (Einstellungen > Verknüpfte Geräte > Gerät verknüpfen). Anmeldedaten werden unter ~/.openclaw/credentials/whatsapp/ gespeichert.

3

Testnachricht senden

Senden Sie eine Direktnachricht an Ihre WhatsApp-Nummer von einem anderen Telefon. Bei Verwendung der Allowlist-Richtlinie stellen Sie sicher, dass die Nummer des Absenders in der allowFrom-Liste steht. Bei der Standard-Pairing-Richtlinie genehmigen Sie den Absender über 'openclaw pairing approve whatsapp <code>'.

WhatsApp Konfigurationsbeispiel

config.json
{
  "channels": {
    "whatsapp": {
      "dmPolicy": "allowlist",
      "allowFrom": ["+15551234567"]
    }
  }
}

WhatsApp Detaillierte Dokumentation

Architekturübersicht

OpenClaw verbindet sich über die Baileys-Bibliothek mit WhatsApp — eine durch Reverse Engineering erstellte Open-Source-Implementierung des WhatsApp Web Multi-Device-Protokolls. Im Gegensatz zur offiziellen WhatsApp Business API (die eine Meta-Genehmigung erfordert und pro Konversation berechnet) verbindet sich Baileys direkt durch Emulation eines verknüpften Geräts. Die Architektur ist unkompliziert: Ihr Telefon bleibt das Hauptgerät, und das Gateway fungiert als verknüpftes Begleitgerät. Nachrichten werden wie gewohnt über WhatsApps Server übertragen — OpenClaw fängt eingehende Nachrichten ab, verarbeitet sie mit Ihrer KI und sendet die Antworten zurück.
Da die Verbindung telefonbasiert ist, muss Ihr Telefon online bleiben. Wenn Ihr Telefon länger als ~14 Tage offline ist, wird WhatsApp die Sitzung trennen.
Baileys unterstützt Multi-Device nativ — Sie können bis zu 4 verknüpfte Geräte pro Telefonnummer haben, und das Gateway zählt als eines davon.

Telefonnummer-Einrichtung

Eine dedizierte Telefonnummer wird dringend empfohlen. Obwohl Sie Ihre persönliche Nummer verwenden können, führt das Mischen von persönlichen und Bot-Konversationen zu Routing-Verwirrung und kann Ihre Kontakte stören. Sie benötigen eine echte Telefonnummer, die SMS oder Sprachanrufe für die erste WhatsApp-Registrierung empfangen kann. Nach der Registrierung muss die Nummer nur auf einem Telefon mit installiertem WhatsApp aktiv bleiben.
openclaw.json
{
  "channels": {
    "whatsapp": {
      "accounts": {
        "default": {
          "phone": "+15551234567"
        }
      }
    }
  }
}
Vermeiden Sie VoIP-Nummern (z.B. TextNow, Google Voice, kostenlose SMS-Dienste) — WhatsApp sperrt häufig VoIP-registrierte Konten. Verwenden Sie eine echte SIM-Karte, Prepaid-SIM oder eine dedizierte eSIM für beste Zuverlässigkeit.

Login & Anmeldedaten

Nach der Konfiguration Ihres Kanals müssen Sie Ihr Telefon mit dem Gateway koppeln. Führen Sie den Login-Befehl aus, und ein QR-Code erscheint in Ihrem Terminal. Scannen Sie ihn mit WhatsApp auf Ihrem Telefon (Einstellungen → Verknüpfte Geräte → Gerät verknüpfen). Anmeldedaten werden automatisch unter ~/.openclaw/credentials/whatsapp/<accountId>/creds.json gespeichert und bleiben nach Neustarts erhalten. Ein Backup (creds.json.bak) wird automatisch für die Wiederherstellung bei Beschädigung erstellt. Sie müssen den QR-Code nur einmal scannen, es sei denn, die Sitzung läuft ab oder wird manuell widerrufen.
Terminal
openclaw channels login whatsapp
Wenn Sie ohne Display (headless) arbeiten, verwenden Sie das Flag --qr-terminal, um den QR-Code als ASCII-Art direkt in Ihrem Terminal darzustellen.

DM-Richtlinien

DM-Richtlinien (Direktnachrichten) steuern, wer mit Ihrem KI-Assistenten interagieren kann. OpenClaw unterstützt vier Richtlinien: • pairing (Standard) — Neue Kontakte müssen einen Pairing-Ablauf durchlaufen. Sie senden eine Nachricht, erhalten einen Pairing-Code, und Sie genehmigen oder lehnen über die CLI ab. Nach der Genehmigung können sie frei chatten. • allowlist — Nur Telefonnummern, die explizit in allowFrom aufgelistet sind, können dem Bot Nachrichten senden. Alle anderen werden stillschweigend ignoriert. • open — Jeder, der die Nummer anschreibt, erhält eine Antwort. In der Produktion mit Vorsicht verwenden. • disabled — Die DM-Verarbeitung ist vollständig deaktiviert. Der Bot antwortet auf keine Direktnachrichten.
openclaw.json
{
  "channels": {
    "whatsapp": {
      "dmPolicy": "pairing",
      "allowFrom": ["+15551234567", "+15559876543"]
    }
  }
}

Gruppenchat-Verwaltung

OpenClaw kann an WhatsApp-Gruppenchats teilnehmen. Standardmäßig ist die Gruppenunterstützung deaktiviert, um unerwünschte KI-Antworten in gemeinsamen Konversationen zu vermeiden. Wenn aktiviert, antwortet der Bot nur, wenn er namentlich erwähnt oder durch ein konfiguriertes Schlüsselwort ausgelöst wird. Sie können steuern, welche Gruppen aktiv sind und wie der Bot aktiviert wird.
openclaw.json
{
  "channels": {
    "whatsapp": {
      "groupPolicy": "allowlist",
      "groupActivation": "mention",
      "groupAllowList": ["group-jid-1", "group-jid-2"]
    }
  }
}
Gruppen-JIDs finden Sie in den Gateway-Logs, wenn eine Gruppennachricht empfangen wird. Suchen Sie nach dem 'from'-Feld in der Nachrichtennutzlast.

Lesebestätigungen

Sie können konfigurieren, ob OpenClaw Lesebestätigungen (blaue Häkchen) sendet, wenn eine Nachricht verarbeitet wird. Standardmäßig werden Lesebestätigungen gesendet, um ein natürliches Gesprächsgefühl aufrechtzuerhalten. Das Deaktivieren von Lesebestätigungen kann nützlich sein, wenn der Bot weniger "aktiv" erscheinen soll oder wenn Sie Nachrichten asynchron verarbeiten.
openclaw.json
{
  "channels": {
    "whatsapp": {
      "sendReadReceipts": true
    }
  }
}

Bestätigungsreaktionen

OpenClaw kann auf eingehende Nachrichten mit einem Emoji reagieren, um den Empfang zu bestätigen, bevor die KI-Antwort bereit ist. Dies ist nützlich, da KI-Antworten mehrere Sekunden dauern können, und die Reaktion dem Absender mitteilt, dass seine Nachricht empfangen wurde. Sie können verschiedene Reaktionen für Direktnachrichten und Gruppenchats konfigurieren oder die Funktion vollständig deaktivieren.
openclaw.json
{
  "channels": {
    "whatsapp": {
      "ackReaction": {
        "emoji": "👀",
        "direct": true,
        "group": true
      }
    }
  }
}

Ausgehende Nachrichten & Medien

OpenClaw unterstützt das Senden von Text, Bildern, Dokumenten, Audio und Video über WhatsApp. Mediendateien werden automatisch verarbeitet — das Gateway lädt sie auf WhatsApps Server hoch und sendet den entsprechenden Nachrichtentyp. Bei langen KI-Antworten wird der Text automatisch aufgeteilt, um innerhalb der WhatsApp-Nachrichtengrößenbeschränkungen zu bleiben. Sie können die Aufteilungsgröße und das Verhalten konfigurieren.
Das Standard-Limit für eingehende Medien beträgt 50 MB (mediaMaxMb). Das Limit für ausgehende Medien beträgt 5 MB (agents.defaults.mediaMaxMb), mit automatischer JPEG-Optimierung und Größenänderung bei übergroßen Bildern.

Ratenlimits & Sendelimits

WhatsApp erzwingt Ratenlimits für verknüpfte Geräte. Obwohl es keine offiziell veröffentlichten Limits für persönliche Konten gibt, kann zu schnelles und zu häufiges Senden von Nachrichten vorübergehende Sperren oder Kontobeschränkungen auslösen. OpenClaw enthält eingebaute Ratenbegrenzung zum Schutz Ihres Kontos. Die Standardeinstellungen sind konservativ und für die meisten Anwendungsfälle geeignet.
openclaw.json
{
  "channels": {
    "whatsapp": {
      "textChunkLimit": 5,
      "mediaMaxMb": 50
    }
  }
}

Warum nicht Twilio / WhatsApp Business API?

Sie fragen sich vielleicht, warum OpenClaw Baileys anstelle der offiziellen WhatsApp Business API (über Twilio, MessageBird usw.) verwendet. Hier sind die Gründe: • Kosten — Die Business API berechnet pro Konversation (etwa 0,005–0,08 $ pro Nachricht je nach Region). Für den persönlichen Gebrauch oder kleine Teams summiert sich das schnell. Baileys ist kostenlos. • Genehmigung — Die Business API erfordert Meta-Verifizierung, ein registriertes Unternehmen und Genehmigung für Nachrichtenvorlagen. Baileys funktioniert mit jedem persönlichen WhatsApp-Konto. • Flexibilität — Die Business API hat strenge Vorlagenanforderungen für ausgehende Nachrichten und ein 24-Stunden-Konversationsfenster. Baileys hat keine solchen Einschränkungen. • Selbst gehostet — Mit Baileys läuft alles auf Ihrem Server. Keine Drittanbieter-API-Anbieter sehen Ihre Nachrichten. Der Kompromiss liegt in der Zuverlässigkeit: Die Business API wird offiziell unterstützt, während Baileys auf Reverse Engineering basiert und bei Protokolländerungen von WhatsApp ausfallen könnte. Für die meisten selbst gehosteten Anwendungsfälle lohnt sich dieser Kompromiss.

WhatsApp Konfigurationsreferenz

dmPolicy
Type: stringDefault: "pairing"

Steuert, wer dem Bot DMs senden kann. Optionen: pairing, allowlist, open, disabled

selfChatMode
Type: stringDefault: "disabled"

Wie Nachrichten an sich selbst behandelt werden. Optionen: disabled, ai, note

allowFrom
Type: string[]Default: []

Telefonnummern, die dem Bot Nachrichten senden dürfen (wenn dmPolicy auf allowlist steht)

sendReadReceipts
Type: booleanDefault: true

Ob blaue Häkchen-Lesebestätigungen bei der Nachrichtenverarbeitung gesendet werden

ackReaction.emoji
Type: stringDefault: "👀"

Emoji zur Bestätigung des Nachrichtenempfangs

ackReaction.direct
Type: booleanDefault: true

Bestätigungsreaktion in Direktnachrichten senden

ackReaction.group
Type: booleanDefault: true

Bestätigungsreaktion in Gruppennachrichten senden

textChunkLimit
Type: numberDefault: 5

Maximale Anzahl von Textblöcken pro KI-Antwort

mediaMaxMb
Type: numberDefault: 50

Maximale eingehende Mediendateigröße in Megabyte. Ausgehendes Limit wird durch agents.defaults.mediaMaxMb gesteuert (Standard 5 MB)

groupPolicy
Type: stringDefault: "disabled"

Gruppenchat-Richtlinie. Optionen: disabled, allowlist, open

groupActivation
Type: stringDefault: "mention"

Wie der Bot in Gruppen ausgelöst wird. Optionen: mention, always

historyLimit
Type: numberDefault: 50

Anzahl der letzten Nachrichten, die als KI-Kontext einbezogen werden

chunkMode
Type: stringDefault: "split"

Wie lange Antworten behandelt werden. Optionen: split, newline, truncate

messagePrefix
Type: stringDefault: ""

Optionales Präfix, das allen ausgehenden Nachrichten vorangestellt wird

accounts.<id>.*
Type: objectDefault: {}

Einstellungen pro Konto (Telefonnummer, Anmeldedatenpfad, Überschreibungen)

WhatsApp Häufig gestellte Fragen

WhatsApp Fehlerbehebung

WhatsApp zeigt 'Nicht verknüpft' oder der QR-Code lässt sich nicht scannen

Die Sitzungsanmeldedaten sind möglicherweise abgelaufen, oder die WhatsApp-App auf dem Telefon wurde aktualisiert und hat die verknüpfte Sitzung ungültig gemacht.

Löschen Sie den Anmeldedaten-Ordner unter ~/.openclaw/credentials/whatsapp/ und führen Sie 'openclaw channels login whatsapp' erneut aus, um neu zu koppeln. Stellen Sie sicher, dass Ihr Telefon während des QR-Scans eine stabile Internetverbindung hat.
Bot verbindet sich, trennt sich aber wiederholt

Dies passiert normalerweise, wenn das Telefon längere Zeit offline ist oder ein anderes verknüpftes Gerät mit der Gateway-Sitzung in Konflikt steht.

Stellen Sie sicher, dass Ihr Telefon mit dem Internet verbunden bleibt. Prüfen Sie, ob Sie das Limit von 4 verknüpften Geräten nicht überschritten haben. Entfernen Sie unbenutzte verknüpfte Geräte unter WhatsApp-Einstellungen → Verknüpfte Geräte und melden Sie sich dann erneut an.
Nachrichten können nicht gesendet werden (Zeitüberschreitung oder Zustellungsfehler)

Ratenbegrenzung, Netzwerkprobleme oder der Empfänger hat Ihre Nummer blockiert.

Überprüfen Sie die Gateway-Logs auf spezifische Fehlercodes. Wenn Sie Ratenlimit-Fehler sehen, reduzieren Sie Ihre Sendefrequenz. Bei Netzwerkproblemen überprüfen Sie, ob Ihr Server eine stabile Internetverbindung hat. Versuchen Sie, eine manuelle Nachricht von Ihrem Telefon zu senden, um zu bestätigen, dass die Nummer nicht eingeschränkt ist.