chore(i18n): refresh uk translations
This commit is contained in:
parent
cc369cf225
commit
0c3eeaa138
@ -1,36 +1,36 @@
|
||||
---
|
||||
read_when:
|
||||
- Налаштування підтримки Signal
|
||||
- Налагодження надсилання/отримання в Signal
|
||||
- Налагодження надсилання/отримання у Signal
|
||||
summary: Підтримка Signal через signal-cli (JSON-RPC + SSE), шляхи налаштування та модель номера
|
||||
title: Signal
|
||||
x-i18n:
|
||||
generated_at: "2026-04-30T14:57:31Z"
|
||||
generated_at: "2026-04-30T15:05:54Z"
|
||||
model: gpt-5.5
|
||||
provider: openai
|
||||
source_hash: d5f79b34b85b0d963373026d33b066d7865282e9a3619bddd334e67de30940d6
|
||||
source_hash: 111b6ebe3bde4e03c7ed432f52d663f0b471f0fc4a4bf835c1ac1972467e0b96
|
||||
source_path: channels/signal.md
|
||||
workflow: 16
|
||||
---
|
||||
|
||||
Стан: зовнішня інтеграція CLI. Gateway взаємодіє з `signal-cli` через HTTP JSON-RPC + SSE.
|
||||
Стан: інтеграція із зовнішнім CLI. Gateway взаємодіє з `signal-cli` через HTTP JSON-RPC + SSE.
|
||||
|
||||
## Передумови
|
||||
|
||||
- OpenClaw встановлено на вашому сервері (Linux-процес нижче протестовано на Ubuntu 24).
|
||||
- `signal-cli` доступний на хості, де працює gateway.
|
||||
- Номер телефону, який може отримати одне перевірочне SMS (для шляху реєстрації через SMS).
|
||||
- Доступ до браузера для Signal captcha (`signalcaptchas.org`) під час реєстрації.
|
||||
- OpenClaw встановлено на вашому сервері (потік для Linux нижче протестовано на Ubuntu 24).
|
||||
- `signal-cli` доступний на хості, де працює Gateway.
|
||||
- Номер телефону, який може отримати одне SMS для підтвердження (для шляху реєстрації через SMS).
|
||||
- Доступ до браузера для captcha Signal (`signalcaptchas.org`) під час реєстрації.
|
||||
|
||||
## Швидке налаштування (для початківців)
|
||||
|
||||
1. Використовуйте **окремий номер Signal** для бота (рекомендовано).
|
||||
2. Встановіть `signal-cli` (потрібна Java, якщо використовуєте JVM-збірку).
|
||||
2. Установіть `signal-cli` (потрібна Java, якщо використовуєте JVM-збірку).
|
||||
3. Виберіть один шлях налаштування:
|
||||
- **Шлях A (QR-посилання):** `signal-cli link -n "OpenClaw"` і відскануйте за допомогою Signal.
|
||||
- **Шлях B (реєстрація через SMS):** зареєструйте виділений номер із captcha + перевіркою через SMS.
|
||||
4. Налаштуйте OpenClaw і перезапустіть gateway.
|
||||
5. Надішліть перше DM і підтвердьте сполучення (`openclaw pairing approve signal <CODE>`).
|
||||
- **Шлях A (QR-зв’язування):** `signal-cli link -n "OpenClaw"` і відскануйте за допомогою Signal.
|
||||
- **Шлях B (реєстрація через SMS):** зареєструйте виділений номер із captcha + підтвердженням через SMS.
|
||||
4. Налаштуйте OpenClaw і перезапустіть Gateway.
|
||||
5. Надішліть перше DM і підтвердьте створення пари (`openclaw pairing approve signal <CODE>`).
|
||||
|
||||
Мінімальна конфігурація:
|
||||
|
||||
@ -50,24 +50,24 @@ x-i18n:
|
||||
|
||||
Довідник полів:
|
||||
|
||||
| Поле | Опис |
|
||||
| ----------- | ------------------------------------------------------------ |
|
||||
| `account` | Номер телефону бота у форматі E.164 (`+15551234567`) |
|
||||
| `cliPath` | Шлях до `signal-cli` (`signal-cli`, якщо він у `PATH`) |
|
||||
| `dmPolicy` | Політика доступу до DM (`pairing` рекомендовано) |
|
||||
| Поле | Опис |
|
||||
| ----------- | ---------------------------------------------------------- |
|
||||
| `account` | Номер телефону бота у форматі E.164 (`+15551234567`) |
|
||||
| `cliPath` | Шлях до `signal-cli` (`signal-cli`, якщо він є в `PATH`) |
|
||||
| `dmPolicy` | Політика доступу до DM (рекомендовано `pairing`) |
|
||||
| `allowFrom` | Номери телефонів або значення `uuid:<id>`, яким дозволено DM |
|
||||
|
||||
## Що це таке
|
||||
|
||||
- Канал Signal через `signal-cli` (не вбудований libsignal).
|
||||
- Детермінізована маршрутизація: відповіді завжди повертаються в Signal.
|
||||
- DM використовують основну сесію агента; групи ізольовані (`agent:<agentId>:signal:group:<groupId>`).
|
||||
- Детермінована маршрутизація: відповіді завжди повертаються до Signal.
|
||||
- DM спільно використовують головний сеанс агента; групи ізольовані (`agent:<agentId>:signal:group:<groupId>`).
|
||||
|
||||
## Записи конфігурації
|
||||
## Запис конфігурації
|
||||
|
||||
За замовчуванням Signal дозволено записувати оновлення конфігурації, спричинені `/config set|unset` (потрібно `commands.config: true`).
|
||||
|
||||
Вимкніть за допомогою:
|
||||
Вимкнути можна так:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -83,10 +83,10 @@ x-i18n:
|
||||
|
||||
## Шлях налаштування A: прив’язати наявний обліковий запис Signal (QR)
|
||||
|
||||
1. Встановіть `signal-cli` (JVM або нативну збірку).
|
||||
1. Установіть `signal-cli` (JVM або native-збірку).
|
||||
2. Прив’яжіть обліковий запис бота:
|
||||
- `signal-cli link -n "OpenClaw"`, потім відскануйте QR у Signal.
|
||||
3. Налаштуйте Signal і запустіть gateway.
|
||||
3. Налаштуйте Signal і запустіть Gateway.
|
||||
|
||||
Приклад:
|
||||
|
||||
@ -104,15 +104,15 @@ x-i18n:
|
||||
}
|
||||
```
|
||||
|
||||
Підтримка кількох облікових записів: використовуйте `channels.signal.accounts` з конфігурацією для кожного облікового запису та необов’язковим `name`. Див. [`gateway/configuration`](/uk/gateway/config-channels#multi-account-all-channels) для спільного патерну.
|
||||
Підтримка кількох облікових записів: використовуйте `channels.signal.accounts` із конфігурацією для кожного облікового запису та необов’язковим `name`. Див. [`gateway/configuration`](/uk/gateway/config-channels#multi-account-all-channels) для спільного шаблону.
|
||||
|
||||
## Шлях налаштування B: зареєструвати виділений номер бота (SMS, Linux)
|
||||
|
||||
Використовуйте це, якщо потрібен виділений номер бота замість прив’язування наявного облікового запису застосунку Signal.
|
||||
Використовуйте це, коли потрібен виділений номер бота замість прив’язування наявного облікового запису застосунку Signal.
|
||||
|
||||
1. Отримайте номер, який може приймати SMS (або голосову перевірку для стаціонарних ліній).
|
||||
- Використовуйте виділений номер бота, щоб уникнути конфліктів облікового запису/сесії.
|
||||
2. Встановіть `signal-cli` на хості gateway:
|
||||
1. Отримайте номер, який може приймати SMS (або голосове підтвердження для стаціонарних номерів).
|
||||
- Використовуйте виділений номер бота, щоб уникнути конфліктів облікового запису/сеансу.
|
||||
2. Установіть `signal-cli` на хості Gateway:
|
||||
|
||||
```bash
|
||||
VERSION=$(curl -Ls -o /dev/null -w %{url_effective} https://github.com/AsamK/signal-cli/releases/latest | sed -e 's/^.*\/v//')
|
||||
@ -123,9 +123,9 @@ signal-cli --version
|
||||
```
|
||||
|
||||
Якщо використовуєте JVM-збірку (`signal-cli-${VERSION}.tar.gz`), спочатку встановіть JRE 25+.
|
||||
Підтримуйте `signal-cli` в актуальному стані; upstream зазначає, що старі випуски можуть зламатися через зміни API серверів Signal.
|
||||
Підтримуйте `signal-cli` в актуальному стані; upstream зазначає, що старі випуски можуть перестати працювати через зміни API серверів Signal.
|
||||
|
||||
3. Зареєструйте та перевірте номер:
|
||||
3. Зареєструйте й підтвердьте номер:
|
||||
|
||||
```bash
|
||||
signal-cli -a +<BOT_PHONE_NUMBER> register
|
||||
@ -135,15 +135,15 @@ signal-cli -a +<BOT_PHONE_NUMBER> register
|
||||
|
||||
1. Відкрийте `https://signalcaptchas.org/registration/generate.html`.
|
||||
2. Пройдіть captcha, скопіюйте ціль посилання `signalcaptcha://...` з "Open Signal".
|
||||
3. За можливості запускайте з тієї самої зовнішньої IP-адреси, що й браузерна сесія.
|
||||
4. Негайно запустіть реєстрацію ще раз (токени captcha швидко спливають):
|
||||
3. За можливості запускайте з тієї самої зовнішньої IP-адреси, що й сеанс браузера.
|
||||
4. Негайно запустіть реєстрацію знову (токени captcha швидко спливають):
|
||||
|
||||
```bash
|
||||
signal-cli -a +<BOT_PHONE_NUMBER> register --captcha '<SIGNALCAPTCHA_URL>'
|
||||
signal-cli -a +<BOT_PHONE_NUMBER> verify <VERIFICATION_CODE>
|
||||
```
|
||||
|
||||
4. Налаштуйте OpenClaw, перезапустіть gateway, перевірте канал:
|
||||
4. Налаштуйте OpenClaw, перезапустіть Gateway, перевірте канал:
|
||||
|
||||
```bash
|
||||
# If you run the gateway as a user systemd service:
|
||||
@ -154,24 +154,24 @@ openclaw doctor
|
||||
openclaw channels status --probe
|
||||
```
|
||||
|
||||
5. Сполучіть вашого відправника DM:
|
||||
5. Створіть пару з вашим відправником DM:
|
||||
- Надішліть будь-яке повідомлення на номер бота.
|
||||
- Підтвердьте код на сервері: `openclaw pairing approve signal <PAIRING_CODE>`.
|
||||
- Збережіть номер бота як контакт на телефоні, щоб уникнути "Unknown contact".
|
||||
|
||||
<Warning>
|
||||
Реєстрація облікового запису номера телефону через `signal-cli` може деавтентифікувати основну сесію застосунку Signal для цього номера. Надавайте перевагу виділеному номеру бота або використовуйте режим QR-прив’язування, якщо потрібно зберегти наявне налаштування застосунку на телефоні.
|
||||
Реєстрація облікового запису телефонного номера через `signal-cli` може скасувати авторизацію основного сеансу застосунку Signal для цього номера. Віддавайте перевагу виділеному номеру бота або використовуйте режим QR-зв’язування, якщо потрібно зберегти наявне налаштування телефонного застосунку.
|
||||
</Warning>
|
||||
|
||||
Upstream-посилання:
|
||||
|
||||
- README `signal-cli`: `https://github.com/AsamK/signal-cli`
|
||||
- Процес captcha: `https://github.com/AsamK/signal-cli/wiki/Registration-with-captcha`
|
||||
- Процес прив’язування: `https://github.com/AsamK/signal-cli/wiki/Linking-other-devices-(Provisioning)`
|
||||
- Потік captcha: `https://github.com/AsamK/signal-cli/wiki/Registration-with-captcha`
|
||||
- Потік зв’язування: `https://github.com/AsamK/signal-cli/wiki/Linking-other-devices-(Provisioning)`
|
||||
|
||||
## Режим зовнішнього демона (httpUrl)
|
||||
|
||||
Якщо ви хочете керувати `signal-cli` самостійно (повільні холодні старти JVM, ініціалізація контейнера або спільні CPU), запустіть daemon окремо та вкажіть OpenClaw на нього:
|
||||
Якщо хочете керувати `signal-cli` самостійно (повільні холодні запуски JVM, ініціалізація контейнера або спільні CPU), запустіть демон окремо й укажіть OpenClaw на нього:
|
||||
|
||||
```json5
|
||||
{
|
||||
@ -184,55 +184,55 @@ Upstream-посилання:
|
||||
}
|
||||
```
|
||||
|
||||
Це пропускає автоматичний запуск і очікування старту всередині OpenClaw. Для повільних стартів під час автоматичного запуску задайте `channels.signal.startupTimeoutMs`.
|
||||
Це пропускає автоматичний запуск процесу та очікування запуску всередині OpenClaw. Для повільних запусків під час автоматичного запуску процесу задайте `channels.signal.startupTimeoutMs`.
|
||||
|
||||
## Контроль доступу (DM + групи)
|
||||
|
||||
DM:
|
||||
|
||||
- За замовчуванням: `channels.signal.dmPolicy = "pairing"`.
|
||||
- Невідомі відправники отримують код сполучення; повідомлення ігноруються до підтвердження (коди спливають через 1 годину).
|
||||
- Підтвердження через:
|
||||
- Невідомі відправники отримують код створення пари; повідомлення ігноруються, доки їх не підтвердять (коди спливають через 1 годину).
|
||||
- Підтвердьте через:
|
||||
- `openclaw pairing list signal`
|
||||
- `openclaw pairing approve signal <CODE>`
|
||||
- Сполучення є стандартним обміном токенами для Signal DM. Докладніше: [Сполучення](/uk/channels/pairing)
|
||||
- Створення пари є типовим обміном токеном для DM Signal. Докладніше: [Створення пари](/uk/channels/pairing)
|
||||
- Відправники лише з UUID (з `sourceUuid`) зберігаються як `uuid:<id>` у `channels.signal.allowFrom`.
|
||||
|
||||
Групи:
|
||||
|
||||
- `channels.signal.groupPolicy = open | allowlist | disabled`.
|
||||
- `channels.signal.groupAllowFrom` керує тим, які групи або відправники можуть запускати відповіді групи, коли встановлено `allowlist`; записи можуть бути ідентифікаторами груп Signal (сирі, `group:<id>` або `signal:group:<id>`), номерами телефонів відправників або значеннями `uuid:<id>`.
|
||||
- `channels.signal.groupAllowFrom` керує тим, які групи або відправники можуть запускати групові відповіді, коли встановлено `allowlist`; записи можуть бути ID груп Signal (сирі, `group:<id>` або `signal:group:<id>`), номери телефонів відправників, значення `uuid:<id>` або `*`.
|
||||
- `channels.signal.groups["<group-id>" | "*"]` може перевизначати поведінку групи за допомогою `requireMention`, `tools` і `toolsBySender`.
|
||||
- Використовуйте `channels.signal.accounts.<id>.groups` для перевизначень на рівні облікового запису в налаштуваннях із кількома обліковими записами.
|
||||
- Додавання групи Signal до allowlist не вимикає перевірку згадок. Щоб обробляти кожне повідомлення в групі з allowlist, встановіть `channels.signal.groups["<group-id>"].requireMention=false` або використовуйте стандартне значення групи `"*"`.
|
||||
- Примітка щодо runtime: якщо `channels.signal` повністю відсутній, runtime повертається до `groupPolicy="allowlist"` для перевірок груп (навіть якщо задано `channels.defaults.groupPolicy`).
|
||||
- Додавання групи Signal до allowlist через `groupAllowFrom` саме по собі не вимикає обмеження за згадкою. Спеціально налаштований запис `channels.signal.groups["<group-id>"]` обробляє кожне групове повідомлення, якщо не встановлено `requireMention=true`.
|
||||
- Примітка щодо виконання: якщо `channels.signal` повністю відсутній, runtime повертається до `groupPolicy="allowlist"` для перевірок груп (навіть якщо встановлено `channels.defaults.groupPolicy`).
|
||||
|
||||
## Як це працює (поведінка)
|
||||
|
||||
- `signal-cli` працює як daemon; gateway читає події через SSE.
|
||||
- Вхідні повідомлення нормалізуються у спільний envelope каналу.
|
||||
- Відповіді завжди маршрутизуються назад на той самий номер або в ту саму групу.
|
||||
- `signal-cli` працює як демон; Gateway читає події через SSE.
|
||||
- Вхідні повідомлення нормалізуються у спільний конверт каналу.
|
||||
- Відповіді завжди маршрутизуються назад до того самого номера або групи.
|
||||
|
||||
## Медіа + обмеження
|
||||
## Медіа + ліміти
|
||||
|
||||
- Вихідний текст розбивається на фрагменти до `channels.signal.textChunkLimit` (стандартно 4000).
|
||||
- Вихідний текст розбивається на частини до `channels.signal.textChunkLimit` (типово 4000).
|
||||
- Необов’язкове розбиття за новими рядками: задайте `channels.signal.chunkMode="newline"`, щоб розбивати за порожніми рядками (межами абзаців) перед розбиттям за довжиною.
|
||||
- Вкладення підтримуються (base64 отримується з `signal-cli`).
|
||||
- Вкладення голосових нотаток використовують ім’я файлу `signal-cli` як fallback для MIME, коли `contentType` відсутній, тому транскрипція аудіо все одно може класифікувати голосові нотатки AAC.
|
||||
- Стандартний ліміт медіа: `channels.signal.mediaMaxMb` (стандартно 8).
|
||||
- Вкладення голосових нотаток використовують назву файла `signal-cli` як резервний MIME, коли `contentType` відсутній, тож аудіотранскрипція все одно може класифікувати голосові нотатки AAC.
|
||||
- Типове обмеження медіа: `channels.signal.mediaMaxMb` (типово 8).
|
||||
- Використовуйте `channels.signal.ignoreAttachments`, щоб пропускати завантаження медіа.
|
||||
- Контекст історії групи використовує `channels.signal.historyLimit` (або `channels.signal.accounts.*.historyLimit`), з fallback до `messages.groupChat.historyLimit`. Встановіть `0`, щоб вимкнути (стандартно 50).
|
||||
- Контекст історії груп використовує `channels.signal.historyLimit` (або `channels.signal.accounts.*.historyLimit`), із fallback до `messages.groupChat.historyLimit`. Установіть `0`, щоб вимкнути (типово 50).
|
||||
|
||||
## Індикатори набору + сповіщення про прочитання
|
||||
|
||||
- **Індикатори набору**: OpenClaw надсилає сигнали набору через `signal-cli sendTyping` і оновлює їх, доки формується відповідь.
|
||||
- **Індикатори набору**: OpenClaw надсилає сигнали набору через `signal-cli sendTyping` і оновлює їх, поки виконується відповідь.
|
||||
- **Сповіщення про прочитання**: коли `channels.signal.sendReadReceipts` має значення true, OpenClaw пересилає сповіщення про прочитання для дозволених DM.
|
||||
- Signal-cli не надає сповіщення про прочитання для груп.
|
||||
|
||||
## Реакції (інструмент повідомлень)
|
||||
|
||||
- Використовуйте `message action=react` з `channel=signal`.
|
||||
- Цілі: E.164 відправника або UUID (використовуйте `uuid:<id>` з виводу сполучення; голий UUID також працює).
|
||||
- Цілі: E.164 відправника або UUID (використовуйте `uuid:<id>` з виводу створення пари; голий UUID також працює).
|
||||
- `messageId` — це timestamp Signal для повідомлення, на яке ви реагуєте.
|
||||
- Для групових реакцій потрібен `targetAuthor` або `targetAuthorUuid`.
|
||||
|
||||
@ -246,20 +246,20 @@ message action=react channel=signal target=signal:group:<groupId> targetAuthor=u
|
||||
|
||||
Конфігурація:
|
||||
|
||||
- `channels.signal.actions.reactions`: увімкнути/вимкнути дії реакцій (стандартно true).
|
||||
- `channels.signal.actions.reactions`: увімкнути/вимкнути дії реакцій (типово true).
|
||||
- `channels.signal.reactionLevel`: `off | ack | minimal | extensive`.
|
||||
- `off`/`ack` вимикає реакції агента (інструмент повідомлень `react` поверне помилку).
|
||||
- `minimal`/`extensive` вмикає реакції агента та задає рівень інструкцій.
|
||||
- `minimal`/`extensive` вмикає реакції агента й задає рівень підказок.
|
||||
- Перевизначення на рівні облікового запису: `channels.signal.accounts.<id>.actions.reactions`, `channels.signal.accounts.<id>.reactionLevel`.
|
||||
|
||||
## Цілі доставки (CLI/Cron)
|
||||
## Цілі доставки (CLI/cron)
|
||||
|
||||
- DM: `signal:+15551234567` (або звичайний E.164).
|
||||
- UUID DM: `uuid:<id>` (або голий UUID).
|
||||
- DM за UUID: `uuid:<id>` (або голий UUID).
|
||||
- Групи: `signal:group:<groupId>`.
|
||||
- Імена користувачів: `username:<name>` (якщо підтримується вашим обліковим записом Signal).
|
||||
|
||||
## Усунення несправностей
|
||||
## Усунення неполадок
|
||||
|
||||
Спочатку виконайте цю послідовність:
|
||||
|
||||
@ -271,18 +271,18 @@ openclaw doctor
|
||||
openclaw channels status --probe
|
||||
```
|
||||
|
||||
Потім за потреби підтвердьте стан сполучення DM:
|
||||
Потім за потреби підтвердьте стан створення пари для DM:
|
||||
|
||||
```bash
|
||||
openclaw pairing list signal
|
||||
```
|
||||
|
||||
Поширені збої:
|
||||
Поширені помилки:
|
||||
|
||||
- Daemon доступний, але відповідей немає: перевірте налаштування облікового запису/daemon (`httpUrl`, `account`) і режим прийому.
|
||||
- DM ігноруються: відправник очікує підтвердження сполучення.
|
||||
- Повідомлення груп ігноруються: перевірка відправника/згадки для групи блокує доставку.
|
||||
- Помилки перевірки конфігурації після змін: запустіть `openclaw doctor --fix`.
|
||||
- Демон доступний, але відповідей немає: перевірте налаштування облікового запису/демона (`httpUrl`, `account`) і режим отримання.
|
||||
- DM ігноруються: відправник очікує підтвердження створення пари.
|
||||
- Групові повідомлення ігноруються: обмеження за відправником групи/згадкою блокує доставку.
|
||||
- Помилки перевірки конфігурації після редагувань: запустіть `openclaw doctor --fix`.
|
||||
- Signal відсутній у діагностиці: підтвердьте `channels.signal.enabled: true`.
|
||||
|
||||
Додаткові перевірки:
|
||||
@ -293,14 +293,14 @@ pgrep -af signal-cli
|
||||
grep -i "signal" "/tmp/openclaw/openclaw-$(date +%Y-%m-%d).log" | tail -20
|
||||
```
|
||||
|
||||
Для процесу тріажу: [/channels/troubleshooting](/uk/channels/troubleshooting).
|
||||
Потік triage: [/channels/troubleshooting](/uk/channels/troubleshooting).
|
||||
|
||||
## Примітки щодо безпеки
|
||||
## Примітки з безпеки
|
||||
|
||||
- `signal-cli` зберігає ключі облікового запису локально (зазвичай `~/.local/share/signal-cli/data/`).
|
||||
- Створіть резервну копію стану облікового запису Signal перед міграцією сервера або перебудовою.
|
||||
- Залишайте `channels.signal.dmPolicy: "pairing"`, якщо вам явно не потрібен ширший доступ до DM.
|
||||
- Перевірка через SMS потрібна лише для реєстрації або сценаріїв відновлення, але втрата контролю над номером/обліковим записом може ускладнити повторну реєстрацію.
|
||||
- Залишайте `channels.signal.dmPolicy: "pairing"`, якщо явно не хочете ширшого доступу до DM.
|
||||
- Підтвердження через SMS потрібне лише для потоків реєстрації або відновлення, але втрата контролю над номером/обліковим записом може ускладнити повторну реєстрацію.
|
||||
|
||||
## Довідник конфігурації (Signal)
|
||||
|
||||
@ -312,24 +312,24 @@ grep -i "signal" "/tmp/openclaw/openclaw-$(date +%Y-%m-%d).log" | tail -20
|
||||
- `channels.signal.account`: E.164 для облікового запису бота.
|
||||
- `channels.signal.cliPath`: шлях до `signal-cli`.
|
||||
- `channels.signal.httpUrl`: повна URL-адреса демона (перевизначає host/port).
|
||||
- `channels.signal.httpHost`, `channels.signal.httpPort`: прив’язка демона (за замовчуванням 127.0.0.1:8080).
|
||||
- `channels.signal.autoStart`: автоматично запускати демон (за замовчуванням true, якщо `httpUrl` не задано).
|
||||
- `channels.signal.httpHost`, `channels.signal.httpPort`: прив’язка демона (типово 127.0.0.1:8080).
|
||||
- `channels.signal.autoStart`: автоматично запускати демон (типово true, якщо `httpUrl` не задано).
|
||||
- `channels.signal.startupTimeoutMs`: тайм-аут очікування запуску в мс (межа 120000).
|
||||
- `channels.signal.receiveMode`: `on-start | manual`.
|
||||
- `channels.signal.ignoreAttachments`: пропускати завантаження вкладень.
|
||||
- `channels.signal.ignoreStories`: ігнорувати історії від демона.
|
||||
- `channels.signal.sendReadReceipts`: пересилати підтвердження прочитання.
|
||||
- `channels.signal.dmPolicy`: `pairing | allowlist | open | disabled` (за замовчуванням: pairing).
|
||||
- `channels.signal.allowFrom`: список дозволених DM (E.164 або `uuid:<id>`). `open` потребує `"*"`. У Signal немає імен користувачів; використовуйте телефонні номери/UUID-ідентифікатори.
|
||||
- `channels.signal.groupPolicy`: `open | allowlist | disabled` (за замовчуванням: allowlist).
|
||||
- `channels.signal.groupAllowFrom`: список дозволених груп; приймає ID груп Signal (необроблені, `group:<id>` або `signal:group:<id>`), номери відправників у форматі E.164 або значення `uuid:<id>`.
|
||||
- `channels.signal.groups`: перевизначення для окремих груп із ключами за id групи Signal (або `"*"`). Підтримувані поля: `requireMention`, `tools`, `toolsBySender`.
|
||||
- `channels.signal.sendReadReceipts`: пересилати сповіщення про прочитання.
|
||||
- `channels.signal.dmPolicy`: `pairing | allowlist | open | disabled` (типово: pairing).
|
||||
- `channels.signal.allowFrom`: список дозволених для особистих повідомлень (E.164 або `uuid:<id>`). `open` вимагає `"*"`. Signal не має імен користувачів; використовуйте номери телефонів/UUID-ідентифікатори.
|
||||
- `channels.signal.groupPolicy`: `open | allowlist | disabled` (типово: allowlist).
|
||||
- `channels.signal.groupAllowFrom`: список дозволених для груп; приймає ідентифікатори груп Signal (необроблені, `group:<id>` або `signal:group:<id>`), номери відправників у форматі E.164 або значення `uuid:<id>`.
|
||||
- `channels.signal.groups`: перевизначення для окремих груп за ідентифікатором групи Signal (або `"*"`). Підтримувані поля: `requireMention`, `tools`, `toolsBySender`.
|
||||
- `channels.signal.accounts.<id>.groups`: версія `channels.signal.groups` для окремого облікового запису в налаштуваннях із кількома обліковими записами.
|
||||
- `channels.signal.historyLimit`: максимальна кількість повідомлень групи, які потрібно включати як контекст (0 вимикає).
|
||||
- `channels.signal.dmHistoryLimit`: ліміт історії DM у ходах користувача. Перевизначення для окремих користувачів: `channels.signal.dms["<phone_or_uuid>"].historyLimit`.
|
||||
- `channels.signal.historyLimit`: максимальна кількість групових повідомлень, які включати як контекст (0 вимикає).
|
||||
- `channels.signal.dmHistoryLimit`: ліміт історії особистих повідомлень у ходах користувача. Перевизначення для окремих користувачів: `channels.signal.dms["<phone_or_uuid>"].historyLimit`.
|
||||
- `channels.signal.textChunkLimit`: розмір вихідного фрагмента (символи).
|
||||
- `channels.signal.chunkMode`: `length` (за замовчуванням) або `newline`, щоб розділяти за порожніми рядками (межами абзаців) перед розбиттям за довжиною.
|
||||
- `channels.signal.mediaMaxMb`: обмеження для вхідних/вихідних медіа (МБ).
|
||||
- `channels.signal.chunkMode`: `length` (типово) або `newline`, щоб розбивати за порожніми рядками (межами абзаців) перед розбиттям за довжиною.
|
||||
- `channels.signal.mediaMaxMb`: ліміт вхідних/вихідних медіа (МБ).
|
||||
|
||||
Пов’язані глобальні параметри:
|
||||
|
||||
@ -340,7 +340,7 @@ grep -i "signal" "/tmp/openclaw/openclaw-$(date +%Y-%m-%d).log" | tail -20
|
||||
## Пов’язане
|
||||
|
||||
- [Огляд каналів](/uk/channels) — усі підтримувані канали
|
||||
- [Спарювання](/uk/channels/pairing) — автентифікація DM і процес спарювання
|
||||
- [Групи](/uk/channels/groups) — поведінка групового чату й обмеження за згадками
|
||||
- [Сполучення](/uk/channels/pairing) — автентифікація особистих повідомлень і потік сполучення
|
||||
- [Групи](/uk/channels/groups) — поведінка групових чатів і керування згадками
|
||||
- [Маршрутизація каналів](/uk/channels/channel-routing) — маршрутизація сеансів для повідомлень
|
||||
- [Безпека](/uk/gateway/security) — модель доступу та посилення захисту
|
||||
- [Безпека](/uk/gateway/security) — модель доступу й посилення захисту
|
||||
|
||||
Loading…
Reference in New Issue
Block a user