---
read_when:
    - Зміна поведінки або типових налаштувань слів голосової активації
    - Додавання нових платформ Node, яким потрібна синхронізація слова пробудження
summary: Глобальні голосові слова пробудження (керовані Gateway) і те, як вони синхронізуються між вузлами
title: Голосове пробудження
x-i18n:
    generated_at: "2026-05-06T06:16:18Z"
    model: gpt-5.5
    provider: openai
    source_hash: a284cbe3e12784a8d7a3eab6ba8ae230123557bca7593c956111199b94b91b73
    source_path: nodes/voicewake.md
    workflow: 16
---

OpenClaw розглядає **слова пробудження як єдиний глобальний список**, яким володіє **Gateway**.

- **Немає користувацьких слів пробудження для окремих вузлів**.
- **Будь-який інтерфейс вузла/застосунку може редагувати** список; зміни зберігаються Gateway і транслюються всім.
- macOS та iOS зберігають локальні перемикачі **увімкнення/вимкнення голосового пробудження** (локальний UX і дозволи відрізняються).
- Android зараз тримає голосове пробудження вимкненим і використовує ручний мікрофонний потік у вкладці Voice.

## Сховище (хост Gateway)

Слова пробудження зберігаються на машині шлюзу за адресою:

- `~/.openclaw/settings/voicewake.json`

Форма:

```json
{ "triggers": ["openclaw", "claude", "computer"], "updatedAtMs": 1730000000000 }
```

## Протокол

### Методи

- `voicewake.get` → `{ triggers: string[] }`
- `voicewake.set` з параметрами `{ triggers: string[] }` → `{ triggers: string[] }`

Примітки:

- Тригери нормалізуються (обрізаються пробіли, порожні значення відкидаються). Порожні списки повертаються до значень за замовчуванням.
- Для безпеки застосовуються обмеження (ліміти кількості/довжини).

### Методи маршрутизації (тригер → ціль)

- `voicewake.routing.get` → `{ config: VoiceWakeRoutingConfig }`
- `voicewake.routing.set` з параметрами `{ config: VoiceWakeRoutingConfig }` → `{ config: VoiceWakeRoutingConfig }`

Форма `VoiceWakeRoutingConfig`:

```json
{
  "version": 1,
  "defaultTarget": { "mode": "current" },
  "routes": [{ "trigger": "robot wake", "target": { "sessionKey": "agent:main:main" } }],
  "updatedAtMs": 1730000000000
}
```

Цілі маршрутів підтримують рівно один із варіантів:

- `{ "mode": "current" }`
- `{ "agentId": "main" }`
- `{ "sessionKey": "agent:main:main" }`

### Події

- корисне навантаження `voicewake.changed` `{ triggers: string[] }`
- корисне навантаження `voicewake.routing.changed` `{ config: VoiceWakeRoutingConfig }`

Хто отримує:

- Усі клієнти WebSocket (застосунок macOS, WebChat тощо)
- Усі підключені вузли (iOS/Android), а також під час підключення вузла як початкове надсилання "поточного стану".

## Поведінка клієнтів

### Застосунок macOS

- Використовує глобальний список для фільтрації тригерів `VoiceWakeRuntime`.
- Редагування "Слова-тригери" в налаштуваннях голосового пробудження викликає `voicewake.set`, а потім покладається на трансляцію, щоб інші клієнти залишалися синхронізованими.

### Вузол iOS

- Використовує глобальний список для виявлення тригерів `VoiceWakeManager`.
- Редагування слів пробудження в налаштуваннях викликає `voicewake.set` (через Gateway WS), а також підтримує локальне виявлення слів пробудження чутливим до змін.

### Вузол Android

- Голосове пробудження зараз вимкнене в середовищі виконання/налаштуваннях Android.
- Голос в Android використовує ручне захоплення мікрофона у вкладці Voice замість тригерів за словами пробудження.

## Пов’язане

- [Режим розмови](/uk/nodes/talk)
- [Аудіо та голосові нотатки](/uk/nodes/audio)
- [Розуміння медіа](/uk/nodes/media-understanding)
