pub struct RealtimeClient { /* private fields */ }Expand description
Supabase Realtime WebSocket client
Implementations§
Source§impl RealtimeClient
impl RealtimeClient
Sourcepub fn new(config: RealtimeConfig) -> Self
pub fn new(config: RealtimeConfig) -> Self
Create a new Realtime client
Sourcepub async fn state(&self) -> RealtimeState
pub async fn state(&self) -> RealtimeState
Get current connection state
Sourcepub async fn connect(
&mut self,
shutdown_rx: Receiver<()>,
heartbeat_rx: Receiver<HeartbeatData>,
stream_rx: Receiver<(String, StreamChunkType, String)>,
command_tx: Sender<BackendCommand>,
) -> Result<()>
pub async fn connect( &mut self, shutdown_rx: Receiver<()>, heartbeat_rx: Receiver<HeartbeatData>, stream_rx: Receiver<(String, StreamChunkType, String)>, command_tx: Sender<BackendCommand>, ) -> Result<()>
Connect to Supabase Realtime and run the message loop
shutdown_rx: Signal to gracefully shut downheartbeat_rx: Receives heartbeat data (with hostname, os, version) to broadcast to frontendstream_rx: Receives stream messages (agent_id, chunk_type, content) to broadcastcommand_tx: Channel to send commands received from frontend for processing
Sourcepub async fn send(&self, msg: RemoteRealtimeMessage) -> Result<()>
pub async fn send(&self, msg: RemoteRealtimeMessage) -> Result<()>
Send a message via the outgoing channel (for bridge use)
Sourcepub async fn send_heartbeat(&self, heartbeat_data: HeartbeatData) -> Result<()>
pub async fn send_heartbeat(&self, heartbeat_data: HeartbeatData) -> Result<()>
Send heartbeat with agent status
Sourcepub async fn send_stream(
&self,
agent_id: String,
chunk_type: StreamChunkType,
content: String,
) -> Result<()>
pub async fn send_stream( &self, agent_id: String, chunk_type: StreamChunkType, content: String, ) -> Result<()>
Send stream chunk
Auto Trait Implementations§
impl Freeze for RealtimeClient
impl !RefUnwindSafe for RealtimeClient
impl Send for RealtimeClient
impl Sync for RealtimeClient
impl Unpin for RealtimeClient
impl UnsafeUnpin for RealtimeClient
impl !UnwindSafe for RealtimeClient
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