diff --git a/docs/uk/channels/feishu.md b/docs/uk/channels/feishu.md index da94b150e..ec1879ee7 100644 --- a/docs/uk/channels/feishu.md +++ b/docs/uk/channels/feishu.md @@ -2,28 +2,28 @@ read_when: - Ви хочете підключити бота Feishu/Lark - Ви налаштовуєте канал Feishu -summary: Огляд, можливості та налаштування бота Feishu +summary: Огляд бота Feishu, функції та налаштування title: Feishu x-i18n: - generated_at: "2026-04-23T20:43:38Z" + generated_at: "2026-04-24T01:17:06Z" model: gpt-5.4 provider: openai - source_hash: 76565e89007211ba194ea9ab47ba926f5c9b5d12782d046bc94995a075671f02 + source_hash: f68a03c457fb2be7654f298fbad759705983d9e673b7b7b950609694894bdcbc source_path: channels/feishu.md workflow: 15 --- # Feishu / Lark -Feishu/Lark — це універсальна платформа для співпраці, де команди спілкуються в чаті, діляться документами, керують календарями та спільно виконують роботу. +Feishu/Lark — це універсальна платформа для співпраці, де команди спілкуються в чаті, діляться документами, керують календарями та разом виконують роботу. -**Статус:** готово до production для DM ботів і групових чатів. WebSocket — режим за замовчуванням; режим webhook є необов’язковим. +**Статус:** готово до використання у продакшені для особистих повідомлень боту та групових чатів. WebSocket — режим за замовчуванням; режим Webhook є необов’язковим. --- ## Швидкий старт -> **Потрібен OpenClaw 2026.4.23 або новіший.** Щоб перевірити, виконайте `openclaw --version`. Щоб оновити, виконайте `openclaw update`. +> **Потрібен OpenClaw 2026.4.24 або новіший.** Виконайте `openclaw --version`, щоб перевірити. Оновіть за допомогою `openclaw update`. @@ -44,16 +44,16 @@ Feishu/Lark — це універсальна платформа для спів ## Керування доступом -### Прямі повідомлення +### Особисті повідомлення -Налаштуйте `dmPolicy`, щоб керувати тим, хто може надсилати боту прямі повідомлення: +Налаштуйте `dmPolicy`, щоб визначити, хто може надсилати боту особисті повідомлення: -- `"pairing"` — невідомі користувачі отримують код спарювання; схваліть через CLI -- `"allowlist"` — спілкуватися можуть лише користувачі, перелічені в `allowFrom` (типово: лише власник бота) +- `"pairing"` — невідомі користувачі отримують код сполучення; схвалення через CLI +- `"allowlist"` — спілкуватися можуть лише користувачі, перелічені в `allowFrom` (за замовчуванням: лише власник бота) - `"open"` — дозволити всіх користувачів -- `"disabled"` — вимкнути всі прямі повідомлення +- `"disabled"` — вимкнути всі особисті повідомлення -**Схвалити запит на спарювання:** +**Схвалити запит на сполучення:** ```bash openclaw pairing list feishu @@ -62,25 +62,25 @@ openclaw pairing approve feishu ### Групові чати -**Політика для груп** (`channels.feishu.groupPolicy`): +**Політика груп** (`channels.feishu.groupPolicy`): -| Value | Behavior | -| ------------- | --------------------------------------- | -| `"open"` | Відповідати на всі повідомлення в групах | -| `"allowlist"` | Відповідати лише групам із `groupAllowFrom` | -| `"disabled"` | Вимкнути всі повідомлення в групах | +| Value | Поведінка | +| ------------- | ------------------------------------------- | +| `"open"` | Відповідати на всі повідомлення в групах | +| `"allowlist"` | Відповідати лише групам у `groupAllowFrom` | +| `"disabled"` | Вимкнути всі повідомлення в групах | -Типове значення: `allowlist` +За замовчуванням: `allowlist` **Вимога згадки** (`channels.feishu.requireMention`): -- `true` — вимагати @згадку (типово) +- `true` — вимагати @згадку (за замовчуванням) - `false` — відповідати без @згадки - Перевизначення для окремої групи: `channels.feishu.groups..requireMention` --- -## Приклади налаштування груп +## Приклади конфігурації груп ### Дозволити всі групи, @згадка не потрібна @@ -114,7 +114,7 @@ openclaw pairing approve feishu channels: { feishu: { groupPolicy: "allowlist", - // IDs груп мають вигляд: oc_xxx + // ID груп мають вигляд: oc_xxx groupAllowFrom: ["oc_xxx", "oc_yyy"], }, }, @@ -131,7 +131,7 @@ openclaw pairing approve feishu groupAllowFrom: ["oc_xxx"], groups: { oc_xxx: { - // User open_ids мають вигляд: ou_xxx + // open_id користувачів мають вигляд: ou_xxx allowFrom: ["ou_user1", "ou_user2"], }, }, @@ -148,19 +148,19 @@ openclaw pairing approve feishu ### ID групи (`chat_id`, формат: `oc_xxx`) -Відкрийте групу у Feishu/Lark, натисніть значок меню у верхньому правому куті й перейдіть до **Settings**. ID групи (`chat_id`) вказано на сторінці налаштувань. +Відкрийте групу у Feishu/Lark, натисніть значок меню у верхньому правому куті та перейдіть до **Settings**. ID групи (`chat_id`) указано на сторінці налаштувань. ![Отримання ID групи](/images/feishu-get-group-id.png) ### ID користувача (`open_id`, формат: `ou_xxx`) -Запустіть Gateway, надішліть боту пряме повідомлення, а потім перевірте журнали: +Запустіть Gateway, надішліть боту особисте повідомлення, а потім перевірте логи: ```bash openclaw logs --follow ``` -Шукайте `open_id` у виводі журналу. Ви також можете перевірити запити на спарювання, які очікують розгляду: +Знайдіть `open_id` у виводі логів. Ви також можете перевірити запити на сполучення, що очікують схвалення: ```bash openclaw pairing list feishu @@ -170,43 +170,43 @@ openclaw pairing list feishu ## Поширені команди -| Command | Description | -| --------- | ------------------------------- | -| `/status` | Показати статус бота | -| `/reset` | Скинути поточну сесію | -| `/model` | Показати або змінити AI-модель | +| Command | Опис | +| --------- | ----------------------------- | +| `/status` | Показати статус бота | +| `/reset` | Скинути поточну сесію | +| `/model` | Показати або змінити AI-модель | -> Feishu/Lark не підтримує вбудовані меню slash-команд, тому надсилайте їх як звичайні текстові повідомлення. +> Feishu/Lark не підтримує нативні меню slash-команд, тому надсилайте їх як звичайні текстові повідомлення. --- -## Усунення несправностей +## Усунення неполадок ### Бот не відповідає в групових чатах 1. Переконайтеся, що бота додано до групи -2. Переконайтеся, що ви @згадуєте бота (типово це обов’язково) +2. Переконайтеся, що ви @згадуєте бота (це потрібно за замовчуванням) 3. Перевірте, що `groupPolicy` не має значення `"disabled"` -4. Перевірте журнали: `openclaw logs --follow` +4. Перевірте логи: `openclaw logs --follow` ### Бот не отримує повідомлення -1. Переконайтеся, що бота опубліковано й схвалено в Feishu Open Platform / Lark Developer -2. Переконайтеся, що підписка на події містить `im.message.receive_v1` +1. Переконайтеся, що бот опублікований і схвалений у Feishu Open Platform / Lark Developer +2. Переконайтеся, що підписка на події включає `im.message.receive_v1` 3. Переконайтеся, що вибрано **persistent connection** (WebSocket) -4. Переконайтеся, що надано всі потрібні дозволи доступу +4. Переконайтеся, що надано всі потрібні дозволи 5. Переконайтеся, що Gateway запущено: `openclaw gateway status` -6. Перевірте журнали: `openclaw logs --follow` +6. Перевірте логи: `openclaw logs --follow` -### Витік App Secret +### App Secret скомпрометовано 1. Скиньте App Secret у Feishu Open Platform / Lark Developer -2. Оновіть значення у вашій конфігурації +2. Оновіть значення у своїй конфігурації 3. Перезапустіть Gateway: `openclaw gateway restart` --- -## Розширене налаштування +## Розширена конфігурація ### Кілька облікових записів @@ -219,12 +219,12 @@ openclaw pairing list feishu main: { appId: "cli_xxx", appSecret: "xxx", - name: "Primary bot", + name: "Основний бот", }, backup: { appId: "cli_yyy", appSecret: "yyy", - name: "Backup bot", + name: "Резервний бот", enabled: false, }, }, @@ -237,19 +237,19 @@ openclaw pairing list feishu ### Обмеження повідомлень -- `textChunkLimit` — розмір фрагмента вихідного тексту (типово: `2000` символів) -- `mediaMaxMb` — ліміт завантаження/вивантаження медіа (типово: `30` МБ) +- `textChunkLimit` — розмір фрагмента вихідного тексту (за замовчуванням: `2000` символів) +- `mediaMaxMb` — ліміт завантаження/вивантаження медіа (за замовчуванням: `30` МБ) -### Streaming +### Потокове передавання -Feishu/Lark підтримує потокові відповіді через інтерактивні картки. Коли цю можливість увімкнено, бот оновлює картку в реальному часі під час генерування тексту. +Feishu/Lark підтримує потокові відповіді через інтерактивні картки. Коли це ввімкнено, бот оновлює картку в реальному часі під час генерації тексту. ```json5 { channels: { feishu: { - streaming: true, // увімкнути потокове виведення в картці (типово: true) - blockStreaming: true, // увімкнути потокове виведення на рівні блоків (типово: true) + streaming: true, // увімкнути виведення потокових карток (за замовчуванням: true) + blockStreaming: true, // увімкнути потокове передавання на рівні блоків (за замовчуванням: true) }, }, } @@ -257,12 +257,12 @@ Feishu/Lark підтримує потокові відповіді через і Установіть `streaming: false`, щоб надсилати повну відповідь одним повідомленням. -### Оптимізація квот +### Оптимізація квоти Зменште кількість викликів API Feishu/Lark за допомогою двох необов’язкових прапорців: -- `typingIndicator` (типово `true`): установіть `false`, щоб пропустити виклики реакції набору -- `resolveSenderNames` (типово `true`): установіть `false`, щоб пропустити пошук профілів відправників +- `typingIndicator` (за замовчуванням `true`): установіть `false`, щоб пропустити виклики реакції набору тексту +- `resolveSenderNames` (за замовчуванням `true`): установіть `false`, щоб пропустити пошук профілів відправників ```json5 { @@ -277,7 +277,7 @@ Feishu/Lark підтримує потокові відповіді через і ### Сесії ACP -Feishu/Lark підтримує ACP для прямих повідомлень і повідомлень у гілках груп. ACP у Feishu/Lark керується текстовими командами — вбудованих меню slash-команд немає, тому використовуйте повідомлення `/acp ...` безпосередньо в розмові. +Feishu/Lark підтримує ACP для особистих повідомлень і повідомлень у гілках груп. ACP у Feishu/Lark керується текстовими командами — нативних меню slash-команд немає, тому використовуйте повідомлення `/acp ...` безпосередньо в розмові. #### Постійна прив’язка ACP @@ -325,17 +325,17 @@ Feishu/Lark підтримує ACP для прямих повідомлень і #### Запуск ACP із чату -У прямому повідомленні або гілці Feishu/Lark: +У особистому повідомленні або гілці Feishu/Lark: ```text /acp spawn codex --thread here ``` -`--thread here` працює для прямих повідомлень і повідомлень у гілках Feishu/Lark. Подальші повідомлення в прив’язаній розмові спрямовуються безпосередньо до цієї сесії ACP. +`--thread here` працює для особистих повідомлень і повідомлень у гілках Feishu/Lark. Подальші повідомлення в прив’язаній розмові маршрутизуються безпосередньо до цієї сесії ACP. ### Маршрутизація між кількома агентами -Використовуйте `bindings`, щоб спрямовувати прямі повідомлення або групи Feishu/Lark до різних агентів. +Використовуйте `bindings`, щоб маршрутизувати особисті повідомлення або групи Feishu/Lark до різних агентів. ```json5 { @@ -368,44 +368,44 @@ Feishu/Lark підтримує ACP для прямих повідомлень і Поля маршрутизації: - `match.channel`: `"feishu"` -- `match.peer.kind`: `"direct"` (DM) або `"group"` (груповий чат) +- `match.peer.kind`: `"direct"` (особисте повідомлення) або `"group"` (груповий чат) - `match.peer.id`: Open ID користувача (`ou_xxx`) або ID групи (`oc_xxx`) -Див. [Отримання ID групи/користувача](#get-groupuser-ids), щоб дізнатися, як їх знайти. +Поради щодо пошуку дивіться в розділі [Отримання ID групи/користувача](#get-groupuser-ids). --- -## Довідник із конфігурації +## Довідник конфігурації -Повна конфігурація: [Gateway configuration](/uk/gateway/configuration) +Повна конфігурація: [Конфігурація Gateway](/uk/gateway/configuration) -| Setting | Description | Default | -| ------------------------------------------------- | ---------------------------------------- | ---------------- | -| `channels.feishu.enabled` | Увімкнути/вимкнути канал | `true` | -| `channels.feishu.domain` | Домен API (`feishu` або `lark`) | `feishu` | +| Setting | Опис | За замовчуванням | +| ------------------------------------------------- | ------------------------------------------- | ---------------- | +| `channels.feishu.enabled` | Увімкнути/вимкнути канал | `true` | +| `channels.feishu.domain` | Домен API (`feishu` або `lark`) | `feishu` | | `channels.feishu.connectionMode` | Транспорт подій (`websocket` або `webhook`) | `websocket` | -| `channels.feishu.defaultAccount` | Типовий обліковий запис для вихідної маршрутизації | `default` | -| `channels.feishu.verificationToken` | Потрібно для режиму webhook | — | -| `channels.feishu.encryptKey` | Потрібно для режиму webhook | — | -| `channels.feishu.webhookPath` | Шлях маршруту webhook | `/feishu/events` | -| `channels.feishu.webhookHost` | Хост прив’язки webhook | `127.0.0.1` | -| `channels.feishu.webhookPort` | Порт прив’язки webhook | `3000` | -| `channels.feishu.accounts..appId` | App ID | — | -| `channels.feishu.accounts..appSecret` | App Secret | — | -| `channels.feishu.accounts..domain` | Перевизначення домену для облікового запису | `feishu` | -| `channels.feishu.dmPolicy` | Політика прямих повідомлень | `allowlist` | -| `channels.feishu.allowFrom` | allowlist для прямих повідомлень (список `open_id`) | [BotOwnerId] | -| `channels.feishu.groupPolicy` | Політика груп | `allowlist` | -| `channels.feishu.groupAllowFrom` | allowlist для груп | — | -| `channels.feishu.requireMention` | Вимагати @згадку в групах | `true` | -| `channels.feishu.groups..requireMention` | Перевизначення @згадки для окремої групи | inherited | -| `channels.feishu.groups..enabled` | Увімкнути/вимкнути конкретну групу | `true` | -| `channels.feishu.textChunkLimit` | Розмір фрагмента повідомлення | `2000` | -| `channels.feishu.mediaMaxMb` | Ліміт розміру медіа | `30` | -| `channels.feishu.streaming` | Потокове виведення в картці | `true` | -| `channels.feishu.blockStreaming` | Потокове виведення на рівні блоків | `true` | -| `channels.feishu.typingIndicator` | Надсилати реакції набору | `true` | -| `channels.feishu.resolveSenderNames` | Визначати відображувані імена відправників | `true` | +| `channels.feishu.defaultAccount` | Обліковий запис за замовчуванням для вихідної маршрутизації | `default` | +| `channels.feishu.verificationToken` | Потрібно для режиму webhook | — | +| `channels.feishu.encryptKey` | Потрібно для режиму webhook | — | +| `channels.feishu.webhookPath` | Шлях маршруту Webhook | `/feishu/events` | +| `channels.feishu.webhookHost` | Хост прив’язки Webhook | `127.0.0.1` | +| `channels.feishu.webhookPort` | Порт прив’язки Webhook | `3000` | +| `channels.feishu.accounts..appId` | App ID | — | +| `channels.feishu.accounts..appSecret` | App Secret | — | +| `channels.feishu.accounts..domain` | Перевизначення домену для окремого облікового запису | `feishu` | +| `channels.feishu.dmPolicy` | Політика особистих повідомлень | `allowlist` | +| `channels.feishu.allowFrom` | Список дозволених для особистих повідомлень (список `open_id`) | [BotOwnerId] | +| `channels.feishu.groupPolicy` | Політика груп | `allowlist` | +| `channels.feishu.groupAllowFrom` | Список дозволених груп | — | +| `channels.feishu.requireMention` | Вимагати @згадку в групах | `true` | +| `channels.feishu.groups..requireMention` | Перевизначення @згадки для окремої групи | inherited | +| `channels.feishu.groups..enabled` | Увімкнути/вимкнути окрему групу | `true` | +| `channels.feishu.textChunkLimit` | Розмір фрагмента повідомлення | `2000` | +| `channels.feishu.mediaMaxMb` | Ліміт розміру медіа | `30` | +| `channels.feishu.streaming` | Виведення потокових карток | `true` | +| `channels.feishu.blockStreaming` | Потокове передавання на рівні блоків | `true` | +| `channels.feishu.typingIndicator` | Надсилати реакції набору тексту | `true` | +| `channels.feishu.resolveSenderNames` | Визначати відображувані імена відправників | `true` | --- @@ -429,20 +429,20 @@ Feishu/Lark підтримує ACP для прямих повідомлень і - ✅ Аудіо - ✅ Відео/медіа - ✅ Інтерактивні картки (включно з потоковими оновленнями) -- ⚠️ Форматований текст (форматування у стилі post; не підтримує всі можливості авторингу Feishu/Lark) +- ⚠️ Форматований текст (форматування у стилі post; не підтримує всі можливості створення вмісту Feishu/Lark) ### Гілки та відповіді - ✅ Вбудовані відповіді -- ✅ Відповіді в гілках -- ✅ Відповіді з медіа зберігають прив’язку до гілки під час відповіді на повідомлення в гілці +- ✅ Відповіді у гілках +- ✅ Відповіді з медіа залишаються прив’язаними до гілки під час відповіді на повідомлення в гілці --- ## Пов’язане - [Огляд каналів](/uk/channels) — усі підтримувані канали -- [Спарювання](/uk/channels/pairing) — автентифікація DM і процес спарювання -- [Групи](/uk/channels/groups) — поведінка групових чатів і керування через згадки +- [Сполучення](/uk/channels/pairing) — автентифікація особистих повідомлень і процес сполучення +- [Групи](/uk/channels/groups) — поведінка групових чатів і обмеження через згадки - [Маршрутизація каналів](/uk/channels/channel-routing) — маршрутизація сесій для повідомлень - [Безпека](/uk/gateway/security) — модель доступу та посилення захисту