Add action translations to Sensibo (#134420)

pull/134433/head
G Johansson 2025-01-02 10:45:20 +01:00 committed by GitHub
parent c8699dc066
commit 51ccba12af
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 54 additions and 8 deletions

View File

@ -154,7 +154,7 @@ async def async_setup_entry(
vol.Required(ATTR_GEO_INTEGRATION): bool, vol.Required(ATTR_GEO_INTEGRATION): bool,
vol.Required(ATTR_INDOOR_INTEGRATION): bool, vol.Required(ATTR_INDOOR_INTEGRATION): bool,
vol.Required(ATTR_OUTDOOR_INTEGRATION): bool, vol.Required(ATTR_OUTDOOR_INTEGRATION): bool,
vol.Required(ATTR_SENSITIVITY): vol.In(["Normal", "Sensitive"]), vol.Required(ATTR_SENSITIVITY): vol.In(["normal", "sensitive"]),
}, },
"async_enable_pure_boost", "async_enable_pure_boost",
) )
@ -168,7 +168,7 @@ async def async_setup_entry(
vol.Optional(ATTR_FAN_MODE): str, vol.Optional(ATTR_FAN_MODE): str,
vol.Optional(ATTR_SWING_MODE): str, vol.Optional(ATTR_SWING_MODE): str,
vol.Optional(ATTR_HORIZONTAL_SWING_MODE): str, vol.Optional(ATTR_HORIZONTAL_SWING_MODE): str,
vol.Optional(ATTR_LIGHT): vol.In(["on", "off"]), vol.Optional(ATTR_LIGHT): vol.In(["on", "off", "dim"]),
}, },
"async_full_ac_state", "async_full_ac_state",
) )
@ -473,7 +473,7 @@ class SensiboClimate(SensiboDeviceBaseEntity, ClimateEntity):
"enabled": True, "enabled": True,
} }
if sensitivity is not None: if sensitivity is not None:
params["sensitivity"] = sensitivity[0] params["sensitivity"] = sensitivity[0].upper()
if indoor_integration is not None: if indoor_integration is not None:
params["measurementsIntegration"] = indoor_integration params["measurementsIntegration"] = indoor_integration
if ac_integration is not None: if ac_integration is not None:
@ -513,6 +513,9 @@ class SensiboClimate(SensiboDeviceBaseEntity, ClimateEntity):
UnitOfTemperature.CELSIUS, UnitOfTemperature.CELSIUS,
) )
if smart_type == "feelslike":
smart_type = "feelsLike"
params: dict[str, str | bool | float | dict] = { params: dict[str, str | bool | float | dict] = {
"enabled": True, "enabled": True,
"deviceUid": self._device_id, "deviceUid": self._device_id,

View File

@ -12,6 +12,7 @@ assume_state:
options: options:
- "on" - "on"
- "off" - "off"
translation_key: assume_state
enable_timer: enable_timer:
target: target:
entity: entity:
@ -58,8 +59,9 @@ enable_pure_boost:
selector: selector:
select: select:
options: options:
- "Normal" - "normal"
- "Sensitive" - "sensitive"
translation_key: sensitivity
full_state: full_state:
target: target:
entity: entity:
@ -78,6 +80,7 @@ full_state:
- "auto" - "auto"
- "dry" - "dry"
- "off" - "off"
translation_key: hvac_mode
target_temperature: target_temperature:
required: false required: false
example: 23 example: 23
@ -113,6 +116,7 @@ full_state:
- "on" - "on"
- "off" - "off"
- "dim" - "dim"
translation_key: light_mode
enable_climate_react: enable_climate_react:
target: target:
entity: entity:
@ -152,5 +156,6 @@ enable_climate_react:
select: select:
options: options:
- "temperature" - "temperature"
- "feelsLike" - "feelslike"
- "humidity" - "humidity"
translation_key: smart_type

View File

@ -496,6 +496,44 @@
} }
} }
}, },
"selector": {
"sensitivity": {
"options": {
"normal": "[%key:component::sensibo::entity::sensor::sensitivity::state::n%]",
"sensitive": "[%key:component::sensibo::entity::sensor::sensitivity::state::s%]"
}
},
"assume_state": {
"options": {
"on": "[%key:common::state::on%]",
"off": "[%key:common::state::off%]"
}
},
"hvac_mode": {
"options": {
"cool": "[%key:component::climate::entity_component::_::state::cool%]",
"heat": "[%key:component::climate::entity_component::_::state::heat%]",
"fan": "[%key:component::climate::entity_component::_::state::fan_only%]",
"auto": "[%key:component::climate::entity_component::_::state::auto%]",
"dry": "[%key:component::climate::entity_component::_::state::dry%]",
"off": "[%key:common::state::off%]"
}
},
"light_mode": {
"options": {
"on": "[%key:common::state::on%]",
"off": "[%key:common::state::off%]",
"dim": "[%key:component::sensibo::entity::select::light::state::dim%]"
}
},
"smart_type": {
"options": {
"temperature": "[%key:component::sensor::entity_component::temperature::name%]",
"feelslike": "[%key:component::sensibo::entity::switch::climate_react_switch::state_attributes::type::state::feelslike%]",
"humidity": "[%key:component::sensor::entity_component::humidity::name%]"
}
}
},
"exceptions": { "exceptions": {
"no_target_temperature_in_features": { "no_target_temperature_in_features": {
"message": "Current mode doesn't support setting target temperature" "message": "Current mode doesn't support setting target temperature"

View File

@ -1001,7 +1001,7 @@ async def test_climate_pure_boost(
ATTR_ENTITY_ID: state_climate.entity_id, ATTR_ENTITY_ID: state_climate.entity_id,
ATTR_INDOOR_INTEGRATION: True, ATTR_INDOOR_INTEGRATION: True,
ATTR_OUTDOOR_INTEGRATION: True, ATTR_OUTDOOR_INTEGRATION: True,
ATTR_SENSITIVITY: "Sensitive", ATTR_SENSITIVITY: "sensitive",
}, },
blocking=True, blocking=True,
) )
@ -1036,7 +1036,7 @@ async def test_climate_pure_boost(
ATTR_GEO_INTEGRATION: False, ATTR_GEO_INTEGRATION: False,
ATTR_INDOOR_INTEGRATION: True, ATTR_INDOOR_INTEGRATION: True,
ATTR_OUTDOOR_INTEGRATION: True, ATTR_OUTDOOR_INTEGRATION: True,
ATTR_SENSITIVITY: "Sensitive", ATTR_SENSITIVITY: "sensitive",
}, },
blocking=True, blocking=True,
) )