feat: unique status requests for messengers

UI Applications can now request status for specific feature sets instead of full status for a device. This will hopefully cut down on the traffic and messages required to get the data for the UI.
This commit is contained in:
Andrew Welker
2025-09-23 10:55:16 -05:00
parent cae1bbd6e6
commit 9c9eaea928
45 changed files with 619 additions and 425 deletions

View File

@@ -1,5 +1,5 @@
using Newtonsoft.Json;
using System.Collections.Generic;
using System.Collections.Generic;
using Newtonsoft.Json;
namespace PepperDash.Essentials
{
@@ -8,10 +8,11 @@ namespace PepperDash.Essentials
/// </summary>
public class Volumes
{
[JsonProperty("master", NullValueHandling = NullValueHandling.Ignore)]
/// <summary>
/// Gets or sets the Master
/// </summary>
[JsonProperty("master", NullValueHandling = NullValueHandling.Ignore)]
public Volume Master { get; set; }
[JsonProperty("auxFaders", NullValueHandling = NullValueHandling.Ignore)]
@@ -30,10 +31,11 @@ namespace PepperDash.Essentials
/// </summary>
public class Volume
{
[JsonProperty("key", NullValueHandling = NullValueHandling.Ignore)]
/// <summary>
/// Gets or sets the Key
/// </summary>
[JsonProperty("key", NullValueHandling = NullValueHandling.Ignore)]
public string Key { get; set; }
[JsonProperty("level", NullValueHandling = NullValueHandling.Ignore)]
@@ -42,10 +44,11 @@ namespace PepperDash.Essentials
[JsonProperty("muted", NullValueHandling = NullValueHandling.Ignore)]
public bool? Muted { get; set; }
[JsonProperty("label", NullValueHandling = NullValueHandling.Ignore)]
/// <summary>
/// Gets or sets the Label
/// </summary>
[JsonProperty("label", NullValueHandling = NullValueHandling.Ignore)]
public string Label { get; set; }
[JsonProperty("hasMute", NullValueHandling = NullValueHandling.Ignore)]
@@ -58,10 +61,11 @@ namespace PepperDash.Essentials
public bool? PrivacyMuted { get; set; }
[JsonProperty("muteIcon", NullValueHandling = NullValueHandling.Ignore)]
/// <summary>
/// Gets or sets the MuteIcon
/// </summary>
[JsonProperty("muteIcon", NullValueHandling = NullValueHandling.Ignore)]
public string MuteIcon { get; set; }
public Volume(string key, int level, bool muted, string label, bool hasMute, string muteIcon)