snapcast-net (0.0.4)

Published 2025-03-02 23:51:05 +00:00 by craig

Installation

dotnet nuget add source --name craig --username your_username --password your_token 
dotnet add package --source craig --version 0.0.4 snapcast-net

About this package

.NET Snapcast API Client

Snapcast .NET

Another .NET API client for Snapcast. The current implementation uses a raw TCP connection to communicate with the Snapcast server. All serialisation and deserialisation of data is handled within the client.

Note (10/04/2024): This project is a work in progress, but is actively being developed, when I find the time to push it forward.

Usage

Initialise

using SnapCastNet;

var connection = new TcpConnection("127.0.0.1", 1705);
var client = new Client(connection);

var result = await client.ServerGetRpcVersionAsync();

// result = {
//   Major: 2,
//   Minor: 0,
//   Patch: 0
// }

Implemented Commands

  • Client.GetStatus
  • Client.SetVolume
  • Client.SetLatency
  • Client.SetName
  • Group.GetStatus
  • Group.SetMute
  • Group.SetStream
  • Group.SetClients
  • Group.SetName
  • Server.GetRPCVersion
  • Server.GetStatus
  • Server.DeleteClient
  • Stream.AddStream
  • Stream.RemoveStream
  • Stream.Control
  • Stream.SetProperty

Implemented Notifications

  • Client.OnConnect
  • Client.OnDisconnect
  • Client.OnVolumeChanged
  • Client.OnLatencyChanged
  • Client.OnNameChanged
  • Group.OnMute
  • Group.OnStreamChanged
  • Group.OnNameChanged
  • Stream.OnProperties
  • Stream.OnUpdate
  • Server.OnUpdate

Dependencies

ID Version Target Framework
Microsoft.Extensions.Logging.Abstractions 8.0.1 net8.0
Newtonsoft.Json 13.0.3 net8.0
Details
NuGet
2025-03-02 23:51:05 +00:00
7
snapcast-net
32 KiB
Assets (2)
Versions (4) View all
0.0.4 2025-03-02
0.0.1 2024-12-30
0.0.2 2024-12-30
0.0.3 2024-12-30