Class ClimateConfig
- Namespace
- HaMqttDiscoverable.Entities
- Assembly
- HaMqttDiscoverable.dll
Configuration for a Climate entity: an HVAC mode plus a target temperature, with optional fan mode, swing mode, preset mode, humidity, a separate power toggle, a heating/cooling range instead of a single target, and a read-only "current action" report.
public sealed class ClimateConfig : EntityConfig
- Inheritance
-
ClimateConfig
- Inherited Members
Properties
Component
The MQTT component Home Assistant should treat this entity as, e.g. sensor or
switch. Used to build the discovery topic; not part of the discovery payload itself.
public override string Component { get; }
Property Value
FanModes
The fan modes this device supports, if SupportsFanMode is true. Defaults to "auto", "low", "medium", "high".
[JsonPropertyName("fan_modes")]
public List<string> FanModes { get; set; }
Property Value
HumidityMax
The maximum target humidity, 0-100, if SupportsHumidity is true. Defaults to 100.
[JsonPropertyName("max_humidity")]
public double HumidityMax { get; set; }
Property Value
HumidityMin
The minimum target humidity, 0-100, if SupportsHumidity is true. Defaults to 0.
[JsonPropertyName("min_humidity")]
public double HumidityMin { get; set; }
Property Value
Modes
The HVAC modes this device supports. Defaults to "auto", "off", "cool", "heat", "dry", "fan_only".
[JsonPropertyName("modes")]
public List<string> Modes { get; set; }
Property Value
PayloadOff
The payload sent/expected to mean "off", if SupportsPower is true. Defaults to "OFF".
[JsonPropertyName("payload_off")]
public string PayloadOff { get; set; }
Property Value
PayloadOn
The payload sent/expected to mean "on", if SupportsPower is true. Defaults to "ON".
[JsonPropertyName("payload_on")]
public string PayloadOn { get; set; }
Property Value
PresetModes
The presets this device supports. Required (non-empty) if SupportsPresetMode is true.
[JsonPropertyName("preset_modes")]
public List<string> PresetModes { get; set; }
Property Value
SupportsAction
When true, adds a read-only report of what the equipment is actually doing right now - see PublishActionAsync(HvacAction, bool, CancellationToken).
[JsonIgnore]
public bool SupportsAction { get; set; }
Property Value
SupportsFanMode
When true, adds fan mode control - see FanModeCommandReceived.
[JsonIgnore]
public bool SupportsFanMode { get; set; }
Property Value
SupportsHumidity
When true, adds target/current humidity - see TargetHumidityCommandReceived.
[JsonIgnore]
public bool SupportsHumidity { get; set; }
Property Value
SupportsPower
When true, adds a separate on/off power toggle independent of the HVAC mode - see PowerCommandReceived.
[JsonIgnore]
public bool SupportsPower { get; set; }
Property Value
SupportsPresetMode
When true, adds named preset control (e.g. "eco", "away") - see PresetModeCommandReceived.
[JsonIgnore]
public bool SupportsPresetMode { get; set; }
Property Value
SupportsSwingMode
When true, adds swing mode control - see SwingModeCommandReceived.
[JsonIgnore]
public bool SupportsSwingMode { get; set; }
Property Value
SupportsTemperatureRange
When true, this device is set to a heating/cooling range (two target temperatures) via TargetTemperatureRangeCommandReceived instead of a single target.
[JsonIgnore]
public bool SupportsTemperatureRange { get; set; }
Property Value
SwingModes
The swing modes this device supports, if SupportsSwingMode is true. Defaults to "on", "off".
[JsonPropertyName("swing_modes")]
public List<string> SwingModes { get; set; }
Property Value
TempInitial
The target temperature to suggest when the entity is first added.
[JsonPropertyName("initial")]
public double? TempInitial { get; set; }
Property Value
TempMax
The maximum target temperature.
[JsonPropertyName("max_temp")]
public double? TempMax { get; set; }
Property Value
TempMin
The minimum target temperature.
[JsonPropertyName("min_temp")]
public double? TempMin { get; set; }
Property Value
TempStep
The step between selectable target temperatures. Defaults to 1.0.
[JsonPropertyName("temp_step")]
public double TempStep { get; set; }