Mixer Rust Wrappers
Rust wrappers for the Mixer APIs at https://dev.mixer.com/.
Building
Requirements
- Git
- A recent version of Rust
Steps
Tests
Run tests with cargo test
.
If you want code coverage, you can use kcov via cargo test --no-run && kcov --exclude-pattern=/.cargo target/cov target/debug/mixer_wrappers-*
.
Using
Add the most recent version to your Cargo.toml and build.
This library is split into 2 parts: a tiny convenience wrapper for the REST API, and a wrapper for the Constellation real-time API.
REST
The REST wrapper is very simple. It basically only does two things:
- Handle sending the 'client-id' header
- Return an error for non-successful HTTP requests (outside of 2XX)
Create an instance of the REST
struct with
use REST;
let client = REST new;
If you don't know your Client ID, you can get it from Mixer.
Send API requests with
use Method;
let resp_text = client.query.unwrap;
The query
function returns a Result, so be sure to handle that appropriately.
Constellation
This is the more interesting part of the library. This wrapper makes it easy to listen to and send messages to the real-time API. Start with
use connect;
let = connect.unwrap;
Note that the connect
method returns a Result, as expected.
You can see a full example of what do do with these variables in the docs.
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE)
- MIT license (LICENSE-MIT)
Contributing
Please feel free to contribute. Please open an issue first (or comment on an existing one) so that I know that you want to add/change something.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.