8 stable releases

1.4.1 Sep 18, 2023
1.3.0 Aug 30, 2023
1.0.1 Dec 13, 2022

#58 in WebSocket

Download history 3/week @ 2024-02-23 1/week @ 2024-03-01 33/week @ 2024-03-29 1/week @ 2024-04-05 97/week @ 2024-04-12

131 downloads per month

MIT/Apache

41KB
1K SLoC

tritium_remote

A library for interacting with Tritium systems. Hosted docs are here (require login).

  • Connects to a running Tritium system by WebSocket
  • Uses GraphQL to send commands and request data

Implemented in Rust with bindings to other languages:

This library is currently only published and tested on Linux. However the rust crate ought to work on other platforms.

This is only to be used on a trusted local network. The Tritium system will be accessed over LAN without encryption.

APIs

Sequence playback

  • Start & stop sequence

Scripting

  • Start & stop scripts
  • Post messages to named channels to which scripts may subscribe

Generic Queries and Mutations

  • Execute user-supplied GraphQL query or mutation documents
  • Optional variables, supplied as JSON
  • Any response is returned as a JSON encoded object

Running Examples

The Rust and Python examples use the TRITIUM_AUTH_TOKEN environment variable to get the JWT access token they need.

To generate an access token...

  1. Log into the Tritium cloud UI
  2. Connect to your locally-running system
  3. Go to the "Scripts" page
  4. Select the API Keys tab
  5. Click "CREATE AN API KEY"
$ export TRITIUM_AUTH_TOKEN="{paste token here}"
$ cargo run --example system_info

License

This project is licensed under either of

at your option.

Dependencies

~9–21MB
~303K SLoC