pub enum RealtimeTranscriptEvent {
ItemObserved {
item_id: String,
previous_item_id: Option<String>,
role: RealtimeTranscriptRole,
response_id: Option<String>,
},
ItemSkipped {
item_id: String,
previous_item_id: Option<String>,
},
UserTranscriptFinal {
item_id: String,
previous_item_id: Option<String>,
content_index: u32,
text: String,
},
AssistantTextDelta {
response_id: String,
delta_id: String,
item_id: String,
previous_item_id: Option<String>,
content_index: u32,
delta: String,
},
AssistantTranscriptDelta {
response_id: String,
delta_id: String,
item_id: String,
previous_item_id: Option<String>,
content_index: u32,
delta: String,
},
AssistantTranscriptTruncated {
response_id: String,
item_id: String,
content_index: u32,
text: String,
},
AssistantTranscriptFinalText {
response_id: String,
item_id: String,
content_index: u32,
text: String,
},
AssistantTurnCompleted {
response_id: String,
stop_reason: StopReason,
usage: Usage,
},
AssistantTurnInterrupted {
response_id: String,
},
}Expand description
A typed, identity-bearing realtime transcript event consumed by the session.
Variants§
ItemObserved
Observe a provider item and its causal predecessor without committing content yet.
Fields
role: RealtimeTranscriptRoleItemSkipped
Observe a provider item that participates in provider causal ordering but must not materialize transcript content.
UserTranscriptFinal
Provider finalized the transcript for a user input item.
AssistantTextDelta
Provider emitted an assistant display-text delta for an output
item — authored text the model writes (e.g. OpenAI realtime
response.output_text.delta).
Materializes as crate::types::AssistantBlock::Text.
Fields
AssistantTranscriptDelta
Provider emitted an assistant spoken-transcript delta for an
output item — text derived from audio output (e.g. OpenAI realtime
response.output_audio_transcript.delta).
Identity shape mirrors Self::AssistantTextDelta so the session’s
idempotent ordering / staging logic owns dedup uniformly across
lanes. Materializes as crate::types::AssistantBlock::Transcript
with source: TranscriptSource::Spoken (T9/T10).
Fields
AssistantTranscriptTruncated
Provider reported the assistant output item was truncated to the heard transcript prefix.
AssistantTranscriptFinalText
R5-7: provider supplied authoritative final transcript text for an assistant output item, overriding any incomplete delta accumulation.
Necessary for two cases:
- Final-only providers that emit a single
AssistantTranscriptFinalobservation without prior deltas. - Recovery from delta loss (R5-1: lossy media lane back-pressure may drop transcript deltas; the final’s text is the authoritative reconciliation).
The materializer locates the staged item by
(response_id, item_id, content_index), replaces its accumulated
content with text, and (if no item is staged yet) creates one on
the spoken lane. Flush still happens via AssistantTurnCompleted;
this variant only updates the staged content.
AssistantTurnCompleted
Provider turn reached a terminal boundary. The session decides which staged assistant items, if any, are now canonical.
AssistantTurnInterrupted
Provider turn was interrupted before terminal materialization.
Trait Implementations§
Source§impl Clone for RealtimeTranscriptEvent
impl Clone for RealtimeTranscriptEvent
Source§fn clone(&self) -> RealtimeTranscriptEvent
fn clone(&self) -> RealtimeTranscriptEvent
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RealtimeTranscriptEvent
impl Debug for RealtimeTranscriptEvent
Source§impl<'de> Deserialize<'de> for RealtimeTranscriptEvent
impl<'de> Deserialize<'de> for RealtimeTranscriptEvent
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for RealtimeTranscriptEvent
impl JsonSchema for RealtimeTranscriptEvent
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl PartialEq for RealtimeTranscriptEvent
impl PartialEq for RealtimeTranscriptEvent
Source§fn eq(&self, other: &RealtimeTranscriptEvent) -> bool
fn eq(&self, other: &RealtimeTranscriptEvent) -> bool
self and other values to be equal, and is used by ==.