
OpenClaw Integration with Nextcloud Talk (plugin)

By Sarah Jenkins


By Sarah Jenkins
Status: supported via plugin (webhook bot). Direct messages, rooms, reactions, and markdown messages are supported.
Nextcloud Talk ships as a plugin and is not bundled with the core install.
Install via CLI (npm registry):
openclaw plugins install @openclaw/nextcloud-talkLocal checkout (when running from a git repo):
openclaw plugins install ./path/to/local/nextcloud-talk-pluginIf you choose Nextcloud Talk during setup and a git checkout is detected, OpenClaw will offer the local install path automatically.
Minimal config:
{
channels: {
"nextcloud-talk": {
enabled: true,
baseUrl: "https://cloud.example.com",
botSecret: "shared-secret",
dmPolicy: "pairing",
},
},
}webhookPublicUrl if behind a proxy.apiUser + apiPassword to enable room-type lookups (otherwise DMs are treated as rooms).channels.nextcloud-talk.dmPolicy = "pairing". Unknown senders get a pairing code.channels.nextcloud-talk.dmPolicy="open" plus channels.nextcloud-talk.allowFrom=["*"].allowFrom matches Nextcloud user IDs only; display names are ignored.channels.nextcloud-talk.groupPolicy = "allowlist" (mention-gated).channels.nextcloud-talk.rooms:{
channels: {
"nextcloud-talk": {
rooms: {
"room-token": { requireMention: true },
},
},
},
}channels.nextcloud-talk.groupPolicy="disabled".| Feature | Status |
|---|---|
| Direct messages | Supported |
| Rooms | Supported |
| Threads | Not supported |
| Media | URL-only |
| Reactions | Supported |
| Native commands | Not supported |
Provider options:
channels.nextcloud-talk.enabled: enable/disable channel startup.channels.nextcloud-talk.baseUrl: Nextcloud instance URL.channels.nextcloud-talk.botSecret: bot shared secret.channels.nextcloud-talk.botSecretFile: regular-file secret path. Symlinks are rejected.channels.nextcloud-talk.apiUser: API user for room lookups (DM detection).channels.nextcloud-talk.apiPassword: API/app password for room lookups.channels.nextcloud-talk.apiPasswordFile: API password file path.channels.nextcloud-talk.webhookPort: webhook listener port (default: 8788).channels.nextcloud-talk.webhookHost: webhook host (default: 0.0.0.0).channels.nextcloud-talk.webhookPath: webhook path (default: /nextcloud-talk-webhook).channels.nextcloud-talk.webhookPublicUrl: externally reachable webhook URL.channels.nextcloud-talk.dmPolicy: pairing | allowlist | open | disabled.channels.nextcloud-talk.allowFrom: DM allowlist (user IDs). open requires "*".channels.nextcloud-talk.groupPolicy: allowlist | open | disabled.channels.nextcloud-talk.groupAllowFrom: group allowlist (user IDs).channels.nextcloud-talk.rooms: per-room settings and allowlist.channels.nextcloud-talk.historyLimit: group history limit (0 disables).channels.nextcloud-talk.dmHistoryLimit: DM history limit (0 disables).channels.nextcloud-talk.dms: per-DM overrides (historyLimit).channels.nextcloud-talk.textChunkLimit: outbound text chunk size (chars).channels.nextcloud-talk.chunkMode: length (default) or newline to split on blank lines (paragraph boundaries) before length chunking.channels.nextcloud-talk.blockStreaming: disable block streaming for this channel.channels.nextcloud-talk.blockStreamingCoalesce: block streaming coalesce tuning.channels.nextcloud-talk.mediaMaxMb: inbound media cap (MB).About the author

Sarah Jenkins is a seasoned OpenClaw developer with a strong focus on optimizing high-performance computing solutions. Her work primarily involves crafting efficient parallel algorithms and enhancing GPU acceleration for complex scientific simulations. Jenkins is renowned for her meticulous attention to detail and her ability to translate intricate theoretical concepts into practical, robust OpenClaw implementations.

by Sarah Jenkins
by Sarah Jenkins