本页内容
本页内容
插件指南
Google 满足配置
插件配置默认值、可选覆盖和语音提供程序示例。 Google Meet 插件 指南的一部分。
配置
通用的 Chrome agent 路径只需要启用插件、BlackHole、SoX、一个实时提供商密钥,以及一个已配置的 OpenClaw TTS 提供商:
默认值
| 键 | 默认值 | 笔记 |
|---|---|---|
defaultTransport |
"chrome" |
|
defaultMode |
"agent" |
"realtime" 是 "agent" 的旧版别名;新调用方应使用 "agent" |
chromeNode.node |
未设置 | Node id/name/IP 为 chrome-node;当可能连接多个有能力的节点时需要 |
chrome.launch |
true |
为加入通话启动 Chrome;仅在复用已打开的会话时设为 false |
chrome.audioBackend |
"auto" |
在 macOS 上选择 blackhole-2ch 或在 Linux 上选择 pipewire-pulse;当配对的 Chrome 节点使用与网关不同的 OS 时,设置显式后端 |
chrome.guestName |
"OpenClaw Agent" |
显示在未登录状态的 Meet 来宾界面上 |
chrome.autoJoin |
true |
在 chrome-node 上尽力填写来宾名称并点击“立即加入” |
chrome.reuseExistingTab |
true |
激活现有的 Meet 标签页,而不是打开重复的标签页 |
chrome.waitForInCallMs |
20000 |
等待 Meet 标签页报告已进入通话状态,然后再播放语音回复开场白 |
chrome.audioFormat |
"pcm16-24khz" |
命令对音频格式; "g711-ulaw-8khz" 仅适用于发出电话音频的 legacy/custom 命令对 |
chrome.audioBufferBytes |
4096 |
用于推导生成的命令延迟的处理缓冲区;值会被限制为至少 17 字节 |
chrome.audioInputCommand |
生成的本机命令 | 显式命令向提供者提供参与者输入。如果没有覆盖,浏览器回放会提供参与者输入,生成的本机命令会验证助理注入。在 macOS 上使用 SoX/CoreAudio 或在 Linux 上使用 parec。 |
chrome.audioOutputCommand |
生成的本机命令 | 使用 macOS 上的 SoX/CoreAudio 或 Linux 上的 pacat 将助理语音注入虚拟麦克风。 |
chrome.bargeInInputCommand |
未设置 | 可选的独立本地麦克风,供提供商在网关托管的命令对桥上支持主机驱动的中断。 GPT-Live 自行处理中断,不启动该命令。 |
chrome.bargeInRmsThreshold |
650 |
被视为人为打断的 RMS 音量 |
chrome.bargeInPeakThreshold |
2500 |
被视为人为打断的峰值音量 |
chrome.bargeInCooldownMs |
900 |
两次重复打断清除之间的最短延迟 |
mode(每次请求) |
"agent" |
对讲模式;请参阅 Agent 和 bidi 模式 表 |
realtime.provider |
"openai" |
当下方的作用域字段未设置时使用的兼容性回退值 |
realtime.transcriptionProvider |
"openai" |
agent 模式用于实时转录的提供者 ID |
realtime.voiceProvider |
未设置 | bidi 模式使用的提供商 ID。设置"google"为Gemini Live或"openai"为OpenAI实时语音;与 realtime.model 配对以获得显式模型。 |
realtime.toolPolicy |
"safe-read-only" |
请参阅 代理和双向模式 |
realtime.instructions |
简短的语音回复指令 | 告知模型简短发言,并使用 openclaw_agent_consult 获取更深入的回答 |
realtime.introMessage |
"Say exactly: I'm here and listening." |
实时桥接连接时播放一次;设为 "" 可静默加入 |
realtime.agentId |
"main" |
OpenClaw 用于功能工具咨询和本机 Live 委派的代理 ID。 |
voiceCall.enabled |
true |
将 Twilio PSTN 通话、DTMF 和开场问候语交由 Voice Call 插件处理 |
voiceCall.dtmfDelayMs |
12000 |
在通过 Twilio 播放 PIN- 派生的 DTMF 序列之前引导等待 |
voiceCall.postDtmfSpeechDelayMs |
5000 |
Voice Call 启动 Twilio 通话线路后,请求实时开场问候语前的延迟 |
chrome.audioBridgeCommand 和 chrome.audioBridgeHealthCommand 让外部桥接器拥有整个本地音频路径,而不是 chrome.audioInputCommand/chrome.audioOutputCommand;有关哪种模式可以使用它们的约束,请参阅 Notes。
旧版 realtime.provider: "google" 形状存在 openclaw doctor --fix 迁移:当尚未设置这些字段时,它将将该意图移至 realtime.voiceProvider: "google" 加上 realtime.transcriptionProvider: "openai"。
GPT-Live with Cove
选择 bidi 模式进行 GPT-Live 语音。 agent模式继续使用实时转录和常规OpenClaw TTS;更改实时语音模型不会更改该模式的语音。
使用 openclaw models auth login --provider openai 登录网关主机,然后配置现有模型和提供程序字段:
这使用与 Discord 和 Talk 相同的网关拥有的 GPT-Live 路由,包括本机代理委派和提供商拥有的中断。将 chrome.audioFormat 保留为 24 kHz PCM16 默认值。现有的非固定会议配置保留提供商的默认模型;明确选择“实时”。
删除任何显式 chrome.audioInputCommand 以使用 Live 的托管隔离浏览器输入。现有的自定义输入命令保留了其他模型的提供者输入行为; Live 拒绝该路径,因为无法验证其隔离性。选择“实时”不会默默地放弃已配置的输入源。
对于公共平台 API 路由,请使用 model: "gpt-live-1" 和支持的语音(例如 voice: "marin"),并在网关主机上使用 OpenAI API 密钥。 cove属于Codex路线。请参阅 OpenAI 语音和语音 了解身份验证和 model/voice 兼容性。
可选覆盖
同时用于 agent 模式听和说的 ElevenLabs:
持久的 Meet 声音来自 tts.providers.elevenlabs.speakerVoiceId。当启用 TTS 模型覆盖时,代理回复还可以使用每个回复 [[tts:speakerVoiceId=... model=eleven_v3]] 指令,但配置会提供会议的固定默认值。加入时,日志显示 transcriptionProvider=elevenlabs,每个语音回复都会记录 provider=elevenlabs model=eleven_v3 speakerVoiceId=<voiceId>。
Twilio-仅配置:
当 voiceCall.enabled: true(默认值)且使用 Twilio 传输时,Voice Call 会在打开实时媒体流之前先拨打 DTMF 序列,然后使用保存的开场文本作为初始实时问候。如果未启用 voice-call,Google Meet 仍然可以验证并记录拨号计划,但无法发起 Twilio 呼叫。
保留 voiceCall.gatewayUrl 未设置以使用本地可信网关运行时,这会保留完整调用的调用代理。配置的网关 URL 仍然是显式的 WebSocket 目标,并且无法验证插件来源;非默认代理加入将被拒绝,而不是默默地使用另一个代理。当需要每个座席路由时,在同一网关进程中运行 Google Meet 和语音呼叫。