---
read_when:
    - Вы хотите, чтобы ответы для одного активного сеанса перенаправлялись из Telegram в Discord, Slack, Mattermost или другой подключённый канал
    - Вы настраиваете `session.identityLinks` для личных сообщений между каналами
    - Команда `/dock` сообщает, что отправитель не связан или активный сеанс отсутствует
summary: Перенос маршрута ответов одного сеанса OpenClaw между связанными каналами чата
title: Закрепление канала
x-i18n:
    generated_at: "2026-07-13T18:02:14Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 24
    provider: openai
    source_hash: 6d7af3a59b95b2c73cb74a9529584e51caed055719db2df8aad2ba8e8c9b0593
    source_path: concepts/channel-docking.md
    workflow: 16
---

Докинг канала — это переадресация вызовов для одного сеанса OpenClaw. Он сохраняет тот же
контекст разговора, но изменяет место доставки будущих ответов для этого сеанса.
Докинг работает только из личного чата; его нельзя выполнить из группового
чата.

## Пример

Алиса может отправлять сообщения OpenClaw в Telegram и Discord:

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

Если Алиса отправит следующую команду из личного чата Telegram:

```text
/dock_discord
```

OpenClaw сохранит контекст текущего сеанса и изменит маршрут ответов:

| До докинга                         | После `/dock_discord`             |
| ---------------------------------- | --------------------------------- |
| Ответы поступают в Telegram `123` | Ответы поступают в Discord `456` |

Сеанс не создаётся заново. История переписки остаётся привязанной к тому же
сеансу.

## Зачем это использовать

Используйте докинг, когда задача начинается в одном приложении для общения, но
следующие ответы должны поступать в другое.

Типичный сценарий:

1. Запустите задачу агента из Telegram.
2. Перейдите в Discord, где вы координируете работу.
3. Отправьте `/dock_discord` из личного чата Telegram.
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` выше) — это только общее имя группы идентичности. Команды
докинга используют значения с префиксом канала, чтобы подтвердить, что исходный
отправитель и целевой собеседник — один и тот же человек.

## Команды

OpenClaw создаёт по одной команде `/dock-<channel>` для каждого загруженного плагина
канала, поддерживающего нативные команды, поэтому список растёт по мере добавления
плагинов. Встроенные плагины, которые поддерживают эту функцию в настоящее время:

| Целевой канал | Команда            | Псевдоним          |
| ------------- | ------------------ | ------------------ |
| 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`.

**Команда сообщает, что докинг доступен только из личных чатов.**

Отправьте команду докинга из личного чата с OpenClaw, а не из группового чата.

**Команда сообщает, что активный сеанс отсутствует.**

Выполните докинг из существующего сеанса личного чата. Команде требуется запись
активного сеанса, чтобы сохранить новый маршрут.

**Ответы по-прежнему поступают в старый канал.**

Убедитесь, что команда вернула сообщение об успешном выполнении, и проверьте,
что идентификатор целевого собеседника совпадает с идентификатором, используемым
этим каналом. Докинг изменяет только маршрут активного сеанса; другой сеанс
по-прежнему может направлять ответы в другое место.

**Мне нужно переключиться обратно.**

Отправьте соответствующую команду для исходного канала, например `/dock_telegram` или
`/dock-telegram`, от привязанного отправителя.
