feat(plugins): simplify google meet realtime defaults

This commit is contained in:
Peter Steinberger
2026-04-24 03:03:14 +01:00
parent 28299a94ba
commit 0c9659b70c
6 changed files with 200 additions and 95 deletions

View File

@@ -103,7 +103,15 @@ Workspace Developer Preview Program for Meet media APIs.
## Config
Set config under `plugins.entries.google-meet.config`:
The common Chrome realtime path only needs the plugin enabled, BlackHole, SoX,
and an OpenAI key:
```bash
brew install blackhole-2ch sox
export OPENAI_API_KEY=sk-...
```
Set the plugin config under `plugins.entries.google-meet.config`:
```json5
{
@@ -111,86 +119,58 @@ Set config under `plugins.entries.google-meet.config`:
entries: {
"google-meet": {
enabled: true,
config: {
defaultTransport: "chrome",
defaultMode: "realtime",
defaults: {
meeting: "https://meet.google.com/abc-defg-hij",
},
preview: {
enrollmentAcknowledged: false,
},
chrome: {
audioBackend: "blackhole-2ch",
launch: true,
browserProfile: "Default",
// Command-pair bridge: input writes 8 kHz G.711 mu-law audio to stdout.
audioInputCommand: [
"rec",
"-q",
"-t",
"raw",
"-r",
"8000",
"-c",
"1",
"-e",
"mu-law",
"-b",
"8",
"-",
],
// Output reads 8 kHz G.711 mu-law audio from stdin.
audioOutputCommand: [
"play",
"-q",
"-t",
"raw",
"-r",
"8000",
"-c",
"1",
"-e",
"mu-law",
"-b",
"8",
"-",
],
},
twilio: {
defaultDialInNumber: "+15551234567",
defaultPin: "123456",
},
voiceCall: {
enabled: true,
gatewayUrl: "ws://127.0.0.1:18789",
dtmfDelayMs: 2500,
},
realtime: {
provider: "openai",
model: "gpt-realtime",
instructions: "You are joining a private Google Meet as my OpenClaw agent. Keep replies brief unless asked.",
toolPolicy: "safe-read-only",
providers: {
openai: {
apiKey: { env: "OPENAI_API_KEY" },
},
},
},
auth: {
provider: "google-oauth",
},
oauth: {
clientId: "your-google-oauth-client-id.apps.googleusercontent.com",
refreshToken: "stored-refresh-token",
},
},
config: {},
},
},
},
}
```
Defaults:
- `defaultTransport: "chrome"`
- `defaultMode: "realtime"`
- `chrome.audioBackend: "blackhole-2ch"`
- `chrome.audioInputCommand`: SoX `rec` command writing 8 kHz G.711 mu-law
audio to stdout
- `chrome.audioOutputCommand`: SoX `play` command reading 8 kHz G.711 mu-law
audio from stdin
- `realtime.provider: "openai"`
- `realtime.toolPolicy: "safe-read-only"`
- `realtime.instructions`: brief spoken replies, with
`openclaw_agent_consult` for deeper answers
Optional overrides:
```json5
{
defaults: {
meeting: "https://meet.google.com/abc-defg-hij",
},
chrome: {
browserProfile: "Default",
},
realtime: {
toolPolicy: "owner",
},
}
```
Twilio-only config:
```json5
{
defaultTransport: "twilio",
twilio: {
defaultDialInNumber: "+15551234567",
defaultPin: "123456",
},
voiceCall: {
gatewayUrl: "ws://127.0.0.1:18789",
},
}
```
## Tool
Agents can use the `google_meet` tool: