diff options
Diffstat (limited to 'karld/src/interface/websocket.rs')
-rw-r--r-- | karld/src/interface/websocket.rs | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/karld/src/interface/websocket.rs b/karld/src/interface/websocket.rs deleted file mode 100644 index b69de20..0000000 --- a/karld/src/interface/websocket.rs +++ /dev/null @@ -1,46 +0,0 @@ -use std::thread; -use websocket::sync::Server; -use websocket::OwnedMessage; - -pub fn run() { - let server = Server::bind("127.0.0.1:2794").unwrap(); - - for request in server.filter_map(Result::ok) { - // Spawn a new thread for each connection. - thread::spawn(|| { - if !request.protocols().contains(&"rust-websocket".to_string()) { - request.reject().unwrap(); - return; - } - - let mut client = request.use_protocol("rust-websocket").accept().unwrap(); - - let ip = client.peer_addr().unwrap(); - - println!("Connection from {}", ip); - - let message = OwnedMessage::Text("Hello".to_string()); - client.send_message(&message).unwrap(); - - let (mut receiver, mut sender) = client.split().unwrap(); - - for message in receiver.incoming_messages() { - let message = message.unwrap(); - - match message { - OwnedMessage::Close(_) => { - let message = OwnedMessage::Close(None); - sender.send_message(&message).unwrap(); - println!("Client {} disconnected", ip); - return; - } - OwnedMessage::Ping(ping) => { - let message = OwnedMessage::Pong(ping); - sender.send_message(&message).unwrap(); - } - _ => sender.send_message(&message).unwrap(), - } - } - }); - } -} |