voice_bridge_say
Inject audio into an open Voice Bridge call. Two modes: (1) text — we synthesize speech in any of 602 languages (English, Spanish and German start fastest); (2) audio_base64 + encoding — bring your own audio (mulaw_8000 or pcm_l16_16000 for MVP). Keep each reply to one or two sentences: the call is turn-based. While you speak, the callee cannot interrupt, and what they say is NOT heard (transcription is muted so you do not hear yourself, and for under a second after). One call takes at most 700 speech units of text, about 45 seconds of speech (each Chinese, Japanese, Korean or Thai character counts 3): send a longer message as several calls. The call returns when the speech has finished playing. If it fails after part of the line was spoken, the error says so: do not repeat the start. No additional payment — covered by the session deposit.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"sessionId": "<sessionId>"
},
"name": "voice_bridge_say"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| text | No | Text to speak (mode 1). One or two sentences work best; at most 700 speech units (each Chinese, Japanese, Korean or Thai character counts 3), longer is refused with a 400. | |
| encoding | No | Encoding of audioBase64. mp3/opus require ffmpeg (not yet wired in MVP). | |
| language | No | Language override for this utterance (default: session language) | |
| sessionId | Yes | Session ID from open_voice_bridge | |
| audioBase64 | No | Pre-rendered audio bytes, base64 (mode 2). Use with 'encoding'. | |
| voiceDescription | No | OmniVoice voice-design words, one per group, separated by commas: male|female; child|teenager|young adult|middle-aged|elderly; very low|low|moderate|high|very high pitch; whisper; american|british|australian|canadian|indian|chinese|korean|japanese|portuguese|russian accent. When OmniVoice speaks the line, any other word is dropped: it speaks in its default voice and the reply carries a warning. When OmniVoice was not ready at open_voice_bridge, a fallback voice speaks and ignores this field. |