diff --git a/custom_components/localthings/registry/by_type/__init__.py b/custom_components/localthings/registry/by_type/__init__.py index 917f7cd..d1fbce0 100644 --- a/custom_components/localthings/registry/by_type/__init__.py +++ b/custom_components/localthings/registry/by_type/__init__.py @@ -259,6 +259,7 @@ _OIC_TYPE_TO_KEY: dict[str, str] = { "oic.d.refrigerator": "refrigerator", "oic.d.washer": "washer", "x.com.st.d.airqualitysensor": "air_monitor", + "x.com.st.d.dehumidifier": "dehumidifier", "x.com.st.d.hood": "range_hood", # AHD-WW-TP1-22-COMMON "x.com.st.d.stickcleaner": "vacuum_station", "x.com.st.d.steamcloset": "air_dresser", diff --git a/custom_components/localthings/registry/by_type/dehumidifier.py b/custom_components/localthings/registry/by_type/dehumidifier.py index 373fbdc..9230e60 100644 --- a/custom_components/localthings/registry/by_type/dehumidifier.py +++ b/custom_components/localthings/registry/by_type/dehumidifier.py @@ -2,10 +2,13 @@ Shares the DA_AC_ board family with airconditioner.py (power, air filter, auto-clean, mute-once all use the identical resource shapes), so those three -Capability objects are reused directly rather than duplicated. +Capability objects are reused directly rather than duplicated. The +TP1X_DA_AC_DHM_01001_0000 revision (issues #271/#231) also reports +air_purifier.py's screen-on/off resource on the identical href/shape, so +that's reused too rather than re-defined. """ -from ..capabilities import airconditioner, common, dehumidifier, ignored +from ..capabilities import airconditioner, air_purifier, common, dehumidifier, ignored from ._base import DeviceRegistry, _build REGISTRY = DeviceRegistry( @@ -17,9 +20,11 @@ REGISTRY = DeviceRegistry( *common.POWER, dehumidifier.MODE, dehumidifier.HUMIDITY, + dehumidifier.WATERTANK_LIGHTING, airconditioner.AUTO_CLEAN, airconditioner.AIR_FILTER, airconditioner.MUTE_ONCE, + air_purifier.DISPLAY, *dehumidifier.COVERAGE, ] ), diff --git a/custom_components/localthings/registry/capabilities/dehumidifier.py b/custom_components/localthings/registry/capabilities/dehumidifier.py index 27c0e5b..944d62b 100644 --- a/custom_components/localthings/registry/capabilities/dehumidifier.py +++ b/custom_components/localthings/registry/capabilities/dehumidifier.py @@ -9,7 +9,7 @@ entities rather than folded into one card. """ from ..capability import Capability -from ..entities import NumberDesc, SelectDesc, SensorDesc +from ..entities import NumberDesc, SelectDesc, SensorDesc, SwitchDesc from .common import int_or_none @@ -77,6 +77,60 @@ HUMIDITY = Capability( ), ) +# Water-tank ambient light (issues #271/#231, TP1X_DA_AC_DHM_01001_0000): +# on/off, color, and brightness are three independent controls on this one +# resource. `waterfullAlarmStatus` differs between the two dumps that +# reported this href (On vs. Off) so it's a real live flag, not a constant -- +# but its exact meaning (tank actually full vs. the chime feature merely +# enabled) isn't confirmed by either dump alone, and /alarms/vs/0's +# alarm_code already surfaces a live WaterTankFull condition when one fires +# (see common._active_alarm_codes), so this is exposed read-only as a plain +# diagnostic value rather than guessed at as a binary_sensor. +WATERTANK_LIGHTING = Capability( + href="/watertank/lighting/vs/0", + poll_tier="cold", + entities=( + SwitchDesc( + key="watertank_light", + field="status", + icon="mdi:led-on", + entity_category="config", + value_fn=lambda v: v == "On", + write_fn=lambda p, rep, href=None: ( + ["watertank", "lighting", "vs", "0"], + {"status": "On" if p == "On" else "Off"}, + ), + ), + SelectDesc( + key="watertank_light_color", + field="colorOption", + icon="mdi:palette", + entity_category="config", + options_field="colorSupportedList", + write_fn=lambda p, rep, href=None: ( + ["watertank", "lighting", "vs", "0"], + {"colorOption": p}, + ), + ), + SelectDesc( + key="watertank_light_brightness", + field="mode", + icon="mdi:brightness-6", + entity_category="config", + options_field="modeSupportedList", + write_fn=lambda p, rep, href=None: ( + ["watertank", "lighting", "vs", "0"], + {"mode": p}, + ), + ), + SensorDesc( + key="watertank_full_alarm_status", + field="waterfullAlarmStatus", + entity_category="diagnostic", + ), + ), +) + # --------------------------------------------------------------------------- # Dehumidifier-scoped coverage: vendor plumbing with no user-actionable state # or no documented write contract, following the same 'don't guess' rule as diff --git a/custom_components/localthings/translations/cs.json b/custom_components/localthings/translations/cs.json index 732049b..a4f3170 100644 --- a/custom_components/localthings/translations/cs.json +++ b/custom_components/localthings/translations/cs.json @@ -1,1281 +1,1303 @@ -{ - "entity": { - "binary_sensor": { - "auto_clean_running": { - "name": "Automatické čištění probíhá" - }, - "after_run_active": { - "name": "Dosoušení aktivní" - }, - "any_burner_active": { - "name": "Hořák aktivní" - }, - "automatic_operation": { - "name": "Automatický provoz" - }, - "battery_charging": { - "name": "Nabíjení" - }, - "burner_hot_surface": { - "name": "Hořák {number} horký povrch" - }, - "burner_pan_detected": { - "name": "Hořák {number} rozpoznána nádoba" - }, - "cloud_connected": { - "name": "Připojeno ke cloudu" - }, - "dustbag_full": { - "name": "Sáček na prach plný" - }, - "cooktop_power": { - "name": "Napájení varné desky" - }, - "cooktop_safety_shutoff_enabled": { - "name": "Automatické vypnutí při horkém povrchu" - }, - "current_limit_enabled": { - "name": "Omezení proudu zapnuto" - }, - "overload_protection_active": { - "name": "Ochrana proti přetížení aktivní" - }, - "odor_controller_active": { - "name": "Odstraňování pachů aktivní" - }, - "cycle_active": { - "name": "Běží" - }, - "defrost_active": { - "name": "Odmrazování aktivní" - }, - "detergent_low": { - "name": "Málo pracího prostředku" - }, - "device_active": { - "name": "Zařízení aktivní" - }, - "door_open": { - "name": "Dvířka" - }, - "filter_door_status": { - "name": "Dvířka filtru" - }, - "firmware_update": { - "name": "Dostupná aktualizace firmwaru" - }, - "instance_open": { - "name": "{instance_name} otevřeno" - }, - "paired_hood_connected": { - "name": "Spárovaný odsavač připojen" - }, - "paired_hood_light": { - "name": "Světlo spárovaného odsavače" - }, - "paired_hood_power": { - "name": "Napájení spárovaného odsavače" - }, - "periodic_air_sensing": { - "name": "Pravidelné měření kvality vzduchu" - }, - "pouring": { - "name": "Nalévání" - }, - "alarm_in_mute": { - "name": "Alarm ztlumen" - }, - "child_lock": { - "name": "Dětská pojistka" - }, - "power_state": { - "name": "Stav napájení" - }, - "probe_connected": { - "name": "Sonda připojena" - }, - "power_switch": { - "name": "Napájení" - }, - "rapid_freezing": { - "name": "Rychlé zmrazování" - }, - "rapid_fridge": { - "name": "Rychlé chlazení" - }, - "remote_control": { - "name": "Chytré ovládání" - }, - "softener_low": { - "name": "Málo aviváže" - } - }, - "button": { - "after_run_cancel": { - "name": "Zrušit dosoušení" - }, - "diagnosis_start": { - "name": "Spustit diagnostiku" - }, - "pause": { - "name": "Pozastavit" - }, - "selfcheck_start": { - "name": "Spustit vlastní kontrolu" - }, - "start": { - "name": "Spustit" - }, - "stop": { - "name": "Zastavit" - } - }, - "climate": { - "airconditioner": { - "state_attributes": { - "fan_mode": { - "state": { - "turbo": "Turbo", - "max": "Max" - } - }, - "preset_mode": { - "state": { - "ai_comfort": "AI komfort", - "quiet": "Tichý", - "smart": "Chytrý", - "speed": "Rychlý", - "nano": "WindFree", - "nanosleep": "WindFree spánek", - "longwind": "Dlouhý vánek", - "motionindirect": "Nepřímý vzduch při pohybu", - "motiondirect": "Přímý vzduch při pohybu", - "drycomfort": "Komfortní sušení", - "2step": "2stupňový" - } - } - } - } - }, - "fan": { - "air_purifier_fan": { - "state_attributes": { - "preset_mode": { - "state": { - "smart": "Chytrý", - "max": "Max", - "mid": "Střední", - "windfree": "WindFree", - "sleep": "Spánek" - } - } - } - } - }, - "number": { - "cook_time": { - "name": "Doba vaření" - }, - "delay_start_hours": { - "name": "Odložený start" - }, - "dispense_capacity": { - "name": "Dávkované množství" - }, - "good_sleep": { - "name": "Klidný spánek" - }, - "instance_setpoint": { - "name": "{instance_name} požadovaná teplota" - }, - "oven_setpoint": { - "name": "Požadovaná teplota" - }, - "setpoint": { - "name": "Požadovaná teplota" - }, - "sound_volume": { - "name": "Hlasitost zvuku" - }, - "target_humidity": { - "name": "Požadovaná vlhkost" - }, - "tropical_night_mode": { - "name": "Tropický noční režim" - }, - "zone_target_temperature": { - "name": "Požadovaná teplota zóny" - } - }, - "select": { - "ai_energy_level": { - "name": "Úroveň režimu AI Energy" - }, - "air_filter_threshold": { - "name": "Práh upozornění na filtr" - }, - "beverage_zone_mode": { - "name": "Režim zóny nápojů", - "state": { - "sp_ttype_beer_drinks": "Nápoje", - "sp_ttype_wine_dessert": "Víno a dezert" - } - }, - "brightness_level": { - "name": "Noční jas", - "state": { - "33": "Nízký", - "66": "Střední", - "100": "Vysoký" - } - }, - "cooler_temperature_setpoint": { - "name": "Teplota chladicí zóny" - }, - "day_brightness": { - "name": "Jas skříně", - "state": { - "33": "Nízký", - "66": "Střední", - "100": "Vysoký" - } - }, - "buzzer_sound": { - "name": "Zvuk bzučáku", - "state": { - "off": "Vypnuto", - "on": "Zapnuto" - } - }, - "discharging_time": { - "name": "Doba vypouštění", - "state": { - "1": "1 minuta", - "3": "3 minuty" - } - }, - "cycle": { - "name": "Cyklus" - }, - "detergent_quantity": { - "name": "Množství pracího prostředku", - "state": { - "00": "Žádné", - "01": "Nízké", - "02": "Střední", - "03": "Vysoké" - } - }, - "detergent_water_hardness": { - "name": "Tvrdost vody pro prací prostředek", - "state": { - "01": "Měkká", - "02": "Střední", - "03": "Tvrdá" - } - }, - "dishwasher_cycle": { - "name": "Cyklus", - "state": { - "80": "Jemné", - "83": "Express 60", - "84": "Intenzivní", - "86": "Normální", - "90": "Samočištění", - "0e": "AI mytí", - "07": "Předoplach", - "8d": "Hrnce a pánve", - "8e": "Plast", - "8f": "Dětské potřeby" - } - }, - "dispense_type": { - "name": "Typ dávkování" - }, - "door_alert": { - "name": "Alarm dvířek", - "state": { - "1": "Alarm 1", - "2": "Alarm 2", - "3": "Alarm 3", - "4": "Alarm 4" - } - }, - "dryer_cycle_table_03": { - "name": "Cyklus", - "state": { - "01": "Normální", - "06": "Časové sušení", - "16": "Bavlna", - "17": "Super Speed", - "18": "Syntetika", - "19": "Jemné prádlo", - "20": "Žehlení", - "21": "Hygienické sušení", - "22": "Tiché sušení", - "23": "Rychlé sušení 35", - "24": "Studený vzduch", - "25": "Teplý vzduch", - "27": "Časové sušení", - "29": "AI sušení", - "1a": "Vlna", - "1b": "Ložní prádlo", - "1c": "Košile", - "1d": "Ručníky", - "1e": "Outdoor", - "1f": "Smíšená náplň", - "2b": "Sušení bubnu", - "4c": "Osvěžení vzduchem" - } - }, - "favorite_capacity": { - "name": "Oblíbené množství" - }, - "favorite_hotwater_temperature": { - "name": "Oblíbená teplota horké vody" - }, - "filter_alarm_time": { - "name": "Interval alarmu filtru", - "state": { - "180": "180 hodin", - "300": "300 hodin", - "500": "500 hodin", - "700": "700 hodin" - } - }, - "finish_sound": { - "name": "Zvuk dokončení", - "state": { - "off": "Vypnuto", - "on": "Zapnuto" - } - }, - "flex_zone_mode": { - "name": "Režim flexibilní zóny", - "state": { - "cv_ttype_rf9000a_freeze": "Mražení", - "cv_ttype_rf9000a_softfreeze": "Mírné mražení", - "cv_ttype_rf9000a_meat_fish": "Maso/Ryby", - "cv_ttype_rf9000a_fruit_veggies": "Ovoce a zelenina", - "cv_ttype_rf9000a_beverage": "Nápoje", - "cv_fdr_wine": "Víno", - "cv_fdr_deli": "Lahůdky", - "cv_fdr_beverage": "Nápoje", - "cv_fdr_meat": "Maso", - "cv_fdr_soft_freezer": "Mírný mrazák" - } - }, - "heated_dry": { - "name": "Chytré sušení", - "state": { - "off": "Vypnuto", - "low": "Nízké", - "high": "Vysoké", - "extra_high": "Extra vysoké" - } - }, - "hot_water_temperature": { - "name": "Teplota horké vody" - }, - "ice_type": { - "name": "{instance_name} typ", - "state": { - "off": "Vypnuto", - "whiskey_iceball_3": "3 kuličky/den", - "whiskey_iceball_6": "6 kuliček/den", - "whiskey_iceball_9": "9 kuliček/den" - } - }, - "led_brightness": { - "name": "Jas LED dvířek", - "state": { - "low": "Nízký", - "high": "Vysoký" - } - }, - "led_night_brightness": { - "name": "Noční jas LED dvířek", - "state": { - "low": "Nízký", - "high": "Vysoký" - } - }, - "cooking_mode": { - "name": "Režim vaření", - "state": { - "no_operation": "Bez provozu", - "micro_wave": "Mikrovlny", - "micro_wave_grill": "Mikrovlny + gril", - "micro_wave_convection": "Mikrovlny + konvekce", - "convection": "Konvekce", - "air_fryer": "Fritéza na vzduch", - "grill": "Gril", - "autocook": "Automatické vaření", - "autocook_custom": "Automatické vaření (vlastní)", - "deodorization": "Odstranění pachů", - "keep_warm": "Udržování teploty" - } - }, - "oven_mode": { - "name": "Režim vaření", - "state": { - "no_operation": "Bez provozu", - "bake": "Pečení", - "broil": "Gril", - "convection": "Konvekce", - "convection_bake": "Konvekční pečení", - "convection_broil": "Konvekční gril", - "frozen_pizza_plus": "Mražená pizza+", - "slow_cook": "Pomalé vaření", - "plate_warm": "Ohřev talířů", - "air_fry": "Fritéza na vzduch" - } - }, - "operating_mode": { - "name": "Provozní režim" - }, - "kimchi_zone_mode": { - "name": "{instance_name} režim uskladnění", - "state": { - "off": "Vypnuto", - "kimchi_storage_normal": "Kimči", - "kimchi_storage_cold": "Kimči, silné", - "kimchi_storage_warm": "Kimči, slabé", - "kimchi_storage_low_salt_normal": "Kimči s nízkým obsahem soli", - "kimchi_storage_low_salt_cold": "Kimči s nízkým obsahem soli, silné", - "kimchi_storage_low_salt_warm": "Kimči s nízkým obsahem soli, slabé", - "kimchi_storage_crunfch": "Křupavé kimči", - "kimchi_storage_buy": "Kupované kimči", - "storage_fridge_normal": "Chlazení", - "storage_fridge_cold": "Chlazení, silné", - "storage_fridge_warm": "Chlazení, slabé", - "storage_freezer_normal": "Mražení", - "storage_freezer_cold": "Mražení, silné", - "storage_freezer_warm": "Mražení, slabé", - "kimchi_ripe_low_temp": "Zrání kimči, nízká teplota", - "kimchi_ripe_normal_temp": "Zrání kimči, pokojová teplota", - "kimchi_ripe_kkakdugi": "Zrání kkakdugi", - "kimchi_ripe_dongchimi": "Zrání dongchimi", - "meat_ripe_normal": "Zrání masa", - "storage_meat": "Maso a ryby", - "storage_fridge_vegetables_fruit": "Ovoce a zelenina", - "storage_fresh_cereal": "Obiloviny", - "storage_fridge_drink": "Nápoje", - "storage_fresh_wine": "Víno", - "storage_fresh_potato_banana": "Brambory a banány" - } - }, - "pantry_zone_mode": { - "name": "Režim spíže", - "state": { - "fdr_wine": "Víno", - "fdr_deli": "Lahůdky", - "fdr_drinks": "Nápoje" - } - }, - "range_burner_power_level": { - "name": "Výkon hořáku {number}", - "state": { - "0": "Vypnuto", - "boost": "Boost", - "simmer": "Mírný var" - } - }, - "range_hood_lamp_brightness": { - "name": "Jas osvětlení", - "state": { - "1": "Úroveň 1", - "2": "Úroveň 2" - } - }, - "rinse_cycles": { - "name": "Počet máchání" - }, - "softener_concentration": { - "name": "Koncentrace aviváže", - "state": { - "01": "1x", - "02": "2x", - "03": "3x" - } - }, - "softener_quantity": { - "name": "Množství aviváže", - "state": { - "00": "Žádné", - "01": "Nízké", - "02": "Střední", - "03": "Vysoké" - } - }, - "sound_mode": { - "name": "Zvukový režim", - "state": { - "voice": "Hlas", - "tone": "Tón", - "mute": "Ztlumeno" - } - }, - "air_purifier_sound_mode": { - "name": "Zvukový režim", - "state": { - "mute": "Ztlumeno", - "buzzer": "Bzučák" - } - }, - "water_purifier_sound_mode": { - "name": "Zvukový režim", - "state": { - "voice": "Hlas", - "fixedtone": "Pevný tón", - "mute": "Ztlumeno" - } - }, - "spin_speed": { - "name": "Rychlost odstřeďování", - "state": { - "rinse_hold": "Zadržení máchání", - "no_spin": "Bez odstřeďování", - "low": "Nízká", - "medium": "Střední", - "high": "Vysoká" - } - }, - "wash_temperature": { - "name": "Teplota praní", - "state": { - "none": "Žádná", - "cold": "Studená", - "cool": "Chladná", - "warm": "Teplá", - "hot": "Horká", - "extra_hot": "Extra horká" - } - }, - "washer_cycle_table_02": { - "name": "Cyklus", - "state": { - "01": "Normální", - "04": "Rychlé praní", - "17": "Stažený program", - "1b": "Bavlna", - "1c": "Eco 40-60", - "1d": "Super rychlé", - "1e": "15min rychlé praní", - "1f": "Intenzivní studená", - "20": "Hygienická pára", - "21": "Barevné prádlo", - "22": "Vlna", - "23": "Outdoor", - "24": "Ručníky", - "25": "Syntetika", - "26": "Jemné prádlo", - "27": "Máchání+odstřeďování", - "28": "Vypuštění/odstřeďování", - "29": "Čištění bubnu+", - "2a": "Džíny", - "2b": "AI praní", - "2d": "Tiché praní", - "2e": "Dětské potřeby", - "2f": "Sportovní oblečení", - "30": "Zataženo", - "32": "Košile", - "33": "Ložní prádlo", - "34": "Smíšené", - "36": "Praní+sušení", - "37": "Sušení vzduchem", - "38": "Sušení bavlny", - "39": "Sušení syntetiky", - "3a": "Čištění bubnu", - "52": "Eco studená", - "53": "Intenzivní", - "54": "Ručníky", - "55": "Sportovní oblečení", - "57": "Jemné", - "5e": "Máchání+odstřeďování", - "60": "Samočištění+", - "65": "Barevné prádlo", - "66": "Džíny", - "7c": "Bílé prádlo", - "7d": "Ložní prádlo/nepromokavé", - "7e": "Samočištění", - "7f": "Vlna/jemné", - "86": "Hloubkové praní", - "87": "Stažený program", - "8f": "Intenzivní studená", - "96": "Méně mikrovláken" - } - }, - "washer_dry_level": { - "name": "Úroveň sušení", - "state": { - "30": "30 min", - "60": "1 h", - "90": "1 h 30 min", - "120": "2 h", - "180": "3 h", - "240": "4 h", - "none": "Vypnuto", - "cupboard": "Do skříně" - } - }, - "zone_mode": { - "name": "Režim zóny" - } - }, - "sensor": { - "auto_clean_progress": { - "name": "Průběh automatického čištění" - }, - "after_run_progress": { - "name": "Průběh dosoušení" - }, - "air_filter_usage": { - "name": "Využití filtru" - }, - "air_filter_usage_hours": { - "name": "Hodiny využití filtru" - }, - "air_quality_standard": { - "name": "Norma kvality vzduchu" - }, - "air_sensing_state": { - "name": "Stav měření kvality vzduchu" - }, - "alarm_code": { - "name": "Kód alarmu" - }, - "auto_ventilation_action": { - "name": "Akce automatického větrání" - }, - "automatic_ventilation_state": { - "name": "Stav automatického větrání" - }, - "battery": { - "name": "Baterie" - }, - "burner_state": { - "name": "Stav hořáku {number}" - }, - "clean_level": { - "name": "Úroveň čištění" - }, - "coffee_brew_status": { - "name": "Stav přípravy kávy" - }, - "co2": { - "name": "CO2" - }, - "connection_mode": { - "name": "Režim připojení", - "state": { - "observe": "Push (observe)", - "poll": "Dotazování" - } - }, - "cooktop_running_state": { - "name": "Provozní stav varné desky" - }, - "cooktop_state": { - "name": "Stav varné desky" - }, - "current_limit_level": { - "name": "Úroveň omezení proudu" - }, - "filter_time": { - "name": "Čas filtru" - }, - "hepa_filter_usage": { - "name": "Využití HEPA filtru" - }, - "outdoor_temperature": { - "name": "Venkovní teplota" - }, - "odor_controller_progress": { - "name": "Průběh odstraňování pachů" - }, - "panel_status": { - "name": "Stav panelu" - }, - "sound_output": { - "name": "Zvukový výstup" - }, - "dustbag_usage": { - "name": "Využití sáčku na prach" - }, - "cleanstation_status": { - "name": "Stav čisticí stanice" - }, - "stick_status": { - "name": "Stav tyče" - }, - "uvc_operation_time": { - "name": "Doba provozu UV-C" - }, - "uvc_total_operation_time": { - "name": "Celková doba provozu UV-C" - }, - "uvc_finished_time": { - "name": "Čas dokončení UV-C" - }, - "uvc_emitted_time": { - "name": "Doba vyzařování UV-C" - }, - "overload_protection_mode": { - "name": "Režim ochrany proti přetížení", - "state": { - "alarm": "Alarm", - "powersaving": "Úspora energie" - } - }, - "absence_power_saving_mode": { - "name": "Režim úspory energie při nepřítomnosti", - "state": { - "eco": "Eco", - "normal": "Normální", - "comfort": "Komfort" - } - }, - "motion_detect_wind_mode": { - "name": "Režim vzduchu při detekci pohybu", - "state": { - "direct": "Přímý", - "indirect": "Nepřímý" - } - }, - "current_temp_c": { - "name": "Teplota" - }, - "current_temperature_c": { - "name": "Teplota" - }, - "diagnosis": { - "name": "Diagnostika" - }, - "diagnosis_status": { - "name": "Stav diagnostiky" - }, - "drum_clean_cycles_remaining": { - "name": "Čištění bubnu za" - }, - "drum_clean_last_cleaned": { - "name": "Poslední čištění bubnu" - }, - "dry_level": { - "name": "Úroveň sušení" - }, - "dry_time": { - "name": "Doba sušení" - }, - "dryer_type": { - "name": "Typ sušičky" - }, - "dust": { - "name": "Prach" - }, - "energy_kwh": { - "name": "Energie" - }, - "energy_last_month_kwh": { - "name": "Energie (minulý měsíc)" - }, - "energy_saved_kwh": { - "name": "Ušetřená energie" - }, - "energy_this_month_kwh": { - "name": "Energie (tento měsíc)" - }, - "fan_direction": { - "name": "Směr proudění vzduchu" - }, - "fan_speed_level": { - "name": "Úroveň otáček ventilátoru" - }, - "filter_clean_remain_time": { - "name": "Zbývající čas do čištění filtru" - }, - "filter_progress": { - "name": "Průběh filtru" - }, - "filter_usage": { - "name": "Využití filtru" - }, - "fine_dust": { - "name": "Jemný prach" - }, - "finish_time": { - "name": "Odhadované dokončení" - }, - "completion_minutes": { - "name": "Čas dokončení" - }, - "freezer_temperature": { - "name": "Teplota mrazáku" - }, - "fridge_temperature": { - "name": "Teplota chladničky" - }, - "kimchi_ripening_status": { - "name": "{instance_name} stav zrání" - }, - "kimchi_ripening_remaining": { - "name": "{instance_name} zbývající čas zrání" - }, - "kimchi_rack_count": { - "name": "{instance_name} počet přihrádek" - }, - "hood_filter_capacity": { - "name": "Kapacita filtru" - }, - "humidity": { - "name": "Vlhkost" - }, - "hood_filter_usage": { - "name": "Využití filtru" - }, - "instance_temperature": { - "name": "{instance_name} teplota" - }, - "job_beginning_status": { - "name": "Stav zahájení úlohy" - }, - "last_air_sensing_level": { - "name": "Poslední úroveň měření vzduchu" - }, - "last_air_sensing_time": { - "name": "Poslední čas měření vzduchu" - }, - "main_timer_current": { - "name": "Aktuální hodnota časovače" - }, - "main_timer_state": { - "name": "Stav časovače" - }, - "odor": { - "name": "Pach" - }, - "operating_mode": { - "name": "Provozní režim" - }, - "operation_origin": { - "name": "Poslední zdroj ovládání" - }, - "operation_time_minutes": { - "name": "Doba provozu" - }, - "oven_state": { - "name": "Stav trouby" - }, - "cavity_state": { - "name": "Stav trouby" - }, - "power_level": { - "name": "Úroveň výkonu" - }, - "paired_hood_fan_speed": { - "name": "Otáčky ventilátoru spárovaného odsavače" - }, - "paired_hood_firmware": { - "name": "Firmware spárovaného odsavače" - }, - "paired_hood_model": { - "name": "Model spárovaného odsavače" - }, - "power_energy_kwh": { - "name": "Spotřeba energie" - }, - "power_watts": { - "name": "Výkon" - }, - "probe_battery": { - "name": "Baterie sondy" - }, - "probe_target_temperature": { - "name": "Požadovaná teplota sondy" - }, - "probe_temperature": { - "name": "Teplota sondy" - }, - "progress": { - "name": "Průběh" - }, - "progress_percentage": { - "name": "Průběh v procentech" - }, - "selfcheck_error": { - "name": "Chyba vlastní kontroly" - }, - "selfcheck_result": { - "name": "Výsledek vlastní kontroly" - }, - "selfcheck_status": { - "name": "Stav vlastní kontroly" - }, - "sterilize_last_time": { - "name": "Poslední sterilizace" - }, - "sterilize_period": { - "name": "Interval sterilizace" - }, - "sterilize_plan_time": { - "name": "Plánovaný čas sterilizace" - }, - "sterilize_run_time": { - "name": "Doba běhu sterilizace" - }, - "super_fine_dust": { - "name": "Velmi jemný prach" - }, - "warming_center_state": { - "name": "Stav ohřevného centra" - }, - "water_liters": { - "name": "Spotřeba vody" - }, - "waterpurifier_status": { - "name": "Stav" - }, - "cup_state": { - "name": "Stav šálku" - }, - "last_pour_type": { - "name": "Poslední typ nalévání" - }, - "last_pour_capacity": { - "name": "Poslední nalité množství" - }, - "machine_state": { - "name": "Stav stroje", - "state": { - "idle": "Nečinný", - "active": "Aktivní", - "pause": "Pozastaveno" - } - }, - "filter_status": { - "name": "Stav filtru", - "state": { - "normal": "Normální", - "wash": "Umýt", - "replace": "Vyměnit" - } - }, - "ice_making_status": { - "name": "{instance_name} stav výroby", - "state": { - "icestatus_stop": "Nečinný", - "icestatus_run": "Vyrábí led" - } - }, - "zone_temperature": { - "name": "Teplota zóny" - } - }, - "switch": { - "ai_energy_level": { - "name": "Režim AI Energy" - }, - "air_monitoring": { - "name": "Sledování kvality vzduchu" - }, - "air_purify": { - "name": "Čištění vzduchu" - }, - "auto_clean": { - "name": "Automatické čištění" - }, - "absence_power_saving_active": { - "name": "Úspora energie při nepřítomnosti aktivní" - }, - "motion_detect_wind_active": { - "name": "Vyhýbání se proudu vzduchu při pohybu aktivní" - }, - "beep": { - "name": "Pípání" - }, - "display": { - "name": "Displej" - }, - "pet_filter_activation": { - "name": "Aktivace filtru pro domácí mazlíčky" - }, - "auto_empty": { - "name": "Automatické vyprázdnění" - }, - "dustbin_auto_close": { - "name": "Automatické zavření nádoby na prach" - }, - "spi": { - "name": "Ionizace vzduchu" - }, - "uvc_intensive_mode": { - "name": "Intenzivní režim UV-C" - }, - "auto_door_opener": { - "name": "Automatické otevírání dvířek" - }, - "auto_release_dry": { - "name": "Automatické uvolnění při sušení" - }, - "autofill": { - "name": "Automatické plnění konvice" - }, - "bubble_soak": { - "name": "Bublinkové namáčení" - }, - "buzz_lock": { - "name": "Zámek bzučáku" - }, - "cabinet_light_dim": { - "name": "Postupné rozsvícení" - }, - "cabinet_light_switch": { - "name": "Osvětlení skříně" - }, - "child_lock": { - "name": "Dětský zámek" - }, - "coldwater_lock": { - "name": "Zámek studené vody" - }, - "cooktop_child_lock": { - "name": "Dětský zámek" - }, - "defrost_delay": { - "name": "Odložené odmrazování" - }, - "display_light": { - "name": "Podsvícení displeje" - }, - "dnd": { - "name": "Nerušit" - }, - "fast_preheat": { - "name": "Rychlé předehřátí" - }, - "favorite_capacity_enabled": { - "name": "Oblíbené množství" - }, - "favorite_coffee_enabled": { - "name": "Oblíbená káva" - }, - "filter_remind": { - "name": "Připomenutí filtru" - }, - "fridge_sound": { - "name": "Zvuk" - }, - "hotwater_lock": { - "name": "Zámek horké vody" - }, - "ice_maker_enabled": { - "name": "Výrobník ledu" - }, - "ice_night_mode": { - "name": "Noční tichý režim výroby ledu" - }, - "instance_enabled": { - "name": "{instance_name} zapnuto" - }, - "intensive": { - "name": "Intenzivní" - }, - "lamp": { - "name": "Lampa" - }, - "led_night_light": { - "name": "Noční LED osvětlení dvířek" - }, - "mute_once": { - "name": "Jednou ztlumit" - }, - "natural_steam": { - "name": "Přírodní pára" - }, - "energy_saving": { - "name": "Úspora energie" - }, - "cooktop_on_alert": { - "name": "Upozornění na zapnutou varnou desku" - }, - "power_switch": { - "name": "Napájení" - }, - "pre_wash": { - "name": "Předpírka" - }, - "rapid_freezing": { - "name": "Rychlé zmrazování" - }, - "rapid_fridge": { - "name": "Rychlé chlazení" - }, - "remind_beep": { - "name": "Připomínací signál konce" - }, - "sabbath_mode": { - "name": "Sabatní režim" - }, - "sanitize": { - "name": "Dezinfekce" - }, - "sound": { - "name": "Zvuk" - }, - "storm_wash": { - "name": "Storm Wash+" - }, - "welcome_lighting": { - "name": "Uvítací osvětlení" - }, - "wrinkle_prevent": { - "name": "Ochrana proti pomačkání" - }, - "zone_power": { - "name": "Napájení zóny" - }, - "away_mode": { - "name": "Režim nepřítomnosti" - } - }, - "time": { - "dnd_end": { - "name": "Konec režimu Nerušit" - }, - "dnd_start": { - "name": "Začátek režimu Nerušit" - }, - "led_night_end": { - "name": "Konec nočního LED osvětlení dvířek" - }, - "led_night_start": { - "name": "Začátek nočního LED osvětlení dvířek" - }, - "night_end": { - "name": "Konec nočního osvětlení" - }, - "night_start": { - "name": "Začátek nočního osvětlení" - } - }, - "water_heater": { - "dhw": { - "name": "Teplá voda" - } - } - }, - "config": { - "step": { - "user": { - "title": "Přidat spotřebič Samsung", - "description": "Zadejte IP adresu vašeho spotřebiče Samsung a přihlašovací údaje CA AC14K_M použité k vydávání certifikátů zařízení.", - "data": { - "host": "IP adresa", - "ca_cert_pem": "Certifikát CA (PEM)", - "ca_key_pem": "Privátní klíč CA (PEM)" - }, - "data_description": { - "host": "Lokální IP adresa vašeho spotřebiče Samsung (např. 192.168.1.50).", - "ca_cert_pem": "Certifikát CA AC14K_M ve formátu PEM. Vložte celý obsah řetězce fullchain PEM včetně všech bloků BEGIN/END CERTIFICATE.", - "ca_key_pem": "Privátní klíč AC14K_M ve formátu PEM. Vložte celý obsah včetně hlavičky a patičky BEGIN/END PRIVATE KEY." - } - }, - "user_reuse": { - "title": "Přidat spotřebič Samsung", - "description": "Zadejte IP adresu vašeho spotřebiče Samsung. Přihlašovací údaje CA z existujícího spotřebiče LocalThings budou znovu použity.", - "data": { - "host": "IP adresa" - }, - "data_description": { - "host": "Lokální IP adresa vašeho spotřebiče Samsung (např. 192.168.1.50)." - } - }, - "confirm_unknown_type": { - "title": "Typ spotřebiče nebyl rozpoznán", - "description": "Typ tohoto spotřebiče se nepodařilo rozpoznat. Přesto bude přidán, ale pouze se společnými funkcemi (napájení, alarmy atd., pokud jsou k dispozici), nikoli s plnou sadou funkcí pro danou rodinu spotřebičů. Podporu můžete později pomoci rozšířit stažením diagnostiky pro toto zařízení (Nastavení > Zařízení a služby > toto zařízení > nabídka > Stáhnout diagnostiku) a jejím vložením do nového issue. Odesláním zařízení přidáte i tak." - } - }, - "error": { - "cannot_connect": "Nelze se připojit k zařízení. Ověřte, že je IP adresa dostupná a že jsou přihlašovací údaje CA správné.", - "invalid_ca": "Certifikát CA nebo privátní klíč se nepodařilo načíst. Ověřte, že obsah PEM je správný a že klíč odpovídá certifikátu.", - "unknown": "Neočekávaná chyba. Podrobnosti najdete v protokolech Home Assistant." - }, - "abort": { - "already_configured": "Zařízení je již nakonfigurováno" - } - }, - "options": { - "step": { - "init": { - "title": "Možnosti LocalThings", - "menu_options": { - "settings": "Nastavení zápisu pro dálkové ovládání", - "debug_write": "Ladění: zápis do prostředku" - } - }, - "settings": { - "title": "Nastavení zápisu pro dálkové ovládání", - "description": "Některá zařízení přijímají určité zápisy (např. výchozí dávkování pracího prostředku/aviváže v pračce) i když hlásí vypnuté dálkové ovládání. LocalThings ve výchozím nastavení blokuje každý zápis srozumitelnou chybou, kdykoli zařízení hlásí vypnuté dálkové ovládání, místo aby jej zařízení tiše odmítlo. Povolte toto pouze tehdy, pokud jste ověřili, že zápisy na tomto zařízení skutečně fungují i s vypnutým dálkovým ovládáním – jinak tuto srozumitelnou chybu vyměníte za tiché selhání.", - "data": { - "bypass_remote_control_lock": "Povolit zápis i když je dálkové ovládání hlášeno jako vypnuté", - "finish_time_hysteresis_minutes": "Odhadovaný konec -- minimální změna (minuty)" - } - }, - "debug_write": { - "title": "Ladění: zápis do prostředku", - "description": "Nástroj pro pokročilé uživatele k odhalení chování zápisu specifického pro dané zařízení. Vyberte prostředek (href), do kterého chcete zapisovat, nebo zadejte vlastní, který není uveden v seznamu. Toto obchází blokování při vypnutém dálkovém ovládání a odesílá přesně ta pole, která zadáte -- může to špatně nakonfigurovat váš spotřebič, používejte tedy záměrně.", - "data": { - "href": "Href prostředku" - } - }, - "debug_edit": { - "title": "Ladicí zápis: {href}", - "description": "Aktuální hodnota `{href}`:\n```\n{current_value}\n```\nZadejte POUZE pole, která chcete změnit. To, co zadáte, je odesláno zařízení tak, jak je (částečná aktualizace); NENÍ to sloučeno s poli zobrazenými výše, takže nevkládejte zpět celou hodnotu. Dávejte pozor na typy: číselný řetězec jako \"1\" musí zůstat v uvozovkách -- holé 1 je odesláno jako celé číslo, což některá zařízení odmítají.", - "data": { - "payload": "Zapisovaný obsah" - } - }, - "debug_result": { - "title": "Výsledek ladicího zápisu", - "description": "Zařízení vrátilo kód CoAP {code}. Třída 2.xx znamená, že zápis byl přijat; 4.xx/5.xx znamená, že byl odmítnut. Prostředek nyní obsahuje:\n```\n{new_value}\n```\nPokud se hodnota nezměnila, zařízení zápis pravděpodobně zahodilo. Vyberte, co dělat dál:", - "menu_options": { - "debug_write": "Zapsat do dalšího prostředku", - "finish": "Dokončit" - } - } - }, - "error": { - "empty_payload": "Zadejte alespoň jedno pole k zápisu.", - "write_failed": "Zápis se nezdařil. Podrobnosti najdete v protokolech Home Assistant." - }, - "abort": { - "not_loaded": "Toto zařízení ještě není připojeno. Zkuste to znovu, až se načte." - } - }, - "issues": { - "device_gap": { - "title": "Neúplné pokrytí funkcí pro {device_name}", - "description": "Toto zařízení nemá úplné pokrytí funkcí. Buď nebyl rozpoznán jeho typ spotřebiče, nebo některé jím poskytované prostředky ještě nejsou namodelovány. Bude i nadále fungovat se vším, co je již podporováno. Podporu můžete pomoci rozšířit tak, že přejdete do Nastavení > Zařízení a služby > {device_name} > nabídka (vpravo nahoře) > Stáhnout diagnostiku a poté ji vložíte do odkazované šablony issue." - } - }, - "exceptions": { - "remote_control_disabled": { - "message": "Dálkové ovládání je na tomto zařízení vypnuté. V návodu ke spotřebiči zjistěte, jak zapnout dálkové ovládání, než jej bude moci Home Assistant ovládat." - }, - "debug_payload_empty": { - "message": "Obsah ladicího zápisu musí být neprázdný objekt." - }, - "resource_href_required": { - "message": "Je vyžadován href prostředku." - }, - "bubble_soak_unavailable_for_cycle": { - "message": "Bublinkové namáčení není u vybraného cyklu k dispozici." - }, - "pre_wash_unavailable_for_cycle": { - "message": "Předpírka není u vybraného cyklu k dispozici." - }, - "intensive_unavailable_for_cycle": { - "message": "Intenzivní není u vybraného cyklu k dispozici." - } - } -} +{ + "entity": { + "binary_sensor": { + "auto_clean_running": { + "name": "Automatické čištění probíhá" + }, + "after_run_active": { + "name": "Dosoušení aktivní" + }, + "any_burner_active": { + "name": "Hořák aktivní" + }, + "automatic_operation": { + "name": "Automatický provoz" + }, + "battery_charging": { + "name": "Nabíjení" + }, + "burner_hot_surface": { + "name": "Hořák {number} horký povrch" + }, + "burner_pan_detected": { + "name": "Hořák {number} rozpoznána nádoba" + }, + "cloud_connected": { + "name": "Připojeno ke cloudu" + }, + "dustbag_full": { + "name": "Sáček na prach plný" + }, + "cooktop_power": { + "name": "Napájení varné desky" + }, + "cooktop_safety_shutoff_enabled": { + "name": "Automatické vypnutí při horkém povrchu" + }, + "current_limit_enabled": { + "name": "Omezení proudu zapnuto" + }, + "overload_protection_active": { + "name": "Ochrana proti přetížení aktivní" + }, + "odor_controller_active": { + "name": "Odstraňování pachů aktivní" + }, + "cycle_active": { + "name": "Běží" + }, + "defrost_active": { + "name": "Odmrazování aktivní" + }, + "detergent_low": { + "name": "Málo pracího prostředku" + }, + "device_active": { + "name": "Zařízení aktivní" + }, + "door_open": { + "name": "Dvířka" + }, + "filter_door_status": { + "name": "Dvířka filtru" + }, + "firmware_update": { + "name": "Dostupná aktualizace firmwaru" + }, + "instance_open": { + "name": "{instance_name} otevřeno" + }, + "paired_hood_connected": { + "name": "Spárovaný odsavač připojen" + }, + "paired_hood_light": { + "name": "Světlo spárovaného odsavače" + }, + "paired_hood_power": { + "name": "Napájení spárovaného odsavače" + }, + "periodic_air_sensing": { + "name": "Pravidelné měření kvality vzduchu" + }, + "pouring": { + "name": "Nalévání" + }, + "alarm_in_mute": { + "name": "Alarm ztlumen" + }, + "child_lock": { + "name": "Dětská pojistka" + }, + "power_state": { + "name": "Stav napájení" + }, + "probe_connected": { + "name": "Sonda připojena" + }, + "power_switch": { + "name": "Napájení" + }, + "rapid_freezing": { + "name": "Rychlé zmrazování" + }, + "rapid_fridge": { + "name": "Rychlé chlazení" + }, + "remote_control": { + "name": "Chytré ovládání" + }, + "softener_low": { + "name": "Málo aviváže" + } + }, + "button": { + "after_run_cancel": { + "name": "Zrušit dosoušení" + }, + "diagnosis_start": { + "name": "Spustit diagnostiku" + }, + "pause": { + "name": "Pozastavit" + }, + "selfcheck_start": { + "name": "Spustit vlastní kontrolu" + }, + "start": { + "name": "Spustit" + }, + "stop": { + "name": "Zastavit" + } + }, + "climate": { + "airconditioner": { + "state_attributes": { + "fan_mode": { + "state": { + "turbo": "Turbo", + "max": "Max" + } + }, + "preset_mode": { + "state": { + "ai_comfort": "AI komfort", + "quiet": "Tichý", + "smart": "Chytrý", + "speed": "Rychlý", + "nano": "WindFree", + "nanosleep": "WindFree spánek", + "longwind": "Dlouhý vánek", + "motionindirect": "Nepřímý vzduch při pohybu", + "motiondirect": "Přímý vzduch při pohybu", + "drycomfort": "Komfortní sušení", + "2step": "2stupňový" + } + } + } + } + }, + "fan": { + "air_purifier_fan": { + "state_attributes": { + "preset_mode": { + "state": { + "smart": "Chytrý", + "max": "Max", + "mid": "Střední", + "windfree": "WindFree", + "sleep": "Spánek" + } + } + } + } + }, + "number": { + "cook_time": { + "name": "Doba vaření" + }, + "delay_start_hours": { + "name": "Odložený start" + }, + "dispense_capacity": { + "name": "Dávkované množství" + }, + "good_sleep": { + "name": "Klidný spánek" + }, + "instance_setpoint": { + "name": "{instance_name} požadovaná teplota" + }, + "oven_setpoint": { + "name": "Požadovaná teplota" + }, + "setpoint": { + "name": "Požadovaná teplota" + }, + "sound_volume": { + "name": "Hlasitost zvuku" + }, + "target_humidity": { + "name": "Požadovaná vlhkost" + }, + "tropical_night_mode": { + "name": "Tropický noční režim" + }, + "zone_target_temperature": { + "name": "Požadovaná teplota zóny" + } + }, + "select": { + "ai_energy_level": { + "name": "Úroveň režimu AI Energy" + }, + "air_filter_threshold": { + "name": "Práh upozornění na filtr" + }, + "beverage_zone_mode": { + "name": "Režim zóny nápojů", + "state": { + "sp_ttype_beer_drinks": "Nápoje", + "sp_ttype_wine_dessert": "Víno a dezert" + } + }, + "brightness_level": { + "name": "Noční jas", + "state": { + "33": "Nízký", + "66": "Střední", + "100": "Vysoký" + } + }, + "cooler_temperature_setpoint": { + "name": "Teplota chladicí zóny" + }, + "day_brightness": { + "name": "Jas skříně", + "state": { + "33": "Nízký", + "66": "Střední", + "100": "Vysoký" + } + }, + "buzzer_sound": { + "name": "Zvuk bzučáku", + "state": { + "off": "Vypnuto", + "on": "Zapnuto" + } + }, + "discharging_time": { + "name": "Doba vypouštění", + "state": { + "1": "1 minuta", + "3": "3 minuty" + } + }, + "cycle": { + "name": "Cyklus" + }, + "detergent_quantity": { + "name": "Množství pracího prostředku", + "state": { + "00": "Žádné", + "01": "Nízké", + "02": "Střední", + "03": "Vysoké" + } + }, + "detergent_water_hardness": { + "name": "Tvrdost vody pro prací prostředek", + "state": { + "01": "Měkká", + "02": "Střední", + "03": "Tvrdá" + } + }, + "dishwasher_cycle": { + "name": "Cyklus", + "state": { + "80": "Jemné", + "83": "Express 60", + "84": "Intenzivní", + "86": "Normální", + "90": "Samočištění", + "0e": "AI mytí", + "07": "Předoplach", + "8d": "Hrnce a pánve", + "8e": "Plast", + "8f": "Dětské potřeby" + } + }, + "dispense_type": { + "name": "Typ dávkování" + }, + "door_alert": { + "name": "Alarm dvířek", + "state": { + "1": "Alarm 1", + "2": "Alarm 2", + "3": "Alarm 3", + "4": "Alarm 4" + } + }, + "dryer_cycle_table_03": { + "name": "Cyklus", + "state": { + "01": "Normální", + "06": "Časové sušení", + "16": "Bavlna", + "17": "Super Speed", + "18": "Syntetika", + "19": "Jemné prádlo", + "20": "Žehlení", + "21": "Hygienické sušení", + "22": "Tiché sušení", + "23": "Rychlé sušení 35", + "24": "Studený vzduch", + "25": "Teplý vzduch", + "27": "Časové sušení", + "29": "AI sušení", + "1a": "Vlna", + "1b": "Ložní prádlo", + "1c": "Košile", + "1d": "Ručníky", + "1e": "Outdoor", + "1f": "Smíšená náplň", + "2b": "Sušení bubnu", + "4c": "Osvěžení vzduchem" + } + }, + "favorite_capacity": { + "name": "Oblíbené množství" + }, + "favorite_hotwater_temperature": { + "name": "Oblíbená teplota horké vody" + }, + "filter_alarm_time": { + "name": "Interval alarmu filtru", + "state": { + "180": "180 hodin", + "300": "300 hodin", + "500": "500 hodin", + "700": "700 hodin" + } + }, + "finish_sound": { + "name": "Zvuk dokončení", + "state": { + "off": "Vypnuto", + "on": "Zapnuto" + } + }, + "flex_zone_mode": { + "name": "Režim flexibilní zóny", + "state": { + "cv_ttype_rf9000a_freeze": "Mražení", + "cv_ttype_rf9000a_softfreeze": "Mírné mražení", + "cv_ttype_rf9000a_meat_fish": "Maso/Ryby", + "cv_ttype_rf9000a_fruit_veggies": "Ovoce a zelenina", + "cv_ttype_rf9000a_beverage": "Nápoje", + "cv_fdr_wine": "Víno", + "cv_fdr_deli": "Lahůdky", + "cv_fdr_beverage": "Nápoje", + "cv_fdr_meat": "Maso", + "cv_fdr_soft_freezer": "Mírný mrazák" + } + }, + "heated_dry": { + "name": "Chytré sušení", + "state": { + "off": "Vypnuto", + "low": "Nízké", + "high": "Vysoké", + "extra_high": "Extra vysoké" + } + }, + "hot_water_temperature": { + "name": "Teplota horké vody" + }, + "ice_type": { + "name": "{instance_name} typ", + "state": { + "off": "Vypnuto", + "whiskey_iceball_3": "3 kuličky/den", + "whiskey_iceball_6": "6 kuliček/den", + "whiskey_iceball_9": "9 kuliček/den" + } + }, + "led_brightness": { + "name": "Jas LED dvířek", + "state": { + "low": "Nízký", + "high": "Vysoký" + } + }, + "led_night_brightness": { + "name": "Noční jas LED dvířek", + "state": { + "low": "Nízký", + "high": "Vysoký" + } + }, + "cooking_mode": { + "name": "Režim vaření", + "state": { + "no_operation": "Bez provozu", + "micro_wave": "Mikrovlny", + "micro_wave_grill": "Mikrovlny + gril", + "micro_wave_convection": "Mikrovlny + konvekce", + "convection": "Konvekce", + "air_fryer": "Fritéza na vzduch", + "grill": "Gril", + "autocook": "Automatické vaření", + "autocook_custom": "Automatické vaření (vlastní)", + "deodorization": "Odstranění pachů", + "keep_warm": "Udržování teploty" + } + }, + "oven_mode": { + "name": "Režim vaření", + "state": { + "no_operation": "Bez provozu", + "bake": "Pečení", + "broil": "Gril", + "convection": "Konvekce", + "convection_bake": "Konvekční pečení", + "convection_broil": "Konvekční gril", + "frozen_pizza_plus": "Mražená pizza+", + "slow_cook": "Pomalé vaření", + "plate_warm": "Ohřev talířů", + "air_fry": "Fritéza na vzduch" + } + }, + "operating_mode": { + "name": "Provozní režim" + }, + "kimchi_zone_mode": { + "name": "{instance_name} režim uskladnění", + "state": { + "off": "Vypnuto", + "kimchi_storage_normal": "Kimči", + "kimchi_storage_cold": "Kimči, silné", + "kimchi_storage_warm": "Kimči, slabé", + "kimchi_storage_low_salt_normal": "Kimči s nízkým obsahem soli", + "kimchi_storage_low_salt_cold": "Kimči s nízkým obsahem soli, silné", + "kimchi_storage_low_salt_warm": "Kimči s nízkým obsahem soli, slabé", + "kimchi_storage_crunfch": "Křupavé kimči", + "kimchi_storage_buy": "Kupované kimči", + "storage_fridge_normal": "Chlazení", + "storage_fridge_cold": "Chlazení, silné", + "storage_fridge_warm": "Chlazení, slabé", + "storage_freezer_normal": "Mražení", + "storage_freezer_cold": "Mražení, silné", + "storage_freezer_warm": "Mražení, slabé", + "kimchi_ripe_low_temp": "Zrání kimči, nízká teplota", + "kimchi_ripe_normal_temp": "Zrání kimči, pokojová teplota", + "kimchi_ripe_kkakdugi": "Zrání kkakdugi", + "kimchi_ripe_dongchimi": "Zrání dongchimi", + "meat_ripe_normal": "Zrání masa", + "storage_meat": "Maso a ryby", + "storage_fridge_vegetables_fruit": "Ovoce a zelenina", + "storage_fresh_cereal": "Obiloviny", + "storage_fridge_drink": "Nápoje", + "storage_fresh_wine": "Víno", + "storage_fresh_potato_banana": "Brambory a banány" + } + }, + "pantry_zone_mode": { + "name": "Režim spíže", + "state": { + "fdr_wine": "Víno", + "fdr_deli": "Lahůdky", + "fdr_drinks": "Nápoje" + } + }, + "range_burner_power_level": { + "name": "Výkon hořáku {number}", + "state": { + "0": "Vypnuto", + "boost": "Boost", + "simmer": "Mírný var" + } + }, + "range_hood_lamp_brightness": { + "name": "Jas osvětlení", + "state": { + "1": "Úroveň 1", + "2": "Úroveň 2" + } + }, + "rinse_cycles": { + "name": "Počet máchání" + }, + "softener_concentration": { + "name": "Koncentrace aviváže", + "state": { + "01": "1x", + "02": "2x", + "03": "3x" + } + }, + "softener_quantity": { + "name": "Množství aviváže", + "state": { + "00": "Žádné", + "01": "Nízké", + "02": "Střední", + "03": "Vysoké" + } + }, + "sound_mode": { + "name": "Zvukový režim", + "state": { + "voice": "Hlas", + "tone": "Tón", + "mute": "Ztlumeno" + } + }, + "air_purifier_sound_mode": { + "name": "Zvukový režim", + "state": { + "mute": "Ztlumeno", + "buzzer": "Bzučák" + } + }, + "water_purifier_sound_mode": { + "name": "Zvukový režim", + "state": { + "voice": "Hlas", + "fixedtone": "Pevný tón", + "mute": "Ztlumeno" + } + }, + "spin_speed": { + "name": "Rychlost odstřeďování", + "state": { + "rinse_hold": "Zadržení máchání", + "no_spin": "Bez odstřeďování", + "low": "Nízká", + "medium": "Střední", + "high": "Vysoká" + } + }, + "wash_temperature": { + "name": "Teplota praní", + "state": { + "none": "Žádná", + "cold": "Studená", + "cool": "Chladná", + "warm": "Teplá", + "hot": "Horká", + "extra_hot": "Extra horká" + } + }, + "washer_cycle_table_02": { + "name": "Cyklus", + "state": { + "01": "Normální", + "04": "Rychlé praní", + "17": "Stažený program", + "1b": "Bavlna", + "1c": "Eco 40-60", + "1d": "Super rychlé", + "1e": "15min rychlé praní", + "1f": "Intenzivní studená", + "20": "Hygienická pára", + "21": "Barevné prádlo", + "22": "Vlna", + "23": "Outdoor", + "24": "Ručníky", + "25": "Syntetika", + "26": "Jemné prádlo", + "27": "Máchání+odstřeďování", + "28": "Vypuštění/odstřeďování", + "29": "Čištění bubnu+", + "2a": "Džíny", + "2b": "AI praní", + "2d": "Tiché praní", + "2e": "Dětské potřeby", + "2f": "Sportovní oblečení", + "30": "Zataženo", + "32": "Košile", + "33": "Ložní prádlo", + "34": "Smíšené", + "36": "Praní+sušení", + "37": "Sušení vzduchem", + "38": "Sušení bavlny", + "39": "Sušení syntetiky", + "3a": "Čištění bubnu", + "52": "Eco studená", + "53": "Intenzivní", + "54": "Ručníky", + "55": "Sportovní oblečení", + "57": "Jemné", + "5e": "Máchání+odstřeďování", + "60": "Samočištění+", + "65": "Barevné prádlo", + "66": "Džíny", + "7c": "Bílé prádlo", + "7d": "Ložní prádlo/nepromokavé", + "7e": "Samočištění", + "7f": "Vlna/jemné", + "86": "Hloubkové praní", + "87": "Stažený program", + "8f": "Intenzivní studená", + "96": "Méně mikrovláken" + } + }, + "washer_dry_level": { + "name": "Úroveň sušení", + "state": { + "30": "30 min", + "60": "1 h", + "90": "1 h 30 min", + "120": "2 h", + "180": "3 h", + "240": "4 h", + "none": "Vypnuto", + "cupboard": "Do skříně" + } + }, + "zone_mode": { + "name": "Režim zóny" + }, + "watertank_light_color": { + "name": "Barva osvětlení nádržky na vodu", + "state": { + "warmwhite": "Teplá bílá", + "naturalwhite": "Přirozená bílá", + "coolwhite": "Studená bílá", + "green": "Zelená", + "purple": "Fialová", + "blue": "Modrá", + "orange": "Oranžová", + "pink": "Růžová" + } + }, + "watertank_light_brightness": { + "name": "Jas osvětlení nádržky na vodu" + } + }, + "sensor": { + "auto_clean_progress": { + "name": "Průběh automatického čištění" + }, + "after_run_progress": { + "name": "Průběh dosoušení" + }, + "air_filter_usage": { + "name": "Využití filtru" + }, + "air_filter_usage_hours": { + "name": "Hodiny využití filtru" + }, + "air_quality_standard": { + "name": "Norma kvality vzduchu" + }, + "air_sensing_state": { + "name": "Stav měření kvality vzduchu" + }, + "alarm_code": { + "name": "Kód alarmu" + }, + "auto_ventilation_action": { + "name": "Akce automatického větrání" + }, + "automatic_ventilation_state": { + "name": "Stav automatického větrání" + }, + "battery": { + "name": "Baterie" + }, + "burner_state": { + "name": "Stav hořáku {number}" + }, + "clean_level": { + "name": "Úroveň čištění" + }, + "coffee_brew_status": { + "name": "Stav přípravy kávy" + }, + "co2": { + "name": "CO2" + }, + "connection_mode": { + "name": "Režim připojení", + "state": { + "observe": "Push (observe)", + "poll": "Dotazování" + } + }, + "cooktop_running_state": { + "name": "Provozní stav varné desky" + }, + "cooktop_state": { + "name": "Stav varné desky" + }, + "current_limit_level": { + "name": "Úroveň omezení proudu" + }, + "filter_time": { + "name": "Čas filtru" + }, + "hepa_filter_usage": { + "name": "Využití HEPA filtru" + }, + "outdoor_temperature": { + "name": "Venkovní teplota" + }, + "odor_controller_progress": { + "name": "Průběh odstraňování pachů" + }, + "panel_status": { + "name": "Stav panelu" + }, + "sound_output": { + "name": "Zvukový výstup" + }, + "dustbag_usage": { + "name": "Využití sáčku na prach" + }, + "cleanstation_status": { + "name": "Stav čisticí stanice" + }, + "stick_status": { + "name": "Stav tyče" + }, + "uvc_operation_time": { + "name": "Doba provozu UV-C" + }, + "uvc_total_operation_time": { + "name": "Celková doba provozu UV-C" + }, + "uvc_finished_time": { + "name": "Čas dokončení UV-C" + }, + "uvc_emitted_time": { + "name": "Doba vyzařování UV-C" + }, + "overload_protection_mode": { + "name": "Režim ochrany proti přetížení", + "state": { + "alarm": "Alarm", + "powersaving": "Úspora energie" + } + }, + "absence_power_saving_mode": { + "name": "Režim úspory energie při nepřítomnosti", + "state": { + "eco": "Eco", + "normal": "Normální", + "comfort": "Komfort" + } + }, + "motion_detect_wind_mode": { + "name": "Režim vzduchu při detekci pohybu", + "state": { + "direct": "Přímý", + "indirect": "Nepřímý" + } + }, + "current_temp_c": { + "name": "Teplota" + }, + "current_temperature_c": { + "name": "Teplota" + }, + "diagnosis": { + "name": "Diagnostika" + }, + "diagnosis_status": { + "name": "Stav diagnostiky" + }, + "drum_clean_cycles_remaining": { + "name": "Čištění bubnu za" + }, + "drum_clean_last_cleaned": { + "name": "Poslední čištění bubnu" + }, + "dry_level": { + "name": "Úroveň sušení" + }, + "dry_time": { + "name": "Doba sušení" + }, + "dryer_type": { + "name": "Typ sušičky" + }, + "dust": { + "name": "Prach" + }, + "energy_kwh": { + "name": "Energie" + }, + "energy_last_month_kwh": { + "name": "Energie (minulý měsíc)" + }, + "energy_saved_kwh": { + "name": "Ušetřená energie" + }, + "energy_this_month_kwh": { + "name": "Energie (tento měsíc)" + }, + "fan_direction": { + "name": "Směr proudění vzduchu" + }, + "fan_speed_level": { + "name": "Úroveň otáček ventilátoru" + }, + "filter_clean_remain_time": { + "name": "Zbývající čas do čištění filtru" + }, + "filter_progress": { + "name": "Průběh filtru" + }, + "filter_usage": { + "name": "Využití filtru" + }, + "fine_dust": { + "name": "Jemný prach" + }, + "finish_time": { + "name": "Odhadované dokončení" + }, + "completion_minutes": { + "name": "Čas dokončení" + }, + "freezer_temperature": { + "name": "Teplota mrazáku" + }, + "fridge_temperature": { + "name": "Teplota chladničky" + }, + "kimchi_ripening_status": { + "name": "{instance_name} stav zrání" + }, + "kimchi_ripening_remaining": { + "name": "{instance_name} zbývající čas zrání" + }, + "kimchi_rack_count": { + "name": "{instance_name} počet přihrádek" + }, + "hood_filter_capacity": { + "name": "Kapacita filtru" + }, + "humidity": { + "name": "Vlhkost" + }, + "hood_filter_usage": { + "name": "Využití filtru" + }, + "instance_temperature": { + "name": "{instance_name} teplota" + }, + "job_beginning_status": { + "name": "Stav zahájení úlohy" + }, + "last_air_sensing_level": { + "name": "Poslední úroveň měření vzduchu" + }, + "last_air_sensing_time": { + "name": "Poslední čas měření vzduchu" + }, + "main_timer_current": { + "name": "Aktuální hodnota časovače" + }, + "main_timer_state": { + "name": "Stav časovače" + }, + "odor": { + "name": "Pach" + }, + "operating_mode": { + "name": "Provozní režim" + }, + "operation_origin": { + "name": "Poslední zdroj ovládání" + }, + "operation_time_minutes": { + "name": "Doba provozu" + }, + "oven_state": { + "name": "Stav trouby" + }, + "cavity_state": { + "name": "Stav trouby" + }, + "power_level": { + "name": "Úroveň výkonu" + }, + "paired_hood_fan_speed": { + "name": "Otáčky ventilátoru spárovaného odsavače" + }, + "paired_hood_firmware": { + "name": "Firmware spárovaného odsavače" + }, + "paired_hood_model": { + "name": "Model spárovaného odsavače" + }, + "power_energy_kwh": { + "name": "Spotřeba energie" + }, + "power_watts": { + "name": "Výkon" + }, + "probe_battery": { + "name": "Baterie sondy" + }, + "probe_target_temperature": { + "name": "Požadovaná teplota sondy" + }, + "probe_temperature": { + "name": "Teplota sondy" + }, + "progress": { + "name": "Průběh" + }, + "progress_percentage": { + "name": "Průběh v procentech" + }, + "selfcheck_error": { + "name": "Chyba vlastní kontroly" + }, + "selfcheck_result": { + "name": "Výsledek vlastní kontroly" + }, + "selfcheck_status": { + "name": "Stav vlastní kontroly" + }, + "sterilize_last_time": { + "name": "Poslední sterilizace" + }, + "sterilize_period": { + "name": "Interval sterilizace" + }, + "sterilize_plan_time": { + "name": "Plánovaný čas sterilizace" + }, + "sterilize_run_time": { + "name": "Doba běhu sterilizace" + }, + "super_fine_dust": { + "name": "Velmi jemný prach" + }, + "warming_center_state": { + "name": "Stav ohřevného centra" + }, + "water_liters": { + "name": "Spotřeba vody" + }, + "waterpurifier_status": { + "name": "Stav" + }, + "cup_state": { + "name": "Stav šálku" + }, + "last_pour_type": { + "name": "Poslední typ nalévání" + }, + "last_pour_capacity": { + "name": "Poslední nalité množství" + }, + "machine_state": { + "name": "Stav stroje", + "state": { + "idle": "Nečinný", + "active": "Aktivní", + "pause": "Pozastaveno" + } + }, + "filter_status": { + "name": "Stav filtru", + "state": { + "normal": "Normální", + "wash": "Umýt", + "replace": "Vyměnit" + } + }, + "ice_making_status": { + "name": "{instance_name} stav výroby", + "state": { + "icestatus_stop": "Nečinný", + "icestatus_run": "Vyrábí led" + } + }, + "zone_temperature": { + "name": "Teplota zóny" + }, + "watertank_full_alarm_status": { + "name": "Stav alarmu plné nádržky na vodu" + } + }, + "switch": { + "ai_energy_level": { + "name": "Režim AI Energy" + }, + "air_monitoring": { + "name": "Sledování kvality vzduchu" + }, + "air_purify": { + "name": "Čištění vzduchu" + }, + "auto_clean": { + "name": "Automatické čištění" + }, + "absence_power_saving_active": { + "name": "Úspora energie při nepřítomnosti aktivní" + }, + "motion_detect_wind_active": { + "name": "Vyhýbání se proudu vzduchu při pohybu aktivní" + }, + "beep": { + "name": "Pípání" + }, + "display": { + "name": "Displej" + }, + "pet_filter_activation": { + "name": "Aktivace filtru pro domácí mazlíčky" + }, + "auto_empty": { + "name": "Automatické vyprázdnění" + }, + "dustbin_auto_close": { + "name": "Automatické zavření nádoby na prach" + }, + "spi": { + "name": "Ionizace vzduchu" + }, + "uvc_intensive_mode": { + "name": "Intenzivní režim UV-C" + }, + "auto_door_opener": { + "name": "Automatické otevírání dvířek" + }, + "auto_release_dry": { + "name": "Automatické uvolnění při sušení" + }, + "autofill": { + "name": "Automatické plnění konvice" + }, + "bubble_soak": { + "name": "Bublinkové namáčení" + }, + "buzz_lock": { + "name": "Zámek bzučáku" + }, + "cabinet_light_dim": { + "name": "Postupné rozsvícení" + }, + "cabinet_light_switch": { + "name": "Osvětlení skříně" + }, + "child_lock": { + "name": "Dětský zámek" + }, + "coldwater_lock": { + "name": "Zámek studené vody" + }, + "cooktop_child_lock": { + "name": "Dětský zámek" + }, + "defrost_delay": { + "name": "Odložené odmrazování" + }, + "display_light": { + "name": "Podsvícení displeje" + }, + "dnd": { + "name": "Nerušit" + }, + "fast_preheat": { + "name": "Rychlé předehřátí" + }, + "favorite_capacity_enabled": { + "name": "Oblíbené množství" + }, + "favorite_coffee_enabled": { + "name": "Oblíbená káva" + }, + "filter_remind": { + "name": "Připomenutí filtru" + }, + "fridge_sound": { + "name": "Zvuk" + }, + "hotwater_lock": { + "name": "Zámek horké vody" + }, + "ice_maker_enabled": { + "name": "Výrobník ledu" + }, + "ice_night_mode": { + "name": "Noční tichý režim výroby ledu" + }, + "instance_enabled": { + "name": "{instance_name} zapnuto" + }, + "intensive": { + "name": "Intenzivní" + }, + "lamp": { + "name": "Lampa" + }, + "led_night_light": { + "name": "Noční LED osvětlení dvířek" + }, + "mute_once": { + "name": "Jednou ztlumit" + }, + "natural_steam": { + "name": "Přírodní pára" + }, + "energy_saving": { + "name": "Úspora energie" + }, + "cooktop_on_alert": { + "name": "Upozornění na zapnutou varnou desku" + }, + "power_switch": { + "name": "Napájení" + }, + "pre_wash": { + "name": "Předpírka" + }, + "rapid_freezing": { + "name": "Rychlé zmrazování" + }, + "rapid_fridge": { + "name": "Rychlé chlazení" + }, + "remind_beep": { + "name": "Připomínací signál konce" + }, + "sabbath_mode": { + "name": "Sabatní režim" + }, + "sanitize": { + "name": "Dezinfekce" + }, + "sound": { + "name": "Zvuk" + }, + "storm_wash": { + "name": "Storm Wash+" + }, + "welcome_lighting": { + "name": "Uvítací osvětlení" + }, + "wrinkle_prevent": { + "name": "Ochrana proti pomačkání" + }, + "zone_power": { + "name": "Napájení zóny" + }, + "away_mode": { + "name": "Režim nepřítomnosti" + }, + "watertank_light": { + "name": "Osvětlení nádržky na vodu" + } + }, + "time": { + "dnd_end": { + "name": "Konec režimu Nerušit" + }, + "dnd_start": { + "name": "Začátek režimu Nerušit" + }, + "led_night_end": { + "name": "Konec nočního LED osvětlení dvířek" + }, + "led_night_start": { + "name": "Začátek nočního LED osvětlení dvířek" + }, + "night_end": { + "name": "Konec nočního osvětlení" + }, + "night_start": { + "name": "Začátek nočního osvětlení" + } + }, + "water_heater": { + "dhw": { + "name": "Teplá voda" + } + } + }, + "config": { + "step": { + "user": { + "title": "Přidat spotřebič Samsung", + "description": "Zadejte IP adresu vašeho spotřebiče Samsung a přihlašovací údaje CA AC14K_M použité k vydávání certifikátů zařízení.", + "data": { + "host": "IP adresa", + "ca_cert_pem": "Certifikát CA (PEM)", + "ca_key_pem": "Privátní klíč CA (PEM)" + }, + "data_description": { + "host": "Lokální IP adresa vašeho spotřebiče Samsung (např. 192.168.1.50).", + "ca_cert_pem": "Certifikát CA AC14K_M ve formátu PEM. Vložte celý obsah řetězce fullchain PEM včetně všech bloků BEGIN/END CERTIFICATE.", + "ca_key_pem": "Privátní klíč AC14K_M ve formátu PEM. Vložte celý obsah včetně hlavičky a patičky BEGIN/END PRIVATE KEY." + } + }, + "user_reuse": { + "title": "Přidat spotřebič Samsung", + "description": "Zadejte IP adresu vašeho spotřebiče Samsung. Přihlašovací údaje CA z existujícího spotřebiče LocalThings budou znovu použity.", + "data": { + "host": "IP adresa" + }, + "data_description": { + "host": "Lokální IP adresa vašeho spotřebiče Samsung (např. 192.168.1.50)." + } + }, + "confirm_unknown_type": { + "title": "Typ spotřebiče nebyl rozpoznán", + "description": "Typ tohoto spotřebiče se nepodařilo rozpoznat. Přesto bude přidán, ale pouze se společnými funkcemi (napájení, alarmy atd., pokud jsou k dispozici), nikoli s plnou sadou funkcí pro danou rodinu spotřebičů. Podporu můžete později pomoci rozšířit stažením diagnostiky pro toto zařízení (Nastavení > Zařízení a služby > toto zařízení > nabídka > Stáhnout diagnostiku) a jejím vložením do nového issue. Odesláním zařízení přidáte i tak." + } + }, + "error": { + "cannot_connect": "Nelze se připojit k zařízení. Ověřte, že je IP adresa dostupná a že jsou přihlašovací údaje CA správné.", + "invalid_ca": "Certifikát CA nebo privátní klíč se nepodařilo načíst. Ověřte, že obsah PEM je správný a že klíč odpovídá certifikátu.", + "unknown": "Neočekávaná chyba. Podrobnosti najdete v protokolech Home Assistant." + }, + "abort": { + "already_configured": "Zařízení je již nakonfigurováno" + } + }, + "options": { + "step": { + "init": { + "title": "Možnosti LocalThings", + "menu_options": { + "settings": "Nastavení zápisu pro dálkové ovládání", + "debug_write": "Ladění: zápis do prostředku" + } + }, + "settings": { + "title": "Nastavení zápisu pro dálkové ovládání", + "description": "Některá zařízení přijímají určité zápisy (např. výchozí dávkování pracího prostředku/aviváže v pračce) i když hlásí vypnuté dálkové ovládání. LocalThings ve výchozím nastavení blokuje každý zápis srozumitelnou chybou, kdykoli zařízení hlásí vypnuté dálkové ovládání, místo aby jej zařízení tiše odmítlo. Povolte toto pouze tehdy, pokud jste ověřili, že zápisy na tomto zařízení skutečně fungují i s vypnutým dálkovým ovládáním – jinak tuto srozumitelnou chybu vyměníte za tiché selhání.", + "data": { + "bypass_remote_control_lock": "Povolit zápis i když je dálkové ovládání hlášeno jako vypnuté", + "finish_time_hysteresis_minutes": "Odhadovaný konec -- minimální změna (minuty)" + } + }, + "debug_write": { + "title": "Ladění: zápis do prostředku", + "description": "Nástroj pro pokročilé uživatele k odhalení chování zápisu specifického pro dané zařízení. Vyberte prostředek (href), do kterého chcete zapisovat, nebo zadejte vlastní, který není uveden v seznamu. Toto obchází blokování při vypnutém dálkovém ovládání a odesílá přesně ta pole, která zadáte -- může to špatně nakonfigurovat váš spotřebič, používejte tedy záměrně.", + "data": { + "href": "Href prostředku" + } + }, + "debug_edit": { + "title": "Ladicí zápis: {href}", + "description": "Aktuální hodnota `{href}`:\n```\n{current_value}\n```\nZadejte POUZE pole, která chcete změnit. To, co zadáte, je odesláno zařízení tak, jak je (částečná aktualizace); NENÍ to sloučeno s poli zobrazenými výše, takže nevkládejte zpět celou hodnotu. Dávejte pozor na typy: číselný řetězec jako \"1\" musí zůstat v uvozovkách -- holé 1 je odesláno jako celé číslo, což některá zařízení odmítají.", + "data": { + "payload": "Zapisovaný obsah" + } + }, + "debug_result": { + "title": "Výsledek ladicího zápisu", + "description": "Zařízení vrátilo kód CoAP {code}. Třída 2.xx znamená, že zápis byl přijat; 4.xx/5.xx znamená, že byl odmítnut. Prostředek nyní obsahuje:\n```\n{new_value}\n```\nPokud se hodnota nezměnila, zařízení zápis pravděpodobně zahodilo. Vyberte, co dělat dál:", + "menu_options": { + "debug_write": "Zapsat do dalšího prostředku", + "finish": "Dokončit" + } + } + }, + "error": { + "empty_payload": "Zadejte alespoň jedno pole k zápisu.", + "write_failed": "Zápis se nezdařil. Podrobnosti najdete v protokolech Home Assistant." + }, + "abort": { + "not_loaded": "Toto zařízení ještě není připojeno. Zkuste to znovu, až se načte." + } + }, + "issues": { + "device_gap": { + "title": "Neúplné pokrytí funkcí pro {device_name}", + "description": "Toto zařízení nemá úplné pokrytí funkcí. Buď nebyl rozpoznán jeho typ spotřebiče, nebo některé jím poskytované prostředky ještě nejsou namodelovány. Bude i nadále fungovat se vším, co je již podporováno. Podporu můžete pomoci rozšířit tak, že přejdete do Nastavení > Zařízení a služby > {device_name} > nabídka (vpravo nahoře) > Stáhnout diagnostiku a poté ji vložíte do odkazované šablony issue." + } + }, + "exceptions": { + "remote_control_disabled": { + "message": "Dálkové ovládání je na tomto zařízení vypnuté. V návodu ke spotřebiči zjistěte, jak zapnout dálkové ovládání, než jej bude moci Home Assistant ovládat." + }, + "debug_payload_empty": { + "message": "Obsah ladicího zápisu musí být neprázdný objekt." + }, + "resource_href_required": { + "message": "Je vyžadován href prostředku." + }, + "bubble_soak_unavailable_for_cycle": { + "message": "Bublinkové namáčení není u vybraného cyklu k dispozici." + }, + "pre_wash_unavailable_for_cycle": { + "message": "Předpírka není u vybraného cyklu k dispozici." + }, + "intensive_unavailable_for_cycle": { + "message": "Intenzivní není u vybraného cyklu k dispozici." + } + } +} diff --git a/custom_components/localthings/translations/en.json b/custom_components/localthings/translations/en.json index 9a9ba06..8495f04 100644 --- a/custom_components/localthings/translations/en.json +++ b/custom_components/localthings/translations/en.json @@ -621,6 +621,22 @@ }, "zone_mode": { "name": "Zone mode" + }, + "watertank_light_color": { + "name": "Water tank light color", + "state": { + "warmwhite": "Warm white", + "naturalwhite": "Natural white", + "coolwhite": "Cool white", + "green": "Green", + "purple": "Purple", + "blue": "Blue", + "orange": "Orange", + "pink": "Pink" + } + }, + "watertank_light_brightness": { + "name": "Water tank light brightness" } }, "sensor": { @@ -969,6 +985,9 @@ }, "zone_temperature": { "name": "Zone temperature" + }, + "watertank_full_alarm_status": { + "name": "Water tank full alarm status" } }, "switch": { @@ -1136,6 +1155,9 @@ }, "away_mode": { "name": "Away mode" + }, + "watertank_light": { + "name": "Water tank light" } }, "time": { diff --git a/custom_components/localthings/translations/es.json b/custom_components/localthings/translations/es.json index 55f2f99..30493b4 100644 --- a/custom_components/localthings/translations/es.json +++ b/custom_components/localthings/translations/es.json @@ -735,6 +735,22 @@ }, "zone_mode": { "name": "Modo de zona" + }, + "watertank_light_color": { + "name": "Color de la luz del depósito de agua", + "state": { + "warmwhite": "Blanco cálido", + "naturalwhite": "Blanco natural", + "coolwhite": "Blanco frío", + "green": "Verde", + "purple": "Púrpura", + "blue": "Azul", + "orange": "Naranja", + "pink": "Rosa" + } + }, + "watertank_light_brightness": { + "name": "Brillo de la luz del depósito de agua" } }, "sensor": { @@ -1083,6 +1099,9 @@ }, "zone_temperature": { "name": "Temperatura de zona" + }, + "watertank_full_alarm_status": { + "name": "Estado de alarma de depósito de agua lleno" } }, "switch": { @@ -1250,6 +1269,9 @@ }, "zone_power": { "name": "Alimentación de zona" + }, + "watertank_light": { + "name": "Luz del depósito de agua" } }, "time": { diff --git a/custom_components/localthings/translations/it.json b/custom_components/localthings/translations/it.json index 5d7f61c..55f8bdf 100644 --- a/custom_components/localthings/translations/it.json +++ b/custom_components/localthings/translations/it.json @@ -621,6 +621,22 @@ }, "zone_mode": { "name": "Modalità zona" + }, + "watertank_light_color": { + "name": "Colore della luce del serbatoio dell'acqua", + "state": { + "warmwhite": "Bianco caldo", + "naturalwhite": "Bianco naturale", + "coolwhite": "Bianco freddo", + "green": "Verde", + "purple": "Viola", + "blue": "Blu", + "orange": "Arancione", + "pink": "Rosa" + } + }, + "watertank_light_brightness": { + "name": "Luminosità della luce del serbatoio dell'acqua" } }, "sensor": { @@ -969,6 +985,9 @@ }, "zone_temperature": { "name": "Temperatura zona" + }, + "watertank_full_alarm_status": { + "name": "Stato allarme serbatoio d'acqua pieno" } }, "switch": { @@ -1136,6 +1155,9 @@ }, "away_mode": { "name": "Modalità assenza" + }, + "watertank_light": { + "name": "Luce del serbatoio dell'acqua" } }, "time": { diff --git a/custom_components/localthings/translations/nl.json b/custom_components/localthings/translations/nl.json index d65dcf5..f25be37 100644 --- a/custom_components/localthings/translations/nl.json +++ b/custom_components/localthings/translations/nl.json @@ -621,6 +621,22 @@ }, "zone_mode": { "name": "Zonemodus" + }, + "watertank_light_color": { + "name": "Kleur van het waterreservoirlicht", + "state": { + "warmwhite": "Warm wit", + "naturalwhite": "Natuurlijk wit", + "coolwhite": "Koel wit", + "green": "Groen", + "purple": "Paars", + "blue": "Blauw", + "orange": "Oranje", + "pink": "Roze" + } + }, + "watertank_light_brightness": { + "name": "Helderheid van het waterreservoirlicht" } }, "sensor": { @@ -969,6 +985,9 @@ }, "zone_temperature": { "name": "Zonetemperatuur" + }, + "watertank_full_alarm_status": { + "name": "Status alarm waterreservoir vol" } }, "switch": { @@ -1136,6 +1155,9 @@ }, "away_mode": { "name": "Afwezigheidsmodus" + }, + "watertank_light": { + "name": "Waterreservoirlicht" } }, "time": { diff --git a/tests/fixtures/dehumidifier_tp1x_dhm01001_device.json b/tests/fixtures/dehumidifier_tp1x_dhm01001_device.json new file mode 100644 index 0000000..4bcdda5 --- /dev/null +++ b/tests/fixtures/dehumidifier_tp1x_dhm01001_device.json @@ -0,0 +1,426 @@ +{ + "device0": [ + { + "rt": [ + "x.com.samsung.devcol", + "oic.wk.col" + ], + "if": [ + "oic.if.baseline", + "oic.if.ll", + "oic.if.b" + ] + }, + { + "href": "/personality/presence/vs/0", + "rep": { + "x.com.samsung.da.items": [ + { + "x.com.samsung.da.id": "", + "x.com.samsung.da.deviceId": "**REDACTED**", + "x.com.samsung.da.value": "" + } + ] + } + }, + { + "href": "/realtimenotiforclient/vs/0", + "rep": { + "x.com.samsung.da.timeforshortnoti": "0", + "x.com.samsung.da.longnotisubscription": "false", + "x.com.samsung.da.periodicnotisubscription": "true" + } + }, + { + "href": "/filter/airdustfilter/vs/0", + "rep": { + "x.com.samsung.da.filterUsage": "100", + "x.com.samsung.da.filterUsageResolution": "1", + "x.com.samsung.da.filterDesiredUsage": "224", + "x.com.samsung.da.filterStatus": "wash", + "x.com.samsung.da.filterCapacity": "224", + "x.com.samsung.da.filterCapacityUnit": "Hour", + "x.com.samsung.da.filterResetType": [ + "washable" + ], + "x.com.samsung.da.supportedFilterDesiredUsage": [ + "224", + "300", + "500", + "700" + ] + } + }, + { + "href": "/mode/convenient/vs/0", + "rep": { + "x.com.samsung.da.supportedModes": [ + "Off", + "Sleep" + ] + } + }, + { + "href": "/option/autoclean/vs/0", + "rep": { + "x.com.samsung.da.status": "Stop", + "x.com.samsung.da.settingStatus": "On", + "x.com.samsung.da.progress": "0", + "cleaningTime": "30", + "minCleaningTime": "10", + "maxCleaningTime": "60", + "cleaningTimeUnit": "10", + "x.com.samsung.da.supportedStatus": [ + "Start", + "TimedClean", + "Stop" + ], + "x.com.samsung.da.supportedSettingStatus": [ + "On", + "TimedClean", + "Off" + ] + } + }, + { + "href": "/alarms/vs/0", + "rep": { + "x.com.samsung.da.items": [ + { + "x.com.samsung.da.id": "0", + "x.com.samsung.da.description": "Alarm", + "x.com.samsung.da.alarmType": "Device", + "x.com.samsung.da.code": "ErrorCode_OFF", + "x.com.samsung.da.triggeredTime": "2026-08-03T14:54:15", + "x.com.samsung.da.state": "Deleted" + }, + { + "x.com.samsung.da.id": "2", + "x.com.samsung.da.description": "Alarm", + "x.com.samsung.da.alarmType": "Device", + "x.com.samsung.da.code": "WaterTankFull_OFF", + "x.com.samsung.da.triggeredTime": "2026-08-03T14:54:15", + "x.com.samsung.da.state": "Deleted" + } + ] + } + }, + { + "href": "/energy/consumption/vs/0", + "rep": { + "x.com.samsung.da.instantaneousPower": "145.000000", + "x.com.samsung.da.cumulativePower": "101100", + "x.com.samsung.da.cumulativeSavedPower": "0", + "x.com.samsung.da.cumulativeUnit": "Wh", + "x.com.samsung.da.instantaneousPowerUnit": "W", + "x.com.samsung.da.cumulativePowerType": "total" + } + }, + { + "href": "/mode/vs/0", + "rep": { + "x.com.samsung.da.supportedModes": [ + "Smart", + "Max", + "High", + "Medium", + "Quiet", + "ClothesDrying" + ], + "x.com.samsung.da.modes": [ + "Quiet" + ], + "x.com.samsung.da.options": [ + "Volume_Mute", + "RacInfo_None", + "UpdateAllow_NotAllowed", + "WelcomeCoolingState_Off" + ] + } + }, + { + "href": "/power/vs/0", + "rep": { + "x.com.samsung.da.power": "On", + "operationNumber": "1", + "displayCondition": "Enable" + } + }, + { + "href": "/sensors/vs/0", + "rep": {} + }, + { + "href": "/information/vs/0", + "rep": { + "x.com.samsung.da.modelNum": "TP1X_DA_AC_DHM_01001_0000|10283341|77000000001700000A00000000000000", + "x.com.samsung.da.description": "TP1X_DA_AC_DHM_01001_0000", + "x.com.samsung.da.serialNum": "**REDACTED**", + "x.com.samsung.da.otnDUID": "**REDACTED**", + "x.com.samsung.da.diagProtocolType": "BLE_OCF", + "x.com.samsung.da.diagLogType": [ + "errCode", + "dump" + ], + "x.com.samsung.da.diagDumpType": "file", + "x.com.samsung.da.diagEndPoint": "SSM", + "x.com.samsung.da.diagMnid": "0AJT", + "x.com.samsung.da.diagSetupid": "AY0", + "x.com.samsung.da.diagMinVersion": "3.0", + "x.com.samsung.da.diagTsId": "DA01", + "x.com.samsung.da.items": [ + { + "x.com.samsung.da.id": "0", + "x.com.samsung.da.description": "Version", + "x.com.samsung.da.type": "Software", + "x.com.samsung.da.number": "02544A260401", + "x.com.samsung.da.newVersionAvailable": "0" + }, + { + "x.com.samsung.da.id": "1", + "x.com.samsung.da.description": "Version", + "x.com.samsung.da.type": "Firmware", + "x.com.samsung.da.number": "02833A26010600,FFFFFFFFFFFFFF", + "x.com.samsung.da.newVersionAvailable": "0" + }, + { + "x.com.samsung.da.id": "2", + "x.com.samsung.da.description": "Version", + "x.com.samsung.da.type": "Outdoor", + "x.com.samsung.da.number": "02590A10000100,FFFFFFFFFFFFFF" + }, + { + "x.com.samsung.da.id": "4", + "x.com.samsung.da.description": "Version", + "x.com.samsung.da.type": "Touch IC", + "x.com.samsung.da.number": "02552A23020200,FFFFFFFFFFFFFF" + } + ] + } + }, + { + "href": "/file/information/vs/0", + "rep": { + "x.com.samsung.timeoffset": "+09:00", + "x.com.samsung.supprtedtype": 1 + } + }, + { + "href": "/configuration/vs/0", + "rep": { + "x.com.samsung.da.region": "0000000000", + "x.com.samsung.da.airconOptionList": [ + "SingleCommand_1", + "DR", + "HOMECARE_WIZARD_V2", + "PRODUCT_GLOBAL", + "AI_RAC_GLOBAL_2.0", + "AI_Heat" + ] + } + }, + { + "href": "/humidity/vs/0", + "rep": { + "x.com.samsung.da.humidity": "63", + "x.com.samsung.da.desiredHumidity": "60", + "increment": "5", + "x.com.samsung.da.fivepercentHumidity": "64" + } + }, + { + "href": "/drlc/vs/0", + "rep": { + "x.com.samsung.da.drlcLevel": "0", + "x.com.samsung.da.durationminutes": "0", + "x.com.samsung.da.start": "1970-01-01T00:00:00Z", + "x.com.samsung.da.override": "Off", + "x.com.samsung.da.realSaving": "Off" + } + }, + { + "href": "/availablecontrolsets/vs/0", + "rep": { + "x.com.samsung.da.sets": "04001E46070A5A00000000000000", + "x.com.samsung.da.id": "DHM", + "x.com.samsung.da.version": "1.0" + } + }, + { + "href": "/da/softreset/vs/0", + "rep": { + "x.com.samsung.da.softwarereset": "false" + } + }, + { + "href": "/keepnormalstate/vs/0", + "rep": { + "x.com.samsung.da.keepnormal": 1 + } + }, + { + "href": "/otninformation/vs/0", + "rep": { + "x.com.samsung.da.target": "", + "x.com.samsung.da.newVersionAvailable": "false", + "x.com.samsung.da.newVersionNo": "00000000", + "x.com.samsung.da.currentVersionInfo": "00000000", + "otnStatus": "None", + "flashingProgress": "", + "otnTarget": "main", + "otnCompleteDate": "2026-06-24", + "otnList": [ + { + "type": "WIFI", + "modelId": "ADH-WW-TP1-23-AY7100", + "versions": [ + "18260401" + ], + "visVersion": "260401" + }, + { + "type": "Micom", + "modelId": "042110283341FFFFFFFF", + "versions": [ + "26010600", + "FFFFFFFF" + ], + "visVersion": "260106" + }, + { + "type": "Micom", + "modelId": "042110259041FFFFFFFF", + "versions": [ + "10000100", + "FFFFFFFF" + ], + "visVersion": "100001" + }, + { + "type": "Micom", + "modelId": "042110255241FFFFFFFF", + "versions": [ + "23020200", + "FFFFFFFF" + ], + "visVersion": "230202" + } + ] + } + }, + { + "href": "/timezone/vs/0", + "rep": { + "timezoneid": "Asia/Seoul", + "offset": "+09:00", + "DST": "OFF" + } + }, + { + "href": "/option/muteonce/vs/0", + "rep": { + "muteonce": "Off" + } + }, + { + "href": "/reserverulesets/vs/0", + "rep": { + "x.com.samsung.da.sets": "3F1E461E461E46FFFFFFFF1E4600", + "x.com.samsung.da.id": "DHM", + "x.com.samsung.da.version": "1.0" + } + }, + { + "href": "/display/vs/0", + "rep": { + "mode": "On", + "supportedModes": [ + "On", + "Off" + ] + } + }, + { + "href": "/connectionconfig/vs/0", + "rep": { + "autoReconnectionMinVersion": "1.0", + "autoReconnection": "true", + "autoReconnectionProtocolType": [ + "helper_hotspot", + "ble_ocf" + ], + "supportedWiFiAuthType": [ + "OPEN", + "WEP", + "WPA-PSK", + "WPA2-PSK", + "SAE" + ], + "supportedWiFiCryptoType": [ + "TKIP", + "AES", + "WEP-64", + "WEP-128" + ], + "supportedWiFiFreq": [ + "2.4G" + ], + "calmConnectionCare": { + "version": "1.0", + "role": [ + "things" + ] + } + } + }, + { + "href": "/welcome/humidity/vs/0", + "rep": { + "requestId": "0000", + "operatingStatus": "None" + } + }, + { + "href": "/kidslock/vs/0", + "rep": { + "x.com.samsung.da.kidsLock": "Ready" + } + }, + { + "href": "/watertank/lighting/vs/0", + "rep": { + "status": "On", + "colorOption": "NaturalWhite", + "mode": "High", + "waterfullAlarmStatus": "On", + "colorSupportedList": [ + "WarmWhite", + "NaturalWhite", + "CoolWhite", + "Green", + "Purple", + "Blue", + "Orange", + "Pink" + ], + "modeSupportedList": [ + "High", + "Low" + ] + } + }, + { + "href": "/wirelessinfo/vs/0", + "rep": { + "macaddressWiFi": "**REDACTED**", + "macaddressBLE": "**REDACTED**" + } + }, + { + "href": "/quickcontrol/info/vs/0", + "rep": { + "supportedVersion": "1.0" + } + } + ] +} diff --git a/tests/fixtures/golden/dehumidifier_tp1x_dhm01001.json b/tests/fixtures/golden/dehumidifier_tp1x_dhm01001.json new file mode 100644 index 0000000..fc13d8f --- /dev/null +++ b/tests/fixtures/golden/dehumidifier_tp1x_dhm01001.json @@ -0,0 +1,27 @@ +{ + "state_keys": [ + "air_filter_status", + "air_filter_threshold", + "air_filter_usage", + "air_filter_usage_hours", + "alarm_code", + "auto_clean", + "auto_clean_progress", + "auto_clean_running", + "child_lock", + "display", + "energy_kwh", + "energy_saved_kwh", + "firmware_update", + "humidity", + "mute_once", + "operating_mode", + "power_switch", + "power_watts", + "target_humidity", + "watertank_full_alarm_status", + "watertank_light", + "watertank_light_brightness", + "watertank_light_color" + ] +} diff --git a/tests/test_dehumidifier_tp1x_dhm01001_capabilities.py b/tests/test_dehumidifier_tp1x_dhm01001_capabilities.py new file mode 100644 index 0000000..6a0e74a --- /dev/null +++ b/tests/test_dehumidifier_tp1x_dhm01001_capabilities.py @@ -0,0 +1,94 @@ +"""Tests for the TP1X_DA_AC_DHM_01001_0000 dehumidifier revision +(issues #271/#231, model AY70H18100GTD). + +Both issues submitted the identical dump: same board, same two previously +unbound hrefs (/display/vs/0, /watertank/lighting/vs/0). Confirms both the +new capabilities and the /oic/d device-type routing added alongside them. +""" + +from custom_components.localthings.registry.adapter import flatten +from custom_components.localthings.registry.by_type import ( + for_device_by_model, + for_device_by_oic_type, +) +from custom_components.localthings.registry.discovery import discover +from custom_components.localthings.registry.entities import SelectDesc, SwitchDesc +from tests.conftest import _load_device + + +def _dehumidifier(): + resources = _load_device("dehumidifier_tp1x_dhm01001") + info = resources["/information/vs/0"] + reg = for_device_by_model( + info["x.com.samsung.da.modelNum"], + info["x.com.samsung.da.description"], + ) + return reg, resources + + +def _bound(): + reg, resources = _dehumidifier() + return discover(resources, reg.capabilities, reg.pattern_capabilities), resources + + +def _state(): + bound, resources = _bound() + return flatten(bound, resources) + + +def _desc(key): + bound, _ = _bound() + return next(b.desc for b in bound if b.desc.key == key) + + +def test_model_resolves_to_dehumidifier_registry(): + reg, _ = _dehumidifier() + assert reg is not None and reg.name == "dehumidifier" + + +def test_oic_device_type_resolves_to_dehumidifier_registry(): + reg = for_device_by_oic_type(("oic.wk.d", "x.com.st.d.dehumidifier")) + assert reg is not None and reg.name == "dehumidifier" + + +def test_no_unbound_hrefs(): + reg, resources = _dehumidifier() + unbound = [] + discover(resources, reg.capabilities, reg.pattern_capabilities, log=unbound.append) + assert unbound == [] + + +def test_display_switch_present_and_reads_on(): + state = _state() + assert state["display"] is True + + +def test_watertank_light_switch_write_contract(): + desc = _desc("watertank_light") + assert isinstance(desc, SwitchDesc) + path, body = desc.write_fn("On", {}) + assert path == ["watertank", "lighting", "vs", "0"] + assert body == {"status": "On"} + + +def test_watertank_light_color_options_come_from_live_supported_list(): + desc = _desc("watertank_light_color") + assert isinstance(desc, SelectDesc) + assert desc.options_field == "colorSupportedList" + path, body = desc.write_fn("Green", {}) + assert path == ["watertank", "lighting", "vs", "0"] + assert body == {"colorOption": "Green"} + + +def test_watertank_light_brightness_options_come_from_live_supported_list(): + desc = _desc("watertank_light_brightness") + assert isinstance(desc, SelectDesc) + assert desc.options_field == "modeSupportedList" + path, body = desc.write_fn("Low", {}) + assert path == ["watertank", "lighting", "vs", "0"] + assert body == {"mode": "Low"} + + +def test_watertank_full_alarm_status_exposed_read_only(): + state = _state() + assert state["watertank_full_alarm_status"] == "On" diff --git a/tests/test_golden_regression.py b/tests/test_golden_regression.py index b88f5a0..3877446 100644 --- a/tests/test_golden_regression.py +++ b/tests/test_golden_regression.py @@ -1226,6 +1226,23 @@ def test_registry_reproduces_golden_state_keys_for_range_ne6516a(): ) +def test_registry_reproduces_golden_state_keys_for_dehumidifier_tp1x_dhm01001(): + """TP1X_DA_AC_DHM_01001_0000 revision (issues #271/#231) additionally + reports /display/vs/0 (air_purifier.DISPLAY's exact shape, reused as-is) + and /watertank/lighting/vs/0 (new WATERTANK_LIGHTING capability), both + unbound on the original issue #88 dump.""" + from tests.conftest import _load_device + + resources = _load_device("dehumidifier_tp1x_dhm01001") + golden = json.loads((GOLDEN / "dehumidifier_tp1x_dhm01001.json").read_text()) + state_keys = _new_state_keys("dehumidifier_tp1x_dhm01001", resources) + assert set(state_keys) == set(golden["state_keys"]), ( + f"state_keys mismatch:\n" + f" extra: {sorted(set(state_keys) - set(golden['state_keys']))}\n" + f" missing: {sorted(set(golden['state_keys']) - set(state_keys))}" + ) + + def test_resources_from_batch_preferred_over_flat(): from tests.conftest import _resources_from_dump