#mqtt-client #async-client #tokio #function #requests #repository #mqtt-async-client-rs

mqtt-async-client

使用Rust语言编写,基于异步函数和tokio的MQTT 3.1.1客户端

11个版本

0.3.1 2021年9月6日
0.3.0 2021年9月5日
0.2.0 2021年2月18日
0.1.7 2020年10月30日
0.1.1 2020年1月17日

#114 in WebSocket

Download history 255/week @ 2024-03-13 629/week @ 2024-03-20 317/week @ 2024-03-27 177/week @ 2024-04-03 383/week @ 2024-04-10 179/week @ 2024-04-17 322/week @ 2024-04-24 594/week @ 2024-05-01 223/week @ 2024-05-08 234/week @ 2024-05-15 131/week @ 2024-05-22 54/week @ 2024-05-29 57/week @ 2024-06-05 27/week @ 2024-06-12 34/week @ 2024-06-19 913/week @ 2024-06-26

1,060 每月下载量
用于 4 crates

MIT 许可证

79KB
1.5K SLoC

mqtt-async-client-rs

使用Rust语言编写,基于异步函数和tokio的MQTT 3.1.1客户端。

欢迎Pull requests和Github issues!

运行自动化测试

只需运行 cargo test 即可。

集成测试需要运行MQTT代理,请参阅 ${REPO}/tests/integration_test.rs 中的说明。

运行测试命令行应用程序

运行 cargo run --example mqttc 打印用法。

测试应用程序需要运行MQTT代理,请参阅 ${REPO}/tests/integration_test.rs 中的说明。

运行 cargo run --example mqttc -- --host localhost publish topic payload 将负载 payload 发布到主题 topic

运行以下命令以订阅主题 topic 并打印出任何发送到该主题的消息:

变更日志

0.3.1

  • 在示例 mqttc 中添加了 --tls-client-crt-file--tls-client-rsa-key-file 选项。感谢 marcelbuesing 提供的 Pull Request!
  • ClientBuilder 文档中添加了更多关于如何配置 TLS 的说明。

0.3.0

  • 在 Cargo 功能 "websocket" 下添加了对 WebSocket 的支持。
  • ClientBuilder 更改为使用 URL 而不是主机和端口。这是一个破坏性更改,使得消费者更容易切换协议。

感谢 JarredAllen 实现了这一功能!

0.2.0

  • tokio 依赖项更新到 v1.2.0。感谢 marcelbuesing 提供的 Pull Request!

0.1.7

  • ClientClientOptions 实现了 Debug
  • 减少依赖项以实现更快的构建和更少的配置:现在 env_loggerstructopt 是开发依赖项,rustls 是可选的,但作为 tls 功能的一部分默认包含。

感谢 marcelbuesing 提供的 Pull Requests!

0.1.6

  • ClientSend

0.1.5

  • 当自动连接禁用时,正确连接一次。

0.1.4

  • 即使 keepalive > op timeout,缺少的 ping 响应也应该导致断开连接。

  • 使用保留标志发布。

0.1.3

  • 在断开连接时添加了超时,当 QoS=0 时发布。

0.1.2

  • 默认启用自动重连。

  • 这跟踪订阅并在重连后重新播放它们。尚未实现发布重试。

依赖关系

~5–20MB
~263K SLoC