Mattermost (Plugin)

مدعوم عبر plugin (رمز بوت + أحداث WebSocket). القنوات والمجموعات والرسائل المباشرة مدعومة.

Mattermost منصة مراسلة فرق

منصة قابلة للاستضافة الذاتية. للمزيد من المعلومات، راجع mattermost.com

Plugin مطلوب

يتم شحن Mattermost كـ plugin ولا يأتي مجمعًا مع التثبيت الأساسي.

openclaw plugins install @openclaw/mattermost

الإعداد السريع

  1. قم بتثبيت plugin Mattermost
  2. أنشئ حساب بوت Mattermost وانسخ رمز البوت
  3. انسخ عنوان URL الأساسي (مثل https://chat.example.com)
  4. قم بتكوين OpenClaw وابدأ Gateway

التكوين الأدنى

{
  channels: {
    mattermost: {
      enabled: true,
      botToken: "mm-token",
      baseUrl: "https://chat.example.com",
      dmPolicy: "pairing",
    },
  },
}

متغيرات البيئة

قم بتعيين هذه على مضيف Gateway إذا كنت تفضل متغيرات البيئة:

MATTERMOST_BOT_TOKEN=...
MATTERMOST_URL=https://chat.example.com

ملاحظة

تنطبق متغيرات البيئة فقط على الحساب الافتراضي. يجب أن تستخدم الحسابات الأخرى قيم التكوين.

أوضاع الدردشة

يستجيب Mattermost للرسائل المباشرة تلقائيًا. يتم التحكم في سلوك القناة بواسطة chatmode:

  • oncall (افتراضي): الرد فقط عند @ الإشارة في القنوات
  • onmessage: الرد على كل رسالة قناة
  • onchar: الرد عندما تبدأ الرسالة برمز تشغيل
{
  channels: {
    mattermost: {
      chatmode: "oncall"  // أو "onmessage" أو "onchar"
    }
  }
}

التحكم في الوصول

الرسائل المباشرة

  • افتراضي: dmPolicy = "pairing"
  • المرسلون غير المعروفين يحصلون على رمز إقران
  • الموافقة عبر: openclaw pairing list mattermost

القنوات (المجموعات)

  • افتراضي: groupPolicy = "allowlist"
  • قائمة السماح للمرسلين مع groupAllowFrom

الأهداف للتوصيل الصادر

استخدم تنسيقات الهدف هذه:

  • channel:<id> لقناة
  • user:<id> لرسالة مباشرة
  • @username لرسالة مباشرة

حسابات متعددة

يدعم Mattermost حسابات متعددة:

{
  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"
        }
      }
    }
  }
}

استكشاف الأخطاء

  • لا ردود في القنوات: تأكد من أن البوت في القناة واذكره، أو استخدم chatmode: "onmessage"
  • أخطاء المصادقة: تحقق من رمز البوت وعنوان URL الأساسي
  • لا أحداث WebSocket: تحقق من سجلات Gateway وتأكد من أن عنوان URL يمكن الوصول إليه