pub struct WebSocketServer { /* private fields */ }Expand description
WebSocket server with connection management
Implementations§
Source§impl WebSocketServer
impl WebSocketServer
Sourcepub fn is_websocket_upgrade<B>(req: &Request<B>) -> bool
pub fn is_websocket_upgrade<B>(req: &Request<B>) -> bool
Check if request is a WebSocket upgrade request
Sourcepub fn handshake<B>(req: &Request<B>) -> Result<Response<Full<Bytes>>, Error>
pub fn handshake<B>(req: &Request<B>) -> Result<Response<Full<Bytes>>, Error>
Perform WebSocket handshake
Sourcepub async fn add_connection(
&self,
id: String,
sender: UnboundedSender<WebSocketMessage>,
)
pub async fn add_connection( &self, id: String, sender: UnboundedSender<WebSocketMessage>, )
Add a new WebSocket connection
Sourcepub async fn remove_connection(&self, id: &str)
pub async fn remove_connection(&self, id: &str)
Remove a WebSocket connection
Sourcepub async fn broadcast(&self, message: WebSocketMessage)
pub async fn broadcast(&self, message: WebSocketMessage)
Broadcast a message to all connected clients
Sourcepub async fn send_to(
&self,
id: &str,
message: WebSocketMessage,
) -> Result<(), Error>
pub async fn send_to( &self, id: &str, message: WebSocketMessage, ) -> Result<(), Error>
Send a message to a specific connection
Sourcepub async fn connection_count(&self) -> usize
pub async fn connection_count(&self) -> usize
Get the number of active connections
Sourcepub async fn list_connections(&self) -> Vec<String>
pub async fn list_connections(&self) -> Vec<String>
Get a list of all active connections
Sourcepub fn handle_message(
&self,
message: Message,
) -> Result<Option<WebSocketMessage>, Error>
pub fn handle_message( &self, message: Message, ) -> Result<Option<WebSocketMessage>, Error>
Handle incoming WebSocket message
Sourcepub fn to_tungstenite_message(&self, message: &WebSocketMessage) -> Message
pub fn to_tungstenite_message(&self, message: &WebSocketMessage) -> Message
Convert WebSocket message to tungstenite message
Auto Trait Implementations§
impl Freeze for WebSocketServer
impl !RefUnwindSafe for WebSocketServer
impl Send for WebSocketServer
impl Sync for WebSocketServer
impl Unpin for WebSocketServer
impl UnsafeUnpin for WebSocketServer
impl !UnwindSafe for WebSocketServer
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