Add climate entity for oven

This commit is contained in:
Andre Basche 2023-05-28 17:38:56 +02:00
parent cb660fa9e0
commit 6e9981c9ab
23 changed files with 1215 additions and 46 deletions

View file

@ -251,6 +251,7 @@ For every device exists a hidden button which can be used to log all infos of yo
| Name | Icon | Entity | Key | | Name | Icon | Entity | Key |
| --- | --- | --- | --- | | --- | --- | --- | --- |
| Oven | `toaster-oven` | `switch` | `startProgram` / `stopProgram` | | Oven | `toaster-oven` | `switch` | `startProgram` / `stopProgram` |
| Oven | `thermometer` | `climate` | `settings.tempSel` |
#### Configs #### Configs
| Name | Icon | Entity | Key | | Name | Icon | Entity | Key |
| --- | --- | --- | --- | | --- | --- | --- | --- |

View file

@ -1,6 +1,8 @@
import logging import logging
from dataclasses import dataclass from dataclasses import dataclass
from pyhon.appliance import HonAppliance
from homeassistant.components.climate import ( from homeassistant.components.climate import (
ClimateEntity, ClimateEntity,
ClimateEntityDescription, ClimateEntityDescription,
@ -17,13 +19,9 @@ from homeassistant.components.climate.const import (
from homeassistant.config_entries import ConfigEntry from homeassistant.config_entries import ConfigEntry
from homeassistant.const import ( from homeassistant.const import (
ATTR_TEMPERATURE, ATTR_TEMPERATURE,
PRECISION_WHOLE,
TEMP_CELSIUS, TEMP_CELSIUS,
) )
from homeassistant.core import callback from homeassistant.core import callback
from pyhon import helper
from pyhon.appliance import HonAppliance
from .const import HON_HVAC_MODE, HON_FAN, HON_HVAC_PROGRAM, DOMAIN from .const import HON_HVAC_MODE, HON_FAN, HON_HVAC_PROGRAM, DOMAIN
from .hon import HonEntity from .hon import HonEntity
@ -36,8 +34,8 @@ class HonACClimateEntityDescription(ClimateEntityDescription):
@dataclass @dataclass
class HonREFClimateEntityDescription(ClimateEntityDescription): class HonClimateEntityDescription(ClimateEntityDescription):
pass mode: HVACMode = "auto"
CLIMATES = { CLIMATES = {
@ -50,19 +48,30 @@ CLIMATES = {
), ),
), ),
"REF": ( "REF": (
HonREFClimateEntityDescription( HonClimateEntityDescription(
key="settings.tempSelZ1", key="settings.tempSelZ1",
mode=HVACMode.COOL,
name="Fridge", name="Fridge",
icon="mdi:thermometer", icon="mdi:thermometer",
translation_key="fridge", translation_key="fridge",
), ),
HonREFClimateEntityDescription( HonClimateEntityDescription(
key="settings.tempSelZ2", key="settings.tempSelZ2",
mode=HVACMode.COOL,
name="Freezer", name="Freezer",
icon="mdi:snowflake-thermometer", icon="mdi:snowflake-thermometer",
translation_key="freezer", translation_key="freezer",
), ),
), ),
"OV": (
HonClimateEntityDescription(
key="settings.tempSel",
mode=HVACMode.HEAT,
name="Oven",
icon="mdi:thermometer",
translation_key="oven",
),
),
} }
@ -74,10 +83,10 @@ async def async_setup_entry(hass, entry: ConfigEntry, async_add_entities) -> Non
if description.key not in list(device.commands): if description.key not in list(device.commands):
continue continue
entity = HonACClimateEntity(hass, entry, device, description) entity = HonACClimateEntity(hass, entry, device, description)
elif isinstance(description, HonREFClimateEntityDescription): elif isinstance(description, HonClimateEntityDescription):
if description.key not in device.available_settings: if description.key not in device.available_settings:
continue continue
entity = HonREFClimateEntity(hass, entry, device, description) entity = HonClimateEntity(hass, entry, device, description)
else: else:
continue continue
await entity.coordinator.async_config_entry_first_refresh() await entity.coordinator.async_config_entry_first_refresh()
@ -90,7 +99,7 @@ class HonACClimateEntity(HonEntity, ClimateEntity):
super().__init__(hass, entry, device, description) super().__init__(hass, entry, device, description)
self._attr_temperature_unit = TEMP_CELSIUS self._attr_temperature_unit = TEMP_CELSIUS
self._attr_target_temperature_step = PRECISION_WHOLE self._attr_target_temperature_step = device.settings["settings.tempSel"].step
self._attr_max_temp = device.settings["settings.tempSel"].max self._attr_max_temp = device.settings["settings.tempSel"].max
self._attr_min_temp = device.settings["settings.tempSel"].min self._attr_min_temp = device.settings["settings.tempSel"].min
@ -114,11 +123,14 @@ class HonACClimateEntity(HonEntity, ClimateEntity):
self._handle_coordinator_update(update=False) self._handle_coordinator_update(update=False)
async def async_set_hvac_mode(self, hvac_mode): @property
def hvac_mode(self) -> HVACMode | str | None:
if self._device.get("onOffStatus") == "0": if self._device.get("onOffStatus") == "0":
self._attr_hvac_mode = HVACMode.OFF return HVACMode.OFF
else: else:
self._attr_hvac_mode = HON_HVAC_MODE[self._device.get("machMode")] return HON_HVAC_MODE[self._device.get("machMode")]
async def async_set_hvac_mode(self, hvac_mode):
if hvac_mode == HVACMode.OFF: if hvac_mode == HVACMode.OFF:
await self._device.commands["stopProgram"].send() await self._device.commands["stopProgram"].send()
else: else:
@ -185,29 +197,38 @@ class HonACClimateEntity(HonEntity, ClimateEntity):
self.async_write_ha_state() self.async_write_ha_state()
class HonREFClimateEntity(HonEntity, ClimateEntity): class HonClimateEntity(HonEntity, ClimateEntity):
entity_description = HonClimateEntityDescription
def __init__(self, hass, entry, device: HonAppliance, description) -> None: def __init__(self, hass, entry, device: HonAppliance, description) -> None:
super().__init__(hass, entry, device, description) super().__init__(hass, entry, device, description)
self._attr_temperature_unit = TEMP_CELSIUS self._attr_temperature_unit = TEMP_CELSIUS
self._attr_target_temperature_step = PRECISION_WHOLE self._set_temperature_bound()
self._attr_max_temp = device.settings[description.key].max
self._attr_min_temp = device.settings[description.key].min
self._attr_hvac_modes = [HVACMode.COOL]
self._attr_supported_features = ( self._attr_supported_features = (
ClimateEntityFeature.TARGET_TEMPERATURE | ClimateEntityFeature.PRESET_MODE ClimateEntityFeature.TARGET_TEMPERATURE | ClimateEntityFeature.PRESET_MODE
) )
self._handle_coordinator_update(update=False) self._attr_hvac_modes = [description.mode]
if device.get("onOffStatus"):
self._attr_hvac_modes += [HVACMode.OFF]
modes = []
else:
modes = ["no_mode"]
modes = ["no_mode"]
for mode, data in device.commands["startProgram"].categories.items(): for mode, data in device.commands["startProgram"].categories.items():
if mode not in data.parameters["program"].values:
continue
if zone := data.parameters.get("zone"): if zone := data.parameters.get("zone"):
if self.entity_description.name.lower() in zone.values: if self.entity_description.name.lower() in zone.values:
modes.append(mode) modes.append(mode)
else:
modes.append(mode)
self._attr_preset_modes = modes self._attr_preset_modes = modes
self._handle_coordinator_update(update=False)
@property @property
def target_temperature(self) -> int | None: def target_temperature(self) -> int | None:
"""Return the temperature we try to reach.""" """Return the temperature we try to reach."""
@ -226,35 +247,59 @@ class HonREFClimateEntity(HonEntity, ClimateEntity):
await self._device.commands["settings"].send() await self._device.commands["settings"].send()
self.async_write_ha_state() self.async_write_ha_state()
@property
def hvac_mode(self) -> HVACMode | str | None:
if self._device.get("onOffStatus") == "0":
return HVACMode.OFF
else:
return self.entity_description.mode
async def async_set_hvac_mode(self, hvac_mode):
if len(self.hvac_modes) <= 1:
return
if hvac_mode == HVACMode.OFF:
await self._device.commands["stopProgram"].send()
else:
await self._device.commands["startProgram"].send()
self._attr_hvac_mode = hvac_mode
self.async_write_ha_state()
@property @property
def preset_mode(self) -> str | None: def preset_mode(self) -> str | None:
"""Return the current Preset for this channel.""" """Return the current Preset for this channel."""
return self._device.get(f"mode{self.entity_description.key[-2:]}", "no_mode") if self._device.get("onOffStatus") is not None:
return self._device.get("programName", "")
else:
return self._device.get(
f"mode{self.entity_description.key[-2:]}", "no_mode"
)
async def async_set_preset_mode(self, preset_mode: str) -> None: async def async_set_preset_mode(self, preset_mode: str) -> None:
"""Set the new preset mode.""" """Set the new preset mode."""
if preset_mode == "no_mode": command = "stopProgram" if preset_mode == "no_mode" else "startProgram"
self._device.sync_command("stopProgram", "settings") if program := self._device.settings.get(f"{command}.program"):
await self.coordinator.async_refresh() program.value = preset_mode
await self._device.commands["stopProgram"].send() if zone := self._device.settings.get(f"{command}.zone"):
else: zone.value = self.entity_description.name.lower()
self._device.settings["startProgram.program"].value = preset_mode self._device.sync_command(command, "settings")
self._device.settings[ self._set_temperature_bound()
"startProgram.zone" await self.coordinator.async_refresh()
].value = self.entity_description.name.lower() await self._device.commands[command].send()
self._device.sync_command("startProgram", "settings") self._attr_preset_mode = preset_mode
await self.coordinator.async_refresh()
await self._device.commands["startProgram"].send()
self.async_write_ha_state() self.async_write_ha_state()
def _set_temperature_bound(self):
self._attr_target_temperature_step = self._device.settings[
self.entity_description.key
].step
self._attr_max_temp = self._device.settings[self.entity_description.key].max
self._attr_min_temp = self._device.settings[self.entity_description.key].min
@callback @callback
def _handle_coordinator_update(self, update=True) -> None: def _handle_coordinator_update(self, update=True) -> None:
self._attr_target_temperature = int( self._attr_target_temperature = self.target_temperature
float(self._device.get(self.entity_description.key)) self._attr_current_temperature = self.current_temperature
) self._attr_hvac_mode = self.hvac_mode
temp_key = self.entity_description.key.split(".")[-1].replace("Sel", "") self._attr_preset_mode = self.preset_mode
self._attr_current_temperature = int(self._device.get(temp_key))
self._attr_hvac_mode = HVACMode.COOL
if update: if update:
self.async_write_ha_state() self.async_write_ha_state()

View file

@ -9,7 +9,7 @@
"iot_class": "cloud_polling", "iot_class": "cloud_polling",
"issue_tracker": "https://github.com/Andre0512/hon/issues", "issue_tracker": "https://github.com/Andre0512/hon/issues",
"requirements": [ "requirements": [
"pyhOn==0.11.2" "pyhOn==0.11.3"
], ],
"version": "0.8.0-beta.6" "version": "0.8.0-beta.7"
} }

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Trouba",
"state_attributes": {
"preset_mode": {
"name": "Programy",
"state": {
"bakery": "Těstoviny a pečivo",
"bakery_steam": "Pára v troubě",
"bottom_heating": "Spodní ohřev",
"bottom_heating_fan": "Spodní ohřev + ventilátor",
"bread": "Chléb",
"bread_steam": "Chléb pečený v páře",
"combi": "Combi",
"convection_fan": "Statický + ventilátor",
"convection_fan_turnspit": "Konvekce + ventilátor + rožeň",
"conventional": "Statický",
"conventional_turnspit": "Konvekce + rožeň",
"defrost": "Rozmrazování",
"descaling": "Odstraňování vodního kamene",
"fish": "Ryby",
"fish_steam": "Ryby v páře",
"grill_cata": "Gril",
"grill_fan_cata": "Ventilátor grilu",
"grill_fan_pyro": "Gril + ventilátor",
"grill_pyro": "Gril",
"h20_clean": "H2O-Clean",
"iot_bread": "Chléb",
"iot_h20_clean": "h2O clean",
"leavening": "Kynutí",
"low_temp_cooking": "Příprava při nízkých teplotách",
"low_temp_cooking_fish": "Příprava při nízkých teplotách ryby",
"low_temp_cooking_fish_steam": "Příprava při nízkých teplotách ryby v páře",
"low_temp_cooking_meat": "Příprava při nízkých teplotách maso",
"low_temp_cooking_meat_steam": "Příprava při nízkých teplotách - dušené maso",
"low_temp_cooking_steam": "Příprava v páře při nízkých teplotách",
"meat": "Maso",
"meat_steam": "Maso v páře",
"multi_level": "Víceúrovňové",
"paella": "Paella",
"pasta_and_bakery": "Těstoviny a pečivo",
"pizza": "Pizza",
"pyrolysis": "Pyrolýza",
"pyrolysis_plus": "Pyrolýza +",
"red_meat": "Tmavé maso",
"red_meat_steam": "Červené maso vařené v páře",
"regenerate": "Regenerace",
"soft_plus": "Soft +",
"super_grill": "Super gril",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Zelenina",
"vegetables_cata": "Zelenina",
"vegetables_pyro": "Zelenina",
"water_discharge": "Vypouštění vody",
"white_meat": "Bílé maso",
"white_meat_steam": "Bílé maso vařené v páře"
}
}
}
} }
} }
}, },

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Ofen",
"state_attributes": {
"preset_mode": {
"name": "Programme",
"state": {
"bakery": "Teigwaren und Brot",
"bakery_steam": "Dampf im Backofen",
"bottom_heating": "Unterhitze",
"bottom_heating_fan": "Unterhitze + Umluft",
"bread": "Brot",
"bread_steam": "Mit Dampf gebackenes Brot",
"combi": "Combi",
"convection_fan": "Umluft",
"convection_fan_turnspit": "Heißluft + Drehspieß",
"conventional": "Ober-Unterhitze",
"conventional_turnspit": "Ober-&Unterhitze + Bratspieß",
"defrost": "Auftauen",
"descaling": "Entkalkung",
"fish": "Fisch",
"fish_steam": "Gedünsteter Fisch",
"grill_cata": "Grill",
"grill_fan_cata": "Grill Umluft",
"grill_fan_pyro": "Grill + Umluft",
"grill_pyro": "Grill",
"h20_clean": "H2O-Clean",
"iot_bread": "Brot",
"iot_h20_clean": "h2O clean",
"leavening": "Aufgehen",
"low_temp_cooking": "Garen bei niedriger Temperatur",
"low_temp_cooking_fish": "Garen bei niedriger Temperatur - Fisch",
"low_temp_cooking_fish_steam": "Niedertemperaturgaren - Gedünsteter Fisch",
"low_temp_cooking_meat": "Garen bei niedriger Temperatur - Fleisch",
"low_temp_cooking_meat_steam": "Niedertemperaturgaren - Gedämpftes Fleisch",
"low_temp_cooking_steam": "Niedertemperatur-Dampfgaren",
"meat": "Fleisch",
"meat_steam": "Fleisch Dampf",
"multi_level": "Multi-Level",
"paella": "Paella",
"pasta_and_bakery": "Teigwaren und Brot",
"pizza": "Pizza",
"pyrolysis": "Pyrolyse",
"pyrolysis_plus": "Pyrolyse +",
"red_meat": "Rotes Fleisch",
"red_meat_steam": "Gedünstetes rotes Fleisch",
"regenerate": "Regenerieren",
"soft_plus": "Soft+",
"super_grill": "Super Grill",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Gemüse",
"vegetables_cata": "Gemüse",
"vegetables_pyro": "Gemüse",
"water_discharge": "Wasserabfluss",
"white_meat": "Weißes Fleisch",
"white_meat_steam": "Gedämpftes weißes Fleisch"
}
}
}
} }
} }
}, },

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Φούρνος",
"state_attributes": {
"preset_mode": {
"name": "Προγράμματα",
"state": {
"bakery": "Ζυμαρικά και αρτοποιήματα",
"bakery_steam": "Ατμός φούρνου",
"bottom_heating": "Κάτω στοιχείο",
"bottom_heating_fan": "Κάτω στοιχείο + ανεμιστήρας",
"bread": "Ψωμί",
"bread_steam": "Ψωμί ατμού",
"combi": "Combi",
"convection_fan": "Θερμοσ αερασ",
"convection_fan_turnspit": "Θερμός αέρας + Ανεμιστήρας + Σούβλα",
"conventional": "Ανω - κατω θερμανση",
"conventional_turnspit": "Θερμός αέρας + Σούβλα",
"defrost": "Απόψυξη",
"descaling": "Αφαλάτωση",
"fish": "Ψάρια",
"fish_steam": "Ψάρια στον ατμό",
"grill_cata": "Γκριλ",
"grill_fan_cata": "Ανεμιστήρας γκριλ",
"grill_fan_pyro": "Γκριλ + ανεμιστήρας",
"grill_pyro": "Γκριλ",
"h20_clean": "H2O-Clean",
"iot_bread": "Ψωμί",
"iot_h20_clean": "h2O clean",
"leavening": "Ζυμωση",
"low_temp_cooking": "Μαγείρεμα σε χαμηλή θερμοκρασία",
"low_temp_cooking_fish": "Μαγείρεμα σε χαμηλή θερμοκρασία - Ψάρι",
"low_temp_cooking_fish_steam": "Μαγείρεμα σε χαμηλή θερμοκρασία - Ψάρια στον ατμό",
"low_temp_cooking_meat": "Μαγείρεμα σε χαμηλή θερμοκρασία - Κρέας",
"low_temp_cooking_meat_steam": "Μαγείρεμα σε χαμηλή θερμοκρασία - Κρέας στον ατμό",
"low_temp_cooking_steam": "Μαγείρεμα με ατμό σε χαμηλή θερμοκρασία",
"meat": "Κρέας",
"meat_steam": "Κρέας στον ατμό",
"multi_level": "Πολλαπλων Επιπεδων",
"paella": "Paella",
"pasta_and_bakery": "Ζυμαρικά και αρτοποιήματα",
"pizza": "Pizza",
"pyrolysis": "Πυρόλυση",
"pyrolysis_plus": "Πυρόλυση +",
"red_meat": "Κόκκινο κρέας",
"red_meat_steam": "Κόκκινο κρέας στον ατμό",
"regenerate": "Αναζωογόνηση",
"soft_plus": "Μαλακό +",
"super_grill": "Σούπερ γκριλ",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Λαχανικά",
"vegetables_cata": "Λαχανικά",
"vegetables_pyro": "Λαχανικά",
"water_discharge": "Απόρριψη νερού",
"white_meat": "Λευκό κρέας",
"white_meat_steam": "Λευκό κρέας στον ατμό"
}
}
}
} }
} }
}, },

View file

@ -1421,6 +1421,68 @@
} }
} }
} }
},
"oven": {
"name": "Oven",
"state_attributes": {
"preset_mode": {
"name": "Programs",
"state": {
"bakery": "Pasta and Bakery",
"bakery_steam": "Steam oven",
"bottom_heating": "Bottom Heating",
"bottom_heating_fan": "Bottom Heating + Fan",
"bread": "Bread",
"bread_steam": "Steam baked bread",
"combi": "Combi",
"convection_fan": "Convection + Fan",
"convection_fan_turnspit": "Convection + Fan + Turnspit",
"conventional": "Conventional",
"conventional_turnspit": "Convection + Turnspit",
"defrost": "Defrosting",
"descaling": "Descaling",
"fish": "Fish",
"fish_steam": "Steamed fish",
"grill_cata": "Grill",
"grill_fan_cata": "Grill fan",
"grill_fan_pyro": "Grill + Fan",
"grill_pyro": "Grill",
"h20_clean": "H2O-Clean",
"iot_bread": "Bread",
"iot_h20_clean": "h2O clean",
"leavening": "Leavening",
"light_fan\n": "Light Fan",
"low_temp_cooking": "Low Temperature Cooking",
"low_temp_cooking_fish": "Low Temperature Cooking - Fish",
"low_temp_cooking_fish_steam": "Low Temperature Cooking - Steamed fish",
"low_temp_cooking_meat": "Low Temperature Cooking - Meat",
"low_temp_cooking_meat_steam": "Low Temperature Cooking - Steamed meat",
"low_temp_cooking_steam": "Low Temperature Steam Cooking",
"meat": "Meat",
"meat_steam": "Steamed meat",
"multi_level": "Multi-Level",
"paella": "Paella",
"pasta_and_bakery": "Pasta and Bakery",
"pizza": "Pizza",
"pyrolysis": "Pyrolysis",
"pyrolysis_plus": "Pyrolysis +",
"red_meat": "Red Meat",
"red_meat_steam": "Steamed red meat",
"regenerate": "Regenerate",
"soft_plus": "Soft+",
"super_grill": "Super Grill",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Vegetables",
"vegetables_cata": "Vegetables",
"vegetables_pyro": "Vegetables",
"water_discharge": "Water Discharge",
"white_meat": "White Meat",
"white_meat_steam": "Steamed white meat"
}
}
}
} }
} }
} }

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Horno",
"state_attributes": {
"preset_mode": {
"name": "Programas",
"state": {
"bakery": "Pasta y Panadería",
"bakery_steam": "Oven steam",
"bottom_heating": "Calentamiento Inferior",
"bottom_heating_fan": "Calentamiento Inferior + Ventilador",
"bread": "Pan",
"bread_steam": "Pan al vapor",
"combi": "Combi",
"convection_fan": "Convección + Ventilador",
"convection_fan_turnspit": "Asador giratorio convencional ventilada",
"conventional": "Convección",
"conventional_turnspit": "Asador giratorio convencional",
"defrost": "Descongelación",
"descaling": "Descalcificación",
"fish": "Pescado",
"fish_steam": "Pescado al vapor",
"grill_cata": "Grill",
"grill_fan_cata": "Grill y ventilador",
"grill_fan_pyro": "Grill + Ventilador",
"grill_pyro": "Grill",
"h20_clean": "H2O-Clean",
"iot_bread": "Pan",
"iot_h20_clean": "h2O clean",
"leavening": "Fermentación",
"low_temp_cooking": "Cocción a baja temperatura",
"low_temp_cooking_fish": "Cocción a baja temperatura Pescado",
"low_temp_cooking_fish_steam": "Cocción a baja temperatura Pescado",
"low_temp_cooking_meat": "Cocción a baja temperatura Carne",
"low_temp_cooking_meat_steam": "Cocción a baja temperatura Carne al vapor",
"low_temp_cooking_steam": "Cocción a baja temperatura al vapor",
"meat": "Carne",
"meat_steam": "Meat steam",
"multi_level": "Múltiples niveles",
"paella": "Paella",
"pasta_and_bakery": "Pasta y Panadería",
"pizza": "Pizza",
"pyrolysis": "Pirólisis",
"pyrolysis_plus": "Pirólisis +",
"red_meat": "Carne roja",
"red_meat_steam": "Carne roja al vapor",
"regenerate": "Regenerar",
"soft_plus": "Soft+",
"super_grill": "Super Grill",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Verduras",
"vegetables_cata": "Verduras",
"vegetables_pyro": "Verdura",
"water_discharge": "Descarga de agua",
"white_meat": "Carne blanca",
"white_meat_steam": "Carne blanca al vapor"
}
}
}
} }
} }
}, },

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Four",
"state_attributes": {
"preset_mode": {
"name": "Programmes",
"state": {
"bakery": "Pâtes et pains",
"bakery_steam": "Four à vapeur",
"bottom_heating": "Sole",
"bottom_heating_fan": "Sole brassée",
"bread": "Pain",
"bread_steam": "Pain àla vapeur",
"combi": "Combi",
"convection_fan": "Chaleur tournante",
"convection_fan_turnspit": "Tournebrocheà convection ventilée",
"conventional": "Convection naturelle",
"conventional_turnspit": "Tournebroche conventionnel",
"defrost": "Décongélation",
"descaling": "Détartrage",
"fish": "Poisson",
"fish_steam": "Poisson à la vapeur",
"grill_cata": "Gril",
"grill_fan_cata": "Turbogril",
"grill_fan_pyro": "Turbogril",
"grill_pyro": "Gril",
"h20_clean": "H2O-Clean",
"iot_bread": "Pain",
"iot_h20_clean": "h2O clean",
"leavening": "Étuve",
"low_temp_cooking": "Cuisson à basse température",
"low_temp_cooking_fish": "Cuisson à basse température Poisson",
"low_temp_cooking_fish_steam": "Cuisson à basse température Poisson à la vapeur",
"low_temp_cooking_meat": "Cuisson à basse température Viande",
"low_temp_cooking_meat_steam": "Cuisson à basse température Viande à la vapeur",
"low_temp_cooking_steam": "Cuisson à basse température à la vapeur",
"meat": "Viande",
"meat_steam": "Viande à la vapeur",
"multi_level": "Chaleur pulsée",
"paella": "Paella",
"pasta_and_bakery": "Pâtes et pains",
"pizza": "Pizza",
"pyrolysis": "Pyrolyse",
"pyrolysis_plus": "Pyrolyse +",
"red_meat": "Viande rouge",
"red_meat_steam": "Viande rouge à la vapeur",
"regenerate": "Régénérer",
"soft_plus": "Soft+",
"super_grill": "Super Gril",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Légumes",
"vegetables_cata": "Légumes",
"vegetables_pyro": "Légumes",
"water_discharge": "Décharge d'eau",
"white_meat": "Viande blanche",
"white_meat_steam": "Viande blanche à la vapeur"
}
}
}
} }
} }
}, },

View file

@ -805,6 +805,19 @@
} }
} }
} }
},
"oven": {
"name": "Oven",
"state_attributes": {
"preset_mode": {
"name": "Programs",
"state": {
"iot_h20_clean": "h2O clean",
"pizza": "Pizza",
"tailor_bake": "Tailor bake"
}
}
}
} }
} }
}, },

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Pećnica",
"state_attributes": {
"preset_mode": {
"name": "Programi",
"state": {
"bakery": "Tjestenina i tijesta",
"bakery_steam": "Para u pećnici",
"bottom_heating": "Donji grijač",
"bottom_heating_fan": "Donji grijač + Ventilator",
"bread": "Kruh",
"bread_steam": "Kruh pečen na pari",
"combi": "Combi",
"convection_fan": "Konvekcija + Ventilator",
"convection_fan_turnspit": "Konvekcija + ventilator + ražanj",
"conventional": "Konvekcijska",
"conventional_turnspit": "Konvekcija + ražanj",
"defrost": "Odmrzavanje",
"descaling": "Uklanjanje kamenca",
"fish": "Riba",
"fish_steam": "Riba na pari",
"grill_cata": "Pečenje",
"grill_fan_cata": "Ventilator za pečenje",
"grill_fan_pyro": "Grijač + ventilator",
"grill_pyro": "Grijač",
"h20_clean": "H2O-Clean",
"iot_bread": "Kruh",
"iot_h20_clean": "h2O clean",
"leavening": "Dizanje tijesta",
"low_temp_cooking": "Kuhanje na niskoj temperaturi",
"low_temp_cooking_fish": "Kuhanje na niskoj temperaturi - riba",
"low_temp_cooking_fish_steam": "Kuhanje na niskoj temperaturi - riba na pari",
"low_temp_cooking_meat": "Kuhanje na niskoj temperaturi - meso",
"low_temp_cooking_meat_steam": "Kuhanje na niskoj temperaturi - meso na pari",
"low_temp_cooking_steam": "Kuhanje na pari i na niskoj temperaturi",
"meat": "Meso",
"meat_steam": "Meso na pari",
"multi_level": "Više razina",
"paella": "Paella",
"pasta_and_bakery": "Tjestenina i tijesta",
"pizza": "Pizza",
"pyrolysis": "Piroliza",
"pyrolysis_plus": "Piroliza +",
"red_meat": "Crveno meso",
"red_meat_steam": "Kuhano crveno meso",
"regenerate": "Regeneracija",
"soft_plus": "Mekano+",
"super_grill": "Super roštilj",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Povrće",
"vegetables_cata": "Povrće",
"vegetables_pyro": "Povrće",
"water_discharge": "Ispuštanje vode",
"white_meat": "Bijelo meso",
"white_meat_steam": "Kuhano bijelo meso na pari"
}
}
}
} }
} }
}, },

View file

@ -1409,6 +1409,67 @@
} }
} }
} }
},
"oven": {
"name": "Forno",
"state_attributes": {
"preset_mode": {
"name": "Programmi",
"state": {
"bakery": "Pasta e Pasticceria",
"bakery_steam": "Vapore da forno",
"bottom_heating": "Resistenza Inferiore",
"bottom_heating_fan": "Resistenza Inferiore Ventilata",
"bread": "Pane",
"bread_steam": "Pane al vapore",
"combi": "Combi",
"convection_fan": "Cottura Ventilata",
"convection_fan_turnspit": "Girarrosto a convenzione ventilata",
"conventional": "Statico",
"conventional_turnspit": "Girarrosto a convenzione",
"defrost": "Decongelamento",
"descaling": "Decalcificazione",
"fish": "Pesce",
"fish_steam": "Pesce al vapore",
"grill_cata": "Grill",
"grill_fan_cata": "Grill fan",
"grill_fan_pyro": "Grill Ventilato",
"grill_pyro": "Grill",
"h20_clean": "H2O-Clean",
"iot_bread": "Pane",
"iot_h20_clean": "h2O clean",
"leavening": "Lievitazione",
"low_temp_cooking": "Cottura a bassa temperatura",
"low_temp_cooking_fish": "Cottura a bassa temperatura Pesce",
"low_temp_cooking_fish_steam": "Cottura a bassa temperatura Pesce al vapore",
"low_temp_cooking_meat": "Cottura a bassa temperatura Carne",
"low_temp_cooking_meat_steam": "Cottura a bassa temperatura Carne al vapore",
"low_temp_cooking_steam": "Cottura a bassa temperatura al vapore",
"meat": "Carne",
"meat_steam": "Carne al vapore",
"multi_level": "Cottura Multilivello",
"paella": "Paella",
"pasta_and_bakery": "Pasta e Pasticceria",
"pizza": "Pizza",
"pyrolysis": "Pirolisi",
"pyrolysis_plus": "Pirolisi +",
"red_meat": "Carne rossa",
"red_meat_steam": "Carne rossa al vapore",
"regenerate": "Rigenerare",
"soft_plus": "Soft+",
"super_grill": "Supergriglia",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Verdure",
"vegetables_cata": "Verdure",
"vegetables_pyro": "Verdure",
"water_discharge": "Scarico dell'acqua",
"white_meat": "Carne Bianca",
"white_meat_steam": "Carne bianca al vapore"
}
}
}
} }
} }
} }

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Oven",
"state_attributes": {
"preset_mode": {
"name": "Programma's",
"state": {
"bakery": "Pasta en bakkersproducten",
"bakery_steam": "Oven stomen",
"bottom_heating": "Bodemverwarming",
"bottom_heating_fan": "Bodemverwarming + Ventilator",
"bread": "Brood",
"bread_steam": "Stoomgebakken brood",
"combi": "Combi",
"convection_fan": "Met ventilator",
"convection_fan_turnspit": "Convectie + ventilator + draaispit",
"conventional": "Conventioneel",
"conventional_turnspit": "Convectie + draaispit",
"defrost": "Ontdooien",
"descaling": "Ontkalken",
"fish": "Vis",
"fish_steam": "Gestoomde vis",
"grill_cata": "Grill",
"grill_fan_cata": "Grill + ventilator",
"grill_fan_pyro": "Grill + ventilator",
"grill_pyro": "Grill",
"h20_clean": "H2O-Clean",
"iot_bread": "Brood",
"iot_h20_clean": "h2O clean",
"leavening": "Gisting",
"low_temp_cooking": "Bereiding op lage temperatuur",
"low_temp_cooking_fish": "Bereiding op lage temperatuur Vis",
"low_temp_cooking_fish_steam": "Bereiding op lage temperatuur Gestoomde vis",
"low_temp_cooking_meat": "Bereiding op lage temperatuur Vlees",
"low_temp_cooking_meat_steam": "Bereiding op lage temperatuur Gestoomd vlees",
"low_temp_cooking_steam": "Stomen bij lage temperatuur",
"meat": "Vlees",
"meat_steam": "Vlees stomen",
"multi_level": "Multi-level",
"paella": "Paella",
"pasta_and_bakery": "Pasta en bakkersproducten",
"pizza": "Pizza",
"pyrolysis": "Pyrolyse",
"pyrolysis_plus": "Pyrolyse +",
"red_meat": "Rood vlees",
"red_meat_steam": "Gestoomd rood vlees",
"regenerate": "Regenereren",
"soft_plus": "Soft+",
"super_grill": "Super grill",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Groenten",
"vegetables_cata": "Groenten",
"vegetables_pyro": "Groenten",
"water_discharge": "Afvoer van water",
"white_meat": "Wit vlees",
"white_meat_steam": "Gestoomd wit vlees"
}
}
}
} }
} }
}, },

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Piekarnik",
"state_attributes": {
"preset_mode": {
"name": "Programy",
"state": {
"bakery": "Makaron i Piekarnia",
"bakery_steam": "Para z piekarnika",
"bottom_heating": "Grzanie dolne",
"bottom_heating_fan": "Grzanie Dolne + Termoobieg",
"bread": "Chleb",
"bread_steam": "Chleb pieczony na parze",
"combi": "Kombi",
"convection_fan": "Termoobieg",
"convection_fan_turnspit": "Termoobieg + Fan + Rożen",
"conventional": "Konwencjonalny",
"conventional_turnspit": "Statyczny + Rożen",
"defrost": "Rozmrażanie",
"descaling": "Odkamienianie",
"fish": "Ryby",
"fish_steam": "Ryba na parze",
"grill_cata": "Grill",
"grill_fan_cata": "Grill + termoobieg",
"grill_fan_pyro": "Grill + termoobieg",
"grill_pyro": "Grill",
"h20_clean": "H2O-Clean",
"iot_bread": "Chleb",
"iot_h20_clean": "h2O clean",
"leavening": "Zaczyn",
"low_temp_cooking": "Pieczenie w niskiej temperaturze",
"low_temp_cooking_fish": "Pieczenie w niskiej temperaturze - ryby",
"low_temp_cooking_fish_steam": "Gotowanie w niskiej temperaturze - ryba gotowana na parze",
"low_temp_cooking_meat": "Pieczenie w niskiej temperaturze - mięso",
"low_temp_cooking_meat_steam": "Gotowanie w niskiej temperaturze — mięso gotowane na parze",
"low_temp_cooking_steam": "Gotowanie na parze w niskiej temperaturze",
"meat": "Mięso",
"meat_steam": "Mięso na parze",
"multi_level": "Wielopoziomowo",
"paella": "Paella",
"pasta_and_bakery": "Makaron i Piekarnia",
"pizza": "Pizza",
"pyrolysis": "Pyroliza",
"pyrolysis_plus": "Pyroliza +",
"red_meat": "Czerwone mięso",
"red_meat_steam": "Czerwone mięso na parze",
"regenerate": "Podgrzewanie",
"soft_plus": "Soft+",
"super_grill": "Super Grill",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor bake",
"tailor_bake_pyro": "Tailor bake",
"vegetables": "Warzywa",
"vegetables_cata": "Warzywa",
"vegetables_pyro": "Warzywa",
"water_discharge": "Odprowadzanie wody",
"white_meat": "Białe mięso",
"white_meat_steam": "Białe mięso gotowane na parze"
}
}
}
} }
} }
}, },

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Forno",
"state_attributes": {
"preset_mode": {
"name": "Programas",
"state": {
"bakery": "Massas e bolos",
"bakery_steam": "Vapor do forno",
"bottom_heating": "Aquecimento inferior",
"bottom_heating_fan": "Aquecimento Inferior + Ventilação",
"bread": "Pão",
"bread_steam": "Pão no vapor",
"combi": "Combi",
"convection_fan": "Convecção + Ventilador",
"convection_fan_turnspit": "Espeto com convecção ventilada",
"conventional": "Estático",
"conventional_turnspit": "Espeto convencional",
"defrost": "Descongelar",
"descaling": "Descalcificação",
"fish": "Peixe",
"fish_steam": "Peixe no vapor",
"grill_cata": "Grelhar",
"grill_fan_cata": "Grelhar com ventilação",
"grill_fan_pyro": "Grelhar + Ventilação",
"grill_pyro": "Grelhar",
"h20_clean": "H2O-Clean",
"iot_bread": "Pão",
"iot_h20_clean": "h2O clean",
"leavening": "Levedação",
"low_temp_cooking": "Cozimento em baixa temperatura",
"low_temp_cooking_fish": "Cozimento em baixa temperatura Peixe",
"low_temp_cooking_fish_steam": "Cozimento em baixa temperatura Peixe a vapor",
"low_temp_cooking_meat": "Cozimento em baixa temperatura Carne",
"low_temp_cooking_meat_steam": "Cozimento em baixa temperatura Carne no vapor",
"low_temp_cooking_steam": "Cozimento em baixa temperatura no vapor",
"meat": "Carne",
"meat_steam": "Vapor de carne",
"multi_level": "Multinível",
"paella": "Paella",
"pasta_and_bakery": "Massas e bolos",
"pizza": "Pizza",
"pyrolysis": "Pirólise",
"pyrolysis_plus": "Pirólise +",
"red_meat": "Carne Vermelha",
"red_meat_steam": "Carne Vermelha no vapor",
"regenerate": "Regenerar",
"soft_plus": "Soft+",
"super_grill": "Super Grelhador",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Vegetais",
"vegetables_cata": "Legumes",
"vegetables_pyro": "Legumes",
"water_discharge": "Descarga d'água",
"white_meat": "Carne Branca",
"white_meat_steam": "Carne Branca no vapor"
}
}
}
} }
} }
}, },

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Cuptor",
"state_attributes": {
"preset_mode": {
"name": "Programe",
"state": {
"bakery": "Paste și produse de patiserie",
"bakery_steam": "În cuptor la abur",
"bottom_heating": "Încălzire de jos",
"bottom_heating_fan": "Încălzire De Jos + Ventilație",
"bread": "Pâine",
"bread_steam": "Pâine gătită la abur",
"combi": "Combi",
"convection_fan": "Convecție și ventilație",
"convection_fan_turnspit": "Convecție + Ventilator + Rotisor",
"conventional": "Convențional",
"conventional_turnspit": "Convecție + Rotisor",
"defrost": "Decongelare",
"descaling": "Îndepărtarea calcarului",
"fish": "Pește",
"fish_steam": "Pește gătit la abur",
"grill_cata": "Gril",
"grill_fan_cata": "Grill + Ventilație",
"grill_fan_pyro": "Grill + Ventilație",
"grill_pyro": "Grill",
"h20_clean": "H2O-Clean",
"iot_bread": "Pâine",
"iot_h20_clean": "h2O clean",
"leavening": "Dospire",
"low_temp_cooking": "Gătire la temperatură scăzută",
"low_temp_cooking_fish": "Gătire la temperatură scăzută - Pește",
"low_temp_cooking_fish_steam": "Gătitul la temperaturi scăzute - Pește gătit la abur",
"low_temp_cooking_meat": "Gătire la temperatură scăzută - Carne",
"low_temp_cooking_meat_steam": "Gătitul la temperaturi scăzute - Carne gătită la abur",
"low_temp_cooking_steam": "Gătitul la abur la temperaturi scăzute",
"meat": "Carne",
"meat_steam": "Carne gătită la abur",
"multi_level": "Multi-Nivel",
"paella": "Paella",
"pasta_and_bakery": "Paste și patiserie",
"pizza": "Pizza",
"pyrolysis": "Piroliză",
"pyrolysis_plus": "Piroliză+",
"red_meat": "Carne roșie",
"red_meat_steam": "Carne roșie gătită la abur",
"regenerate": "Regenerare",
"soft_plus": "Soft+",
"super_grill": "Super Grill",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Legume",
"vegetables_cata": "Legume",
"vegetables_pyro": "Legume",
"water_discharge": "Evacuare apă",
"white_meat": "Carne albă",
"white_meat_steam": "Carne albă gătită la abur"
}
}
}
} }
} }
}, },

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Духовой шкаф",
"state_attributes": {
"preset_mode": {
"name": "Программы",
"state": {
"bakery": "Паста и выпечка",
"bakery_steam": "Пар в духовом шкафу",
"bottom_heating": "Нижний элемент",
"bottom_heating_fan": "Нижний элемент + вентилятор",
"bread": "Хлеб",
"bread_steam": "Хлеб, испеченный на пару",
"combi": "Combi",
"convection_fan": "Верхний и нижний нагрев с вентилятором",
"convection_fan_turnspit": "Обыкновенная духовка + вентилятор + вертел",
"conventional": "Верхний и нижний нагрев",
"conventional_turnspit": "Обыкновенная духовка + вентилятор",
"defrost": "Размораживание",
"descaling": "Удаление накипи",
"fish": "Рыба",
"fish_steam": "Рыба на пару",
"grill_cata": "Гриль",
"grill_fan_cata": "Гриль с вентилятором",
"grill_fan_pyro": "Гриль + вентилятор",
"grill_pyro": "Гриль",
"h20_clean": "H2O-Clean",
"iot_bread": "Хлеб",
"iot_h20_clean": "h2O clean",
"leavening": "Заквашивание",
"low_temp_cooking": "Приготовление при низкой температуре",
"low_temp_cooking_fish": "Приготовление при низкой температуре - Рыба",
"low_temp_cooking_fish_steam": "Приготовление при низкой температуре - Рыба на пару",
"low_temp_cooking_meat": "Приготовление при низкой температуре - Мясо",
"low_temp_cooking_meat_steam": "Приготовление при низкой температуре - Мясо на пару",
"low_temp_cooking_steam": "Приготовление при низкой температуре на пару",
"meat": "Мясо",
"meat_steam": "Мясо на пару",
"multi_level": "Многоуровневое приготовление",
"paella": "Paella",
"pasta_and_bakery": "Паста и выпечка",
"pizza": "Pizza",
"pyrolysis": "Пиролиз",
"pyrolysis_plus": "Пиролиз +",
"red_meat": "Красное мясо",
"red_meat_steam": "Красное мясо на пару",
"regenerate": "Регенерация",
"soft_plus": "Soft+",
"super_grill": "Супер-гриль",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Овощи",
"vegetables_cata": "Овощи",
"vegetables_pyro": "Овощи",
"water_discharge": "Слив воды",
"white_meat": "Белое мясо",
"white_meat_steam": "Белое мясо на пару"
}
}
}
} }
} }
}, },

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Rúra na pečenie",
"state_attributes": {
"preset_mode": {
"name": "Programy",
"state": {
"bakery": "Cestoviny a pečenie",
"bakery_steam": "Parná rúra",
"bottom_heating": "Spodný ohrev",
"bottom_heating_fan": "Spodný ohrev + Ventilátor",
"bread": "Chlieb",
"bread_steam": "Chlieb pečený v pare",
"combi": "Combi",
"convection_fan": "Statický + ventilátor",
"convection_fan_turnspit": "Statické + ventilátor + otočný ražeň",
"conventional": "Statický",
"conventional_turnspit": "Statické + otočný ražeň",
"defrost": "Rozmraziť",
"descaling": "Odstránenie vodného kameňa",
"fish": "Ryby",
"fish_steam": "Ryby pripravené v pare",
"grill_cata": "Gril",
"grill_fan_cata": "Gril + ventilátor",
"grill_fan_pyro": "Gril + ventilátor",
"grill_pyro": "Gril",
"h20_clean": "H2O-Clean",
"iot_bread": "Chlieb",
"iot_h20_clean": "h2O clean",
"leavening": "Kysnutie",
"low_temp_cooking": "Varenie pri nízkych teplotách",
"low_temp_cooking_fish": "Varenie pri nízkych teplotách Ryby",
"low_temp_cooking_fish_steam": "Varenie pri nízkych teplotách ryby pripravené v pare",
"low_temp_cooking_meat": "Varenie pri nízkych teplotách Mäso",
"low_temp_cooking_meat_steam": "Varenie pri nízkych teplotách - mäso dusené v pare",
"low_temp_cooking_steam": "Varenie pri nízkych teplotách v pare",
"meat": "Mäso",
"meat_steam": "Mäso v pare",
"multi_level": "Viacúrovňové",
"paella": "Paella",
"pasta_and_bakery": "Cestoviny a pečenie",
"pizza": "Pizza",
"pyrolysis": "Pyrolýza",
"pyrolysis_plus": "Pyrolýza +",
"red_meat": "Červené mäso",
"red_meat_steam": "Červené mäso dusené v pare",
"regenerate": "Regenerovať",
"soft_plus": "Soft+",
"super_grill": "Super Gril",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Zelenina",
"vegetables_cata": "Zelenina",
"vegetables_pyro": "Zelenina",
"water_discharge": "Vypúšťanie vody",
"white_meat": "Biele mäso",
"white_meat_steam": "Biele mäso pripravené v pare"
}
}
}
} }
} }
}, },

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Pečica",
"state_attributes": {
"preset_mode": {
"name": "Programi",
"state": {
"bakery": "Testenine in pekovski izdelki",
"bakery_steam": "Parna pečica",
"bottom_heating": "Spodnji grelnik",
"bottom_heating_fan": "Spodnji grelnik + Ventilator",
"bread": "Kruh",
"bread_steam": "V sopari pečen kruh",
"combi": "Kombinirano",
"convection_fan": "Konvekcija + ventilator",
"convection_fan_turnspit": "Konvekcija + ventilator + raženj",
"conventional": "Konvenkcijsko",
"conventional_turnspit": "Konvekcija + raženj",
"defrost": "Odmrzovanje",
"descaling": "Odstranjevanje vodnega kamna",
"fish": "Ribe",
"fish_steam": "Soparjene ribe",
"grill_cata": "Žar",
"grill_fan_cata": "Žar in ventilator",
"grill_fan_pyro": "Žar + ventilator",
"grill_pyro": "Žar",
"h20_clean": "H2O-Clean",
"iot_bread": "Kruh",
"iot_h20_clean": "h2O clean",
"leavening": "Vzhajanje",
"low_temp_cooking": "Kuhanje pri nizki temperaturi",
"low_temp_cooking_fish": "Kuhanje pri nizki temperaturi ribe",
"low_temp_cooking_fish_steam": "Kuhanje pri nizki temperaturi soparjene ribe",
"low_temp_cooking_meat": "Kuhanje pri nizki temperaturi meso",
"low_temp_cooking_meat_steam": "Kuhanje pri nizki temperaturi soparjeno meso",
"low_temp_cooking_steam": "Soparjenje pri nizki temperaturi",
"meat": "Meso",
"meat_steam": "Soparjenje mesa",
"multi_level": "Na več nivojih",
"paella": "Paella",
"pasta_and_bakery": "Testenine in pekovski izdelki",
"pizza": "Pizza",
"pyrolysis": "Piroliza",
"pyrolysis_plus": "Piroliza +",
"red_meat": "Rdeče meso",
"red_meat_steam": "Soparjeno rdeče meso",
"regenerate": "Regeneracija",
"soft_plus": "Soft+",
"super_grill": "Super Grill",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Zelenjava",
"vegetables_cata": "Zelenjava",
"vegetables_pyro": "Zelenjava",
"water_discharge": "Izpust vode",
"white_meat": "Belo meso",
"white_meat_steam": "Soparjeno belo meso"
}
}
}
} }
} }
}, },

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Rerna",
"state_attributes": {
"preset_mode": {
"name": "Programi",
"state": {
"bakery": "Testenine i pecivo",
"bakery_steam": "Priprema na pari u rerni",
"bottom_heating": "Donje grejanje",
"bottom_heating_fan": "Donje grejanje + Ventilator",
"bread": "Hleb",
"bread_steam": "Hleb pečen na pari",
"combi": "Kombinovani",
"convection_fan": "Konvekcija + ventilator",
"convection_fan_turnspit": "Konvekcija + ventilator + ražanj",
"conventional": "Konvekcija",
"conventional_turnspit": "Konvekcija + ražanj",
"defrost": "Odmrzavanje",
"descaling": "Uklanjanje kamenca",
"fish": "Riba",
"fish_steam": "Riba na pari",
"grill_cata": "Roštilj",
"grill_fan_cata": "Roštilj sa ventilatorom",
"grill_fan_pyro": "Gril + ventilator",
"grill_pyro": "Gril",
"h20_clean": "H2O-Clean",
"iot_bread": "Hleb",
"iot_h20_clean": "h2O clean",
"leavening": "Narastanje",
"low_temp_cooking": "Kuvanje na niskoj temperaturi",
"low_temp_cooking_fish": "Kuvanje na niskoj temperaturi riba",
"low_temp_cooking_fish_steam": "Kuvanje na niskoj temperaturi riba na pari",
"low_temp_cooking_meat": "Kuvanje na niskoj temperaturi meso",
"low_temp_cooking_meat_steam": "Kuvanje na niskoj temperaturi meso na pari",
"low_temp_cooking_steam": "Kuvanje na pari na niskoj temperaturi",
"meat": "Meso",
"meat_steam": "Priprema mesa na pari",
"multi_level": "Više nivoa",
"paella": "Paella",
"pasta_and_bakery": "Testenine i pecivo",
"pizza": "Pizza",
"pyrolysis": "Piroliza",
"pyrolysis_plus": "Piroliza +",
"red_meat": "Crveno meso",
"red_meat_steam": "Crveno meso na pari",
"regenerate": "Regeneracija",
"soft_plus": "Meko+",
"super_grill": "Super gril",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Povrće",
"vegetables_cata": "Povrće",
"vegetables_pyro": "Povrće",
"water_discharge": "Ispuštanje vode",
"white_meat": "Belo meso",
"white_meat_steam": "Belo meso na pari"
}
}
}
} }
} }
}, },

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "Fırın",
"state_attributes": {
"preset_mode": {
"name": "Programlar",
"state": {
"bakery": "Makarna ve Ekmek",
"bakery_steam": "Fırın buharı",
"bottom_heating": "Alt ısıtıcı",
"bottom_heating_fan": "Alt ısıtıcı + Fan",
"bread": "Ekmek",
"bread_steam": "Buharda pişmiş ekmek",
"combi": "Kombi",
"convection_fan": "Fan desteklı",
"convection_fan_turnspit": "Konveksiyon + Fan + Şiş Çevirme",
"conventional": "Statık",
"conventional_turnspit": "Konveksiyon + Şiş Çevirme",
"defrost": "Buz çözme",
"descaling": "Kireç çözme",
"fish": "Balık",
"fish_steam": "Balık buğulama",
"grill_cata": "Izgara",
"grill_fan_cata": "Izgara fan",
"grill_fan_pyro": "Izgara + Fan",
"grill_pyro": "Izgara",
"h20_clean": "H2O-Clean",
"iot_bread": "Ekmek",
"iot_h20_clean": "h2O clean",
"leavening": "Mayalama",
"low_temp_cooking": "Düşük Sıcaklıkta Pişirme",
"low_temp_cooking_fish": "Düşük Sıcaklıkta Pişirme - Balık",
"low_temp_cooking_fish_steam": "Düşük Isıda Pişirme - Balık buğulama",
"low_temp_cooking_meat": "Düşük Sıcaklıkta Pişirme - Et",
"low_temp_cooking_meat_steam": "Düşük Isıda Pişirme - Buharda et",
"low_temp_cooking_steam": "Düşük Sıcaklıkta Buharda Pişirme",
"meat": "Et",
"meat_steam": "Et buharı",
"multi_level": "Çok Seviyeli",
"paella": "Paella",
"pasta_and_bakery": "Makarna ve Ekmek",
"pizza": "Pizza",
"pyrolysis": "Piroliz",
"pyrolysis_plus": "Piroliz +",
"red_meat": "Kırmızı Et",
"red_meat_steam": "Buharda kırmızı et",
"regenerate": "Yeniden oluştur",
"soft_plus": "Yumuşak+",
"super_grill": "Süper Izgara",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "Sebzeler",
"vegetables_cata": "Sebzeler",
"vegetables_pyro": "Sebzeler",
"water_discharge": "Su Tahliyesi",
"white_meat": "Beyaz Et",
"white_meat_steam": "Buharda beyaz et"
}
}
}
} }
} }
}, },

View file

@ -1357,6 +1357,67 @@
} }
} }
} }
},
"oven": {
"name": "烤炉",
"state_attributes": {
"preset_mode": {
"name": "程序",
"state": {
"bakery": "意大利面和烘焙食品",
"bakery_steam": "烤炉蒸汽",
"bottom_heating": "底部加热 ",
"bottom_heating_fan": "底部加热 + 风扇",
"bread": "面包",
"bread_steam": "蒸烤的面包",
"combi": "Combi",
"convection_fan": "对流 + 风扇",
"convection_fan_turnspit": "对流 + 风扇 + 烤叉",
"conventional": "对流",
"conventional_turnspit": "对流 + 烤叉",
"defrost": "解冻",
"descaling": "除垢",
"fish": "鱼",
"fish_steam": "蒸鱼",
"grill_cata": "烤架",
"grill_fan_cata": "烤架风扇",
"grill_fan_pyro": "烤架 + 风扇",
"grill_pyro": "烤架",
"h20_clean": "H2O-Clean",
"iot_bread": "面包",
"iot_h20_clean": "h2O clean",
"leavening": "发酵",
"low_temp_cooking": "低温烹饪",
"low_temp_cooking_fish": "低温烹饪 - 鱼类",
"low_temp_cooking_fish_steam": "低温烹饪 - 蒸鱼",
"low_temp_cooking_meat": "低温烹饪 - 肉类",
"low_temp_cooking_meat_steam": "低温烹饪 - 蒸肉",
"low_temp_cooking_steam": "低温蒸汽烹饪",
"meat": "肉",
"meat_steam": "肉类蒸汽",
"multi_level": "多层",
"paella": "Paella",
"pasta_and_bakery": "意大利面和烘焙食品",
"pizza": "Pizza",
"pyrolysis": "热解",
"pyrolysis_plus": "热解 +",
"red_meat": "红肉",
"red_meat_steam": "蒸红肉",
"regenerate": "再加热",
"soft_plus": "软+",
"super_grill": "超级烤架",
"tailor_bake": "Tailor bake",
"tailor_bake_cata": "Tailor Bake",
"tailor_bake_pyro": "Tailor Bake",
"vegetables": "蔬菜",
"vegetables_cata": "蔬菜",
"vegetables_pyro": "蔬菜",
"water_discharge": "排水",
"white_meat": "白肉",
"white_meat_steam": "蒸白肉"
}
}
}
} }
} }
}, },

View file

@ -66,6 +66,12 @@ CLIMATE = {
}, },
} }
}, },
"oven": {
"preset_mode": {
"name": "OV.TABS.PROGRAMS_TITLE",
"state": "PROGRAMS.OV",
}
},
} }
NAMES = { NAMES = {
@ -225,6 +231,7 @@ NAMES = {
"air_conditioner": "GLOBALS.APPLIANCES_NAME.AC", "air_conditioner": "GLOBALS.APPLIANCES_NAME.AC",
"fridge": "REF.ZONES.FRIDGE", "fridge": "REF.ZONES.FRIDGE",
"freezer": "REF.ZONES.FREEZER", "freezer": "REF.ZONES.FREEZER",
"oven": "GLOBALS.APPLIANCES_NAME.OV",
}, },
} }
@ -332,9 +339,13 @@ def main():
for mode, data in modes.items(): for mode, data in modes.items():
mode_name = load_key(data["name"], original, fallback) mode_name = load_key(data["name"], original, fallback)
attr.setdefault(mode, {})["name"] = mode_name attr.setdefault(mode, {})["name"] = mode_name
for state, key in data["state"].items(): if isinstance(data["state"], dict):
mode_state = load_key(key, original, fallback) for state, key in data["state"].items():
attr[mode].setdefault("state", {})[state] = mode_state mode_state = load_key(key, original, fallback)
attr[mode].setdefault("state", {})[state] = mode_state
else:
attr[mode]["state"] = load_keys(data["state"], original)
translate_login(old, original, fallback) translate_login(old, original, fallback)
save_json(base_path / f"{language}.json", old) save_json(base_path / f"{language}.json", old)