---
read_when:
    - أنت توصل ناقل ضمان الجودة الاصطناعي بتشغيل اختبار محلي أو اختبار في التكامل المستمر
    - تحتاج إلى واجهة تكوين qa-channel المضمّنة
    - أنت تعمل على تحسين أتمتة ضمان الجودة من البداية إلى النهاية
summary: Plugin قناة اصطناعية من فئة Slack لسيناريوهات ضمان جودة OpenClaw الحتمية
title: قناة ضمان الجودة
x-i18n:
    generated_at: "2026-05-10T19:23:52Z"
    model: gpt-5.5
    provider: openai
    source_hash: 8f28962032bc5f6b228de731ae6bd9a22831604b506b7073aeffba19ac22e0e8
    source_path: channels/qa-channel.md
    workflow: 16
---

`qa-channel` هو نقل رسائل اصطناعي مضمّن من أجل ضمان جودة OpenClaw الآلي. ليس قناة إنتاجية - فهو موجود لاختبار حد Plugin القناة نفسه المستخدم بواسطة وسائل النقل الحقيقية مع إبقاء الحالة حتمية وقابلة للفحص بالكامل.

## ما الذي يفعله

- قواعد أهداف من فئة Slack:
  - `dm:<user>`
  - `channel:<room>`
  - `group:<room>`
  - `thread:<room>/<thread>`
- تُعرض محادثات `channel:` و`group:` المشتركة للوكلاء كدورات غرف مجموعة/قناة، لذا فهي تختبر سياسة التوجيه نفسها للردود المرئية وأداة الرسائل المستخدمة بواسطة Discord وSlack وTelegram ووسائل النقل المشابهة.
- ناقل اصطناعي مدعوم بـ HTTP لحقن الرسائل الواردة، والتقاط النصوص الصادرة، وإنشاء السلاسل، والتفاعلات، والتعديلات، والحذف، وإجراءات البحث/القراءة.
- مشغّل فحص ذاتي من جانب المضيف يكتب تقرير Markdown إلى `.artifacts/qa-e2e/`.

## الإعدادات

```json
{
  "channels": {
    "qa-channel": {
      "baseUrl": "http://127.0.0.1:43123",
      "botUserId": "openclaw",
      "botDisplayName": "OpenClaw QA",
      "allowFrom": ["*"],
      "pollTimeoutMs": 1000
    }
  }
}
```

مفاتيح الحساب:

- `enabled` - مفتاح التفعيل الرئيسي لهذا الحساب.
- `name` - تسمية عرض اختيارية.
- `baseUrl` - عنوان URL للناقل الاصطناعي.
- `botUserId` - معرّف مستخدم البوت بأسلوب Matrix المستخدم في قواعد الهدف.
- `botDisplayName` - اسم العرض للرسائل الصادرة.
- `pollTimeoutMs` - نافذة انتظار الاستطلاع الطويل. عدد صحيح بين 100 و30000.
- `allowFrom` - قائمة سماح للمرسلين (معرّفات المستخدمين أو `"*"`). تستخدم الرسائل المباشرة وسياسة المجموعات المدرجة في قائمة السماح معرّفات المرسلين الاصطناعية هذه.
- `groupPolicy` - سياسة الغرف المشتركة: `"open"` (الافتراضي)، أو `"allowlist"`، أو `"disabled"`.
- `groupAllowFrom` - قائمة سماح اختيارية لمرسلي الغرف المشتركة. عند حذفها ضمن `"allowlist"`، تعود QA Channel إلى `allowFrom`.
- `groups.<room>.requireMention` - طلب ذكر البوت قبل الرد في غرفة مجموعة/قناة محددة. يعيّن `groups."*"` القيمة الافتراضية.
- `defaultTo` - الهدف الاحتياطي عند عدم توفير هدف.
- `actions.messages` / `actions.reactions` / `actions.search` / `actions.threads` - تقييد الأدوات لكل إجراء.

مفاتيح الحسابات المتعددة في المستوى الأعلى:

- `accounts` - سجل للتجاوزات المسماة لكل حساب، مفهرس بمعرّف الحساب.
- `defaultAccount` - معرّف الحساب المفضّل عند تكوين عدة حسابات.

## المشغّلات

الفحص الذاتي من جانب المضيف (يكتب تقرير Markdown ضمن `.artifacts/qa-e2e/`):

```bash
pnpm qa:e2e
```

يمر هذا عبر `qa-lab`، ويبدأ ناقل QA الموجود داخل المستودع، ويشغّل شريحة وقت تشغيل `qa-channel` المضمّنة، ثم يجري فحصًا ذاتيًا حتميًا.

مجموعة السيناريوهات الكاملة المدعومة بالمستودع:

```bash
pnpm openclaw qa suite
```

تشغّل السيناريوهات بالتوازي مقابل مسار QA Gateway. راجع [نظرة عامة على QA](/ar/concepts/qa-e2e-automation) للاطلاع على السيناريوهات، والملفات الشخصية، وأوضاع المزوّد.

موقع QA المدعوم بـ Docker (Gateway + واجهة مصحّح QA Lab في حزمة واحدة):

```bash
pnpm qa:lab:up
```

يبني موقع QA، ويبدأ Gateway المدعوم بـ Docker + حزمة QA Lab، ويطبع عنوان URL لـ QA Lab. من هناك يمكنك اختيار السيناريوهات، واختيار مسار النموذج، وتشغيل عمليات فردية، ومشاهدة النتائج مباشرة. مصحّح QA Lab منفصل عن حزمة واجهة Control المشحونة.

## ذو صلة

- [نظرة عامة على QA](/ar/concepts/qa-e2e-automation) - المكدس العام، ومحوّلات النقل، وتأليف السيناريوهات
- [Matrix QA](/ar/concepts/qa-matrix) - مثال لمشغّل نقل مباشر يقود قناة حقيقية
- [الاقتران](/ar/channels/pairing)
- [المجموعات](/ar/channels/groups)
- [نظرة عامة على القنوات](/ar/channels)
