24 个版本 (10 个稳定版)

3.0.0 2020 年 4 月 10 日
2.1.2 2020 年 3 月 10 日
2.1.1 2020 年 2 月 20 日
1.0.3 2019 年 6 月 25 日
0.3.1 2018 年 9 月 15 日

#139 in WebSocket

MIT 许可证

53KB
1K SLoC

nt-rs

nt-rs 是使用 Tokio 在 Rust 中实现的 NetworkTables 版本 3 协议。目前它是一个纯客户端库。将来可能会添加创建 NT 服务器 API。

入门

此库可以在 https://crates.io 上找到,可以使用 nt = "0.1.0" 添加到项目中。示例用法可以在 examples/ 目录中找到

什么是 NetworkTables?

NetworkTables,或 NT,是一个基于 TCP 的键值数据存储协议。它主要用于 FIRST 机器人竞赛机器人的代码中,用于在机器人网络中共享数据。

示例

连接到服务器

let mut nt = NetworkTables::connect("10.TE.AM.2:1735", "nt-rs-client")?;

创建服务器

let mut nt = NetworkTables::bind("0.0.0.0:1735", "nt-rs-server");

WebSockets

nt 1.0.0 添加了对通过 WebSockets 通信的客户端和服务器支持。这被锁定在 websocket 功能之后。

连接到 WebSocket 服务器

let mut nt = NetworkTables::connect_ws("ws://10.TE.AM.2:1735", "nt-ws-client")?;

创建 WebSocket 服务器

如果程序使用 WebSocket 功能编译,现有的 NetworkTables 服务器可以提供 WebSocket 服务。在尝试连接到未配置 WebSocket 客户端的服务器的 WebSocket 请求中,它将收到一条错误消息,并且连接将被断开。

许可证

本项目采用 MIT 许可证。

致谢

感谢 Jess Creighton (https://github.com/jcreigh) 给了我这个想法

依赖项

~6MB
~107K SLoC