Op deze pagina
Op deze pagina
Developer and self-hosted
Nextcloud Talk
Nextcloud Talk is een downloadbare kanaalplugin (@openclaw/nextcloud-talk) die OpenClaw via een Talk-webhookbot verbindt met een zelfgehoste Nextcloud-instantie. Directe berichten, ruimtes, reacties en markdown-berichten worden ondersteund; media worden als URL's verzonden.
Installeren
Gebruik de kale pakketspecificatie om de huidige officiële releasetag te volgen. Zet alleen een exacte versie vast wanneer je een reproduceerbare installatie nodig hebt.
Vanuit een lokale checkout (ontwikkelworkflows):
Start de Gateway na de installatie opnieuw. Details: Plugins
Snelle configuratie (beginner)
-
Installeer de plugin (hierboven).
-
Maak op je Nextcloud-server een bot:
bash Behoud
--feature response: zonder dit mislukken uitgaande antwoorden met 401. Herstel een bestaande bot met./occ talk:bot:state --feature webhook --feature response --feature reaction <botId> 1. -
Schakel de bot in via de instellingen van de doelruimte.
-
Configureer OpenClaw:
- Configuratie:
channels.nextcloud-talk.baseUrl+channels.nextcloud-talk.botSecret - Of via de omgeving:
NEXTCLOUD_TALK_BOT_SECRET(alleen standaardaccount)
CLI-configuratie (
--url/--tokenzijn aliassen voor de expliciete velden;nc-talkenncwerken als kanaalaliassen):bash Gelijkwaardige expliciete velden:
bash Bestandsgebaseerd geheim:
bash - Configuratie:
-
Start de Gateway opnieuw (of voltooi de configuratie).
Minimale configuratie:
Opmerkingen
- Bots kunnen geen DM's initiëren. De gebruiker moet eerst een bericht naar de bot sturen.
- De webhook-URL moet vanaf de Nextcloud-server bereikbaar zijn; stel
webhookPublicUrlin wanneer de Gateway zich achter een proxy bevindt. Webhookverzoeken worden met het botgeheim via HMAC-SHA256 ondertekend; ongeldige handtekeningen worden geweigerd en beperkt in aanvraagsnelheid. - Media-uploads worden niet ondersteund door de bot-API; uitgaande media worden toegevoegd als een regel met
Attachment: <url>. - De webhookpayload maakt geen onderscheid tussen DM's en ruimtes; stel
apiUser+apiPasswordin om opzoekacties voor het ruimtetype in te schakelen (ongeveer 5 minuten gecachet). Zonder deze instellingen wordt elk gesprek als een ruimte behandeld. - Uitgaande verzoeken lopen via de SSRF-beveiliging. Meld je met
channels.nextcloud-talk.network.dangerouslyAllowPrivateNetwork: trueaan voor een Nextcloud-host op een vertrouwd privé/intern netwerk. - Als
apiUser/apiPasswordenwebhookPublicUrlzijn ingesteld, controleertopenclaw channels statusde bot en waarschuwt het wanneer de functieresponseontbreekt.
Toegangsbeheer (DM's)
- Standaard:
channels.nextcloud-talk.dmPolicy = "pairing". Onbekende afzenders krijgen een koppelingscode. - Goedkeuren via:
openclaw pairing list nextcloud-talkopenclaw pairing approve nextcloud-talk <CODE>
- Openbare DM's:
channels.nextcloud-talk.dmPolicy="open"pluschannels.nextcloud-talk.allowFrom=["*"]. allowFromkomt alleen overeen met Nextcloud-gebruikers-ID's (in kleine letters); weergavenamen worden genegeerd.
Ruimtes (groepen)
- Standaard:
channels.nextcloud-talk.groupPolicy = "allowlist"(vermelding vereist). - Sta ruimtes toe met
channels.nextcloud-talk.rooms, geïndexeerd op ruimtetoken;"*"stelt een standaard met jokerteken in:
- Sleutels per ruimte:
requireMention(standaard true),enabled(false schakelt de ruimte uit),allowFrom(lijst met toegestane afzenders per ruimte),tools(overschrijvingen om tools toe te staan/te weigeren),skills(beperk geladen Skills),systemPrompt. - Houd de lijst met toegestane ruimtes leeg of stel
channels.nextcloud-talk.groupPolicy="disabled"in om geen ruimtes toe te staan.
Mogelijkheden
| Functie | Status |
|---|---|
| Directe berichten | Ondersteund |
| Ruimtes | Ondersteund |
| Threads | Niet ondersteund |
| Media | Alleen URL's |
| Reacties | Ondersteund |
| Systeemeigen opdrachten | Niet ondersteund |
Configuratiereferentie (Nextcloud Talk)
Volledige configuratie: Configuratie
Provideropties:
channels.nextcloud-talk.enabled: opstarten van het kanaal in-/uitschakelen.channels.nextcloud-talk.baseUrl: URL van de Nextcloud-instantie.channels.nextcloud-talk.botSecret: gedeeld botgeheim (tekenreeks of geheime verwijzing).channels.nextcloud-talk.botSecretFile: pad naar een geheim in een regulier bestand. Symbolische koppelingen worden geweigerd.channels.nextcloud-talk.apiUser: API-gebruiker voor het opzoeken van ruimtes (DM-detectie) en de statuscontrole.channels.nextcloud-talk.apiPassword: API-/app-wachtwoord voor het opzoeken van ruimtes.channels.nextcloud-talk.apiPasswordFile: bestandspad van het API-wachtwoord.channels.nextcloud-talk.webhookPort: poort van de webhooklistener (standaard: 8788).channels.nextcloud-talk.webhookHost: webhookhost (standaard: 0.0.0.0).channels.nextcloud-talk.webhookPath: webhookpad (standaard: /nextcloud-talk-webhook).channels.nextcloud-talk.webhookPublicUrl: extern bereikbare webhook-URL.channels.nextcloud-talk.dmPolicy:pairing | allowlist | open | disabled(standaard: koppelen).openvereistallowFrom=["*"].channels.nextcloud-talk.allowFrom: lijst met toegestane DM-gebruikers (gebruikers-ID's).channels.nextcloud-talk.groupPolicy:allowlist | open | disabled(standaard: lijst met toegestane items).channels.nextcloud-talk.groupAllowFrom: lijst met toegestane afzenders in ruimtes (gebruikers-ID's); valt terug opallowFromwanneer niet ingesteld.channels.nextcloud-talk.rooms: instellingen per ruimte en lijst met toegestane ruimtes (zie hierboven).- Naar statische toegangsgroepen voor afzenders kan vanuit
allowFromengroupAllowFromworden verwezen metaccessGroup:<name>. channels.nextcloud-talk.historyLimit: limiet voor groepsgeschiedenis (0 schakelt dit uit).channels.nextcloud-talk.dmHistoryLimit: limiet voor DM-geschiedenis (0 schakelt dit uit).channels.nextcloud-talk.dms: overschrijvingen per DM, geïndexeerd op gebruikers-ID (historyLimit).channels.nextcloud-talk.textChunkLimit: segmentgrootte van uitgaande tekst in tekens (standaard: 4000).channels.nextcloud-talk.streaming.chunkMode:length(standaard) ofnewlineom vóór segmentering op lengte te splitsen op lege regels (alineagrenzen).channels.nextcloud-talk.streaming.block.enabled: blokstreaming voor dit kanaal in- of uitschakelen.channels.nextcloud-talk.streaming.block.coalesce: afstemming voor het samenvoegen van blokstreaming.channels.nextcloud-talk.responsePrefix: voorvoegsel voor uitgaande antwoorden.channels.nextcloud-talk.markdown.tables: weergavemodus voor markdown-tabellen (off | bullets | code | block).channels.nextcloud-talk.mediaMaxMb: limiet voor inkomende media (MB).channels.nextcloud-talk.network.dangerouslyAllowPrivateNetwork: privé/interne Nextcloud-hosts door de SSRF-beveiliging toelaten.channels.nextcloud-talk.accounts.<id>: overschrijvingen per account (dezelfde sleutels);defaultAccountkiest de standaard. OmgevingsvariabelenNEXTCLOUD_TALK_BOT_SECRET/NEXTCLOUD_TALK_API_PASSWORDzijn alleen van toepassing op het standaardaccount.
Gerelateerd
- Overzicht van kanalen — alle ondersteunde kanalen
- Koppelen — DM-authenticatie en koppelingsproces
- Groepen — gedrag van groepschats en vereiste vermeldingen
- Kanaalroutering — sessieroutering voor berichten
- Beveiliging — toegangsmodel en versterking