Mattermost (plugin)¶
Estado: compatible mediante plugin (token de bot + eventos WebSocket). Se admiten canales, grupos y mensajes directos. Mattermost es una plataforma de mensajería de equipo autoalojable; consulte el sitio oficial en mattermost.com para detalles del producto y descargas.
Plugin requerido¶
Mattermost se distribuye como un plugin y no viene incluido con la instalación principal.
Instale mediante la CLI (registro de npm):
openclaw plugins install @openclaw/mattermost
Repositorio local (al ejecutar desde un repositorio git):
openclaw plugins install ./extensions/mattermost
Si elige Mattermost durante la configuración/incorporación y se detecta un checkout de git, OpenClaw ofrecerá automáticamente la ruta de instalación local.
Detalles: Plugins
Configuración rápida¶
- Instale el plugin de Mattermost.
- Cree una cuenta de bot de Mattermost y copie el token del bot.
- Copie la URL base de Mattermost (p. ej.,
https://chat.example.com). - Configure OpenClaw e inicie el Gateway.
Configuración mínima:
{
channels: {
mattermost: {
enabled: true,
botToken: "mm-token",
baseUrl: "https://chat.example.com",
dmPolicy: "pairing",
},
},
}
Variables de entorno (cuenta predeterminada)¶
Establézcalas en el host del Gateway si prefiere variables de entorno:
MATTERMOST_BOT_TOKEN=...MATTERMOST_URL=https://chat.example.com
Las variables de entorno se aplican solo a la cuenta predeterminada (default). Otras cuentas deben usar valores de configuración.
Modos de chat¶
Mattermost responde a mensajes directos automáticamente. El comportamiento en canales se controla con chatmode:
oncall(predeterminado): responde solo cuando se le @menciona en los canales.onmessage: responde a cada mensaje del canal.onchar: responde cuando un mensaje comienza con un prefijo de activación.
Ejemplo de configuración:
{
channels: {
mattermost: {
chatmode: "onchar",
oncharPrefixes: [">", "!"],
},
},
}
Notas:
oncharaún responde a @menciones explícitas.channels.mattermost.requireMentionse respeta para configuraciones heredadas, pero se prefierechatmode.
Control de acceso (mensajes directos)¶
- Predeterminado:
channels.mattermost.dmPolicy = "pairing"(los remitentes desconocidos reciben un código de emparejamiento). - Aprobar mediante:
openclaw pairing list mattermostopenclaw pairing approve mattermost <CODE>- Mensajes directos públicos:
channels.mattermost.dmPolicy="open"máschannels.mattermost.allowFrom=["*"].
Canales (grupos)¶
- Predeterminado:
channels.mattermost.groupPolicy = "allowlist"(restringido por mención). - Agregue remitentes a la lista de permitidos con
channels.mattermost.groupAllowFrom(IDs de usuario o@username). - Canales abiertos:
channels.mattermost.groupPolicy="open"(restringido por mención).
Destinos para la entrega saliente¶
Use estos formatos de destino con openclaw message send o cron/webhooks:
channel:<id>para un canaluser:<id>para un mensaje directo@usernamepara un mensaje directo (resuelto mediante la API de Mattermost)
Los IDs simples se tratan como canales.
Multicuenta¶
Mattermost admite múltiples cuentas bajo 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" },
},
},
},
}
Solución de problemas¶
- No hay respuestas en los canales: asegúrese de que el bot esté en el canal y menciónelo (oncall), use un prefijo de activación (onchar) o establezca
chatmode: "onmessage". - Errores de autenticación: verifique el token del bot, la URL base y si la cuenta está habilitada.
- Problemas de multicuenta: las variables de entorno solo se aplican a la cuenta
default.