Crates.io | rustic-io |
lib.rs | rustic-io |
version | 0.2.9 |
source | src |
created_at | 2014-12-04 14:34:31.956037 |
updated_at | 2015-12-11 23:56:40.231265 |
description | Websocket server library for event based messaging |
homepage | |
repository | https://github.com/nathansizemore/rustic-io |
max_upload_size | |
id | 455 |
size | 38,687 |
rustic-io is a simple websocket server library written in Rust. It aims to be an easy to implement, fast, and concurrent websocket server library for event based messaging.
#[deriving(Decodable, Encodable)]
pub struct Foo {
msg: String
}
fn main() {
let mut server = rustic_io::new_server("127.0.0.1", "1338");
server.on("some_event", function_to_execute);
rustic_io::start(server);
}
fn function_to_execute(data: json::Json, socket: Socket) {
let json_object = data.as_object().unwrap();
// Do some stuff with received data...
// Create some object to send back
let bar = Foo {
msg: String::from_str("Hello from Rust!")
};
// Send some event back to socket
socket.send("some_event", json::encode(&bar));
// Or, broadcast that event to all sockets
socket.broadcast("some_event", json::encode(&bar));
}
WebSocket payload implementation from rust-ws