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 Website unter mattermost.com für Produktdetails und Downloads.
Plugin erforderlich¶
Mattermost wird als Plugin ausgeliefert und ist nicht im Core-Install enthalten.
Installation per CLI (npm-Registry):
openclaw plugins install @openclaw/mattermost
Lokales Checkout (bei Ausführung aus einem Git-Repo):
openclaw plugins install ./extensions/mattermost
Wenn Sie Mattermost während der Konfiguration/des Onboardings auswählen und ein Git-Checkout erkannt wird, bietet OpenClaw den lokalen Installationspfad automatisch an.
Details: Plugins
Schnellstart¶
- Installieren Sie das Mattermost-Plugin.
- Erstellen Sie ein Mattermost-Bot-Konto und kopieren Sie den Bot-Token.
- Kopieren Sie die Mattermost-Basis-URL (z. B.
https://chat.example.com). - Konfigurieren Sie OpenClaw und starten Sie das Gateway.
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 verwenden.
Chat-Modi¶
Mattermost antwortet automatisch auf DMs. Das Verhalten in Kanälen wird über chatmode gesteuert:
oncall(Standard): antwortet nur, wenn in Kanälen per @ erwähnt.onmessage: antwortet auf jede Nachricht im Kanal.onchar: antwortet, 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,chatmodewird jedoch bevorzugt.
Zugriffskontrolle (DMs)¶
- Standard:
channels.mattermost.dmPolicy = "pairing"(unbekannte Absender erhalten einen Pairing-Code). - 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ähnung erforderlich). - Allowlist-Absender mit
channels.mattermost.groupAllowFrom(Benutzer-IDs oder@username). - Offene Kanäle:
channels.mattermost.groupPolicy="open"(Erwähnung erforderlich).
Ziele für ausgehende Zustellung¶
Verwenden 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 (über die Mattermost-API aufgelöst)
Reine IDs werden als Kanäle behandelt.
Mehrere Konten¶
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: Stellen Sie sicher, dass der Bot im Kanal ist und erwähnt wird (oncall), verwenden Sie ein Trigger-Präfix (onchar) oder setzen Sie
chatmode: "onmessage". - Authentifizierungsfehler: Prüfen Sie den Bot-Token, die Basis-URL und ob das Konto aktiviert ist.
- Probleme mit mehreren Konten: Umgebungsvariablen gelten nur für das
default-Konto.