---
read_when:
    - شما در حال متصل‌کردن ترابری مصنوعی تضمین کیفیت به یک اجرای آزمون محلی یا CI هستید
    - به سطح پیکربندی همراهِ qa-channel نیاز دارید
    - در حال بهبود تدریجی خودکارسازی QA سرتاسری هستید
summary: Plugin کانال مصنوعی هم‌ردهٔ Slack برای سناریوهای قطعی تضمین کیفیت OpenClaw
title: کانال تضمین کیفیت
x-i18n:
    generated_at: "2026-05-01T11:42:39Z"
    model: gpt-5.5
    provider: openai
    source_hash: efe057812de1fbc6d89d2b6d5860cd6af4648c3e86913efa3a69267c4e8c57b4
    source_path: channels/qa-channel.md
    workflow: 16
---

`qa-channel` یک انتقال پیام مصنوعیِ بسته‌بندی‌شده برای QA خودکار 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` — بازه انتظار long-poll. عدد صحیح بین 100 و 30000.
- `allowFrom` — فهرست مجاز فرستنده‌ها (شناسه‌های کاربر یا `"*"`).
- `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](/fa/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 UI منتشرشده است.

## مرتبط

- [نمای کلی QA](/fa/concepts/qa-e2e-automation) — پشته کلی، سازگارکننده‌های انتقال، نگارش سناریو
- [QA ماتریسی](/fa/concepts/qa-matrix) — نمونه اجراکننده انتقال زنده که یک کانال واقعی را هدایت می‌کند
- [جفت‌سازی](/fa/channels/pairing)
- [گروه‌ها](/fa/channels/groups)
- [نمای کلی کانال‌ها](/fa/channels)
