RealtimeEvent

sealed interface RealtimeEvent

Vendor-neutral event observed during a realtime session.

Mirrors the design in REALTIME.md §9b — names are framed in terms of the conversation a developer is observing, not OpenAI's wire-level event vocabulary. The raw provider events remain available via com.mojentic.realtime.RealtimeGatewaySession.rawEvents for power users.

The union is intentionally large rather than collapsed-and-then-recovered: UI consumers subscribe to *Delta events; loggers / tests subscribe to the non-delta variants. Both fire — consumers don't reassemble.

Inheritors

Types

Link copied to clipboard
data class AssistantAudioDelta(val turnId: String, val frame: AudioFrame) : RealtimeEvent
Link copied to clipboard
data class AssistantText(val turnId: String, val text: String) : RealtimeEvent
Link copied to clipboard
data class AssistantTextDelta(val turnId: String, val delta: String) : RealtimeEvent
Link copied to clipboard
data class AssistantTranscript(val turnId: String, val text: String) : RealtimeEvent
Link copied to clipboard
data class AssistantTranscriptDelta(val turnId: String, val delta: String) : RealtimeEvent
Link copied to clipboard
data class AssistantTurnCompleted(val turnId: String, val inputTokens: Int? = null, val outputTokens: Int? = null, val totalTokens: Int? = null) : RealtimeEvent
Link copied to clipboard
data class AssistantTurnStarted(val turnId: String) : RealtimeEvent
Link copied to clipboard
Link copied to clipboard
data class GatewayError(val message: String, val recoverable: Boolean) : RealtimeEvent
Link copied to clipboard
data class Interrupted(val turnId: String?, val reason: RealtimeEvent.InterruptionReason) : RealtimeEvent
Link copied to clipboard
data class RateLimited(val resetMs: Long?, val details: JsonObject) : RealtimeEvent
Link copied to clipboard
Link copied to clipboard
data class SessionOpened(val sessionId: String) : RealtimeEvent
Link copied to clipboard
data class SessionUpdated(val instructions: String?) : RealtimeEvent
Link copied to clipboard
data class ToolBatchSubmitted(val turnId: String, val callIds: List<String>) : RealtimeEvent
Link copied to clipboard
data class ToolCallArgsDelta(val callId: String, val delta: String) : RealtimeEvent
Link copied to clipboard
data class ToolCallCompleted(val callId: String, val name: String, val result: String) : RealtimeEvent
Link copied to clipboard
data class ToolCallDispatched(val callId: String, val call: LlmToolCall) : RealtimeEvent
Link copied to clipboard
data class ToolCallFailed(val callId: String, val name: String, val error: Throwable) : RealtimeEvent
Link copied to clipboard
data class ToolCallStarted(val turnId: String, val callId: String, val name: String) : RealtimeEvent
Link copied to clipboard
data class UserSpeechStarted(val itemId: String?) : RealtimeEvent
Link copied to clipboard
data class UserSpeechStopped(val itemId: String?) : RealtimeEvent
Link copied to clipboard
data class UserTranscript(val itemId: String, val text: String) : RealtimeEvent
Link copied to clipboard
data class UserTranscriptDelta(val itemId: String, val delta: String) : RealtimeEvent