Skip to content

@vowel.to/client v0.3.3-beta


@vowel.to/client / index / VowelVoiceConfig

Interface: VowelVoiceConfig

Defined in: lib/vowel/types/types.ts:484

Properties

PropertyTypeDescriptionDefined in
token?stringEphemeral token for direct connections (bypasses token endpoint)lib/vowel/types/types.ts:486
provider?"gemini" | "openai" | "grok" | "vowel-core" | "vowel-prime"Provider to use ("gemini""openai"
model?stringModel 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:490
voice?stringVoice name (e.g., "Puck", "Charon", "Kore", "Fenrir", "Aoede" for Gemini; "alloy", "echo", "fable", "onyx", "nova", "shimmer" for OpenAI)lib/vowel/types/types.ts:492
language?stringLanguage code (e.g., "en-US")lib/vowel/types/types.ts:494
audioConfig?{ input?: { sampleRate?: number; channels?: number; encoding?: string; mimeType?: string; }; output?: { sampleRate?: number; channels?: number; encoding?: string; mimeType?: string; }; }Provider audio configuration. Use this to override provider defaults for microphone input and speaker output.lib/vowel/types/types.ts:499
audioConfig.input?{ sampleRate?: number; channels?: number; encoding?: string; mimeType?: string; }-lib/vowel/types/types.ts:500
audioConfig.input.sampleRate?number-lib/vowel/types/types.ts:501
audioConfig.input.channels?number-lib/vowel/types/types.ts:502
audioConfig.input.encoding?string-lib/vowel/types/types.ts:503
audioConfig.input.mimeType?string-lib/vowel/types/types.ts:504
audioConfig.output?{ sampleRate?: number; channels?: number; encoding?: string; mimeType?: string; }-lib/vowel/types/types.ts:506
audioConfig.output.sampleRate?number-lib/vowel/types/types.ts:507
audioConfig.output.channels?number-lib/vowel/types/types.ts:508
audioConfig.output.encoding?string-lib/vowel/types/types.ts:509
audioConfig.output.mimeType?string-lib/vowel/types/types.ts:510
speakingRate?numberSpeaking rate for TTS (1.0 = normal, 1.2 = 20% faster, 0.8 = 20% slower, default: 1.2) - for vowel-core/vowel-prime providers onlylib/vowel/types/types.ts:514
vadType?VADTypeVAD type - "simple" uses energy-based detection (fast), "silero" uses ML model (accurate), "none" disables client-side VAD Default undefined (deprecated - use turnDetection.mode instead, which defaults to 'client_vad') Deprecated Use turnDetection instead. The default is now 'client_vad' mode with 'silero-vad' adapter.lib/vowel/types/types.ts:520
useServerVad?booleanUse server-side VAD events for UI updates (default: false) - when true, uses server VAD events instead of client-side VAD for speaking statelib/vowel/types/types.ts:522
turnDetection?TurnDetectionConfigTurn detection configuration Controls how speech is detected and when responses are triggeredlib/vowel/types/types.ts:527
toolRetry?ToolRetryConfigTool retry and step limiting configurationlib/vowel/types/types.ts:529
vowelPrimeConfig?VowelPrimeConfigVowel websocket-provider-specific configuration (used by "vowel-core" and "vowel-prime")lib/vowel/types/types.ts:531
llmProvider?"groq" | "openrouter"LLM provider for vowel websocket providers (e.g., "groq", "openrouter") - determines which LLM backend to uselib/vowel/types/types.ts:533
openrouterOptions?{ provider?: string; siteUrl?: string; appName?: string; }OpenRouter-specific options (only used when llmProvider is "openrouter")lib/vowel/types/types.ts:535
openrouterOptions.provider?stringOpenRouter provider selection (e.g., "anthropic", "openai", "google")lib/vowel/types/types.ts:537
openrouterOptions.siteUrl?stringSite URL for OpenRouter analyticslib/vowel/types/types.ts:539
openrouterOptions.appName?stringApp name for OpenRouter analyticslib/vowel/types/types.ts:541
initialGreetingPrompt?stringInitial 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:548
clientIdleHibernateTimeoutMs?numberForce a client-side hibernation after this many milliseconds of inactivity. When the timer elapses, the client disconnects the realtime socket to avoid keeping a billable hosted session open while idle. Example: 10000 disconnects after 10 seconds of idle time.lib/vowel/types/types.ts:555
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:564