5 个版本
使用旧的 Rust 2015
0.1.4 | 2016年6月13日 |
---|---|
0.1.3 | 2016年6月2日 |
0.1.2 | 2016年4月18日 |
0.1.1 | 2016年4月17日 |
0.1.0 | 2016年3月21日 |
#14 in #subscribe
92 每月下载量
在 3 个 crate 中使用 (2 个直接使用)
50KB
1.5K SLoC
RustMQ
该仓库是针对 MQTT 协议的 crate 的集合。
Crates
- mqtt3 - MQTT 协议读取/写入
- netopt - TCP/SSL 连接
- mqttc - Rust MQTT 客户端
二进制文件
- mqttc - 控制台 MQTT 客户端
客户端
客户端具有以下功能
- QoS 0, QoS 1, QoS 2 发布/订阅
- 最后将消息
- 自动 Ping
- 自动重连
- 支持 SSL (包括 TLS v1.1, TLS v1.2)
- 模块化:mqtt3, netopt
- 日志记录
连接
let netopt = NetworkOptions::new();
let mut opts = ClientOptions::new();
opts.set_reconnect(ReconnectMethod::ReconnectAfter(Duration::from_secs(1)));
let mut client = opts.connect("127.0.0.1:1883", netopt).expect("Can't connect to server");
发布
client.publish("a/b/c", "hello", PubOpt.at_least_once()).unwrap();
while (client.await().unwrap().is_some()) {};
订阅
client.subscribe("a/b/c").unwrap();
loop {
match client.await().unwrap() {
Some(message) => {
println!("{:?}", message);
},
None => {}
}
}
命令行界面
MQTT 客户端安装
git clone https://github.com/inre/rust-mq.git
cd rust-mq
make && make install
订阅所有主题
mqttc sub
或者尝试,
mqttc sub -a test.mosquitto.org
mqttc sub -a iot.eclipse.org
mqttc sub -a test.mosca.io
mqttc sub -a broker.hivemq.com
发布到主题
mqttc pub -t a/b/c -m "hello"
服务器
也许在未来
依赖
~165KB