This commit is contained in:
fuenmao
2026-09-21 16:52:27 +08:00
parent 54d5c4fda3
commit 8c922a3c7f
8 changed files with 496 additions and 0 deletions
@@ -0,0 +1,33 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace Evergreen.Health.Application.Health.Integrations.HomeAssistant;
public sealed class HomeAssistantState
{
[JsonPropertyName("entity_id")]
public string EntityId { get; set; } = string.Empty;
[JsonPropertyName("state")]
public string State { get; set; } = string.Empty;
[JsonPropertyName("attributes")]
public JsonElement Attributes { get; set; }
[JsonPropertyName("last_updated")]
public DateTimeOffset? LastUpdated { get; set; }
public string? GetStringAttribute(string name)
{
if (!Attributes.TryGetProperty(name, out var value)) return null;
return value.ValueKind == JsonValueKind.String ? value.GetString() : value.ToString();
}
}
public sealed class HomeAssistantActionResult
{
public string Name { get; set; } = string.Empty;
public string EntityId { get; set; } = string.Empty;
public string Status { get; set; } = string.Empty;
public string Message { get; set; } = string.Empty;
}