Add realtime voice selection (#17176)

- Add realtime voice selection for realtime/start.
- Expose the supported v1/v2 voice lists and cover explicit, configured,
default, and invalid voice paths.
This commit is contained in:
Ahmed Ibrahim
2026-04-08 20:19:15 -07:00
committed by GitHub
parent 4c2a1ae31b
commit 2f9090be62
36 changed files with 860 additions and 33 deletions

View File

@@ -455,6 +455,7 @@ pub enum RealtimeTransport {
}
pub use codex_protocol::protocol::RealtimeConversationVersion as RealtimeWsVersion;
pub use codex_protocol::protocol::RealtimeVoice;
#[derive(Serialize, Deserialize, Debug, Clone, Default, PartialEq, Eq, JsonSchema)]
#[schemars(deny_unknown_fields)]
@@ -463,6 +464,7 @@ pub struct RealtimeConfig {
#[serde(rename = "type")]
pub session_type: RealtimeWsMode,
pub transport: RealtimeTransport,
pub voice: Option<RealtimeVoice>,
}
#[derive(Serialize, Deserialize, Debug, Clone, Default, PartialEq, Eq, JsonSchema)]
@@ -472,6 +474,7 @@ pub struct RealtimeToml {
#[serde(rename = "type")]
pub session_type: Option<RealtimeWsMode>,
pub transport: Option<RealtimeTransport>,
pub voice: Option<RealtimeVoice>,
}
#[derive(Serialize, Deserialize, Debug, Clone, Default, PartialEq, Eq, JsonSchema)]