Google Meet (Plugin)
Підтримка учасників Google Meet для OpenClaw. Plugin навмисно зроблено явним:- Він приєднується лише за явною URL-адресою
https://meet.google.com/.... - Голосовий режим
realtimeє типовим режимом. - Голосовий режим реального часу може звертатися назад до повного агента OpenClaw, коли потрібні глибші міркування або інструменти.
- Автентифікація починається як особистий Google OAuth або вже виконаний вхід у профіль Chrome.
- Автоматичного оголошення згоди немає.
- Типовим аудіобекендом Chrome є
BlackHole 2ch. - Twilio приймає номер для дозвону, а також необов’язковий PIN-код або послідовність DTMF.
- Команда CLI —
googlemeet;meetзарезервовано для ширших робочих процесів агентських телеконференцій.
Швидкий старт
Установіть локальні аудіозалежності та переконайтеся, що постачальникrealtime може використовувати OpenAI:
blackhole-2ch установлює віртуальний аудіопристрій BlackHole 2ch. Інсталятор Homebrew вимагає перезавантаження, перш ніж macOS зробить пристрій доступним:
google_meet:
BlackHole 2ch для шляху мікрофона/динаміка, який використовує OpenClaw. Для чистого двостороннього аудіо використовуйте окремі віртуальні пристрої або граф на кшталт Loopback; одного пристрою BlackHole достатньо для першого smoke-тесту, але він може створювати луну.
Примітки щодо встановлення
Типовий режим Chrome realtime використовує два зовнішні інструменти:sox: утиліта командного рядка для аудіо. Plugin використовує її командиrecіplayдля типового аудіомосту G.711 mu-law на 8 кГц.blackhole-2ch: віртуальний аудіодрайвер macOS. Він створює аудіопристрійBlackHole 2ch, через який Chrome/Meet можуть маршрутизувати аудіо.
LGPL-2.0-only AND GPL-2.0-only; BlackHole має ліцензію GPL-3.0. Якщо ви збираєте інсталятор або appliance, який містить BlackHole разом з OpenClaw, перегляньте умови вихідної ліцензії BlackHole або отримайте окрему ліцензію від Existential Audio.
Транспорти
Chrome
Транспорт Chrome відкриває URL-адресу Meet у Google Chrome і приєднується як профіль Chrome, у якому вже виконано вхід. У macOS Plugin перед запуском перевіряє наявністьBlackHole 2ch. Якщо це налаштовано, він також запускає команду перевірки стану аудіомосту та команду запуску перед відкриттям Chrome.
BlackHole 2ch не встановлено, приєднання завершується помилкою налаштування замість тихого підключення без аудіошляху.
Twilio
Транспорт Twilio — це строгий план набору, делегований Plugin Voice Call. Він не аналізує сторінки Meet, щоб отримати номери телефону.--dtmf-sequence, коли зустріч потребує спеціальної послідовності:
OAuth і попередня перевірка
Доступ до Google Meet Media API спочатку використовує особистий OAuth-клієнт. Налаштуйтеoauth.clientId і, за потреби, oauth.clientSecret, а потім виконайте:
oauth з токеном оновлення. Вона використовує PKCE, callback localhost на http://localhost:8085/oauth2callback і ручний потік копіювання/вставлення з --manual.
Як резервні варіанти підтримуються такі змінні середовища:
OPENCLAW_GOOGLE_MEET_CLIENT_IDабоGOOGLE_MEET_CLIENT_IDOPENCLAW_GOOGLE_MEET_CLIENT_SECRETабоGOOGLE_MEET_CLIENT_SECRETOPENCLAW_GOOGLE_MEET_REFRESH_TOKENабоGOOGLE_MEET_REFRESH_TOKENOPENCLAW_GOOGLE_MEET_ACCESS_TOKENабоGOOGLE_MEET_ACCESS_TOKENOPENCLAW_GOOGLE_MEET_ACCESS_TOKEN_EXPIRES_ATабоGOOGLE_MEET_ACCESS_TOKEN_EXPIRES_ATOPENCLAW_GOOGLE_MEET_DEFAULT_MEETINGабоGOOGLE_MEET_DEFAULT_MEETINGOPENCLAW_GOOGLE_MEET_PREVIEW_ACKабоGOOGLE_MEET_PREVIEW_ACK
spaces/{id} через spaces.get:
preview.enrollmentAcknowledged: true лише після підтвердження, що ваш Cloud project, OAuth principal і учасники зустрічі зареєстровані в Google Workspace Developer Preview Program для Meet media APIs.
Конфігурація
Для поширеного шляху Chrome realtime достатньо лише ввімкненого Plugin, BlackHole, SoX і ключа OpenAI:plugins.entries.google-meet.config:
defaultTransport: "chrome"defaultMode: "realtime"chrome.audioBackend: "blackhole-2ch"chrome.audioInputCommand: команда SoXrec, що записує аудіо G.711 mu-law 8 кГц у stdoutchrome.audioOutputCommand: команда SoXplay, що читає аудіо G.711 mu-law 8 кГц зі stdinrealtime.provider: "openai"realtime.toolPolicy: "safe-read-only"realtime.instructions: короткі усні відповіді, зopenclaw_agent_consultдля глибших відповідей
Інструмент
Агенти можуть використовувати інструментgoogle_meet:
action: "status", щоб переглянути активні сеанси або перевірити ідентифікатор сеансу. Використовуйте action: "leave", щоб позначити сеанс як завершений.
Консультація агента в реальному часі
Режим Chrome realtime оптимізовано для живого голосового циклу. Постачальник голосу реального часу чує аудіо зустрічі й говорить через налаштований аудіоміст. Коли моделі реального часу потрібні глибші міркування, актуальна інформація або звичайні інструменти OpenClaw, вона може викликатиopenclaw_agent_consult.
Інструмент консультації запускає звичайного агента OpenClaw у фоновому режимі з контекстом недавньої стенограми зустрічі та повертає стислу усну відповідь до голосового сеансу реального часу. Потім голосова модель може озвучити цю відповідь назад у зустріч.
realtime.toolPolicy керує запуском консультації:
safe-read-only: показує інструмент консультації та обмежує звичайного агента інструментамиread,web_search,web_fetch,x_search,memory_searchіmemory_get.owner: показує інструмент консультації та дозволяє звичайному агенту використовувати звичайну політику інструментів агента.none: не показує інструмент консультації моделі голосу реального часу.
Примітки
Офіційний media API Google Meet орієнтований на отримання, тому для мовлення в дзвінок Meet усе ще потрібен шлях участі. Цей Plugin залишає цю межу видимою: Chrome обробляє участь через браузер і локальну маршрутизацію аудіо; Twilio обробляє участь через телефонний дозвін. Режиму Chrome realtime потрібен один із таких варіантів:chrome.audioInputCommandплюсchrome.audioOutputCommand: OpenClaw керує мостом моделі реального часу та передає аудіо G.711 mu-law 8 кГц між цими командами й вибраним постачальником голосу реального часу.chrome.audioBridgeCommand: зовнішня команда мосту керує всім локальним аудіошляхом і має завершитися після запуску або перевірки свого демона.
googlemeet leave зупиняє аудіоміст реального часу з парою команд для сеансів Chrome. Для сеансів Twilio, делегованих через Plugin Voice Call, він також завершує базовий голосовий виклик.