pub struct SessionUpdateConfig(pub RealtimeConfig);Expand description
A delta payload for safely updating an active realtime session.
Wraps RealtimeConfig to prevent struct duplication. Since all fields are
Option<T> and skip serialization if None, omitting fields preserves
the server’s active state.
⚠️ WARNING: You must construct a fresh configuration containing only
the fields to modify. Wrapping your original startup config will resend
immutable fields (like model), causing the provider to reject the update.
This is the idiomatic mechanism for dynamic Finite State Machine (FSM) state transitions, allowing seamless “persona shifts” or tool swaps without dropping the audio connection.
§Example
use adk_realtime::config::{SessionUpdateConfig, RealtimeConfig};
// Update *only* the instruction mid-session.
let delta = SessionUpdateConfig(
RealtimeConfig::default().with_instruction("You are now a travel agent.")
);Tuple Fields§
§0: RealtimeConfigTrait Implementations§
Source§impl Clone for SessionUpdateConfig
impl Clone for SessionUpdateConfig
Source§fn clone(&self) -> SessionUpdateConfig
fn clone(&self) -> SessionUpdateConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SessionUpdateConfig
impl Debug for SessionUpdateConfig
Source§impl Default for SessionUpdateConfig
impl Default for SessionUpdateConfig
Source§fn default() -> SessionUpdateConfig
fn default() -> SessionUpdateConfig
Returns the “default value” for a type. Read more
Source§impl Deref for SessionUpdateConfig
impl Deref for SessionUpdateConfig
Source§impl DerefMut for SessionUpdateConfig
impl DerefMut for SessionUpdateConfig
Source§impl<'de> Deserialize<'de> for SessionUpdateConfig
impl<'de> Deserialize<'de> for SessionUpdateConfig
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>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<RealtimeConfig> for SessionUpdateConfig
impl From<RealtimeConfig> for SessionUpdateConfig
Source§fn from(config: RealtimeConfig) -> Self
fn from(config: RealtimeConfig) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for SessionUpdateConfig
impl RefUnwindSafe for SessionUpdateConfig
impl Send for SessionUpdateConfig
impl Sync for SessionUpdateConfig
impl Unpin for SessionUpdateConfig
impl UnsafeUnpin for SessionUpdateConfig
impl UnwindSafe for SessionUpdateConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more