3个版本
使用旧的Rust 2015
0.1.3 |
|
---|---|
0.1.2 | 2018年8月28日 |
0.1.1 | 2018年8月27日 |
0.1.0 | 2018年8月12日 |
#6 in #nt
8KB
151 行
nt-rs
nt-rs是使用Tokio在Rust中实现的NetworkTables修订版3协议。目前它纯粹是一个客户端库。未来可能提供创建NT服务器的API。
入门
此库可在https://crates.io找到,并可以使用nt
代码添加到项目中。
什么是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通信的客户端和服务器添加了支持。这是通过websockets
功能实现的。
连接到Websockets服务器
let mut nt = NetworkTables::connect_ws("ws://10.TE.AM.2:1735", "nt-ws-client")?;
创建Websockets服务器
let mut nt = NetworkTables::bind_ws("0.0.0.0:1735", "nt-ws-server");
Network Tables in JavaScript (WIP)
由于nt
依赖于tokio进行其运行时,因此不能直接编译为wasm,但在./nt-ws
处提供了一个补充crate,该crate可以编译为wasm。此crate仅支持NT客户端,并使用wasm_bindgen导出一个兼容JavaScript的API。
许可证
本项目采用MIT许可证。
致谢
感谢Jess Creighton(https://github.com/jcreigh)给了我这个想法
依赖关系
~470KB