---
read_when:
    - می‌خواهید پاسخ‌های یک نشست فعال از Telegram به Discord، Slack، Mattermost یا کانال متصل دیگری منتقل شوند
    - شما در حال پیکربندی session.identityLinks برای پیام‌های مستقیم بین‌کانالی هستید
    - دستور /dock اعلام می‌کند که فرستنده پیوند نشده است یا هیچ نشست فعالی وجود ندارد
summary: انتقال مسیر پاسخ یک نشست OpenClaw بین کانال‌های گفت‌وگوی پیوندخورده
title: داک‌کردن کانال
x-i18n:
    generated_at: "2026-04-29T22:41:38Z"
    model: gpt-5.5
    provider: openai
    source_hash: b981cd177ed76194cf18667620a1f9b2f2ba50df42fe203f6f68916971ed6a61
    source_path: concepts/channel-docking.md
    workflow: 16
---

داک‌کردن کانال، انتقال تماس برای یک نشست OpenClaw است.

این کار همان زمینهٔ گفتگو را حفظ می‌کند، اما محل تحویل پاسخ‌های آینده برای
آن نشست را تغییر می‌دهد.

## مثال

Alice می‌تواند در Telegram و Discord به OpenClaw پیام بدهد:

```json5
{
  session: {
    identityLinks: {
      alice: ["telegram:123", "discord:456"],
    },
  },
}
```

اگر Alice این را از Telegram بفرستد:

```text
/dock_discord
```

OpenClaw زمینهٔ نشست فعلی را حفظ می‌کند و مسیر پاسخ را تغییر می‌دهد:

| قبل از داک‌کردن              | بعد از `/dock_discord`       |
| ---------------------------- | --------------------------- |
| پاسخ‌ها به Telegram `123` می‌روند | پاسخ‌ها به Discord `456` می‌روند |

نشست دوباره ساخته نمی‌شود. تاریخچهٔ رونوشت همچنان به همان
نشست متصل می‌ماند.

## چرا از آن استفاده کنیم

وقتی کاری در یک برنامهٔ گفتگو شروع می‌شود اما پاسخ‌های بعدی باید
جای دیگری دریافت شوند، از داک‌کردن استفاده کنید.

جریان رایج:

1. یک وظیفهٔ عامل را از Telegram شروع کنید.
2. به Discord بروید، جایی که کار را هماهنگ می‌کنید.
3. از نشست Telegram، دستور `/dock_discord` را بفرستید.
4. همان نشست OpenClaw را نگه دارید، اما پاسخ‌های آینده را در Discord دریافت کنید.

## پیکربندی لازم

داک‌کردن به `session.identityLinks` نیاز دارد. فرستندهٔ مبدأ و همتای مقصد
باید در یک گروه هویتی یکسان باشند:

```json5
{
  session: {
    identityLinks: {
      alice: ["telegram:123", "discord:456", "slack:U123"],
    },
  },
}
```

مقادیر، شناسه‌های همتا با پیشوند کانال هستند:

| مقدار          | معنی                      |
| -------------- | ---------------------------- |
| `telegram:123` | شناسهٔ فرستندهٔ Telegram یعنی `123`     |
| `discord:456`  | شناسهٔ همتای مستقیم Discord یعنی `456` |
| `slack:U123`   | شناسهٔ کاربر Slack یعنی `U123`         |

کلید کانونی (`alice` در بالا) فقط نام گروه هویتی مشترک است. دستورهای داک
از مقادیر دارای پیشوند کانال استفاده می‌کنند تا ثابت کنند فرستندهٔ مبدأ و
همتای مقصد همان شخص هستند.

## دستورها

دستورهای داک از Pluginهای کانال بارگذاری‌شده‌ای تولید می‌شوند که از
دستورهای بومی پشتیبانی می‌کنند. دستورهای بسته‌بندی‌شدهٔ فعلی:

| کانال مقصد | دستور            | نام مستعار              |
| -------------- | ------------------ | ------------------ |
| Discord        | `/dock-discord`    | `/dock_discord`    |
| Mattermost     | `/dock-mattermost` | `/dock_mattermost` |
| Slack          | `/dock-slack`      | `/dock_slack`      |
| Telegram       | `/dock-telegram`   | `/dock_telegram`   |

نام‌های مستعار دارای زیرخط در سطوح دستور بومی مانند Telegram مفید هستند.

## چه چیزی تغییر می‌کند

داک‌کردن، فیلدهای تحویل نشست فعال را به‌روزرسانی می‌کند:

| فیلد نشست   | مثال بعد از `/dock_discord`            |
| --------------- | ---------------------------------------- |
| `lastChannel`   | `discord`                                |
| `lastTo`        | `456`                                    |
| `lastAccountId` | حساب کانال مقصد، یا `default` |

این فیلدها در محل ذخیرهٔ نشست پایدار می‌شوند و برای تحویل پاسخ‌های بعدی
در همان نشست استفاده می‌شوند.

## چه چیزی تغییر نمی‌کند

داک‌کردن این کارها را انجام نمی‌دهد:

- ایجاد حساب‌های کانال
- اتصال یک ربات جدید Discord، Telegram، Slack، یا Mattermost
- اعطای دسترسی به کاربر
- دور زدن فهرست‌های مجاز کانال یا سیاست‌های پیام مستقیم
- انتقال تاریخچهٔ رونوشت به نشستی دیگر
- واداشتن کاربران نامرتبط به اشتراک‌گذاری یک نشست

این فقط مسیر تحویل نشست فعلی را تغییر می‌دهد.

## عیب‌یابی

**دستور می‌گوید فرستنده پیوند نشده است.**

هم فرستندهٔ فعلی و هم همتای مقصد را به یک گروه
`session.identityLinks` یکسان اضافه کنید. برای مثال، اگر فرستندهٔ Telegram با شناسهٔ `123` باید به همتای Discord با شناسهٔ `456` داک شود، هر دو مقدار `telegram:123` و `discord:456` را درج کنید.

**دستور می‌گوید نشست فعالی وجود ندارد.**

از یک نشست گفتگوی مستقیم موجود داک کنید. دستور به یک ورودی نشست فعال
نیاز دارد تا بتواند مسیر جدید را پایدار کند.

**پاسخ‌ها همچنان به کانال قدیمی می‌روند.**

بررسی کنید که دستور با پیام موفقیت پاسخ داده باشد، و تأیید کنید شناسهٔ
همتای مقصد با شناسه‌ای که آن کانال استفاده می‌کند مطابقت دارد. داک‌کردن فقط مسیر
نشست فعال را تغییر می‌دهد؛ ممکن است نشست دیگری همچنان به جای دیگری مسیریابی شود.

**باید برگردم.**

دستور متناظر برای کانال اصلی را، مانند `/dock_telegram` یا
`/dock-telegram`، از یک فرستندهٔ پیوندشده بفرستید.
