Skip to content

Latest commit

Β 

History

History
42 lines (35 loc) Β· 1.48 KB

File metadata and controls

42 lines (35 loc) Β· 1.48 KB

Radsel CCU API .NET Client

Nuget License Unit tests workflow

Simple client implementation of CCU API interface.

πŸ“š Features

  • Complete protocol implementation
  • Event-driven SSE communication
  • Fully asynchronous API
  • Strongly typed models

πŸš€ Quick start

Installation:

dotnet add package Viklover.Radsel --version 1.0.0

Example usage:

var credentials = new RadselCredentials("username", "password", "IMEI device");
var client = new RadselClient(credentials);

var state = await client.GetStateAndEventsAsync(CancellationToken.None);

await foreach (var message in client.ListenAsync(CancellationToken.None)) {
    if (message == RadselClient.RadselSSEventType.NewEvents) {
        var state = await client.GetStateAndEventsAsync(CancellationToken.None);
        foreach (var radselEvent in state.Events) {
            await Console.Out.WriteLineAsync(radselEvent.ToString());
        }
        await client.AckEventsAsync([.. state.Events.Select(e => e.Id)], CancellationToken.None);
    }
}

πŸ› οΈ Contribution

Contributions are welcome! Feel free to:

  • Report bugs πŸ›
  • Suggest features πŸ’‘
  • Submit pull requests πŸ”„