Interface: TransportHandle
Defined in: packages/aiui-oracle/src/types.ts:497
A live connection. The three divergent seams live here; everything else is send.
Properties
applyAudioConstraints?
readonlyoptionalapplyAudioConstraints?: (constraints) =>Promise<void>
Defined in: packages/aiui-oracle/src/types.ts:532
Re-negotiate the LIVE mic track's constraints — the input half of "change it mid-session and see whether it took".
Which constraints a browser will honour on an already-open track is not knowable in advance and differs by platform, so nothing here predicts it: the call either resolves or rejects, and audioSettings says what is actually in force afterwards. That pairing is the same discipline the session config uses against session.updated — apply, then read the echo, never assume the request was granted.
Absent on transports with no local capture (a fake, a server-side WS).
Parameters
constraints
MediaTrackConstraints
Returns
Promise<void>
audioSettings?
readonlyoptionalaudioSettings?: () =>Record<string,unknown> |undefined
Defined in: packages/aiui-oracle/src/types.ts:518
What the browser ACTUALLY gave us for the mic — the track's effective settings, not what we asked for.
Constraints are requests; a device, an OS setting, or a driver can refuse one silently. For an agent that talks back through the same speakers it listens on, whether echo cancellation is really on is the single fact that explains "it keeps interrupting itself" — and asking after the fact is useless, because the session that misbehaved has closed by then. So it is recorded in the LEDGER at connect, where it stays.
Returns
Record<string, unknown> | undefined
callId?
readonlyoptionalcallId?:string
Defined in: packages/aiui-oracle/src/types.ts:534
The vendor call id (WebRTC Location header) — the sideband hook.
micStream?
readonlyoptionalmicStream?:MediaStream
Defined in: packages/aiui-oracle/src/types.ts:506
Live mic MediaStream (level meters tap this). Undefined pre-connect.
Methods
close()
close():
void
Defined in: packages/aiui-oracle/src/types.ts:535
Returns
void
interrupt()
interrupt():
void
Defined in: packages/aiui-oracle/src/types.ts:504
Interrupt seam: stop the current reply the transport-appropriate way.
Returns
void
send()
send(
event):void
Defined in: packages/aiui-oracle/src/types.ts:499
Send one client event (the engine stamps event_id before calling).
Parameters
event
Record<string, unknown>
Returns
void
setMicEnabled()
setMicEnabled(
on):void
Defined in: packages/aiui-oracle/src/types.ts:502
Input-audio seam: gate the mic. false is the PARK half — the source keeps producing silence-shaped nothing, the connection stays open, $0.
Parameters
on
boolean
Returns
void