17 releases
new 0.1.16 | Dec 6, 2024 |
---|---|
0.1.15 | Dec 6, 2024 |
0.1.8 | Aug 2, 2024 |
0.1.3 | Jul 31, 2024 |
#215 in Asynchronous
943 downloads per month
125KB
2K
SLoC
OCPP Client
Overview
ocpp-client
is a Rust library that provides an OCPP (Open Charge Point Protocol) client implementation. This library enables developers to integrate with central system (CSMS) that use the OCPP protocol, allowing for seamless communication and efficient.
Features
- OCPP 1.6 and 2.0.1 support: Communicate with OCPP 1.6 or 2.0.1 JSON compliant servers (CSMS).
- Async/Await support: Built using asynchronous Rust for high performance and scalability.
- Customizable: Easily extendable to add custom message handlers or to support additional OCPP features.
- Error Handling: Robust error handling and logging to assist in debugging and maintenance.
- Comprehensive Documentation: Detailed documentation with examples to get you started quickly.
Installation
Add the following to your Cargo.toml
:
[dependencies]
ocpp-client = "0.1"
Usage
Here's a simple example to get you started:
use ocpp_client::connect;
#[tokio::main]
async fn main() {
let client = connect("wss://my-csms.com/CHARGER_IDENTITY").await?;
match client {
OCPP1_6(client) => {
// Do 1.6 specific operations
},
OCPP2_0_1(client) => {
// Do 2.0.1 specific operations
},
}
}
Documentation
The full documentation is available on docs.rs.
Examples
Check out the examples directory for more usage examples.
Contributing
Contributions are welcome! Please see the CONTRIBUTING.md for more details.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Dependencies
~19–30MB
~534K SLoC