@vowel.to/client / index / VowelVoiceConfig
Interface: VowelVoiceConfig
Defined in: lib/vowel/types/types.ts:375
Voice configuration options
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
token? | string | Ephemeral token for direct connections (bypasses token endpoint) | lib/vowel/types/types.ts:377 |
provider? | "gemini" | "openai" | "vowel-prime" | Provider to use ("gemini" | "openai" |
model? | string | Model to use (e.g., "gemini-live-2.5-flash-preview" or "gemini-2.0-flash-live-001" for Gemini, "gpt-realtime" or "gpt-4o-realtime-preview" for OpenAI) | lib/vowel/types/types.ts:381 |
voice? | string | Voice name (e.g., "Puck", "Charon", "Kore", "Fenrir", "Aoede" for Gemini; "alloy", "echo", "fable", "onyx", "nova", "shimmer" for OpenAI) | lib/vowel/types/types.ts:383 |
language? | string | Language code (e.g., "en-US") | lib/vowel/types/types.ts:385 |
speakingRate? | number | Speaking rate for TTS (1.0 = normal, 1.2 = 20% faster, 0.8 = 20% slower, default: 1.2) - for vowel-prime provider only | lib/vowel/types/types.ts:387 |
vadType? | VADType | VAD type (default: "simple") - "simple" uses energy-based detection (fast), "silero" uses ML model (accurate), "none" disables client-side VAD | lib/vowel/types/types.ts:389 |
useServerVad? | boolean | Use server-side VAD events for UI updates (default: false) - when true, uses server VAD events instead of client-side VAD for speaking state | lib/vowel/types/types.ts:391 |
toolRetry? | ToolRetryConfig | Tool retry and step limiting configuration | lib/vowel/types/types.ts:393 |
vowelPrimeConfig? | VowelPrimeConfig | Vowel Prime specific configuration (only used when provider is "vowel-prime") | lib/vowel/types/types.ts:395 |
llmProvider? | "groq" | "openrouter" | LLM provider for vowel-prime (e.g., "groq", "openrouter") - determines which LLM backend to use | lib/vowel/types/types.ts:397 |
openrouterOptions? | { provider?: string; siteUrl?: string; appName?: string; } | OpenRouter-specific options (only used when llmProvider is "openrouter") | lib/vowel/types/types.ts:399 |
openrouterOptions.provider? | string | OpenRouter provider selection (e.g., "anthropic", "openai", "google") | lib/vowel/types/types.ts:401 |
openrouterOptions.siteUrl? | string | Site URL for OpenRouter analytics | lib/vowel/types/types.ts:403 |
openrouterOptions.appName? | string | App name for OpenRouter analytics | lib/vowel/types/types.ts:405 |
initialGreetingPrompt? | string | Initial greeting prompt When provided, the AI will generate an initial response based on this prompt Example: "Introduce yourself as a helpful shopping assistant" | lib/vowel/types/types.ts:412 |
turnDetectionPreset? | "aggressive" | "balanced" | "conservative" | Speech turn detection sensitivity preset Controls how quickly the AI responds after you stop speaking - "aggressive": Responds very quickly (best for short, rapid exchanges) - "balanced": Natural middle ground (good for most conversations) - "conservative": Waits longer before responding (best for complex speech, phone numbers, addresses) Default "balanced" | lib/vowel/types/types.ts:421 |