Skip to content

ThinkingHome.DeviceModel

ThinkingHome.DeviceModel.Capabilities

Capability Class

Способность устройства (актуатор). Закрытая иерархия: конкретный тип служит дискриминатором вместо строки. Новая способность добавляется осознанно — словарь выровнен на кластеры Matter. При добавлении наследника обязательно зарегистрировать его в [JsonDerivedType] ниже.

csharp
public abstract record Capability : System.IEquatable<ThinkingHome.DeviceModel.Capabilities.Capability>

Inheritance System.Object → Capability

Derived
BrightnessCapability
ColorCapability
FanSpeedCapability
OnOffCapability
OpenCapability
OscillationCapability
TargetTemperatureCapability
ThermostatModeCapability

Implements System.IEquatable<Capability>

Properties

Capability.Instance Property

Экземпляр способности (например, "on_off", "brightness").

csharp
public string Instance { get; init; }

Property Value

System.String

Capability.Reportable Property

Присылает ли устройство изменения состояния (push).

csharp
public bool Reportable { get; init; }

Property Value

System.Boolean

Capability.Retrievable Property

Можно ли опросить текущее состояние.

csharp
public bool Retrievable { get; init; }

Property Value

System.Boolean

Опубликовано под лицензией MIT