Mattermost (Plugin)
Status: unterstützt über Plugin (Bot-Token + WebSocket-Events). Kanäle, Gruppen und DMs werden unterstützt. Mattermost ist eine selbst hostbare Team-Messaging-Plattform; siehe die offizielle Seite unter mattermost.com für Produktdetails und Downloads.
Plugin erforderlich
Mattermost wird als Plugin ausgeliefert und ist nicht im Core-Install enthalten. Installation über CLI (npm-Registry):
openclaw plugins install @openclaw/mattermostLokaler Checkout (bei Ausführung aus einem Git-Repo):
openclaw plugins install ./extensions/mattermostWenn Sie während configure/onboarding Mattermost wählen und ein Git-Checkout erkannt wird, bietet OpenClaw den lokalen Installationspfad automatisch an. Details: Plugins
Schnelleinrichtung
- Mattermost-Plugin installieren.
- Mattermost-Bot-Konto erstellen und den Bot-Token kopieren.
- Base-URL von Mattermost kopieren (z. B.
https://chat.example.com). - OpenClaw konfigurieren und Gateway starten.
Minimale Konfiguration:
{
channels: {
mattermost: {
enabled: true,
botToken: "mm-token",
baseUrl: "https://chat.example.com",
dmPolicy: "pairing"
}
}
}Umgebungsvariablen (Standardkonto)
Setzen Sie diese auf dem Gateway-Host, wenn Sie Umgebungsvariablen bevorzugen:
MATTERMOST_BOT_TOKEN=...MATTERMOST_URL=https://chat.example.com
Umgebungsvariablen gelten nur für das Standard-Konto (default). Andere Konten müssen Konfigurationswerte nutzen.
Chat-Modi
Mattermost antwortet auf DMs automatisch. Das Kanalverhalten wird durch chatmode gesteuert:
oncall(Standard): nur antworten, wenn im Kanal @erwähnt.onmessage: auf jede Kanalnachricht antworten.onchar: antworten, wenn eine Nachricht mit einem Trigger-Präfix beginnt.
Konfigurationsbeispiel:
{
channels: {
mattermost: {
chatmode: "onchar",
oncharPrefixes: [">", "!"]
}
}
}Hinweise:
oncharreagiert weiterhin auf explizite @Erwähnungen.channels.mattermost.requireMentionwird für Legacy-Konfigurationen berücksichtigt, aberchatmodeist bevorzugt.
Zugriffskontrolle (DMs)
- Standard:
channels.mattermost.dmPolicy = "pairing"(unbekannte Absender erhalten einen Kopplungscode). - Freigabe über:
openclaw pairing list mattermostopenclaw pairing approve mattermost <CODE>
- Öffentliche DMs:
channels.mattermost.dmPolicy="open"pluschannels.mattermost.allowFrom=["*"].
Kanäle (Gruppen)
- Standard:
channels.mattermost.groupPolicy = "allowlist"(erwähnungsgesteuert). - Absender in Zulassen-Liste mit
channels.mattermost.groupAllowFrom(Benutzer-IDs oder@username). - Offene Kanäle:
channels.mattermost.groupPolicy="open"(erwähnungsgesteuert).
Ziele für ausgehende Zustellung
Nutzen Sie diese Zielformate mit openclaw message send oder Cron/Webhooks:
channel:<id>für einen Kanaluser:<id>für eine DM@usernamefür eine DM (wird über die Mattermost-API aufgelöst)
Bloße IDs werden als Kanäle behandelt.
Mehrkonten
Mattermost unterstützt mehrere Konten unter channels.mattermost.accounts:
{
channels: {
mattermost: {
accounts: {
default: { name: "Primary", botToken: "mm-token", baseUrl: "https://chat.example.com" },
alerts: { name: "Alerts", botToken: "mm-token-2", baseUrl: "https://alerts.example.com" }
}
}
}
}Fehlerbehebung
- Keine Antworten in Kanälen: sicherstellen, dass der Bot im Kanal ist und ihn @erwähnen (oncall), Trigger-Präfix nutzen (onchar) oder
chatmode: "onmessage"setzen. - Auth-Fehler: Bot-Token, Base-URL und ob das Konto aktiviert ist prüfen.
- Mehrkonten-Probleme: Umgebungsvariablen gelten nur für das
default-Konto.