> ## Documentation Index
> Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Реакции

Агент добавляет и удаляет реакции с эмодзи с помощью действия `react`
инструмента `message`. Поведение зависит от канала.

## Как это работает

```json theme={"theme":{"light":"min-light","dark":"min-dark"}}
{
  "action": "react",
  "messageId": "msg-123",
  "emoji": "thumbsup"
}
```

* `emoji` обязателен при добавлении реакции.
* Задайте для `emoji` пустую строку (`""`), чтобы удалить реакции бота в
  каналах, которые поддерживают эту возможность.
* Задайте `remove: true`, чтобы удалить один конкретный эмодзи (требуется непустой
  `emoji`).
* В каналах с реакциями состояния параметр `trackToolCalls: true` у реакции позволяет
  среде выполнения повторно использовать сообщение с этой реакцией для последующих реакций,
  отображающих ход выполнения инструмента в рамках того же хода.

## Поведение каналов

> [accordion] Discord и Slack
>
> * Пустой `emoji` удаляет все реакции бота с сообщения.
> * `remove: true` удаляет только указанный эмодзи.

> [accordion] Nextcloud Talk
>
> * Поддерживается только добавление реакций: `emoji` обязателен и не должен быть пустым.
> * Удаление реакций пока не связано с вызовом удаления; вместо бездействия без уведомления `remove: true` отклоняется с явной ошибкой.
> * Требуется бот Talk, зарегистрированный с функцией `reaction` (см. [документацию канала Nextcloud Talk](https://docs2.openclaw.ai/ru/channels/nextcloud-talk.md)).

> [accordion] Telegram
>
> * Пустой `emoji` удаляет реакции бота.
> * `remove: true` также удаляет реакции, но для проверки вызова инструмента по-прежнему требуется непустой `emoji`.

> [accordion] WhatsApp
>
> * Пустой `emoji` удаляет реакцию бота.
> * `remove: true` внутренне преобразуется в пустой эмодзи (при этом в вызове инструмента по-прежнему требуется `emoji`).
> * В WhatsApp для каждого сообщения предусмотрено одно место для реакции бота; новая реакция заменяет предыдущую, а не добавляет ещё один эмодзи.

> [accordion] Zalo Personal (zalouser)
>
> * Для добавления и удаления требуется непустой `emoji`.
> * `remove: true` удаляет указанную реакцию с эмодзи.

> [accordion] Feishu/Lark
>
> * Использует то же действие `react`, что и другие каналы (добавление, удаление и получение списка по идентификаторам реакций на сообщение), а не отдельный инструмент.
> * Для добавления требуется непустой `emoji` (преобразуется в `emoji_type` Feishu, например `SMILE`, `THUMBSUP`, `HEART`).
> * Для `remove: true` требуется непустой `emoji`; удаляется собственная реакция бота, соответствующая этому типу эмодзи.
> * Пустой `emoji` вместе с `clearAll: true` удаляет все реакции бота с сообщения.

> [accordion] Signal
>
> * Уведомления о входящих реакциях управляются параметром `channels.signal.reactionNotifications`: `"off"` отключает их, `"own"` (по умолчанию) создаёт события, когда пользователи реагируют на сообщения бота, `"all"` создаёт события для всех реакций, а `"allowlist"` — только для отправителей из `channels.signal.reactionAllowlist`.

> [accordion] iMessage
>
> * Исходящие реакции представляют собой быстрые реакции iMessage (`love`, `like`, `dislike`, `laugh`, `emphasize` и `question`); для добавления реакции `emoji` должен соответствовать одному из этих видов.
> * `remove: true` без распознанного вида быстрой реакции удаляет все их виды, а с распознанным видом — только его.

## Уровень реакций

Параметр `reactionLevel` для каждого канала ограничивает частоту отправки агентом собственных
реакций. Значения: `off`, `ack`, `minimal` или `extensive`.

* [Уведомления о реакциях в Telegram](https://docs2.openclaw.ai/ru/channels/telegram.md#feature-reference) — `channels.telegram.reactionLevel` (по умолчанию `minimal`)
* [Уровень реакций в WhatsApp](https://docs2.openclaw.ai/ru/channels/whatsapp.md#reaction-level) — `channels.whatsapp.reactionLevel` (по умолчанию `minimal`)
* [Реакции в Signal](https://docs2.openclaw.ai/ru/channels/signal.md#reactions-message-tool) — `channels.signal.reactionLevel` (по умолчанию `minimal`)

## Связанные материалы

* [Отправка агентом](https://docs2.openclaw.ai/ru/tools/agent-send.md) — инструмент `message`, включающий `react`
* [Каналы](https://docs2.openclaw.ai/ru/channels.md) — конфигурация для отдельных каналов
