Skip to content

(unofficial) TelemetryDeck client for fast and reliable libraries and apps using Rust and WebAssembly

License

Notifications You must be signed in to change notification settings

kkostov/telemetrydeck-wasm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tests Lint & Format Crate API

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.

About

(unofficial) TelemetryDeck client for fast and reliable libraries and apps using Rust and WebAssembly

Topics

Resources

License

Stars

Watchers

Forks