#display #point #connection #service #pixel #command #cccb

servicepoint

A rust library for the CCCB Service Point Display

4 releases (2 breaking)

new 0.7.0 Jun 27, 2024
0.6.0 Jun 5, 2024
0.5.1 May 28, 2024
0.5.0 May 26, 2024

#1144 in Network programming

Download history 105/week @ 2024-05-20 173/week @ 2024-05-27 168/week @ 2024-06-03 8/week @ 2024-06-10 6/week @ 2024-06-17

460 downloads per month
Used in servicepoint_binding_c

GPL-3.0-or-later

74KB
1.5K SLoC

servicepoint

crates.io Crates.io Total Downloads docs.rs GPLv3 licensed

In CCCB, there is a big pixel matrix hanging on the wall. It is called "Service Point Display" or "Airport Display". This crate contains a library for parsing, encoding and sending packets to this display via UDP.

Examples

fn main() {
    // establish connection
    let connection = servicepoint::Connection::open("172.23.42.29:2342")
        .expect("connection failed");

    // clear screen content
    connection.send(servicepoint::Command::Clear)
        .expect("send failed");
}

More examples are available in the crate. Execute cargo run --example for a list of available examples and cargo run --example <name> to run one.

Note on stability

This library is still in early development. You can absolutely use it, and it works, but expect minor breaking changes with every version bump. Please specify the full version including patch in your Cargo.toml until 1.0 is released.

Installation

cargo add servicepoint

Features

This library has multiple compression libraries as optional dependencies. If you do not need compression/decompression support you can disable those features. In the likely case you only need one of them, you can include that one specifically.

[dependencies]
servicepoint = { version = "0.7.0", default-features = false, features = ["compression-bz"] }

Everything else

Look at the main project README for further information.

Dependencies

~1–1.7MB
~36K SLoC