A library for interacting with Tritium systems.
Implemented in Rust but with bindings to
NB It is assumed that the Tritium system is being accessed over a LAN without encryption. The Gateway node must be launched with the --insecure-websockets option, like so:
ExecStart = /opt/tritium/bin/gateway_node --insecure-websockets
Hosted docs are here (require login).
The Rust and Python examples use the TRITIUMAUTHTOKEN environment variable to get the JWT access token they need.
Pending a proper UI for generating tokens, the best way for now is...
bash
$ export TRITIUM_AUTH_TOKEN={paste x-tritium-auth contents here}
$ cd tritium-remote/examples/system_info
$ cargo run
Rust structures are generated from the GraphQL schemas using graphql-client
Install graphql-client with:
bash
$ cargo install graphql_client_cli
Then to generate Rust code for the playSequence mutation as an example, in the repository root:
bash
$ cd tritium-remote
$ graphql-client generate --schema-path graphql/schemas/tritium.graphql --output-directory src/graphql/mutations graphql/mutations/play_sequence.graphql
This project is licensed under either of
at your option.