---
read_when:
    - Налаштування постійно активних групових кімнат або кімнат каналів
    - Ви хочете, щоб агент стежив за розмовами в кімнаті, не публікуючи остаточний текст автоматично
    - Налагодження індикації набору тексту та використання токенів без видимого повідомлення в кімнаті
sidebarTitle: Ambient room events
summary: Дозвольте підтримуваним груповим кімнатам надавати фоновий контекст, якщо агент не надсилає повідомлення за допомогою інструмента повідомлень
title: Фонові події кімнати
x-i18n:
    generated_at: "2026-07-12T12:57:45Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    provider: openai
    source_hash: 3f144b44c8ae0a78e756d741c7b4685632862c0eb15531185ddeb0c2ba801e1a
    source_path: channels/ambient-room-events.md
    workflow: 16
---

Фонові події кімнати дають змогу OpenClaw обробляти розмови в групі або каналі без згадування як ненав’язливий контекст. Агент може оновлювати пам’ять і стан сеансу, але кімната залишається безмовною, якщо агент явно не викличе інструмент `message`.

Для постійно активних групових чатів поєднайте `messages.groupChat.unmentionedInbound: "room_event"` із `messages.groupChat.visibleReplies: "message_tool"`. Агент слухає, вирішує, коли відповідь буде корисною, і більше не потребує старого шаблону підказки з відповіддю `NO_REPLY`.

Наразі підтримуються: канали серверів Discord, канали та приватні канали Slack, групові приватні повідомлення Slack із кількома учасниками, а також групи й супергрупи Telegram. Інші групові канали зберігають наявну групову поведінку, якщо на сторінці відповідного каналу не зазначено підтримку фонових подій кімнати.

## Рекомендоване налаштування

Установіть глобальну поведінку групового чату:

```json5
{
  messages: {
    groupChat: {
      unmentionedInbound: "room_event",
      visibleReplies: "message_tool",
      historyLimit: 50,
    },
  },
}
```

Потім зробіть кімнату постійно активною, вимкнувши для неї вимогу згадування. Кімната все одно має відповідати звичайній політиці `groupPolicy`, списку дозволених кімнат і списку дозволених відправників.

Після збереження конфігурації Gateway застосовує налаштування `messages` без перезапуску. Перезапуск потрібен лише тоді, коли спостереження за файлами або перезавантаження конфігурації вимкнено (`gateway.reload.mode: "off"`).

## Що змінюється

З `messages.groupChat.unmentionedInbound: "room_event"`:

- дозволені повідомлення групи або каналу без згадування стають ненав’язливими подіями кімнати
- повідомлення зі згадуванням залишаються запитами користувача
- текстові керівні та нативні команди залишаються запитами користувача
- запити на переривання або зупинення залишаються запитами користувача
- приватні повідомлення залишаються запитами користувача

Для подій кімнати діють суворі правила видимої доставки. Фінальний текст асистента залишається приватним. Щоб опублікувати повідомлення в кімнаті, агент має викликати `message(action=send)`.

Для подій кімнати індикація введення та реакції на стани життєвого циклу залишаються приглушеними. Єдиний явний виняток для підтвердження отримання — `messages.ackReactionScope: "all"`, що надсилає налаштовану реакцію-підтвердження; використовуйте вужчу область або `"off"`, якщо кімната має залишатися цілковито безмовною.

## Приклад для Discord

```json5
{
  messages: {
    groupChat: {
      unmentionedInbound: "room_event",
      visibleReplies: "message_tool",
      historyLimit: 50,
    },
  },
  channels: {
    discord: {
      groupPolicy: "allowlist",
      guilds: {
        "<DISCORD_SERVER_ID>": {
          requireMention: false,
          users: ["<YOUR_DISCORD_USER_ID>"],
        },
      },
    },
  },
}
```

Використовуйте конфігурацію Discord для окремого каналу, якщо фоновим має бути лише один канал. За `groupPolicy: "allowlist"` канал дозволяється саме додаванням до списку (`enabled: false` вимикає запис):

```json5
{
  channels: {
    discord: {
      groupPolicy: "allowlist",
      guilds: {
        "<DISCORD_SERVER_ID>": {
          channels: {
            "<DISCORD_CHANNEL_ID_OR_NAME>": {
              requireMention: false,
            },
          },
        },
      },
    },
  },
}
```

## Приклад для Slack

Списки дозволених каналів Slack передусім використовують ідентифікатори. Використовуйте ідентифікатори каналів на кшталт `C12345678`, а не `#channel-name`. Канал дозволяється саме додаванням до `channels.slack.channels` (`enabled: false` вимикає запис):

```json5
{
  messages: {
    groupChat: {
      unmentionedInbound: "room_event",
      visibleReplies: "message_tool",
      historyLimit: 50,
    },
  },
  channels: {
    slack: {
      groupPolicy: "allowlist",
      channels: {
        "<SLACK_CHANNEL_ID>": {
          requireMention: false,
        },
      },
    },
  },
}
```

## Приклад для Telegram

Для груп Telegram бот повинен мати змогу бачити звичайні групові повідомлення. Якщо встановлено `requireMention: false`, вимкніть режим конфіденційності BotFather або використайте інше налаштування Telegram, яке передає боту весь груповий трафік.

```json5
{
  messages: {
    groupChat: {
      unmentionedInbound: "room_event",
      visibleReplies: "message_tool",
      historyLimit: 50,
    },
  },
  channels: {
    telegram: {
      groups: {
        "<TELEGRAM_GROUP_CHAT_ID>": {
          groupPolicy: "open",
          requireMention: false,
        },
      },
    },
  },
}
```

Ідентифікатори груп Telegram зазвичай є від’ємними числами, наприклад `-1001234567890`. Зчитайте `chat.id` з `openclaw logs --follow`, перешліть групове повідомлення боту-помічнику для визначення ідентифікатора або перегляньте `getUpdates` у Bot API.

## Політика для окремого агента

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

```json5
{
  messages: {
    groupChat: {
      visibleReplies: "message_tool",
    },
  },
  agents: {
    list: [
      {
        id: "main",
        groupChat: {
          unmentionedInbound: "room_event",
          mentionPatterns: ["@openclaw", "openclaw"],
        },
      },
    ],
  },
}
```

Значення `agents.list[].groupChat.unmentionedInbound` для окремого агента перевизначає `messages.groupChat.unmentionedInbound` для цього агента.

## Режими видимих відповідей

Для звичайних запитів користувачів у групах або каналах значенням `messages.groupChat.visibleReplies` за замовчуванням є `"automatic"`. Залиште це значення, якщо фінальний текст асистента має публікуватися видимо без явного виклику інструмента повідомлень.

Для фонових постійно активних кімнат усе одно рекомендовано `messages.groupChat.visibleReplies: "message_tool"`, особливо з моделями останнього покоління, які надійно працюють з інструментами, як-от GPT-5.6 Sol. Це дає агенту змогу вирішувати, коли говорити, викликаючи інструмент повідомлень. Якщо модель повертає фінальний текст без виклику інструмента, OpenClaw зберігає цей текст приватним і записує метадані про приглушену доставку.

Для подій кімнати суворий режим зберігається, навіть якщо інші групові запити використовують автоматичні відповіді. Фонові події кімнати без згадування завжди потребують `message(action=send)` для видимого виведення.

## Історія

`messages.groupChat.historyLimit` задає глобальне типове обмеження історії групи (50, якщо значення не встановлено; має бути додатним цілим числом). Канали можуть перевизначити його за допомогою `channels.<channel>.historyLimit`, а деякі канали також підтримують обмеження історії для окремих облікових записів. Установіть `historyLimit: 0` на рівні каналу, щоб вимкнути контекст історії групи для цього каналу.

Канали з підтримкою подій кімнати зберігають нещодавні фонові повідомлення кімнати як контекст. Telegram підтримує постійне ковзне вікно для кожної групи, обмежене `historyLimit`; для ходів із запитами користувача вибираються записи після останньої зафіксованої відповіді бота, тоді як ходи з подіями кімнати отримують повне нещодавнє вікно, щоб модель могла бачити власні нещодавні дописи. Застарілий ключ режиму Telegram `includeGroupHistoryContext` видаляється командою `openclaw doctor --fix`.

## Усунення несправностей

Якщо в кімнаті відображається індикація введення або використання токенів, але немає видимого повідомлення:

1. Переконайтеся, що кімната дозволена списком дозволених каналів і списком дозволених відправників.
2. Переконайтеся, що `requireMention: false` установлено на очікуваному рівні кімнати.
3. Перевірте, чи має `messages.groupChat.unmentionedInbound` або перевизначення агента значення `"room_event"`.
4. Перегляньте журнали на наявність метаданих приглушеного фінального вмісту або `didSendViaMessagingTool: false`.
5. Для звичайних групових запитів залиште або відновіть `messages.groupChat.visibleReplies: "automatic"`, якщо фінальні відповіді мають публікуватися автоматично. Для фонових кімнат із `message_tool` використовуйте модель або середовище виконання, що надійно викликає інструменти.

Якщо фонові кімнати Telegram взагалі не активуються, перевірте режим конфіденційності BotFather і переконайтеся, що Gateway отримує звичайні групові повідомлення.

Якщо фонові кімнати Slack не активуються, переконайтеся, що ключ каналу є ідентифікатором каналу Slack, а застосунок має область доступу до історії для відповідного типу кімнати: `channels:history` (публічні), `groups:history` (приватні) або `mpim:history` (групові приватні повідомлення з кількома учасниками).

## Пов’язані матеріали

- [Групи](/uk/channels/groups)
- [Discord](/uk/channels/discord)
- [Slack](/uk/channels/slack)
- [Telegram](/uk/channels/telegram)
- [Усунення несправностей каналів](/uk/channels/troubleshooting)
- [Довідник із конфігурації каналів](/uk/gateway/config-channels)
