- вузол iOS (спарений через Gateway): захоплення фото (
jpg) або короткого відеокліпу (mp4, з необов’язковим аудіо) черезnode.invoke. - вузол Android (спарений через Gateway): захоплення фото (
jpg) або короткого відеокліпу (mp4, з необов’язковим аудіо) черезnode.invoke. - застосунок macOS (вузол через Gateway): захоплення фото (
jpg) або короткого відеокліпу (mp4, з необов’язковим аудіо) черезnode.invoke.
Вузол iOS
Налаштування користувача (увімкнено за замовчуванням)
- Вкладка налаштувань iOS → Camera → Allow Camera (
camera.enabled)- За замовчуванням: увімкнено (відсутній ключ вважається ввімкненим).
- Коли вимкнено: команди
camera.*повертаютьCAMERA_DISABLED.
Команди (через Gateway node.invoke)
-
camera.list- Корисне навантаження відповіді:
devices: масив{ id, name, position, deviceType }
- Корисне навантаження відповіді:
-
camera.snap- Параметри:
facing:front|back(за замовчуванням:front)maxWidth: число (необов’язково; за замовчуванням1600на вузлі iOS)quality:0..1(необов’язково; за замовчуванням0.9)format: наразіjpgdelayMs: число (необов’язково; за замовчуванням0)deviceId: рядок (необов’язково; зcamera.list)
- Корисне навантаження відповіді:
format: "jpg"base64: "<...>"width,height
- Захист корисного навантаження: фото повторно стискаються, щоб утримувати корисне навантаження base64 меншим за 5 МБ.
- Параметри:
-
camera.clip- Параметри:
facing:front|back(за замовчуванням:front)durationMs: число (за замовчуванням3000, обмежується максимумом60000)includeAudio: boolean (за замовчуваннямtrue)format: наразіmp4deviceId: рядок (необов’язково; зcamera.list)
- Корисне навантаження відповіді:
format: "mp4"base64: "<...>"durationMshasAudio
- Параметри:
Вимога активного переднього плану
Як іcanvas.*, вузол iOS дозволяє команди camera.* лише на передньому плані. Виклики у фоновому режимі повертають NODE_BACKGROUND_UNAVAILABLE.
Допоміжний засіб CLI
Найпростіший спосіб отримати медіафайли — скористатися допоміжним засобом CLI, який записує декодовані медіа в тимчасовий файл і виводить збережений шлях. Приклади:nodes camera snapза замовчуванням використовує обидва напрями камери, щоб надати агенту обидва огляди.- Вихідні файли є тимчасовими (у тимчасовому каталозі ОС), якщо ви не створите власну обгортку.
Вузол Android
Налаштування користувача Android (увімкнено за замовчуванням)
- Аркуш налаштувань Android → Camera → Allow Camera (
camera.enabled)- За замовчуванням: увімкнено (відсутній ключ вважається ввімкненим).
- Коли вимкнено: команди
camera.*повертаютьCAMERA_DISABLED.
Дозволи
- Android вимагає дозволів часу виконання:
CAMERAдляcamera.snapіcamera.clip.RECORD_AUDIOдляcamera.clip, колиincludeAudio=true.
camera.* завершуються помилкою
*_PERMISSION_REQUIRED.
Вимога активного переднього плану Android
Як іcanvas.*, вузол Android дозволяє команди camera.* лише на передньому плані. Виклики у фоновому режимі повертають NODE_BACKGROUND_UNAVAILABLE.
Команди Android (через Gateway node.invoke)
camera.list- Корисне навантаження відповіді:
devices: масив{ id, name, position, deviceType }
- Корисне навантаження відповіді:
Захист корисного навантаження
Фото повторно стискаються, щоб утримувати корисне навантаження base64 меншим за 5 МБ.Застосунок macOS
Налаштування користувача (вимкнено за замовчуванням)
Супутній застосунок macOS надає прапорець:- Settings → General → Allow Camera (
openclaw.cameraEnabled)- За замовчуванням: вимкнено
- Коли вимкнено: запити камери повертають “Камеру вимкнено користувачем”.
Допоміжний засіб CLI (виклик вузла)
Використовуйте основний CLIopenclaw, щоб викликати команди камери на вузлі macOS.
Приклади:
openclaw nodes camera snapза замовчуванням використовуєmaxWidth=1600, якщо це не перевизначено.- На macOS
camera.snapчекаєdelayMs(за замовчуванням 2000 мс) після прогрівання/стабілізації експозиції перед захопленням. - Корисні навантаження фото повторно стискаються, щоб утримувати base64 меншим за 5 МБ.
Безпека й практичні обмеження
- Доступ до камери та мікрофона запускає звичайні запити дозволів ОС (і потребує рядків використання в Info.plist).
- Відеокліпи обмежені (наразі
<= 60s), щоб уникнути завеликих корисних навантажень вузла (накладні витрати base64 + обмеження повідомлень).
Відео екрана macOS (на рівні ОС)
Для відео екрана (не камери) використовуйте супутній застосунок macOS:- Потребує дозволу macOS Screen Recording (TCC).