3 unstable releases
0.2.0 | Feb 16, 2022 |
---|---|
0.1.1 | Feb 16, 2022 |
0.1.0 | Feb 16, 2022 |
#886 in WebAssembly
43 downloads per month
12KB
180 lines
TelemetryDeck Client
Client for integrating private analytics in fast and reliable libraries and apps using Rust and WebAssembly
The library provides a wrapper around the TelemetryDeck endpoint for broadcasting signals.
Sending a signal
let client = TelemetryDeck::new("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX");
// Signal a type and a user identifier
client.send("addOne", Some("user"), None, None);
// Signal with custom payload parameters
client.send(
"signalType",
Some("user identifier"),
Some(HashMap::from([("key".to_string(), "value".to_string())])),
None,
);
Session identifier
When an instance of TelemetryDeck
is created, it is assigned a session identifier. This identifier persists for all outgoing signals during the lifetime of the instance.
You can reset the session identifier without recreating the client:
client.reset_session(None)
You can also provide your own session identifier:
client.reset_session(Some("my session id".to_string()));
Check the example folder for a working app using Yew.
Disclaimer
This repository is not affiliated with TelemetryDeck.
Dependencies
~9–18MB
~244K SLoC