This commit is contained in:
fuenmao
2026-09-22 14:16:49 +08:00
parent 2d05b6f864
commit a063be61cd
4 changed files with 335 additions and 30 deletions
@@ -32,6 +32,7 @@ public sealed class HomeAssistantDiscoveredDeviceOutput
public string? AreaName { get; set; }
public string Category { get; set; } = nameof(HealthDeviceCategory.Other);
public bool Online { get; set; }
public string? PrimaryControlEntityId { get; set; }
public List<HomeAssistantEntityOutput> Entities { get; set; } = [];
public Dictionary<string, object?> Metrics { get; set; } = [];
}
@@ -71,6 +72,35 @@ public sealed class HomeAssistantStatusOutput
public List<HomeAssistantDiscoveredDeviceOutput> Devices { get; set; } = [];
public HomeAssistantSceneDevicesSummaryOutput SceneDevices { get; set; } = new();
public HomeAssistantEnvironmentOutput Environment { get; set; } = new();
public List<HomeAssistantScenePresetItem> ScenePresets { get; set; } = [];
}
public sealed class HomeAssistantScenePresetItem
{
public string DeviceName { get; set; } = string.Empty;
public string Category { get; set; } = string.Empty;
public string EntityId { get; set; } = string.Empty;
public bool Available { get; set; }
public string AvailabilityMessage { get; set; } = string.Empty;
public string Action { get; set; } = string.Empty;
public string Detail { get; set; } = string.Empty;
public Dictionary<string, object?> Parameters { get; set; } = [];
}
public sealed class HomeAssistantDeviceSwitchInput
{
public string DeviceId { get; set; } = string.Empty;
public string? EntityId { get; set; }
public bool TurnOn { get; set; }
}
public sealed class HomeAssistantDeviceSwitchOutput
{
public bool Success { get; set; }
public string DeviceId { get; set; } = string.Empty;
public string EntityId { get; set; } = string.Empty;
public string State { get; set; } = string.Empty;
public string Message { get; set; } = string.Empty;
}
public sealed class HomeAssistantSceneOutput