Nextcloud Talk (Plugin)
Status: unterstützt über Plugin (Webhook-Bot). Direktnachrichten, Räume, Reaktionen und Markdown-Nachrichten werden unterstützt.
Plugin erforderlich
Nextcloud Talk wird als Plugin ausgeliefert und ist nicht im Core-Install enthalten. Installation über CLI (npm-Registry):
openclaw plugins install @openclaw/nextcloud-talkLokaler Checkout (bei Ausführung aus einem Git-Repo):
openclaw plugins install ./extensions/nextcloud-talkWenn Sie während configure/onboarding Nextcloud Talk wählen und ein Git-Checkout erkannt wird, bietet OpenClaw den lokalen Installationspfad automatisch an. Details: Plugins
Schnelleinrichtung (Anfänger)
- Nextcloud-Talk-Plugin installieren.
- Auf Ihrem Nextcloud-Server einen Bot erstellen:
./occ talk:bot:install "OpenClaw" "<shared-secret>" "<webhook-url>" --feature reaction- Bot in den Zieleinstellungen des Raums aktivieren.
- OpenClaw konfigurieren:
- Konfig:
channels.nextcloud-talk.baseUrl+channels.nextcloud-talk.botSecret - Oder Umgebung:
NEXTCLOUD_TALK_BOT_SECRET(nur Standardkonto)
- Konfig:
- Gateway neu starten (oder Onboarding abschließen).
Minimale Konfiguration:
{
channels: {
"nextcloud-talk": {
enabled: true,
baseUrl: "https://cloud.example.com",
botSecret: "shared-secret",
dmPolicy: "pairing"
}
}
}Hinweise
- Bots können keine DMs initiieren. Der Benutzer muss den Bot zuerst anschreiben.
- Webhook-URL muss vom Gateway aus erreichbar sein; bei Proxy setzen Sie
webhookPublicUrl. - Medien-Uploads werden von der Bot-API nicht unterstützt; Medien werden als URLs gesendet.
- Das Webhook-Payload unterscheidet nicht zwischen DMs und Räumen; setzen Sie
apiUser+apiPassword, um Raumtyp-Abfragen zu ermöglichen (sonst werden DMs als Räume behandelt).
Zugriffskontrolle (DMs)
- Standard:
channels.nextcloud-talk.dmPolicy = "pairing". Unbekannte Absender erhalten einen Kopplungscode. - Freigabe über:
openclaw pairing list nextcloud-talkopenclaw pairing approve nextcloud-talk <CODE>
- Öffentliche DMs:
channels.nextcloud-talk.dmPolicy="open"pluschannels.nextcloud-talk.allowFrom=["*"].
Räume (Gruppen)
- Standard:
channels.nextcloud-talk.groupPolicy = "allowlist"(erwähnungsgesteuert). - Räume in Zulassen-Liste aufnehmen mit
channels.nextcloud-talk.rooms:
{
channels: {
"nextcloud-talk": {
rooms: {
"room-token": { requireMention: true }
}
}
}
}- Um keine Räume zuzulassen: Zulassen-Liste leer lassen oder
channels.nextcloud-talk.groupPolicy="disabled"setzen.
Funktionen
| Feature | Status |
|---|---|
| Direct messages | Supported |
| Rooms | Supported |
| Threads | Not supported |
| Media | URL-only |
| Reactions | Supported |
| Native commands | Not supported |
Konfigurationsreferenz (Nextcloud Talk)
Vollständige Konfiguration: Konfiguration. Provider-Optionen:
channels.nextcloud-talk.enabled: Kanalstart aktivieren/deaktivieren.channels.nextcloud-talk.baseUrl: Nextcloud-Instanz-URL.channels.nextcloud-talk.botSecret: Bot-Shared-Secret.channels.nextcloud-talk.botSecretFile: Secret-Dateipfad.channels.nextcloud-talk.apiUser: API-Benutzer für Raum-Abfragen (DM-Erkennung).channels.nextcloud-talk.apiPassword: API-/App-Passwort für Raum-Abfragen.channels.nextcloud-talk.apiPasswordFile: API-Passwort-Dateipfad.channels.nextcloud-talk.webhookPort: Webhook-Listener-Port (Standard: 8788).channels.nextcloud-talk.webhookHost: Webhook-Host (Standard: 0.0.0.0).channels.nextcloud-talk.webhookPath: Webhook-Pfad (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-Zulassen-Liste (Benutzer-IDs).openerfordert"*".channels.nextcloud-talk.groupPolicy:allowlist | open | disabled.channels.nextcloud-talk.groupAllowFrom: Gruppen-Zulassen-Liste (Benutzer-IDs).channels.nextcloud-talk.rooms: Einstellungen und Zulassen-Liste pro Raum.channels.nextcloud-talk.historyLimit: Gruppen-Historie-Limit (0 deaktiviert).channels.nextcloud-talk.dmHistoryLimit: DM-Historie-Limit (0 deaktiviert).channels.nextcloud-talk.dms: Pro-DM-Overrides (historyLimit).channels.nextcloud-talk.textChunkLimit: ausgehende Text-Chunk-Größe (Zeichen).channels.nextcloud-talk.chunkMode:length(Standard) odernewlinezum Teilen an Leerzeilen (Absatzgrenzen) vor Längen-Chunking.channels.nextcloud-talk.blockStreaming: Block-Streaming für diesen Kanal deaktivieren.channels.nextcloud-talk.blockStreamingCoalesce: Block-Streaming-Coalesce-Tuning.channels.nextcloud-talk.mediaMaxMb: eingehendes Medien-Limit (MB).
Zuletzt aktualisiert am: