feat(ui): complete Avalonia UI port with 7 main pages, tool settings & top MenuBar
This commit is contained in:
@@ -78,6 +78,45 @@ public sealed class InstanceSettingsViewModel
|
||||
[ReadOnly(true)]
|
||||
public int AgentCount => _config.Agents.Count;
|
||||
|
||||
// ─── WatchDog (Instanz-Heartbeat) ───
|
||||
// Server-URL und Master-Token stehen app-weit in den Anwendungseinstellungen. Die
|
||||
// Instanz registriert sich damit selbst; hier stehen nur Source/Gruppe/Intervall.
|
||||
// Ein/Aus läuft über den Service „Instanz-Watchdog" im Worker-Tab. Änderungen greifen
|
||||
// beim nächsten Start der Instanz.
|
||||
|
||||
[Category("WatchDog")]
|
||||
[DisplayName("Source")]
|
||||
[Description("Dienst-Kennung im WatchDog. Alle Instanzen teilen sich dieselbe Source.")]
|
||||
public string WatchdogSource
|
||||
{
|
||||
get => _config.Watchdog.Source;
|
||||
set => _config.Watchdog.Source = value;
|
||||
}
|
||||
|
||||
[Category("WatchDog")]
|
||||
[DisplayName("Gruppe")]
|
||||
[Description("Gruppierung im WatchDog-Dashboard.")]
|
||||
public string WatchdogGroup
|
||||
{
|
||||
get => _config.Watchdog.Group;
|
||||
set => _config.Watchdog.Group = value;
|
||||
}
|
||||
|
||||
[Category("WatchDog")]
|
||||
[DisplayName("Intervall (Sek)")]
|
||||
[Description("Sende-Takt der Heartbeats in Sekunden (mindestens 5).")]
|
||||
public int WatchdogIntervalSeconds
|
||||
{
|
||||
get => _config.Watchdog.IntervalSeconds;
|
||||
set => _config.Watchdog.IntervalSeconds = value;
|
||||
}
|
||||
|
||||
[Category("WatchDog")]
|
||||
[DisplayName("Token registriert")]
|
||||
[Description("Ob diese Instanz bereits einen eigenen Agent-Token vom WatchDog erhalten hat.")]
|
||||
[ReadOnly(true)]
|
||||
public bool WatchdogTokenRegistered => _config.Watchdog.HasToken;
|
||||
|
||||
[Browsable(false)]
|
||||
public InstanceConfig UnderlyingConfig => _config;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user