Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

53 Commits

Repository files navigation

socketio-rust-emitter

build statussocketio-rust-emitter at crates.iosocketio-rust-emitter at docs.rs

A Rust implementation of socket.io-emitter.

How to use

use chrono::Utc;use std::thread;use std::time::Duration;let io = Emitter::new("127.0.0.1");let _ = thread::spawn(move || loop{
thread::sleep(Duration::from_millis(5000));
io.clone().emit(vec!["time",&format!("{}",Utc::now())]);}).join();
// Different constructor options.//1. Initialize with host:port stringlet io = Emitter::new("localhost:6379")// 2. Initlize with host, port object.let io = Emitter::new(EmitterOpts{host:"localhost".to_owned(),port:6379,
..Default::default()});

Examples

let io = Emitter::new(EmitterOpts{host:"127.0.0.1".to_owned(),port:6379, ..Default::default()});// sending to all clients
io.clone().emit(vec!["broadcast",/* ... */]);// sending to all clients in "game" room
io.clone().to("game").emit(vec!["new-game",/* ... */]);// sending to individual socketid (private message)
io.clone().to(<socketid>).emit(vec!["private",/* ... */]);let nsp = io.clone().of("/admin");// sending to all clients in "admin" namespace
nsp.clone().emit(vec!["namespace",/* ... */]);// sending to all clients in "admin" namespace and in "notifications" room
nsp.clone().to("notifications").emit(vec!["namespace",/* ... */]);

About

A Rust implementation of socket.io-emitter

Resources

Stars

14 stars

Watchers

1 watching

Forks

Releases

Used by

Contributors

Languages