mirror of
https://github.com/home-assistant/core.git
synced 2025-07-23 05:07:41 +00:00
Add preset to be away and eco (#25643)
This commit is contained in:
parent
f4fce8fcc3
commit
b5e296238f
@ -61,7 +61,9 @@ ACTION_NEST_TO_HASS = {
|
|||||||
"cooling": CURRENT_HVAC_COOL,
|
"cooling": CURRENT_HVAC_COOL,
|
||||||
}
|
}
|
||||||
|
|
||||||
PRESET_MODES = [PRESET_NONE, PRESET_AWAY, PRESET_ECO]
|
PRESET_AWAY_AND_ECO = "Away and Eco"
|
||||||
|
|
||||||
|
PRESET_MODES = [PRESET_NONE, PRESET_AWAY, PRESET_ECO, PRESET_AWAY_AND_ECO]
|
||||||
|
|
||||||
|
|
||||||
def setup_platform(hass, config, add_entities, discovery_info=None):
|
def setup_platform(hass, config, add_entities, discovery_info=None):
|
||||||
@ -259,6 +261,9 @@ class NestThermostat(ClimateDevice):
|
|||||||
@property
|
@property
|
||||||
def preset_mode(self):
|
def preset_mode(self):
|
||||||
"""Return current preset mode."""
|
"""Return current preset mode."""
|
||||||
|
if self._away and self._mode == NEST_MODE_ECO:
|
||||||
|
return PRESET_AWAY_AND_ECO
|
||||||
|
|
||||||
if self._away:
|
if self._away:
|
||||||
return PRESET_AWAY
|
return PRESET_AWAY
|
||||||
|
|
||||||
@ -277,15 +282,19 @@ class NestThermostat(ClimateDevice):
|
|||||||
if preset_mode == self.preset_mode:
|
if preset_mode == self.preset_mode:
|
||||||
return
|
return
|
||||||
|
|
||||||
if self._away:
|
need_away = preset_mode in (PRESET_AWAY, PRESET_AWAY_AND_ECO)
|
||||||
self.structure.away = False
|
need_eco = preset_mode in (PRESET_ECO, PRESET_AWAY_AND_ECO)
|
||||||
elif preset_mode == PRESET_AWAY:
|
is_away = self._away
|
||||||
self.structure.away = True
|
is_eco = self._mode == NEST_MODE_ECO
|
||||||
|
|
||||||
if self.preset_mode == PRESET_ECO:
|
if is_away != need_away:
|
||||||
self.device.mode = MODE_HASS_TO_NEST[self._operation_list[0]]
|
self.structure.away = need_away
|
||||||
elif preset_mode == PRESET_ECO:
|
|
||||||
self.device.mode = NEST_MODE_ECO
|
if is_eco != need_eco:
|
||||||
|
if need_eco:
|
||||||
|
self.device.mode = NEST_MODE_ECO
|
||||||
|
else:
|
||||||
|
self.device.mode = MODE_HASS_TO_NEST[self._operation_list[0]]
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def fan_mode(self):
|
def fan_mode(self):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user