using System.Text.Json.Nodes; namespace InnovEnergy.Lib.Victron.VictronVRM; /// Settings are *read* as part of the json (Installation class) returned by GetInstallation* /// Settings are *written* using a special request VrmAccount.SettingsRequest public readonly partial record struct Installation { public Task<Boolean> SetNotes (String notes) => SetSettings(new JsonObject { ["notes"] = notes }); public Task<Boolean> SetName (String name) => SetSettings(new JsonObject { ["description"] = name }); public Task<Boolean> SetPhoneNumber(String phoneNb) => SetSettings(new JsonObject { ["phonenumber"] = phoneNb }); private async Task<Boolean> SetSettings(JsonObject settings) { var reply = await VrmAccount.SettingsRequest(IdSite).TryPostJson(settings); var vrmReply = new Reply(reply); return vrmReply.Success; } }