OpenClaw Signal Kanal
Verbinden Sie OpenClaw mit Signal ueber signal-cli — eine Open-Source-Befehlszeilenschnittstelle eines Drittanbieters fuer das Signal-Protokoll. Diese Integration bietet datenschutzorientiertes KI-Messaging mit vollstaendiger Ende-zu-Ende-Verschluesselung. OpenClaw kommuniziert mit einem signal-cli-Daemon ueber HTTP JSON-RPC und Server-Sent Events, sodass Ihr KI-Assistent Nachrichten auf Signal senden und empfangen kann. Eine dedizierte Telefonnummer ist fuer das Bot-Konto erforderlich.
Signal Unterstützte Funktionen
Textnachrichten
Unterstützt
Medien & Dateien
Unterstützt
Reaktionen
Unterstützt
Threads
Nicht unterstützt
Sprachnachrichten
Nicht unterstützt
Gruppenchat
Unterstützt
Signal Voraussetzungen
- Eine dedizierte Telefonnummer fuer das Signal-Bot-Konto (getrennt von Ihrer persoenlichen Nummer)
- Java Runtime Environment (JRE 25+) auf Ihrem Server installiert
- signal-cli installiert und in Ihrem PATH verfuegbar
- OpenClaw Gateway laeuft und ist konfiguriert
- Ein bestehendes Signal-Konto zum Verknuepfen des Bots (oder eine Neuregistrierung)
Signal Schnelleinrichtung
signal-cli installieren
Laden Sie signal-cli vom offiziellen GitHub-Repository herunter und installieren Sie es. Es erfordert Java 25 oder hoeher. Ueberpruefen Sie die Installation, indem Sie 'signal-cli --version' in Ihrem Terminal ausfuehren.
Signal-Konto verknuepfen oder registrieren
Verknuepfen Sie signal-cli mit einem bestehenden Signal-Konto, indem Sie 'signal-cli link -n "OpenClaw"' ausfuehren und den QR-Code von einem anderen Geraet scannen. Alternativ registrieren Sie ein neues Konto mit 'signal-cli -a +15551234567 register'. Verwenden Sie eine dedizierte Nummer — die Ausfuehrung auf Ihrem persoenlichen Konto verursacht Selbstnachrichten-Schleifen.
Signal-Kanalkonfiguration hinzufuegen
Fuegen Sie die Signal-Kanalkonfiguration zu ~/.openclaw/openclaw.json hinzu. Setzen Sie das Feld 'account' auf die E.164-Telefonnummer Ihres Bots und konfigurieren Sie die dmPolicy (pairing, allowlist oder open), um zu steuern, wer Ihrem Assistenten Nachrichten senden kann.
Gateway starten und Testnachricht senden
Starten Sie den Gateway-Prozess. OpenClaw startet automatisch den signal-cli-Daemon. Senden Sie eine Nachricht an die Bot-Nummer von einem anderen Signal-Konto. Bei Verwendung der Standard-Pairing-Richtlinie genehmigen Sie den Absender ueber 'openclaw pairing approve signal <code>'.
Signal Konfigurationsbeispiel
{
"channels": {
"signal": {
"enabled": true,
"account": "+15551234567",
"dmPolicy": "pairing"
}
}
}Signal Detaillierte Dokumentation
Architekturuebersicht
Signal-Konto-Einrichtung
{
"channels": {
"signal": {
"account": "+15551234567",
"cliPath": "/usr/local/bin/signal-cli"
}
}
}Externer Daemon-Modus
{
"channels": {
"signal": {
"account": "+15551234567",
"httpUrl": "http://127.0.0.1:8080/api/v1/rpc"
}
}
}DM-Richtlinien
{
"channels": {
"signal": {
"dmPolicy": "allowlist",
"allowFrom": ["+15551234567", "uuid:a1b2c3d4-e5f6-7890-abcd-ef1234567890"]
}
}
}Gruppenchat-Verwaltung
{
"channels": {
"signal": {
"groupPolicy": "open",
"historyLimit": 50
}
}
}Datenschutz & Ende-zu-Ende-Verschluesselung
Reaktionen
{
"channels": {
"signal": {
"reactionLevel": "minimal"
}
}
}Medien & Anhaenge
{
"channels": {
"signal": {
"mediaMaxMb": 8,
"ignoreAttachments": false
}
}
}Tippindikatoren & Lesebestaetigungen
{
"channels": {
"signal": {
"sendReadReceipts": true
}
}
}Text-Aufteilung & Zustellung
{
"channels": {
"signal": {
"textChunkLimit": 4000,
"chunkMode": "newline"
}
}
}Signal Konfigurationsreferenz
| Key | Type | Default | Description |
|---|---|---|---|
| enabled | boolean | true | Signal-Kanal aktivieren oder deaktivieren |
| account | string | "" | Telefonnummer des Bots im E.164-Format (z.B. +15551234567). Erforderlich |
| cliPath | string | "signal-cli" | Pfad zur ausfuehrbaren signal-cli-Datei |
| httpUrl | string | "" | Vollstaendige URL eines externen signal-cli-Daemons. Wenn gesetzt, wird der automatische Start deaktiviert |
| httpHost | string | "127.0.0.1" | Host-Adresse, an die sich der automatisch gestartete signal-cli-Daemon bindet |
| httpPort | number | 8080 | Port, an den sich der automatisch gestartete signal-cli-Daemon bindet |
| autoStart | boolean | true | Ob der signal-cli-Daemon beim Gateway-Start automatisch gestartet werden soll |
| startupTimeoutMs | number | 30000 | Maximale Wartezeit (ms) bis der signal-cli-Daemon verfuegbar wird. Maximal 120000 |
| dmPolicy | string | "pairing" | Steuert, wer dem Bot DMs senden kann. Optionen: pairing, allowlist, open, disabled |
| allowFrom | string[] | [] | Telefonnummern (E.164) oder uuid:<id>-Kennungen, die dem Bot Nachrichten senden duerfen |
| dmHistoryLimit | number | 50 | Anzahl der letzten DM-Nachrichten, die als KI-Kontext pro Konversation einbezogen werden |
| groupPolicy | string | "disabled" | Gruppenchat-Richtlinie. Optionen: disabled, allowlist, open |
| groupAllowFrom | string[] | [] | Telefonnummern oder UUIDs, die den Bot in Gruppen ausloesen duerfen (wenn groupPolicy auf allowlist steht) |
| historyLimit | number | 50 | Maximale Gruppennachrichten, die als KI-Kontext einbezogen werden. Auf 0 setzen zum Deaktivieren |
| sendReadReceipts | boolean | false | Ob Lesebestaetigungs-Signale fuer genehmigte DM-Kontakte weitergeleitet werden |
| textChunkLimit | number | 4000 | Maximale Zeichen pro ausgehender Nachricht vor der Aufteilung |
| chunkMode | string | "length" | Text-Aufteilungsmodus. Optionen: length (harte Aufteilung), newline (absatzorientiert) |
| mediaMaxMb | number | 8 | Maximale Mediendateigroesse in Megabyte fuer ein-/ausgehende Anhaenge |
| ignoreAttachments | boolean | false | Herunterladen eingehender Medienanhaenge ueberspringen |
| ignoreStories | boolean | false | Signal-Story-Ereignisse vollstaendig ignorieren |
| receiveMode | string | "" | Nachrichtenempfangsmodus. Optionen: on-start (beim Start abrufen), manual |
| configWrites | boolean | true | /config-Befehle zur Laufzeitaenderung von Kanaleinstellungen erlauben |
| reactionLevel | string | "ack" | Bot-Reaktionsfaehigkeit. Optionen: off, ack, minimal, extensive |
Signal-Kanal aktivieren oder deaktivieren
Telefonnummer des Bots im E.164-Format (z.B. +15551234567). Erforderlich
Pfad zur ausfuehrbaren signal-cli-Datei
Vollstaendige URL eines externen signal-cli-Daemons. Wenn gesetzt, wird der automatische Start deaktiviert
Host-Adresse, an die sich der automatisch gestartete signal-cli-Daemon bindet
Port, an den sich der automatisch gestartete signal-cli-Daemon bindet
Ob der signal-cli-Daemon beim Gateway-Start automatisch gestartet werden soll
Maximale Wartezeit (ms) bis der signal-cli-Daemon verfuegbar wird. Maximal 120000
Steuert, wer dem Bot DMs senden kann. Optionen: pairing, allowlist, open, disabled
Telefonnummern (E.164) oder uuid:<id>-Kennungen, die dem Bot Nachrichten senden duerfen
Anzahl der letzten DM-Nachrichten, die als KI-Kontext pro Konversation einbezogen werden
Gruppenchat-Richtlinie. Optionen: disabled, allowlist, open
Telefonnummern oder UUIDs, die den Bot in Gruppen ausloesen duerfen (wenn groupPolicy auf allowlist steht)
Maximale Gruppennachrichten, die als KI-Kontext einbezogen werden. Auf 0 setzen zum Deaktivieren
Ob Lesebestaetigungs-Signale fuer genehmigte DM-Kontakte weitergeleitet werden
Maximale Zeichen pro ausgehender Nachricht vor der Aufteilung
Text-Aufteilungsmodus. Optionen: length (harte Aufteilung), newline (absatzorientiert)
Maximale Mediendateigroesse in Megabyte fuer ein-/ausgehende Anhaenge
Herunterladen eingehender Medienanhaenge ueberspringen
Signal-Story-Ereignisse vollstaendig ignorieren
Nachrichtenempfangsmodus. Optionen: on-start (beim Start abrufen), manual
/config-Befehle zur Laufzeitaenderung von Kanaleinstellungen erlauben
Bot-Reaktionsfaehigkeit. Optionen: off, ack, minimal, extensive
Signal Häufig gestellte Fragen
Signal Fehlerbehebung
Java ist nicht installiert oder die installierte Version ist zu alt. signal-cli erfordert Java 25 oder hoeher.
Das Feld account koennte falsch sein, der signal-cli-Daemon laeuft moeglicherweise nicht oder der Absender wurde nicht ueber Pairing genehmigt.
Der Absender befindet sich moeglicherweise nicht in der allowFrom-Liste (bei Verwendung der Allowlist-Richtlinie), oder das Bezeichnerformat des Absenders stimmt nicht ueberein.
groupPolicy ist auf 'disabled' (Standard) gesetzt, oder die Gruppe befindet sich nicht in der Allowlist.
Der signal-cli-Daemon laeuft nicht, die URL ist falsch oder eine Firewall blockiert die Verbindung.