Zum Inhalt springen

Nextcloud Talk mit OpenClaw verbinden: Schnelle Anleitung

Kennst du das? Du möchtest deine Workflows automatisieren, aber die Integration in deine selbstgehostete Infrastruktur fühlt sich oft wie Schwerstarbeit an. Besonders bei Messengern wie Nextcloud Talk stolpert man häufig über komplizierte Bot-Setups und lückenhafte Dokumentationen.

Mit OpenClaw wird die Anbindung deines Nextcloud-Servers zum Kinderspiel. In diesem Guide zeige ich dir, wie du das Plugin installierst und deinen Bot startklar machst, damit deine Nachrichten genau dort landen, wo sie gebraucht werden.

Status: Unterstützt via Plugin (Webhook Bot). Direct messages, Räume, Reaktionen und Markdown-Nachrichten werden unterstützt.

Nextcloud Talk wird als Plugin ausgeliefert und ist nicht in der Core-Installation enthalten.

Installation via CLI (npm registry):

Terminal-Fenster
openclaw plugins install @openclaw/nextcloud-talk

Lokaler Checkout (wenn du aus einem Git-Repo arbeitest):

Terminal-Fenster
openclaw plugins install ./path/to/local/nextcloud-talk-plugin

Falls du Nextcloud Talk während des Setups auswählst und ein Git-Checkout erkannt wird, bietet OpenClaw den lokalen Installationspfad automatisch an.

Details: Plugins

  1. Installiere das Nextcloud Talk Plugin.

  2. Erstelle auf deinem Nextcloud-Server einen Bot:

    Terminal-Fenster
    ./occ talk:bot:install "OpenClaw" "<shared-secret>" "<webhook-url>" --feature reaction
  3. Aktiviere den Bot in den Einstellungen des Zielraums.

  4. Konfiguriere OpenClaw:

    • Config: channels.nextcloud-talk.baseUrl + channels.nextcloud-talk.botSecret
    • Oder Env: NEXTCLOUD_TALK_BOT_SECRET (nur für den Default-Account)
  5. Starte das Gateway neu (oder schließe das Setup ab).

Minimale Konfiguration:

{
channels: {
"nextcloud-talk": {
enabled: true,
baseUrl: "https://cloud.example.com",
botSecret: "shared-secret",
dmPolicy: "pairing",
},
},
}
  • Bots können keine DMs initiieren. Der User muss dem Bot zuerst eine Nachricht schreiben.
  • Die Webhook URL muss für das Gateway erreichbar sein; setze webhookPublicUrl, falls du dich hinter einem Proxy befindest.
  • Media Uploads werden von der Bot API nicht unterstützt; Medien werden als URLs gesendet.
  • Die Webhook Payload unterscheidet nicht zwischen DMs und Räumen; setze apiUser + apiPassword, um Raumtyp-Lookups zu aktivieren (andernfalls werden DMs wie Räume behandelt).
  • Standard: channels.nextcloud-talk.dmPolicy = "pairing". Unbekannte Absender erhalten einen Pairing-Code.
  • Bestätigung via:
    • openclaw pairing list nextcloud-talk
    • openclaw pairing approve nextcloud-talk <CODE>
  • Öffentliche DMs: channels.nextcloud-talk.dmPolicy="open" plus channels.nextcloud-talk.allowFrom=["*"].
  • allowFrom gleicht nur Nextcloud User-IDs ab; Display-Namen werden ignoriert.
  • Standard: channels.nextcloud-talk.groupPolicy = "allowlist" (Zugriff nur bei Erwähnung).
  • Räume mit channels.nextcloud-talk.rooms auf die Allowlist setzen:
{
channels: {
"nextcloud-talk": {
rooms: {
"room-token": { requireMention: true },
},
},
},
}
  • Um keine Räume zuzulassen, lass die Allowlist leer oder setze channels.nextcloud-talk.groupPolicy="disabled".
FeatureStatus
Direct messagesUnterstützt
RäumeUnterstützt
ThreadsNicht unterstützt
MedienNur via URL
ReaktionenUnterstützt
Native BefehleNicht unterstützt

Vollständige Konfiguration: Configuration

Provider-Optionen:

  • channels.nextcloud-talk.enabled: Aktiviert/Deaktiviert den Channel beim Start.
  • channels.nextcloud-talk.baseUrl: URL deiner Nextcloud-Instanz.
  • channels.nextcloud-talk.botSecret: Shared Secret des Bots.
  • channels.nextcloud-talk.botSecretFile: Pfad zu einer Datei mit dem Secret. Symlinks werden abgelehnt.
  • channels.nextcloud-talk.apiUser: API-User für Raum-Lookups (DM-Erkennung).
  • channels.nextcloud-talk.apiPassword: API/App-Passwort für Raum-Lookups.
  • channels.nextcloud-talk.apiPasswordFile: Pfad zur API-Passwortdatei.
  • channels.nextcloud-talk.webhookPort: Port des Webhook-Listeners (Standard: 8788).
  • channels.nextcloud-talk.webhookHost: Host des Webhooks (Standard: 0.0.0.0).
  • channels.nextcloud-talk.webhookPath: Pfad des Webhooks (Standard: /nextcloud-talk-webhook).
  • channels.nextcloud-talk.webhookPublicUrl: Extern erreichbare Webhook URL.
  • channels.nextcloud-talk.dmPolicy: pairing | allowlist | open | disabled.
  • channels.nextcloud-talk.allowFrom: DM-Allowlist (User-IDs). open erfordert "*".
  • channels.nextcloud-talk.groupPolicy: allowlist | open | disabled.
  • channels.nextcloud-talk.groupAllowFrom: Gruppen-Allowlist (User-IDs).
  • channels.nextcloud-talk.rooms: Pro-Raum-Einstellungen und Allowlist.
  • channels.nextcloud-talk.historyLimit: Limit für den Gruppenverlauf (0 deaktiviert es).
  • channels.nextcloud-talk.dmHistoryLimit: Limit für den DM-Verlauf (0 deaktiviert es).
  • channels.nextcloud-talk.dms: Pro-DM Overrides (historyLimit).
  • channels.nextcloud-talk.textChunkLimit: Größe ausgehender Text-Chunks (Zeichen).
  • channels.nextcloud-talk.chunkMode: length (Standard) oder newline, um an Leerzeilen (Absatzgrenzen) zu trennen, bevor nach Länge gechunkt wird.
  • channels.nextcloud-talk.blockStreaming: Deaktiviert Block-Streaming für diesen Channel.
  • channels.nextcloud-talk.blockStreamingCoalesce: Tuning für das Zusammenführen von Block-Streaming.
  • channels.nextcloud-talk.mediaMaxMb: Limit für eingehende Medien (MB).

AI Setup Assistant

OpenClaw

OpenClaw Expert

Noch festgefahren?

Wenn diese Seite nicht hilft, frage OpenClaw Expert nach Schritt-fuer-Schritt-Loesungen.