homeassistant 2025.10.0b4__py3-none-any.whl → 2025.10.0b6__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of homeassistant might be problematic. Click here for more details.
- homeassistant/brands/eltako.json +5 -0
- homeassistant/brands/konnected.json +5 -0
- homeassistant/brands/level.json +5 -0
- homeassistant/components/accuweather/translations/bg.json +7 -1
- homeassistant/components/accuweather/translations/id.json +9 -0
- homeassistant/components/adax/translations/fy.json +11 -0
- homeassistant/components/adguard/translations/zh-Hant.json +1 -1
- homeassistant/components/airos/translations/bg.json +8 -0
- homeassistant/components/airos/translations/ca.json +8 -0
- homeassistant/components/airos/translations/cs.json +12 -0
- homeassistant/components/airos/translations/es.json +12 -0
- homeassistant/components/airos/translations/et.json +12 -0
- homeassistant/components/airos/translations/fr.json +18 -0
- homeassistant/components/airos/translations/fy.json +11 -0
- homeassistant/components/airos/translations/id.json +36 -0
- homeassistant/components/airos/translations/lt.json +12 -0
- homeassistant/components/airos/translations/lv.json +1 -0
- homeassistant/components/airos/translations/pt.json +12 -0
- homeassistant/components/airos/translations/sk.json +12 -0
- homeassistant/components/airos/translations/sv.json +40 -1
- homeassistant/components/airos/translations/zh-Hans.json +12 -0
- homeassistant/components/airos/translations/zh-Hant.json +12 -0
- homeassistant/components/airtouch5/translations/da.json +9 -0
- homeassistant/components/airzone/translations/fr.json +9 -0
- homeassistant/components/airzone/translations/lt.json +10 -0
- homeassistant/components/aladdin_connect/config_flow.py +11 -0
- homeassistant/components/aladdin_connect/strings.json +2 -1
- homeassistant/components/aladdin_connect/translations/cs.json +1 -0
- homeassistant/components/aladdin_connect/translations/de.json +1 -0
- homeassistant/components/aladdin_connect/translations/en-GB.json +1 -0
- homeassistant/components/aladdin_connect/translations/en.json +1 -0
- homeassistant/components/aladdin_connect/translations/es.json +1 -0
- homeassistant/components/aladdin_connect/translations/et.json +1 -0
- homeassistant/components/aladdin_connect/translations/id.json +28 -1
- homeassistant/components/aladdin_connect/translations/lt.json +1 -0
- homeassistant/components/aladdin_connect/translations/pt.json +1 -0
- homeassistant/components/alexa_devices/binary_sensor.py +0 -7
- homeassistant/components/alexa_devices/manifest.json +1 -1
- homeassistant/components/alexa_devices/translations/fy.json +16 -0
- homeassistant/components/alexa_devices/translations/id.json +12 -0
- homeassistant/components/analytics/analytics.py +24 -13
- homeassistant/components/androidtv_remote/translations/id.json +7 -1
- homeassistant/components/anthropic/translations/id.json +2 -1
- homeassistant/components/aosmith/translations/id.json +9 -0
- homeassistant/components/apcupsd/translations/id.json +6 -0
- homeassistant/components/august/translations/id.json +25 -1
- homeassistant/components/bayesian/binary_sensor.py +7 -0
- homeassistant/components/bayesian/translations/id.json +62 -0
- homeassistant/components/blue_current/translations/bg.json +18 -0
- homeassistant/components/blue_current/translations/fr.json +9 -0
- homeassistant/components/blue_current/translations/lt.json +44 -0
- homeassistant/components/broadlink/translations/zh-Hant.json +1 -1
- homeassistant/components/brother/translations/id.json +21 -0
- homeassistant/components/bsblan/translations/fy.json +16 -0
- homeassistant/components/bsblan/translations/id.json +17 -2
- homeassistant/components/cast/translations/pl.json +14 -0
- homeassistant/components/coinbase/translations/id.json +5 -0
- homeassistant/components/compit/translations/bg.json +25 -0
- homeassistant/components/compit/translations/fy.json +16 -0
- homeassistant/components/compit/translations/id.json +25 -0
- homeassistant/components/cover/translations/da.json +20 -1
- homeassistant/components/cync/translations/bg.json +20 -0
- homeassistant/components/cync/translations/ca.json +12 -0
- homeassistant/components/cync/translations/fr.json +32 -0
- homeassistant/components/cync/translations/fy.json +11 -0
- homeassistant/components/cync/translations/id.json +20 -0
- homeassistant/components/cync/translations/lt.json +32 -0
- homeassistant/components/datadog/translations/id.json +28 -0
- homeassistant/components/deconz/translations/zh-Hant.json +1 -1
- homeassistant/components/deluge/translations/bg.json +6 -0
- homeassistant/components/devolo_home_control/translations/fy.json +11 -0
- homeassistant/components/devolo_home_network/translations/fy.json +10 -0
- homeassistant/components/dnsip/sensor.py +17 -4
- homeassistant/components/droplet/translations/id.json +17 -0
- homeassistant/components/ebusd/__init__.py +5 -1
- homeassistant/components/ecobee/strings.json +2 -2
- homeassistant/components/ecobee/translations/cs.json +2 -2
- homeassistant/components/ecobee/translations/de.json +3 -3
- homeassistant/components/ecobee/translations/el.json +1 -2
- homeassistant/components/ecobee/translations/en-GB.json +2 -2
- homeassistant/components/ecobee/translations/en.json +2 -2
- homeassistant/components/ecobee/translations/es.json +2 -2
- homeassistant/components/ecobee/translations/et.json +2 -2
- homeassistant/components/ecobee/translations/ga.json +1 -5
- homeassistant/components/ecobee/translations/hu.json +1 -5
- homeassistant/components/ecobee/translations/it.json +1 -5
- homeassistant/components/ecobee/translations/ja.json +1 -5
- homeassistant/components/ecobee/translations/lt.json +2 -2
- homeassistant/components/ecobee/translations/pt.json +2 -2
- homeassistant/components/ecobee/translations/ru.json +1 -5
- homeassistant/components/ecobee/translations/sk.json +1 -5
- homeassistant/components/ecobee/translations/sv.json +1 -5
- homeassistant/components/ecobee/translations/tr.json +1 -5
- homeassistant/components/ecobee/translations/zh-Hans.json +1 -5
- homeassistant/components/ecobee/translations/zh-Hant.json +1 -5
- homeassistant/components/ecovacs/image.py +3 -1
- homeassistant/components/ecovacs/manifest.json +1 -1
- homeassistant/components/ecowitt/manifest.json +1 -1
- homeassistant/components/eheimdigital/translations/id.json +7 -1
- homeassistant/components/ekeybionyx/translations/bg.json +26 -0
- homeassistant/components/ekeybionyx/translations/fr.json +32 -0
- homeassistant/components/ekeybionyx/translations/id.json +24 -0
- homeassistant/components/ekeybionyx/translations/lt.json +66 -0
- homeassistant/components/elevenlabs/translations/id.json +2 -1
- homeassistant/components/elkm1/translations/fy.json +11 -0
- homeassistant/components/elkm1/translations/id.json +6 -0
- homeassistant/components/emoncms/translations/id.json +9 -0
- homeassistant/components/enphase_envoy/translations/id.json +1 -0
- homeassistant/components/ephember/climate.py +12 -2
- homeassistant/components/esphome/analytics.py +11 -0
- homeassistant/components/esphome/translations/pl.json +4 -2
- homeassistant/components/fan/translations/id.json +3 -0
- homeassistant/components/file/translations/bg.json +17 -0
- homeassistant/components/flick_electric/translations/zh-Hant.json +2 -2
- homeassistant/components/fritz/diagnostics.py +3 -0
- homeassistant/components/frontend/manifest.json +1 -1
- homeassistant/components/geocaching/translations/bg.json +13 -0
- homeassistant/components/google_generative_ai_conversation/translations/id.json +29 -1
- homeassistant/components/hassio/translations/bg.json +3 -0
- homeassistant/components/hassio/translations/id.json +29 -0
- homeassistant/components/holiday/translations/zh-Hant.json +2 -2
- homeassistant/components/homeassistant/translations/id.json +8 -0
- homeassistant/components/homeassistant_connect_zbt2/config_flow.py +6 -0
- homeassistant/components/homeassistant_connect_zbt2/strings.json +22 -12
- homeassistant/components/homeassistant_connect_zbt2/translations/bg.json +64 -6
- homeassistant/components/homeassistant_connect_zbt2/translations/ca.json +2 -8
- homeassistant/components/homeassistant_connect_zbt2/translations/cs.json +22 -12
- homeassistant/components/homeassistant_connect_zbt2/translations/de.json +22 -12
- homeassistant/components/homeassistant_connect_zbt2/translations/el.json +2 -8
- homeassistant/components/homeassistant_connect_zbt2/translations/en-GB.json +22 -12
- homeassistant/components/homeassistant_connect_zbt2/translations/en.json +22 -12
- homeassistant/components/homeassistant_connect_zbt2/translations/es.json +22 -12
- homeassistant/components/homeassistant_connect_zbt2/translations/et.json +22 -12
- homeassistant/components/homeassistant_connect_zbt2/translations/fr.json +16 -8
- homeassistant/components/homeassistant_connect_zbt2/translations/ga.json +2 -8
- homeassistant/components/homeassistant_connect_zbt2/translations/he.json +2 -8
- homeassistant/components/homeassistant_connect_zbt2/translations/id.json +238 -0
- homeassistant/components/homeassistant_connect_zbt2/translations/lt.json +22 -12
- homeassistant/components/homeassistant_connect_zbt2/translations/nl.json +2 -4
- homeassistant/components/homeassistant_connect_zbt2/translations/pl.json +1 -2
- homeassistant/components/homeassistant_connect_zbt2/translations/pt.json +22 -12
- homeassistant/components/homeassistant_connect_zbt2/translations/ru.json +21 -6
- homeassistant/components/homeassistant_connect_zbt2/translations/sk.json +6 -12
- homeassistant/components/homeassistant_connect_zbt2/translations/zh-Hans.json +2 -8
- homeassistant/components/homeassistant_connect_zbt2/translations/zh-Hant.json +22 -12
- homeassistant/components/homeassistant_connect_zbt2/update.py +2 -1
- homeassistant/components/homeassistant_hardware/firmware_config_flow.py +24 -67
- homeassistant/components/homeassistant_hardware/manifest.json +1 -1
- homeassistant/components/homeassistant_hardware/strings.json +11 -5
- homeassistant/components/homeassistant_hardware/translations/bg.json +40 -0
- homeassistant/components/homeassistant_hardware/translations/ca.json +0 -8
- homeassistant/components/homeassistant_hardware/translations/cs.json +11 -5
- homeassistant/components/homeassistant_hardware/translations/de.json +11 -5
- homeassistant/components/homeassistant_hardware/translations/el.json +0 -11
- homeassistant/components/homeassistant_hardware/translations/en-GB.json +11 -5
- homeassistant/components/homeassistant_hardware/translations/en.json +11 -5
- homeassistant/components/homeassistant_hardware/translations/es.json +11 -5
- homeassistant/components/homeassistant_hardware/translations/et.json +11 -5
- homeassistant/components/homeassistant_hardware/translations/fr.json +7 -8
- homeassistant/components/homeassistant_hardware/translations/ga.json +0 -11
- homeassistant/components/homeassistant_hardware/translations/he.json +0 -11
- homeassistant/components/homeassistant_hardware/translations/hu.json +0 -11
- homeassistant/components/homeassistant_hardware/translations/id.json +54 -4
- homeassistant/components/homeassistant_hardware/translations/it.json +0 -3
- homeassistant/components/homeassistant_hardware/translations/ja.json +0 -11
- homeassistant/components/homeassistant_hardware/translations/ko.json +0 -8
- homeassistant/components/homeassistant_hardware/translations/lt.json +11 -5
- homeassistant/components/homeassistant_hardware/translations/mk.json +0 -3
- homeassistant/components/homeassistant_hardware/translations/nl.json +0 -3
- homeassistant/components/homeassistant_hardware/translations/pt.json +11 -5
- homeassistant/components/homeassistant_hardware/translations/ru.json +11 -5
- homeassistant/components/homeassistant_hardware/translations/sk.json +10 -7
- homeassistant/components/homeassistant_hardware/translations/sv.json +0 -11
- homeassistant/components/homeassistant_hardware/translations/tr.json +0 -8
- homeassistant/components/homeassistant_hardware/translations/zh-Hans.json +0 -11
- homeassistant/components/homeassistant_hardware/translations/zh-Hant.json +11 -5
- homeassistant/components/homeassistant_hardware/update.py +8 -3
- homeassistant/components/homeassistant_hardware/util.py +22 -5
- homeassistant/components/homeassistant_sky_connect/strings.json +22 -12
- homeassistant/components/homeassistant_sky_connect/translations/bg.json +72 -4
- homeassistant/components/homeassistant_sky_connect/translations/ca.json +2 -8
- homeassistant/components/homeassistant_sky_connect/translations/cs.json +22 -12
- homeassistant/components/homeassistant_sky_connect/translations/de.json +22 -12
- homeassistant/components/homeassistant_sky_connect/translations/el.json +2 -8
- homeassistant/components/homeassistant_sky_connect/translations/en-GB.json +22 -12
- homeassistant/components/homeassistant_sky_connect/translations/en.json +22 -12
- homeassistant/components/homeassistant_sky_connect/translations/es.json +22 -12
- homeassistant/components/homeassistant_sky_connect/translations/et.json +22 -12
- homeassistant/components/homeassistant_sky_connect/translations/fi.json +2 -4
- homeassistant/components/homeassistant_sky_connect/translations/fr.json +16 -8
- homeassistant/components/homeassistant_sky_connect/translations/ga.json +2 -8
- homeassistant/components/homeassistant_sky_connect/translations/he.json +2 -8
- homeassistant/components/homeassistant_sky_connect/translations/hu.json +2 -8
- homeassistant/components/homeassistant_sky_connect/translations/id.json +96 -18
- homeassistant/components/homeassistant_sky_connect/translations/it.json +2 -4
- homeassistant/components/homeassistant_sky_connect/translations/ja.json +2 -8
- homeassistant/components/homeassistant_sky_connect/translations/ko.json +2 -12
- homeassistant/components/homeassistant_sky_connect/translations/lt.json +22 -12
- homeassistant/components/homeassistant_sky_connect/translations/nl.json +2 -4
- homeassistant/components/homeassistant_sky_connect/translations/pl.json +2 -4
- homeassistant/components/homeassistant_sky_connect/translations/pt.json +22 -12
- homeassistant/components/homeassistant_sky_connect/translations/ru.json +22 -12
- homeassistant/components/homeassistant_sky_connect/translations/sk.json +6 -12
- homeassistant/components/homeassistant_sky_connect/translations/sv.json +2 -8
- homeassistant/components/homeassistant_sky_connect/translations/tr.json +2 -8
- homeassistant/components/homeassistant_sky_connect/translations/zh-Hans.json +2 -8
- homeassistant/components/homeassistant_sky_connect/translations/zh-Hant.json +22 -12
- homeassistant/components/homeassistant_sky_connect/update.py +2 -1
- homeassistant/components/homeassistant_yellow/config_flow.py +7 -1
- homeassistant/components/homeassistant_yellow/strings.json +11 -6
- homeassistant/components/homeassistant_yellow/translations/bg.json +32 -3
- homeassistant/components/homeassistant_yellow/translations/ca.json +1 -4
- homeassistant/components/homeassistant_yellow/translations/cs.json +11 -6
- homeassistant/components/homeassistant_yellow/translations/de.json +11 -6
- homeassistant/components/homeassistant_yellow/translations/el.json +1 -4
- homeassistant/components/homeassistant_yellow/translations/en-GB.json +11 -6
- homeassistant/components/homeassistant_yellow/translations/en.json +11 -6
- homeassistant/components/homeassistant_yellow/translations/es.json +11 -6
- homeassistant/components/homeassistant_yellow/translations/et.json +11 -6
- homeassistant/components/homeassistant_yellow/translations/fr.json +8 -4
- homeassistant/components/homeassistant_yellow/translations/ga.json +1 -4
- homeassistant/components/homeassistant_yellow/translations/he.json +1 -4
- homeassistant/components/homeassistant_yellow/translations/hu.json +1 -4
- homeassistant/components/homeassistant_yellow/translations/id.json +49 -9
- homeassistant/components/homeassistant_yellow/translations/it.json +1 -2
- homeassistant/components/homeassistant_yellow/translations/ja.json +1 -4
- homeassistant/components/homeassistant_yellow/translations/ko.json +0 -2
- homeassistant/components/homeassistant_yellow/translations/lt.json +11 -6
- homeassistant/components/homeassistant_yellow/translations/nl.json +1 -2
- homeassistant/components/homeassistant_yellow/translations/pt.json +11 -6
- homeassistant/components/homeassistant_yellow/translations/ru.json +5 -6
- homeassistant/components/homeassistant_yellow/translations/sk.json +3 -6
- homeassistant/components/homeassistant_yellow/translations/sv.json +1 -4
- homeassistant/components/homeassistant_yellow/translations/tr.json +1 -4
- homeassistant/components/homeassistant_yellow/translations/zh-Hans.json +1 -4
- homeassistant/components/homeassistant_yellow/translations/zh-Hant.json +11 -6
- homeassistant/components/homeassistant_yellow/update.py +2 -1
- homeassistant/components/homee/translations/fy.json +14 -0
- homeassistant/components/homee/translations/id.json +14 -0
- homeassistant/components/hue/v2/binary_sensor.py +5 -1
- homeassistant/components/husqvarna_automower/translations/da.json +16 -0
- homeassistant/components/husqvarna_automower/translations/id.json +18 -0
- homeassistant/components/husqvarna_automower_ble/translations/id.json +4 -0
- homeassistant/components/icloud/translations/id.json +3 -0
- homeassistant/components/imeon_inverter/translations/fy.json +11 -0
- homeassistant/components/imeon_inverter/translations/id.json +10 -0
- homeassistant/components/improv_ble/translations/fy.json +7 -0
- homeassistant/components/irm_kmi/translations/bg.json +49 -0
- homeassistant/components/irm_kmi/translations/id.json +28 -0
- homeassistant/components/ista_ecotrend/translations/fy.json +11 -0
- homeassistant/components/keenetic_ndms2/translations/id.json +2 -1
- homeassistant/components/knx/translations/fr.json +3 -0
- homeassistant/components/knx/translations/id.json +3 -0
- homeassistant/components/konnected/__init__.py +14 -1
- homeassistant/components/konnected/manifest.json +1 -1
- homeassistant/components/konnected/strings.json +6 -0
- homeassistant/components/konnected/translations/cs.json +6 -0
- homeassistant/components/konnected/translations/de.json +6 -0
- homeassistant/components/konnected/translations/en-GB.json +6 -0
- homeassistant/components/konnected/translations/en.json +6 -0
- homeassistant/components/konnected/translations/es.json +6 -0
- homeassistant/components/konnected/translations/et.json +6 -0
- homeassistant/components/konnected/translations/lt.json +6 -0
- homeassistant/components/konnected/translations/pt.json +6 -0
- homeassistant/components/konnected/translations/sk.json +6 -0
- homeassistant/components/konnected/translations/zh-Hant.json +6 -0
- homeassistant/components/konnected_esphome/__init__.py +1 -0
- homeassistant/components/konnected_esphome/manifest.json +6 -0
- homeassistant/components/letpot/number.py +2 -1
- homeassistant/components/letpot/strings.json +1 -2
- homeassistant/components/letpot/translations/cs.json +1 -2
- homeassistant/components/letpot/translations/de.json +1 -2
- homeassistant/components/letpot/translations/en-GB.json +1 -2
- homeassistant/components/letpot/translations/en.json +1 -2
- homeassistant/components/letpot/translations/es.json +1 -2
- homeassistant/components/letpot/translations/et.json +1 -2
- homeassistant/components/letpot/translations/fr.json +9 -0
- homeassistant/components/letpot/translations/ga.json +1 -2
- homeassistant/components/letpot/translations/id.json +10 -0
- homeassistant/components/letpot/translations/lt.json +9 -0
- homeassistant/components/letpot/translations/nl.json +0 -5
- homeassistant/components/letpot/translations/pt.json +1 -2
- homeassistant/components/letpot/translations/sk.json +1 -2
- homeassistant/components/letpot/translations/zh-Hans.json +1 -2
- homeassistant/components/letpot/translations/zh-Hant.json +1 -2
- homeassistant/components/lg_thinq/translations/bg.json +9 -0
- homeassistant/components/lg_thinq/translations/id.json +5 -2
- homeassistant/components/libre_hardware_monitor/translations/id.json +19 -0
- homeassistant/components/lifx/translations/zh-Hant.json +1 -1
- homeassistant/components/light/translations/id.json +2 -1
- homeassistant/components/litterrobot/translations/bg.json +5 -0
- homeassistant/components/litterrobot/translations/id.json +15 -0
- homeassistant/components/lovelace/translations/pl.json +6 -1
- homeassistant/components/mastodon/translations/bg.json +3 -0
- homeassistant/components/matter/translations/bg.json +3 -0
- homeassistant/components/matter/translations/da.json +7 -0
- homeassistant/components/mcp/strings.json +20 -1
- homeassistant/components/mcp/translations/bg.json +1 -0
- homeassistant/components/mcp/translations/cs.json +20 -1
- homeassistant/components/mcp/translations/de.json +20 -1
- homeassistant/components/mcp/translations/en-GB.json +20 -1
- homeassistant/components/mcp/translations/en.json +20 -1
- homeassistant/components/mcp/translations/es.json +20 -1
- homeassistant/components/mcp/translations/et.json +20 -1
- homeassistant/components/mcp/translations/fr.json +20 -1
- homeassistant/components/mcp/translations/id.json +8 -1
- homeassistant/components/mcp/translations/lt.json +20 -1
- homeassistant/components/mcp/translations/pt.json +20 -1
- homeassistant/components/mcp/translations/sk.json +20 -1
- homeassistant/components/mcp/translations/zh-Hant.json +20 -1
- homeassistant/components/media_extractor/manifest.json +1 -1
- homeassistant/components/motioneye/translations/zh-Hant.json +1 -1
- homeassistant/components/mqtt/strings.json +2 -0
- homeassistant/components/mqtt/translations/bg.json +1 -0
- homeassistant/components/mqtt/translations/cs.json +2 -0
- homeassistant/components/mqtt/translations/da.json +19 -0
- homeassistant/components/mqtt/translations/de.json +2 -0
- homeassistant/components/mqtt/translations/en-GB.json +2 -0
- homeassistant/components/mqtt/translations/en.json +2 -0
- homeassistant/components/mqtt/translations/es.json +2 -0
- homeassistant/components/mqtt/translations/et.json +2 -0
- homeassistant/components/mqtt/translations/fr.json +2 -0
- homeassistant/components/mqtt/translations/fy.json +9 -0
- homeassistant/components/mqtt/translations/id.json +6 -0
- homeassistant/components/mqtt/translations/lt.json +2 -0
- homeassistant/components/mqtt/translations/nl.json +9 -0
- homeassistant/components/mqtt/translations/pt.json +2 -0
- homeassistant/components/mqtt/translations/ru.json +2 -0
- homeassistant/components/mqtt/translations/zh-Hant.json +3 -1
- homeassistant/components/music_assistant/translations/fr.json +7 -0
- homeassistant/components/nasweb/translations/id.json +10 -0
- homeassistant/components/nederlandse_spoorwegen/translations/id.json +28 -0
- homeassistant/components/nightscout/translations/zh-Hant.json +1 -1
- homeassistant/components/niko_home_control/translations/id.json +7 -1
- homeassistant/components/nina/translations/cs.json +3 -1
- homeassistant/components/nina/translations/de.json +1 -1
- homeassistant/components/nina/translations/es.json +3 -1
- homeassistant/components/nina/translations/et.json +2 -0
- homeassistant/components/nina/translations/lt.json +3 -1
- homeassistant/components/nina/translations/pt.json +3 -1
- homeassistant/components/nina/translations/sk.json +3 -1
- homeassistant/components/nina/translations/zh-Hans.json +3 -1
- homeassistant/components/nina/translations/zh-Hant.json +3 -1
- homeassistant/components/nordpool/translations/bg.json +8 -0
- homeassistant/components/ntfy/translations/fy.json +30 -0
- homeassistant/components/ntfy/translations/id.json +11 -0
- homeassistant/components/ntfy/translations/zh-Hant.json +1 -1
- homeassistant/components/number/const.py +2 -5
- homeassistant/components/number/strings.json +3 -0
- homeassistant/components/number/translations/cs.json +3 -0
- homeassistant/components/number/translations/de.json +3 -0
- homeassistant/components/number/translations/en-GB.json +3 -0
- homeassistant/components/number/translations/en.json +3 -0
- homeassistant/components/number/translations/es.json +3 -0
- homeassistant/components/number/translations/et.json +3 -0
- homeassistant/components/number/translations/fr.json +3 -0
- homeassistant/components/number/translations/lt.json +3 -0
- homeassistant/components/number/translations/pt.json +3 -0
- homeassistant/components/number/translations/ru.json +3 -0
- homeassistant/components/number/translations/zh-Hant.json +3 -0
- homeassistant/components/ohme/translations/fy.json +11 -0
- homeassistant/components/ollama/translations/id.json +18 -1
- homeassistant/components/open_router/translations/id.json +40 -0
- homeassistant/components/openai_conversation/translations/id.json +26 -1
- homeassistant/components/opower/translations/fy.json +5 -0
- homeassistant/components/opower/translations/id.json +6 -0
- homeassistant/components/overkiz/translations/id.json +1 -0
- homeassistant/components/peco/translations/zh-Hant.json +1 -1
- homeassistant/components/pi_hole/__init__.py +9 -3
- homeassistant/components/playstation_network/translations/id.json +8 -0
- homeassistant/components/plex/translations/zh-Hant.json +1 -1
- homeassistant/components/pooldose/translations/bg.json +9 -0
- homeassistant/components/pooldose/translations/id.json +49 -0
- homeassistant/components/portainer/__init__.py +27 -3
- homeassistant/components/portainer/config_flow.py +14 -10
- homeassistant/components/portainer/coordinator.py +2 -2
- homeassistant/components/portainer/strings.json +5 -5
- homeassistant/components/portainer/translations/bg.json +2 -2
- homeassistant/components/portainer/translations/ca.json +3 -2
- homeassistant/components/portainer/translations/cs.json +7 -5
- homeassistant/components/portainer/translations/de.json +5 -5
- homeassistant/components/portainer/translations/el.json +0 -8
- homeassistant/components/portainer/translations/en-GB.json +5 -5
- homeassistant/components/portainer/translations/en.json +5 -5
- homeassistant/components/portainer/translations/es.json +7 -5
- homeassistant/components/portainer/translations/et.json +7 -5
- homeassistant/components/portainer/translations/fr.json +18 -0
- homeassistant/components/portainer/translations/ga.json +0 -13
- homeassistant/components/portainer/translations/he.json +0 -8
- homeassistant/components/portainer/translations/id.json +22 -0
- homeassistant/components/portainer/translations/lt.json +7 -5
- homeassistant/components/portainer/translations/nl.json +0 -8
- homeassistant/components/portainer/translations/pt.json +7 -5
- homeassistant/components/portainer/translations/ru.json +7 -5
- homeassistant/components/portainer/translations/sk.json +7 -5
- homeassistant/components/portainer/translations/sl.json +0 -13
- homeassistant/components/portainer/translations/zh-Hans.json +7 -5
- homeassistant/components/portainer/translations/zh-Hant.json +7 -5
- homeassistant/components/pyload/translations/id.json +6 -0
- homeassistant/components/pyload/translations/zh-Hant.json +1 -1
- homeassistant/components/qbittorrent/translations/cs.json +4 -4
- homeassistant/components/random/strings.json +1 -0
- homeassistant/components/random/translations/cs.json +1 -0
- homeassistant/components/random/translations/de.json +1 -0
- homeassistant/components/random/translations/en-GB.json +1 -0
- homeassistant/components/random/translations/en.json +1 -0
- homeassistant/components/random/translations/es.json +1 -0
- homeassistant/components/random/translations/et.json +1 -0
- homeassistant/components/random/translations/fr.json +1 -0
- homeassistant/components/random/translations/lt.json +1 -0
- homeassistant/components/random/translations/pt.json +1 -0
- homeassistant/components/random/translations/ru.json +1 -0
- homeassistant/components/random/translations/zh-Hant.json +1 -0
- homeassistant/components/recorder/statistics.py +0 -5
- homeassistant/components/recorder/websocket_api.py +0 -4
- homeassistant/components/rehlko/translations/fy.json +16 -0
- homeassistant/components/remote/translations/id.json +3 -0
- homeassistant/components/remote_calendar/translations/id.json +2 -1
- homeassistant/components/reolink/manifest.json +1 -1
- homeassistant/components/reolink/translations/es.json +4 -4
- homeassistant/components/roomba/translations/bg.json +1 -2
- homeassistant/components/roomba/translations/ca.json +2 -4
- homeassistant/components/roomba/translations/el.json +2 -4
- homeassistant/components/roomba/translations/en-GB.json +2 -2
- homeassistant/components/roomba/translations/en.json +2 -2
- homeassistant/components/roomba/translations/fi.json +2 -4
- homeassistant/components/roomba/translations/fr.json +2 -4
- homeassistant/components/roomba/translations/ga.json +2 -4
- homeassistant/components/roomba/translations/he.json +1 -5
- homeassistant/components/roomba/translations/hu.json +2 -4
- homeassistant/components/roomba/translations/id.json +2 -4
- homeassistant/components/roomba/translations/it.json +2 -4
- homeassistant/components/roomba/translations/ja.json +2 -4
- homeassistant/components/roomba/translations/ko.json +2 -4
- homeassistant/components/roomba/translations/lb.json +1 -5
- homeassistant/components/roomba/translations/lt.json +2 -2
- homeassistant/components/roomba/translations/nb.json +1 -5
- homeassistant/components/roomba/translations/nl.json +2 -4
- homeassistant/components/roomba/translations/pl.json +1 -5
- homeassistant/components/roomba/translations/pt-BR.json +1 -5
- homeassistant/components/roomba/translations/pt.json +2 -2
- homeassistant/components/roomba/translations/ro.json +1 -5
- homeassistant/components/roomba/translations/ru.json +2 -4
- homeassistant/components/roomba/translations/sk.json +2 -4
- homeassistant/components/roomba/translations/sv.json +2 -4
- homeassistant/components/roomba/translations/tr.json +2 -4
- homeassistant/components/roomba/translations/uk.json +1 -5
- homeassistant/components/roomba/translations/zh-Hans.json +2 -4
- homeassistant/components/roomba/translations/zh-Hant.json +2 -4
- homeassistant/components/route_b_smart_meter/translations/bg.json +24 -0
- homeassistant/components/route_b_smart_meter/translations/fr.json +36 -0
- homeassistant/components/route_b_smart_meter/translations/fy.json +14 -0
- homeassistant/components/route_b_smart_meter/translations/id.json +24 -0
- homeassistant/components/route_b_smart_meter/translations/lt.json +42 -0
- homeassistant/components/satel_integra/__init__.py +6 -0
- homeassistant/components/satel_integra/translations/bg.json +102 -0
- homeassistant/components/satel_integra/translations/id.json +85 -0
- homeassistant/components/scrape/strings.json +2 -0
- homeassistant/components/scrape/translations/cs.json +2 -0
- homeassistant/components/scrape/translations/de.json +2 -0
- homeassistant/components/scrape/translations/en-GB.json +2 -0
- homeassistant/components/scrape/translations/en.json +2 -0
- homeassistant/components/scrape/translations/es.json +2 -0
- homeassistant/components/scrape/translations/et.json +2 -0
- homeassistant/components/scrape/translations/fr.json +2 -0
- homeassistant/components/scrape/translations/lt.json +2 -0
- homeassistant/components/scrape/translations/pt.json +2 -0
- homeassistant/components/scrape/translations/ru.json +2 -0
- homeassistant/components/scrape/translations/zh-Hant.json +2 -0
- homeassistant/components/sensibo/translations/pl.json +1 -0
- homeassistant/components/sensor/const.py +2 -7
- homeassistant/components/sensor/strings.json +3 -0
- homeassistant/components/sensor/translations/cs.json +3 -0
- homeassistant/components/sensor/translations/de.json +3 -0
- homeassistant/components/sensor/translations/en-GB.json +3 -0
- homeassistant/components/sensor/translations/en.json +3 -0
- homeassistant/components/sensor/translations/es.json +3 -0
- homeassistant/components/sensor/translations/et.json +3 -0
- homeassistant/components/sensor/translations/fr.json +3 -0
- homeassistant/components/sensor/translations/lt.json +3 -0
- homeassistant/components/sensor/translations/nl.json +3 -0
- homeassistant/components/sensor/translations/pl.json +3 -0
- homeassistant/components/sensor/translations/pt.json +3 -0
- homeassistant/components/sensor/translations/ru.json +3 -0
- homeassistant/components/sensor/translations/sk.json +3 -0
- homeassistant/components/sensor/translations/zh-Hant.json +3 -0
- homeassistant/components/sensorpush_cloud/translations/fy.json +11 -0
- homeassistant/components/sftp_storage/translations/id.json +14 -0
- homeassistant/components/shelly/icons.json +3 -0
- homeassistant/components/shelly/sensor.py +83 -3
- homeassistant/components/shelly/strings.json +12 -0
- homeassistant/components/shelly/translations/bg.json +19 -0
- homeassistant/components/shelly/translations/cs.json +12 -0
- homeassistant/components/shelly/translations/de.json +12 -0
- homeassistant/components/shelly/translations/en-GB.json +12 -0
- homeassistant/components/shelly/translations/en.json +12 -0
- homeassistant/components/shelly/translations/es.json +12 -0
- homeassistant/components/shelly/translations/et.json +12 -0
- homeassistant/components/shelly/translations/id.json +19 -0
- homeassistant/components/shelly/translations/lt.json +12 -0
- homeassistant/components/shelly/translations/lv.json +6 -0
- homeassistant/components/shelly/translations/pl.json +12 -0
- homeassistant/components/shelly/translations/pt.json +12 -0
- homeassistant/components/shelly/translations/sk.json +12 -0
- homeassistant/components/shelly/translations/zh-Hant.json +12 -0
- homeassistant/components/sleep_as_android/translations/id.json +31 -0
- homeassistant/components/sleepiq/translations/id.json +5 -0
- homeassistant/components/sma/translations/fy.json +16 -0
- homeassistant/components/smartthings/translations/fr.json +12 -0
- homeassistant/components/smartthings/translations/id.json +7 -0
- homeassistant/components/smartthings/translations/lt.json +21 -0
- homeassistant/components/snoo/translations/fy.json +9 -0
- homeassistant/components/sonos/select.py +9 -13
- homeassistant/components/sonos/speaker.py +23 -0
- homeassistant/components/sonos/translations/id.json +10 -0
- homeassistant/components/sql/strings.json +1 -0
- homeassistant/components/sql/translations/cs.json +1 -0
- homeassistant/components/sql/translations/de.json +1 -0
- homeassistant/components/sql/translations/en-GB.json +1 -0
- homeassistant/components/sql/translations/en.json +1 -0
- homeassistant/components/sql/translations/es.json +1 -0
- homeassistant/components/sql/translations/et.json +1 -0
- homeassistant/components/sql/translations/fr.json +1 -0
- homeassistant/components/sql/translations/lt.json +1 -0
- homeassistant/components/sql/translations/pt.json +1 -0
- homeassistant/components/sql/translations/ru.json +1 -0
- homeassistant/components/sql/translations/zh-Hant.json +5 -4
- homeassistant/components/switch/translations/id.json +3 -0
- homeassistant/components/switch_as_x/translations/da.json +7 -0
- homeassistant/components/switchbot/translations/fy.json +7 -0
- homeassistant/components/switchbot/translations/id.json +12 -0
- homeassistant/components/switchbot_cloud/cover.py +3 -5
- homeassistant/components/switchbot_cloud/entity.py +1 -1
- homeassistant/components/switchbot_cloud/translations/id.json +27 -0
- homeassistant/components/telegram_bot/translations/id.json +5 -0
- homeassistant/components/template/strings.json +1 -0
- homeassistant/components/template/translations/cs.json +1 -0
- homeassistant/components/template/translations/da.json +17 -0
- homeassistant/components/template/translations/de.json +1 -0
- homeassistant/components/template/translations/en-GB.json +1 -0
- homeassistant/components/template/translations/en.json +1 -0
- homeassistant/components/template/translations/es.json +1 -0
- homeassistant/components/template/translations/et.json +1 -0
- homeassistant/components/template/translations/fr.json +1 -0
- homeassistant/components/template/translations/id.json +81 -0
- homeassistant/components/template/translations/lt.json +1 -0
- homeassistant/components/template/translations/mk.json +9 -0
- homeassistant/components/template/translations/pt.json +1 -0
- homeassistant/components/template/translations/ru.json +1 -0
- homeassistant/components/template/translations/zh-Hant.json +1 -0
- homeassistant/components/teslemetry/translations/id.json +33 -0
- homeassistant/components/togrill/coordinator.py +24 -6
- homeassistant/components/togrill/translations/id.json +16 -0
- homeassistant/components/tolo/translations/bg.json +2 -1
- homeassistant/components/tolo/translations/id.json +2 -1
- homeassistant/components/traccar_server/translations/fy.json +9 -0
- homeassistant/components/traccar_server/translations/id.json +9 -1
- homeassistant/components/trafikverket_train/translations/zh-Hant.json +1 -1
- homeassistant/components/tuya/translations/da.json +8 -0
- homeassistant/components/tuya/translations/id.json +32 -0
- homeassistant/components/unifiprotect/translations/id.json +3 -0
- homeassistant/components/update/translations/id.json +3 -0
- homeassistant/components/uptime_kuma/translations/id.json +40 -0
- homeassistant/components/uptime_kuma/translations/zh-Hant.json +1 -1
- homeassistant/components/uptimerobot/translations/id.json +6 -0
- homeassistant/components/valve/translations/da.json +1 -0
- homeassistant/components/vegehub/translations/id.json +4 -0
- homeassistant/components/velbus/translations/fy.json +11 -0
- homeassistant/components/vesync/binary_sensor.py +1 -1
- homeassistant/components/vesync/translations/fy.json +9 -0
- homeassistant/components/vicare/const.py +1 -0
- homeassistant/components/victron_remote_monitoring/translations/bg.json +71 -0
- homeassistant/components/victron_remote_monitoring/translations/id.json +25 -0
- homeassistant/components/volvo/sensor.py +12 -6
- homeassistant/components/volvo/translations/id.json +58 -0
- homeassistant/components/webdav/translations/fy.json +11 -0
- homeassistant/components/whirlpool/translations/id.json +1 -0
- homeassistant/components/wled/analytics.py +11 -0
- homeassistant/components/workday/calendar.py +5 -5
- homeassistant/components/workday/config_flow.py +1 -0
- homeassistant/components/workday/translations/bg.json +5 -0
- homeassistant/components/wyoming/translations/zh-Hant.json +1 -1
- homeassistant/components/xiaomi_aqara/translations/zh-Hant.json +2 -2
- homeassistant/components/xiaomi_miio/translations/fy.json +7 -0
- homeassistant/components/yolink/translations/id.json +9 -0
- homeassistant/components/zha/config_flow.py +20 -1
- homeassistant/components/zha/radio_manager.py +4 -0
- homeassistant/components/zha/strings.json +25 -25
- homeassistant/components/zha/translations/bg.json +55 -7
- homeassistant/components/zha/translations/ca.json +0 -7
- homeassistant/components/zha/translations/cs.json +10 -10
- homeassistant/components/zha/translations/da.json +0 -9
- homeassistant/components/zha/translations/de.json +10 -10
- homeassistant/components/zha/translations/el.json +0 -9
- homeassistant/components/zha/translations/en-GB.json +10 -10
- homeassistant/components/zha/translations/en.json +10 -10
- homeassistant/components/zha/translations/es.json +10 -10
- homeassistant/components/zha/translations/et.json +10 -10
- homeassistant/components/zha/translations/fi.json +0 -9
- homeassistant/components/zha/translations/fr.json +0 -17
- homeassistant/components/zha/translations/ga.json +0 -17
- homeassistant/components/zha/translations/gsw.json +0 -7
- homeassistant/components/zha/translations/hr.json +0 -4
- homeassistant/components/zha/translations/hu.json +0 -9
- homeassistant/components/zha/translations/id.json +0 -9
- homeassistant/components/zha/translations/it.json +0 -9
- homeassistant/components/zha/translations/ja.json +0 -9
- homeassistant/components/zha/translations/ko.json +0 -9
- homeassistant/components/zha/translations/lt.json +10 -10
- homeassistant/components/zha/translations/nb.json +0 -7
- homeassistant/components/zha/translations/nl.json +6 -8
- homeassistant/components/zha/translations/pl.json +20 -8
- homeassistant/components/zha/translations/pt-BR.json +0 -7
- homeassistant/components/zha/translations/pt.json +10 -10
- homeassistant/components/zha/translations/ro.json +0 -7
- homeassistant/components/zha/translations/ru.json +1 -11
- homeassistant/components/zha/translations/sk.json +10 -10
- homeassistant/components/zha/translations/sl.json +0 -9
- homeassistant/components/zha/translations/sv.json +0 -9
- homeassistant/components/zha/translations/tr.json +0 -9
- homeassistant/components/zha/translations/uk.json +0 -7
- homeassistant/components/zha/translations/vi.json +0 -7
- homeassistant/components/zha/translations/zh-Hans.json +0 -17
- homeassistant/components/zha/translations/zh-Hant.json +10 -10
- homeassistant/const.py +1 -1
- homeassistant/generated/integrations.json +27 -4
- homeassistant/package_constraints.txt +1 -1
- homeassistant/util/unit_conversion.py +0 -16
- {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b6.dist-info}/METADATA +1 -1
- {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b6.dist-info}/RECORD +635 -572
- homeassistant/components/homeassistant_sky_connect/translations/hr.json +0 -7
- {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b6.dist-info}/WHEEL +0 -0
- {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b6.dist-info}/entry_points.txt +0 -0
- {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b6.dist-info}/licenses/LICENSE.md +0 -0
- {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b6.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
- {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b6.dist-info}/top_level.txt +0 -0
|
@@ -19,9 +19,10 @@
|
|
|
19
19
|
"flow_title": "{model}",
|
|
20
20
|
"progress": {
|
|
21
21
|
"install_addon": "\u8acb\u7b49\u5f85{addon_name}\u9644\u52a0\u5143\u4ef6\u5b89\u88dd\u5b8c\u6210\u3002\u9019\u53ef\u80fd\u9700\u8981\u5e7e\u5206\u9418\u7684\u6642\u9593\u3002",
|
|
22
|
-
"install_firmware": "\
|
|
22
|
+
"install_firmware": "\u6b63\u5728\u5b89\u88dd {firmware_name} \u97cc\u9ad4\u3002\n\n\u5b89\u88dd\u5b8c\u6210\u524d\uff0c\u8acb\u52ff\u5c0d\u786c\u9ad4\u6216\u8edf\u9ad4\u505a\u4efb\u4f55\u8b8a\u66f4\u3002",
|
|
23
|
+
"install_otbr_addon": "\u6b63\u5728\u5b89\u88dd\u9644\u52a0\u5143\u4ef6",
|
|
23
24
|
"start_addon": "{addon_name}\u9644\u52a0\u5143\u4ef6\u555f\u52d5\u5b8c\u6210\uff0c\u8acb\u7a0d\u5019\u3002\u9019\u53ef\u80fd\u9700\u8981\u5e7e\u79d2\u9418\u3002",
|
|
24
|
-
"start_otbr_addon": "
|
|
25
|
+
"start_otbr_addon": "\u555f\u52d5\u9644\u52a0\u5143\u4ef6"
|
|
25
26
|
},
|
|
26
27
|
"step": {
|
|
27
28
|
"confirm_otbr": {
|
|
@@ -33,8 +34,13 @@
|
|
|
33
34
|
"title": "Zigbee \u8a2d\u5b9a\u5b8c\u6210"
|
|
34
35
|
},
|
|
35
36
|
"install_otbr_addon": {
|
|
36
|
-
"
|
|
37
|
-
|
|
37
|
+
"title": "\u8a2d\u5b9a Thread"
|
|
38
|
+
},
|
|
39
|
+
"install_thread_firmware": {
|
|
40
|
+
"title": "\u66f4\u65b0\u8f49\u63a5\u5668"
|
|
41
|
+
},
|
|
42
|
+
"install_zigbee_firmware": {
|
|
43
|
+
"title": "\u66f4\u65b0\u8f49\u63a5\u5668"
|
|
38
44
|
},
|
|
39
45
|
"otbr_failed": {
|
|
40
46
|
"description": "OpenThread \u908a\u5883\u8def\u7531\u5668\u9644\u52a0\u5143\u4ef6\u5b89\u88dd\u904e\u7a0b\u5931\u6557\u3002\u8acb\u78ba\u5b9a\u6c92\u6709\u5176\u4ed6\u8edf\u9ad4\u6b63\u8a66\u5716\u8207 {model} \u9032\u884c\u901a\u8a0a\u3001\u5df2\u7d93\u5177\u5099\u7db2\u969b\u7db2\u8def\u9023\u7dda\u4e26\u80fd\u5b89\u88dd\u5176\u4ed6\u9644\u52a0\u5143\u4ef6\u4e26\u518d\u8a66\u4e00\u6b21\u3002\u5047\u5982\u9084\u662f\u6709\u5176\u4ed6\u554f\u984c\u7522\u751f\u3001\u8acb\u53c3\u95b1 Supervisor \u65e5\u8a8c\u3002",
|
|
@@ -57,8 +63,7 @@
|
|
|
57
63
|
"title": "\u9078\u64c7\u901a\u8a0a\u5354\u5b9a"
|
|
58
64
|
},
|
|
59
65
|
"start_otbr_addon": {
|
|
60
|
-
"
|
|
61
|
-
"title": "\u6b63\u5728\u555f\u52d5 OpenThread \u908a\u754c\u8def\u7531\u5668\u9644\u52a0\u5143\u4ef6"
|
|
66
|
+
"title": "\u8a2d\u5b9a Thread"
|
|
62
67
|
},
|
|
63
68
|
"zigbee_installation_type": {
|
|
64
69
|
"description": "\u9078\u64c7 Zigbee \u8f49\u63a5\u5668\u7684\u5b89\u88dd\u985e\u578b\u3002",
|
|
@@ -112,9 +117,10 @@
|
|
|
112
117
|
},
|
|
113
118
|
"progress": {
|
|
114
119
|
"install_addon": "\u8acb\u7b49\u5f85{addon_name}\u9644\u52a0\u5143\u4ef6\u5b89\u88dd\u5b8c\u6210\u3002\u9019\u53ef\u80fd\u9700\u8981\u5e7e\u5206\u9418\u7684\u6642\u9593\u3002",
|
|
115
|
-
"install_firmware": "\
|
|
120
|
+
"install_firmware": "\u6b63\u5728\u5b89\u88dd {firmware_name} \u97cc\u9ad4\u3002\n\n\u5b89\u88dd\u5b8c\u6210\u524d\uff0c\u8acb\u52ff\u5c0d\u786c\u9ad4\u6216\u8edf\u9ad4\u505a\u4efb\u4f55\u8b8a\u66f4\u3002",
|
|
121
|
+
"install_otbr_addon": "\u6b63\u5728\u5b89\u88dd\u9644\u52a0\u5143\u4ef6",
|
|
116
122
|
"start_addon": "{addon_name}\u9644\u52a0\u5143\u4ef6\u555f\u52d5\u5b8c\u6210\uff0c\u8acb\u7a0d\u5019\u3002\u9019\u53ef\u80fd\u9700\u8981\u5e7e\u79d2\u9418\u3002",
|
|
117
|
-
"start_otbr_addon": "
|
|
123
|
+
"start_otbr_addon": "\u555f\u52d5\u9644\u52a0\u5143\u4ef6"
|
|
118
124
|
},
|
|
119
125
|
"step": {
|
|
120
126
|
"addon_installed_other_device": {
|
|
@@ -152,8 +158,13 @@
|
|
|
152
158
|
"title": "Silicon Labs Multiprotocol \u9644\u52a0\u5143\u4ef6\u5df2\u555f\u7528\u3002"
|
|
153
159
|
},
|
|
154
160
|
"install_otbr_addon": {
|
|
155
|
-
"
|
|
156
|
-
|
|
161
|
+
"title": "\u8a2d\u5b9a Thread"
|
|
162
|
+
},
|
|
163
|
+
"install_thread_firmware": {
|
|
164
|
+
"title": "\u66f4\u65b0\u8f49\u63a5\u5668"
|
|
165
|
+
},
|
|
166
|
+
"install_zigbee_firmware": {
|
|
167
|
+
"title": "\u66f4\u65b0\u8f49\u63a5\u5668"
|
|
157
168
|
},
|
|
158
169
|
"notify_channel_change": {
|
|
159
170
|
"description": "Zigbee \u8207 Thread \u983b\u9053\u8b8a\u66f4\u8d77\u59cb\u4e2d\uff0c\u6703\u65bc {delay_minutes} \u5206\u9418\u5f8c\u5b8c\u6210\u3002",
|
|
@@ -190,8 +201,7 @@
|
|
|
190
201
|
"title": "Silicon Labs Multiprotocol \u9644\u52a0\u5143\u4ef6\u555f\u7528\u4e2d\u3002"
|
|
191
202
|
},
|
|
192
203
|
"start_otbr_addon": {
|
|
193
|
-
"
|
|
194
|
-
"title": "\u6b63\u5728\u555f\u52d5 OpenThread \u908a\u754c\u8def\u7531\u5668\u9644\u52a0\u5143\u4ef6"
|
|
204
|
+
"title": "\u8a2d\u5b9a Thread"
|
|
195
205
|
},
|
|
196
206
|
"uninstall_addon": {
|
|
197
207
|
"data": {
|
|
@@ -16,6 +16,7 @@ from homeassistant.components.homeassistant_hardware.update import (
|
|
|
16
16
|
from homeassistant.components.homeassistant_hardware.util import (
|
|
17
17
|
ApplicationType,
|
|
18
18
|
FirmwareInfo,
|
|
19
|
+
ResetTarget,
|
|
19
20
|
)
|
|
20
21
|
from homeassistant.components.update import UpdateDeviceClass
|
|
21
22
|
from homeassistant.config_entries import ConfigEntry
|
|
@@ -156,7 +157,7 @@ async def async_setup_entry(
|
|
|
156
157
|
class FirmwareUpdateEntity(BaseFirmwareUpdateEntity):
|
|
157
158
|
"""Connect ZBT-2 firmware update entity."""
|
|
158
159
|
|
|
159
|
-
|
|
160
|
+
bootloader_reset_methods = [ResetTarget.RTS_DTR, ResetTarget.BAUDRATE]
|
|
160
161
|
|
|
161
162
|
def __init__(
|
|
162
163
|
self,
|
|
@@ -39,6 +39,7 @@ from .util import (
|
|
|
39
39
|
FirmwareInfo,
|
|
40
40
|
OwningAddon,
|
|
41
41
|
OwningIntegration,
|
|
42
|
+
ResetTarget,
|
|
42
43
|
async_flash_silabs_firmware,
|
|
43
44
|
get_otbr_addon_manager,
|
|
44
45
|
guess_firmware_info,
|
|
@@ -61,6 +62,13 @@ class PickedFirmwareType(StrEnum):
|
|
|
61
62
|
ZIGBEE = "zigbee"
|
|
62
63
|
|
|
63
64
|
|
|
65
|
+
class ZigbeeFlowStrategy(StrEnum):
|
|
66
|
+
"""Zigbee setup strategies that can be picked."""
|
|
67
|
+
|
|
68
|
+
ADVANCED = "advanced"
|
|
69
|
+
RECOMMENDED = "recommended"
|
|
70
|
+
|
|
71
|
+
|
|
64
72
|
class ZigbeeIntegration(StrEnum):
|
|
65
73
|
"""Zigbee integrations that can be picked."""
|
|
66
74
|
|
|
@@ -72,7 +80,10 @@ class BaseFirmwareInstallFlow(ConfigEntryBaseFlow, ABC):
|
|
|
72
80
|
"""Base flow to install firmware."""
|
|
73
81
|
|
|
74
82
|
ZIGBEE_BAUDRATE = 115200 # Default, subclasses may override
|
|
83
|
+
BOOTLOADER_RESET_METHODS: list[ResetTarget] = [] # Default, subclasses may override
|
|
84
|
+
|
|
75
85
|
_picked_firmware_type: PickedFirmwareType
|
|
86
|
+
_zigbee_flow_strategy: ZigbeeFlowStrategy = ZigbeeFlowStrategy.RECOMMENDED
|
|
76
87
|
|
|
77
88
|
def __init__(self, *args: Any, **kwargs: Any) -> None:
|
|
78
89
|
"""Instantiate base flow."""
|
|
@@ -147,34 +158,6 @@ class BaseFirmwareInstallFlow(ConfigEntryBaseFlow, ABC):
|
|
|
147
158
|
description_placeholders=self._get_translation_placeholders(),
|
|
148
159
|
)
|
|
149
160
|
|
|
150
|
-
async def _probe_firmware_info(
|
|
151
|
-
self,
|
|
152
|
-
probe_methods: tuple[ApplicationType, ...] = (
|
|
153
|
-
# We probe in order of frequency: Zigbee, Thread, then multi-PAN
|
|
154
|
-
ApplicationType.GECKO_BOOTLOADER,
|
|
155
|
-
ApplicationType.EZSP,
|
|
156
|
-
ApplicationType.SPINEL,
|
|
157
|
-
ApplicationType.CPC,
|
|
158
|
-
),
|
|
159
|
-
) -> bool:
|
|
160
|
-
"""Probe the firmware currently on the device."""
|
|
161
|
-
assert self._device is not None
|
|
162
|
-
|
|
163
|
-
self._probed_firmware_info = await probe_silabs_firmware_info(
|
|
164
|
-
self._device,
|
|
165
|
-
probe_methods=probe_methods,
|
|
166
|
-
)
|
|
167
|
-
|
|
168
|
-
return (
|
|
169
|
-
self._probed_firmware_info is not None
|
|
170
|
-
and self._probed_firmware_info.firmware_type
|
|
171
|
-
in (
|
|
172
|
-
ApplicationType.EZSP,
|
|
173
|
-
ApplicationType.SPINEL,
|
|
174
|
-
ApplicationType.CPC,
|
|
175
|
-
)
|
|
176
|
-
)
|
|
177
|
-
|
|
178
161
|
async def _install_firmware_step(
|
|
179
162
|
self,
|
|
180
163
|
fw_update_url: str,
|
|
@@ -228,12 +211,6 @@ class BaseFirmwareInstallFlow(ConfigEntryBaseFlow, ABC):
|
|
|
228
211
|
expected_installed_firmware_type: ApplicationType,
|
|
229
212
|
) -> None:
|
|
230
213
|
"""Install firmware."""
|
|
231
|
-
if not await self._probe_firmware_info():
|
|
232
|
-
raise AbortFlow(
|
|
233
|
-
reason="unsupported_firmware",
|
|
234
|
-
description_placeholders=self._get_translation_placeholders(),
|
|
235
|
-
)
|
|
236
|
-
|
|
237
214
|
assert self._device is not None
|
|
238
215
|
|
|
239
216
|
# Keep track of the firmware we're working with, for error messages
|
|
@@ -242,6 +219,8 @@ class BaseFirmwareInstallFlow(ConfigEntryBaseFlow, ABC):
|
|
|
242
219
|
# Installing new firmware is only truly required if the wrong type is
|
|
243
220
|
# installed: upgrading to the latest release of the current firmware type
|
|
244
221
|
# isn't strictly necessary for functionality.
|
|
222
|
+
self._probed_firmware_info = await probe_silabs_firmware_info(self._device)
|
|
223
|
+
|
|
245
224
|
firmware_install_required = self._probed_firmware_info is None or (
|
|
246
225
|
self._probed_firmware_info.firmware_type != expected_installed_firmware_type
|
|
247
226
|
)
|
|
@@ -293,12 +272,12 @@ class BaseFirmwareInstallFlow(ConfigEntryBaseFlow, ABC):
|
|
|
293
272
|
# Otherwise, fail
|
|
294
273
|
raise AbortFlow(reason="firmware_download_failed") from err
|
|
295
274
|
|
|
296
|
-
await async_flash_silabs_firmware(
|
|
275
|
+
self._probed_firmware_info = await async_flash_silabs_firmware(
|
|
297
276
|
hass=self.hass,
|
|
298
277
|
device=self._device,
|
|
299
278
|
fw_data=fw_data,
|
|
300
279
|
expected_installed_firmware_type=expected_installed_firmware_type,
|
|
301
|
-
|
|
280
|
+
bootloader_reset_methods=self.BOOTLOADER_RESET_METHODS,
|
|
302
281
|
progress_callback=lambda offset, total: self.async_update_progress(
|
|
303
282
|
offset / total
|
|
304
283
|
),
|
|
@@ -306,15 +285,6 @@ class BaseFirmwareInstallFlow(ConfigEntryBaseFlow, ABC):
|
|
|
306
285
|
|
|
307
286
|
async def _configure_and_start_otbr_addon(self) -> None:
|
|
308
287
|
"""Configure and start the OTBR addon."""
|
|
309
|
-
|
|
310
|
-
# Before we start the addon, confirm that the correct firmware is running
|
|
311
|
-
# and populate `self._probed_firmware_info` with the correct information
|
|
312
|
-
if not await self._probe_firmware_info(probe_methods=(ApplicationType.SPINEL,)):
|
|
313
|
-
raise AbortFlow(
|
|
314
|
-
"unsupported_firmware",
|
|
315
|
-
description_placeholders=self._get_translation_placeholders(),
|
|
316
|
-
)
|
|
317
|
-
|
|
318
288
|
otbr_manager = get_otbr_addon_manager(self.hass)
|
|
319
289
|
addon_info = await self._async_get_addon_info(otbr_manager)
|
|
320
290
|
|
|
@@ -395,12 +365,14 @@ class BaseFirmwareInstallFlow(ConfigEntryBaseFlow, ABC):
|
|
|
395
365
|
) -> ConfigFlowResult:
|
|
396
366
|
"""Select recommended installation type."""
|
|
397
367
|
self._zigbee_integration = ZigbeeIntegration.ZHA
|
|
368
|
+
self._zigbee_flow_strategy = ZigbeeFlowStrategy.RECOMMENDED
|
|
398
369
|
return await self._async_continue_picked_firmware()
|
|
399
370
|
|
|
400
371
|
async def async_step_zigbee_intent_custom(
|
|
401
372
|
self, user_input: dict[str, Any] | None = None
|
|
402
373
|
) -> ConfigFlowResult:
|
|
403
374
|
"""Select custom installation type."""
|
|
375
|
+
self._zigbee_flow_strategy = ZigbeeFlowStrategy.ADVANCED
|
|
404
376
|
return await self.async_step_zigbee_integration()
|
|
405
377
|
|
|
406
378
|
async def async_step_zigbee_integration(
|
|
@@ -434,12 +406,12 @@ class BaseFirmwareInstallFlow(ConfigEntryBaseFlow, ABC):
|
|
|
434
406
|
if self._picked_firmware_type == PickedFirmwareType.ZIGBEE:
|
|
435
407
|
return await self.async_step_install_zigbee_firmware()
|
|
436
408
|
|
|
437
|
-
return await self.
|
|
409
|
+
return await self.async_step_install_thread_firmware()
|
|
438
410
|
|
|
439
|
-
async def
|
|
411
|
+
async def async_step_finish_thread_installation(
|
|
440
412
|
self, user_input: dict[str, Any] | None = None
|
|
441
413
|
) -> ConfigFlowResult:
|
|
442
|
-
"""
|
|
414
|
+
"""Finish Thread installation by starting the OTBR addon."""
|
|
443
415
|
if not is_hassio(self.hass):
|
|
444
416
|
return self.async_abort(
|
|
445
417
|
reason="not_hassio_thread",
|
|
@@ -449,22 +421,12 @@ class BaseFirmwareInstallFlow(ConfigEntryBaseFlow, ABC):
|
|
|
449
421
|
otbr_manager = get_otbr_addon_manager(self.hass)
|
|
450
422
|
addon_info = await self._async_get_addon_info(otbr_manager)
|
|
451
423
|
|
|
452
|
-
if addon_info.state == AddonState.RUNNING:
|
|
453
|
-
# Stop the addon before continuing to flash firmware
|
|
454
|
-
await otbr_manager.async_stop_addon()
|
|
455
|
-
|
|
456
|
-
return await self.async_step_install_thread_firmware()
|
|
457
|
-
|
|
458
|
-
async def async_step_finish_thread_installation(
|
|
459
|
-
self, user_input: dict[str, Any] | None = None
|
|
460
|
-
) -> ConfigFlowResult:
|
|
461
|
-
"""Finish Thread installation by starting the OTBR addon."""
|
|
462
|
-
otbr_manager = get_otbr_addon_manager(self.hass)
|
|
463
|
-
addon_info = await self._async_get_addon_info(otbr_manager)
|
|
464
|
-
|
|
465
424
|
if addon_info.state == AddonState.NOT_INSTALLED:
|
|
466
425
|
return await self.async_step_install_otbr_addon()
|
|
467
426
|
|
|
427
|
+
if addon_info.state == AddonState.RUNNING:
|
|
428
|
+
await otbr_manager.async_stop_addon()
|
|
429
|
+
|
|
468
430
|
return await self.async_step_start_otbr_addon()
|
|
469
431
|
|
|
470
432
|
async def async_step_pick_firmware_zigbee(
|
|
@@ -501,12 +463,6 @@ class BaseFirmwareInstallFlow(ConfigEntryBaseFlow, ABC):
|
|
|
501
463
|
assert self._device is not None
|
|
502
464
|
assert self._hardware_name is not None
|
|
503
465
|
|
|
504
|
-
if not await self._probe_firmware_info(probe_methods=(ApplicationType.EZSP,)):
|
|
505
|
-
return self.async_abort(
|
|
506
|
-
reason="unsupported_firmware",
|
|
507
|
-
description_placeholders=self._get_translation_placeholders(),
|
|
508
|
-
)
|
|
509
|
-
|
|
510
466
|
if self._zigbee_integration == ZigbeeIntegration.OTHER:
|
|
511
467
|
return self._async_flow_finished()
|
|
512
468
|
|
|
@@ -521,6 +477,7 @@ class BaseFirmwareInstallFlow(ConfigEntryBaseFlow, ABC):
|
|
|
521
477
|
"flow_control": "hardware",
|
|
522
478
|
},
|
|
523
479
|
"radio_type": "ezsp",
|
|
480
|
+
"flow_strategy": self._zigbee_flow_strategy,
|
|
524
481
|
},
|
|
525
482
|
)
|
|
526
483
|
return self._continue_zha_flow(result)
|
|
@@ -23,12 +23,16 @@
|
|
|
23
23
|
"description": "Your {model} is now a Zigbee coordinator and will be shown as discovered by the Zigbee Home Automation integration."
|
|
24
24
|
},
|
|
25
25
|
"install_otbr_addon": {
|
|
26
|
-
"title": "
|
|
27
|
-
|
|
26
|
+
"title": "Configuring Thread"
|
|
27
|
+
},
|
|
28
|
+
"install_thread_firmware": {
|
|
29
|
+
"title": "Updating adapter"
|
|
30
|
+
},
|
|
31
|
+
"install_zigbee_firmware": {
|
|
32
|
+
"title": "Updating adapter"
|
|
28
33
|
},
|
|
29
34
|
"start_otbr_addon": {
|
|
30
|
-
"title": "
|
|
31
|
-
"description": "The OpenThread Border Router (OTBR) add-on is now starting."
|
|
35
|
+
"title": "Configuring Thread"
|
|
32
36
|
},
|
|
33
37
|
"otbr_failed": {
|
|
34
38
|
"title": "Failed to set up OpenThread Border Router",
|
|
@@ -72,7 +76,9 @@
|
|
|
72
76
|
"fw_install_failed": "{firmware_name} firmware failed to install, check Home Assistant logs for more information."
|
|
73
77
|
},
|
|
74
78
|
"progress": {
|
|
75
|
-
"install_firmware": "
|
|
79
|
+
"install_firmware": "Installing {firmware_name} firmware.\n\nDo not make any changes to your hardware or software until this finishes.",
|
|
80
|
+
"install_otbr_addon": "Installing add-on",
|
|
81
|
+
"start_otbr_addon": "Starting add-on"
|
|
76
82
|
}
|
|
77
83
|
}
|
|
78
84
|
},
|
|
@@ -1,4 +1,44 @@
|
|
|
1
1
|
{
|
|
2
|
+
"firmware_picker": {
|
|
3
|
+
"options": {
|
|
4
|
+
"step": {
|
|
5
|
+
"pick_firmware": {
|
|
6
|
+
"menu_option_descriptions": {
|
|
7
|
+
"pick_firmware_thread_migrate": "\u0422\u043e\u0432\u0430 \u0449\u0435 \u043c\u0438\u0433\u0440\u0438\u0440\u0430 \u0432\u0430\u0448\u0438\u044f Thread Border Router \u043a\u044a\u043c \u043d\u043e\u0432\u0438\u044f \u0430\u0434\u0430\u043f\u0442\u0435\u0440.",
|
|
8
|
+
"pick_firmware_zigbee": "\u041d\u0430\u0439-\u0447\u0435\u0441\u0442\u043e \u0441\u0440\u0435\u0449\u0430\u043d\u0438\u044f\u0442 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b.",
|
|
9
|
+
"pick_firmware_zigbee_migrate": "\u0422\u043e\u0432\u0430 \u0449\u0435 \u043f\u0440\u0435\u043c\u0435\u0441\u0442\u0438 \u0432\u0430\u0448\u0430\u0442\u0430 Zigbee \u043c\u0440\u0435\u0436\u0430 \u043a\u044a\u043c \u043d\u043e\u0432\u0438\u044f \u0430\u0434\u0430\u043f\u0442\u0435\u0440."
|
|
10
|
+
},
|
|
11
|
+
"menu_options": {
|
|
12
|
+
"pick_firmware_thread_migrate": "\u041c\u0438\u0433\u0440\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 Thread \u043a\u044a\u043c \u043d\u043e\u0432 \u0430\u0434\u0430\u043f\u0442\u0435\u0440",
|
|
13
|
+
"pick_firmware_zigbee_migrate": "\u041c\u0438\u0433\u0440\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 Zigbee \u043a\u044a\u043c \u043d\u043e\u0432 \u0430\u0434\u0430\u043f\u0442\u0435\u0440"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"zigbee_installation_type": {
|
|
17
|
+
"description": "\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u0442\u0438\u043f\u0430 \u043d\u0430 \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f \u0437\u0430 \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0430 Zigbee.",
|
|
18
|
+
"menu_option_descriptions": {
|
|
19
|
+
"zigbee_intent_custom": "\u0420\u044a\u0447\u043d\u043e \u0438\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043d\u0435 \u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 Zigbee, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0441\u044a\u0441 Zigbee2MQTT.",
|
|
20
|
+
"zigbee_intent_recommended": "\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0438\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043d\u0435 \u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 Zigbee."
|
|
21
|
+
},
|
|
22
|
+
"menu_options": {
|
|
23
|
+
"zigbee_intent_custom": "\u041f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043da",
|
|
24
|
+
"zigbee_intent_recommended": "\u041f\u0440\u0435\u043f\u043e\u0440\u044a\u0447\u0438\u0442\u0435\u043b\u043d\u0430 \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f"
|
|
25
|
+
},
|
|
26
|
+
"title": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043d\u0430 Zigbee"
|
|
27
|
+
},
|
|
28
|
+
"zigbee_integration": {
|
|
29
|
+
"menu_option_descriptions": {
|
|
30
|
+
"zigbee_integration_other": "\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0430\u043a\u043e \u0438\u0441\u043a\u0430\u0442\u0435 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442\u0435 \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0430 \u0441\u044a\u0441 Zigbee2MQTT.",
|
|
31
|
+
"zigbee_integration_zha": "\u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 \u043d\u0430 Home Assistant \u0434\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0430 Zigbee \u043c\u0440\u0435\u0436\u0430\u0442\u0430."
|
|
32
|
+
},
|
|
33
|
+
"menu_options": {
|
|
34
|
+
"zigbee_integration_other": "\u0414\u0440\u0443\u0433",
|
|
35
|
+
"zigbee_integration_zha": "Zigbee Home Automation"
|
|
36
|
+
},
|
|
37
|
+
"title": "\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 Zigbee \u043c\u0435\u0442\u043e\u0434"
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
},
|
|
2
42
|
"silabs_multiprotocol_hardware": {
|
|
3
43
|
"options": {
|
|
4
44
|
"abort": {
|
|
@@ -10,14 +10,6 @@
|
|
|
10
10
|
},
|
|
11
11
|
"confirm_zigbee": {
|
|
12
12
|
"title": "S'ha completat la configuraci\u00f3 de Zigbee"
|
|
13
|
-
},
|
|
14
|
-
"install_otbr_addon": {
|
|
15
|
-
"description": "El complement OpenThread Border Router (OTBR) s'est\u00e0 instal\u00b7lant.",
|
|
16
|
-
"title": "Instal\u00b7lant el complement OpenThread Border Router"
|
|
17
|
-
},
|
|
18
|
-
"start_otbr_addon": {
|
|
19
|
-
"description": "El complement OpenThread Border Router (OTBR) s'est\u00e0 iniciant.",
|
|
20
|
-
"title": "Iniciant complement OpenThread Border Router"
|
|
21
13
|
}
|
|
22
14
|
}
|
|
23
15
|
}
|
|
@@ -11,7 +11,9 @@
|
|
|
11
11
|
"zha_still_using_stick": "Tento {model} je pou\u017e\u00edv\u00e1n integrac\u00ed Zigbee Home Automation. Prove\u010fte migraci s\u00edt\u011b Zigbee na jin\u00fd adapt\u00e9r nebo sma\u017ete integraci a zkuste to znovu."
|
|
12
12
|
},
|
|
13
13
|
"progress": {
|
|
14
|
-
"install_firmware": "
|
|
14
|
+
"install_firmware": "Instalov\u00e1n\u00ed firmwaru {firmware_name}.\n\nNeprov\u00e1d\u011bjte \u017e\u00e1dn\u00e9 zm\u011bny hardwaru ani softwaru, dokud tato instalace nebude dokon\u010dena.",
|
|
15
|
+
"install_otbr_addon": "Instalov\u00e1n\u00ed dopl\u0148ku",
|
|
16
|
+
"start_otbr_addon": "Spou\u0161t\u011bn\u00ed dopl\u0148ku"
|
|
15
17
|
},
|
|
16
18
|
"step": {
|
|
17
19
|
"confirm_otbr": {
|
|
@@ -23,8 +25,13 @@
|
|
|
23
25
|
"title": "Nastaven\u00ed Zigbee dokon\u010deno"
|
|
24
26
|
},
|
|
25
27
|
"install_otbr_addon": {
|
|
26
|
-
"
|
|
27
|
-
|
|
28
|
+
"title": "Nastavov\u00e1n\u00ed Thread"
|
|
29
|
+
},
|
|
30
|
+
"install_thread_firmware": {
|
|
31
|
+
"title": "Aktualizov\u00e1n\u00ed adapt\u00e9ru"
|
|
32
|
+
},
|
|
33
|
+
"install_zigbee_firmware": {
|
|
34
|
+
"title": "Aktualizov\u00e1n\u00ed adapt\u00e9ru"
|
|
28
35
|
},
|
|
29
36
|
"otbr_failed": {
|
|
30
37
|
"description": "Instalace dopl\u0148ku OpenThread Border Router se nezda\u0159ila. Ujist\u011bte se, \u017ee se \u017e\u00e1dn\u00fd jin\u00fd software nepokou\u0161\u00ed komunikovat s {model}, m\u00e1te p\u0159\u00edstup k internetu a m\u016f\u017eete nainstalovat dal\u0161\u00ed dopl\u0148ky, a zkuste to znovu. Pokud probl\u00e9m p\u0159etrv\u00e1v\u00e1, zkontrolujte logy Supervizora.",
|
|
@@ -47,8 +54,7 @@
|
|
|
47
54
|
"title": "Vyberte si protokol"
|
|
48
55
|
},
|
|
49
56
|
"start_otbr_addon": {
|
|
50
|
-
"
|
|
51
|
-
"title": "Dopln\u011bk Silicon Labs Flasher se spou\u0161t\u00ed"
|
|
57
|
+
"title": "Nastavov\u00e1n\u00ed Thread"
|
|
52
58
|
},
|
|
53
59
|
"zigbee_installation_type": {
|
|
54
60
|
"description": "Vyberte typ instalace pro adapt\u00e9r Zigbee.",
|
|
@@ -11,7 +11,9 @@
|
|
|
11
11
|
"zha_still_using_stick": "Dieses {model} wird von der Zigbee Home Automation-Integration verwendet. Bitte migriere dein Zigbee-Netzwerk auf einen anderen Adapter oder l\u00f6sche die Integration und versuche es erneut."
|
|
12
12
|
},
|
|
13
13
|
"progress": {
|
|
14
|
-
"install_firmware": "
|
|
14
|
+
"install_firmware": "{firmware_name}-Firmware wird installiert. \n \nNimm keine \u00c4nderungen an deiner Hardware oder Software vor, bis der Vorgang abgeschlossen ist.",
|
|
15
|
+
"install_otbr_addon": "Add-on wird installiert",
|
|
16
|
+
"start_otbr_addon": "Add-on wird gestartet"
|
|
15
17
|
},
|
|
16
18
|
"step": {
|
|
17
19
|
"confirm_otbr": {
|
|
@@ -23,8 +25,13 @@
|
|
|
23
25
|
"title": "Zigbee-Einrichtung abgeschlossen"
|
|
24
26
|
},
|
|
25
27
|
"install_otbr_addon": {
|
|
26
|
-
"
|
|
27
|
-
|
|
28
|
+
"title": "Thread wird konfiguriert"
|
|
29
|
+
},
|
|
30
|
+
"install_thread_firmware": {
|
|
31
|
+
"title": "Adapter wird aktualisiert"
|
|
32
|
+
},
|
|
33
|
+
"install_zigbee_firmware": {
|
|
34
|
+
"title": "Adapter wird aktualisiert"
|
|
28
35
|
},
|
|
29
36
|
"otbr_failed": {
|
|
30
37
|
"description": "Die Installation des OpenThread Border Router-Add-ons war nicht erfolgreich. Stelle sicher, dass keine andere Software versucht, mit {model} zu kommunizieren, dass du Zugriff auf das Internet hast und andere Add-ons installieren kannst, und versuche es erneut. \u00dcberpr\u00fcfe die Supervisor-Protokolle, wenn das Problem weiterhin besteht.",
|
|
@@ -47,8 +54,7 @@
|
|
|
47
54
|
"title": "W\u00e4hle dein Protokoll"
|
|
48
55
|
},
|
|
49
56
|
"start_otbr_addon": {
|
|
50
|
-
"
|
|
51
|
-
"title": "OpenThread Border Router-Add-on starten"
|
|
57
|
+
"title": "Thread wird konfiguriert"
|
|
52
58
|
},
|
|
53
59
|
"zigbee_installation_type": {
|
|
54
60
|
"description": "W\u00e4hle den Installationstyp f\u00fcr den Zigbee-Adapter.",
|
|
@@ -10,9 +10,6 @@
|
|
|
10
10
|
"unsupported_firmware": "\u03a4\u03bf \u03c5\u03bb\u03b9\u03ba\u03bf\u03bb\u03bf\u03b3\u03b9\u03c3\u03bc\u03b9\u03ba\u03cc \u03c4\u03bf\u03c5 \u03c0\u03bf\u03bc\u03c0\u03bf\u03b4\u03ad\u03ba\u03c4\u03b7 \u03c3\u03c4\u03bf {model} \u03c3\u03b1\u03c2 \u03b4\u03b5\u03bd \u03bc\u03c0\u03cc\u03c1\u03b5\u03c3\u03b5 \u03bd\u03b1 \u03c0\u03c1\u03bf\u03c3\u03b4\u03b9\u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af. \u0392\u03b5\u03b2\u03b1\u03b9\u03c9\u03b8\u03b5\u03af\u03c4\u03b5 \u03cc\u03c4\u03b9 \u03ba\u03b1\u03bc\u03af\u03b1 \u03ac\u03bb\u03bb\u03b7 \u03b5\u03bd\u03c3\u03c9\u03bc\u03ac\u03c4\u03c9\u03c3\u03b7 \u03ae \u03c0\u03c1\u03cc\u03c3\u03b8\u03b5\u03c4\u03bf \u03b4\u03b5\u03bd \u03c0\u03c1\u03bf\u03c3\u03c0\u03b1\u03b8\u03b5\u03af \u03bd\u03b1 \u03b5\u03c0\u03b9\u03ba\u03bf\u03b9\u03bd\u03c9\u03bd\u03ae\u03c3\u03b5\u03b9 \u03bc\u03b5 \u03c4\u03b7 \u03c3\u03c5\u03c3\u03ba\u03b5\u03c5\u03ae. \u0395\u03ac\u03bd \u03b5\u03ba\u03c4\u03b5\u03bb\u03b5\u03af\u03c4\u03b5 \u03c4\u03bf Home Assistant OS \u03c3\u03b5 \u03bc\u03b9\u03b1 \u03b5\u03b9\u03ba\u03bf\u03bd\u03b9\u03ba\u03ae \u03bc\u03b7\u03c7\u03b1\u03bd\u03ae \u03ae \u03c3\u03b5 Docker, \u03c0\u03b1\u03c1\u03b1\u03ba\u03b1\u03bb\u03ce \u03b2\u03b5\u03b2\u03b1\u03b9\u03c9\u03b8\u03b5\u03af\u03c4\u03b5 \u03cc\u03c4\u03b9 \u03c4\u03b1 \u03b4\u03b9\u03ba\u03b1\u03b9\u03ce\u03bc\u03b1\u03c4\u03b1 \u03ad\u03c7\u03bf\u03c5\u03bd \u03bf\u03c1\u03b9\u03c3\u03c4\u03b5\u03af \u03c3\u03c9\u03c3\u03c4\u03ac \u03b3\u03b9\u03b1 \u03c4\u03b7 \u03c3\u03c5\u03c3\u03ba\u03b5\u03c5\u03ae.",
|
|
11
11
|
"zha_still_using_stick": "\u0391\u03c5\u03c4\u03cc \u03c4\u03bf {model} \u03c7\u03c1\u03b7\u03c3\u03b9\u03bc\u03bf\u03c0\u03bf\u03b9\u03b5\u03af\u03c4\u03b1\u03b9 \u03b1\u03c0\u03cc \u03c4\u03b7\u03bd \u03b5\u03bd\u03c3\u03c9\u03bc\u03ac\u03c4\u03c9\u03c3\u03b7 Zigbee Home Automation. \u03a0\u03b1\u03c1\u03b1\u03ba\u03b1\u03bb\u03ce \u03bc\u03b5\u03c4\u03b5\u03b3\u03ba\u03b1\u03c4\u03b1\u03c3\u03c4\u03ae\u03c3\u03c4\u03b5 \u03c4\u03bf \u03b4\u03af\u03ba\u03c4\u03c5\u03cc \u03c3\u03b1\u03c2 Zigbee \u03c3\u03b5 \u03ac\u03bb\u03bb\u03bf\u03bd \u03c0\u03c1\u03bf\u03c3\u03b1\u03c1\u03bc\u03bf\u03b3\u03ad\u03b1 \u03ae \u03b4\u03b9\u03b1\u03b3\u03c1\u03ac\u03c8\u03c4\u03b5 \u03c4\u03b7\u03bd \u03b5\u03bd\u03c3\u03c9\u03bc\u03ac\u03c4\u03c9\u03c3\u03b7 \u03ba\u03b1\u03b9 \u03b4\u03bf\u03ba\u03b9\u03bc\u03ac\u03c3\u03c4\u03b5 \u03be\u03b1\u03bd\u03ac."
|
|
12
12
|
},
|
|
13
|
-
"progress": {
|
|
14
|
-
"install_firmware": "\u03a0\u03b1\u03c1\u03b1\u03ba\u03b1\u03bb\u03ce \u03c0\u03b5\u03c1\u03b9\u03bc\u03ad\u03bd\u03b5\u03c4\u03b5 \u03bc\u03ad\u03c7\u03c1\u03b9 \u03bd\u03b1 \u03b5\u03b3\u03ba\u03b1\u03c4\u03b1\u03c3\u03c4\u03b1\u03b8\u03b5\u03af \u03c4\u03bf \u03c5\u03bb\u03b9\u03ba\u03bf\u03bb\u03bf\u03b3\u03b9\u03c3\u03bc\u03b9\u03ba\u03cc {firmware_name} \u03c3\u03c4\u03bf {model} \u03c3\u03b1\u03c2, \u03b1\u03c5\u03c4\u03cc \u03b8\u03b1 \u03b4\u03b9\u03b1\u03c1\u03ba\u03ad\u03c3\u03b5\u03b9 \u03bc\u03b5\u03c1\u03b9\u03ba\u03ac \u03bb\u03b5\u03c0\u03c4\u03ac. \u039c\u03b7\u03bd \u03ba\u03ac\u03bd\u03b5\u03c4\u03b5 \u03ba\u03b1\u03bc\u03af\u03b1 \u03b1\u03bb\u03bb\u03b1\u03b3\u03ae \u03c3\u03c4\u03bf \u03c5\u03bb\u03b9\u03ba\u03cc \u03ae \u03c4\u03bf \u03bb\u03bf\u03b3\u03b9\u03c3\u03bc\u03b9\u03ba\u03cc \u03c3\u03b1\u03c2 \u03bc\u03ad\u03c7\u03c1\u03b9 \u03bd\u03b1 \u03bf\u03bb\u03bf\u03ba\u03bb\u03b7\u03c1\u03c9\u03b8\u03b5\u03af \u03b7 \u03b5\u03b3\u03ba\u03b1\u03c4\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7."
|
|
15
|
-
},
|
|
16
13
|
"step": {
|
|
17
14
|
"confirm_otbr": {
|
|
18
15
|
"description": "\u03a4\u03bf {model} \u03c3\u03b1\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03c0\u03bb\u03ad\u03bf\u03bd \u03ad\u03bd\u03b1 OpenThread Border Router \u03ba\u03b1\u03b9 \u03b8\u03b1 \u03b5\u03bc\u03c6\u03b1\u03bd\u03b9\u03c3\u03c4\u03b5\u03af \u03c3\u03c4\u03b7\u03bd \u03b5\u03bd\u03c3\u03c9\u03bc\u03ac\u03c4\u03c9\u03c3\u03b7 Thread.",
|
|
@@ -22,17 +19,9 @@
|
|
|
22
19
|
"description": "\u03a4\u03bf {model} \u03c3\u03b1\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03c4\u03ce\u03c1\u03b1 \u03ad\u03bd\u03b1\u03c2 \u03c3\u03c5\u03bd\u03c4\u03bf\u03bd\u03b9\u03c3\u03c4\u03ae\u03c2 Zigbee \u03ba\u03b1\u03b9 \u03b8\u03b1 \u03b5\u03bc\u03c6\u03b1\u03bd\u03b9\u03c3\u03c4\u03b5\u03af \u03c9\u03c2 \u03b1\u03bd\u03b1\u03ba\u03b1\u03bb\u03c5\u03c6\u03b8\u03ad\u03bd \u03b1\u03c0\u03cc \u03c4\u03b7\u03bd \u03b5\u03bd\u03c3\u03c9\u03bc\u03ac\u03c4\u03c9\u03c3\u03b7 Zigbee Home Automation.",
|
|
23
20
|
"title": "\u0397 \u03c1\u03cd\u03b8\u03bc\u03b9\u03c3\u03b7 \u03c4\u03bf\u03c5 Zigbee \u03bf\u03bb\u03bf\u03ba\u03bb\u03b7\u03c1\u03ce\u03b8\u03b7\u03ba\u03b5"
|
|
24
21
|
},
|
|
25
|
-
"install_otbr_addon": {
|
|
26
|
-
"description": "\u03a4\u03bf \u03c0\u03c1\u03cc\u03c3\u03b8\u03b5\u03c4\u03bf OpenThread Border Router (OTBR) \u03b5\u03b3\u03ba\u03b1\u03b8\u03af\u03c3\u03c4\u03b1\u03c4\u03b1\u03b9.",
|
|
27
|
-
"title": "\u0395\u03b3\u03ba\u03b1\u03c4\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c0\u03c1\u03cc\u03c3\u03b8\u03b5\u03c4\u03bf\u03c5 OpenThread Border Router"
|
|
28
|
-
},
|
|
29
22
|
"otbr_failed": {
|
|
30
23
|
"description": "\u0397 \u03b5\u03b3\u03ba\u03b1\u03c4\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c0\u03c1\u03cc\u03c3\u03b8\u03b5\u03c4\u03bf\u03c5 OpenThread Border Router \u03b4\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b5\u03c0\u03b9\u03c4\u03c5\u03c7\u03ae\u03c2. \u0392\u03b5\u03b2\u03b1\u03b9\u03c9\u03b8\u03b5\u03af\u03c4\u03b5 \u03cc\u03c4\u03b9 \u03ba\u03b1\u03bd\u03ad\u03bd\u03b1 \u03ac\u03bb\u03bb\u03bf \u03bb\u03bf\u03b3\u03b9\u03c3\u03bc\u03b9\u03ba\u03cc \u03b4\u03b5\u03bd \u03c0\u03c1\u03bf\u03c3\u03c0\u03b1\u03b8\u03b5\u03af \u03bd\u03b1 \u03b5\u03c0\u03b9\u03ba\u03bf\u03b9\u03bd\u03c9\u03bd\u03ae\u03c3\u03b5\u03b9 \u03bc\u03b5 \u03c4\u03bf {model}, \u03cc\u03c4\u03b9 \u03ad\u03c7\u03b5\u03c4\u03b5 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7 \u03c3\u03c4\u03bf Internet \u03ba\u03b1\u03b9 \u03cc\u03c4\u03b9 \u03bc\u03c0\u03bf\u03c1\u03b5\u03af\u03c4\u03b5 \u03bd\u03b1 \u03b5\u03b3\u03ba\u03b1\u03c4\u03b1\u03c3\u03c4\u03ae\u03c3\u03b5\u03c4\u03b5 \u03ac\u03bb\u03bb\u03b1 \u03c0\u03c1\u03cc\u03c3\u03b8\u03b5\u03c4\u03b1 \u03ba\u03b1\u03b9 \u03c0\u03c1\u03bf\u03c3\u03c0\u03b1\u03b8\u03ae\u03c3\u03c4\u03b5 \u03be\u03b1\u03bd\u03ac. \u0395\u03bb\u03ad\u03b3\u03be\u03c4\u03b5 \u03c4\u03b1 \u03b1\u03c1\u03c7\u03b5\u03af\u03b1 \u03ba\u03b1\u03c4\u03b1\u03b3\u03c1\u03b1\u03c6\u03ae\u03c2 \u03b5\u03c0\u03cc\u03c0\u03c4\u03b7 \u03b5\u03ac\u03bd \u03c4\u03bf \u03c0\u03c1\u03cc\u03b2\u03bb\u03b7\u03bc\u03b1 \u03c0\u03b1\u03c1\u03b1\u03bc\u03ad\u03bd\u03b5\u03b9.",
|
|
31
24
|
"title": "\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c1\u03cd\u03b8\u03bc\u03b9\u03c3\u03b7\u03c2 \u03c4\u03bf\u03c5 OpenThread Border Router"
|
|
32
|
-
},
|
|
33
|
-
"start_otbr_addon": {
|
|
34
|
-
"description": "\u03a4\u03bf \u03c0\u03c1\u03cc\u03c3\u03b8\u03b5\u03c4\u03bf OpenThread Border Router (OTBR) \u03be\u03b5\u03ba\u03b9\u03bd\u03ac \u03c4\u03ce\u03c1\u03b1.",
|
|
35
|
-
"title": "\u0395\u03ba\u03ba\u03af\u03bd\u03b7\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03c0\u03c1\u03cc\u03c3\u03b8\u03b5\u03c4\u03bf\u03c5 OpenThread Border Router"
|
|
36
25
|
}
|
|
37
26
|
}
|
|
38
27
|
}
|
|
@@ -11,7 +11,9 @@
|
|
|
11
11
|
"zha_still_using_stick": "This {model} is in use by the Zigbee Home Automation integration. Please migrate your Zigbee network to another adapter or delete the integration and try again."
|
|
12
12
|
},
|
|
13
13
|
"progress": {
|
|
14
|
-
"install_firmware": "
|
|
14
|
+
"install_firmware": "Installing {firmware_name} firmware.\n\nDo not make any changes to your hardware or software until this finishes.",
|
|
15
|
+
"install_otbr_addon": "Installing add-on",
|
|
16
|
+
"start_otbr_addon": "Starting add-on"
|
|
15
17
|
},
|
|
16
18
|
"step": {
|
|
17
19
|
"confirm_otbr": {
|
|
@@ -23,8 +25,13 @@
|
|
|
23
25
|
"title": "Zigbee setup complete"
|
|
24
26
|
},
|
|
25
27
|
"install_otbr_addon": {
|
|
26
|
-
"
|
|
27
|
-
|
|
28
|
+
"title": "Configuring Thread"
|
|
29
|
+
},
|
|
30
|
+
"install_thread_firmware": {
|
|
31
|
+
"title": "Updating adapter"
|
|
32
|
+
},
|
|
33
|
+
"install_zigbee_firmware": {
|
|
34
|
+
"title": "Updating adapter"
|
|
28
35
|
},
|
|
29
36
|
"otbr_failed": {
|
|
30
37
|
"description": "The OpenThread Border Router add-on installation was unsuccessful. Ensure no other software is trying to communicate with the {model}, you have access to the Internet and can install other add-ons, and try again. Check the Supervisor logs if the problem persists.",
|
|
@@ -47,8 +54,7 @@
|
|
|
47
54
|
"title": "Pick your protocol"
|
|
48
55
|
},
|
|
49
56
|
"start_otbr_addon": {
|
|
50
|
-
"
|
|
51
|
-
"title": "Starting OpenThread Border Router add-on"
|
|
57
|
+
"title": "Configuring Thread"
|
|
52
58
|
},
|
|
53
59
|
"zigbee_installation_type": {
|
|
54
60
|
"description": "Choose the installation type for the Zigbee adapter.",
|
|
@@ -11,7 +11,9 @@
|
|
|
11
11
|
"zha_still_using_stick": "This {model} is in use by the Zigbee Home Automation integration. Please migrate your Zigbee network to another adapter or delete the integration and try again."
|
|
12
12
|
},
|
|
13
13
|
"progress": {
|
|
14
|
-
"install_firmware": "
|
|
14
|
+
"install_firmware": "Installing {firmware_name} firmware.\n\nDo not make any changes to your hardware or software until this finishes.",
|
|
15
|
+
"install_otbr_addon": "Installing add-on",
|
|
16
|
+
"start_otbr_addon": "Starting add-on"
|
|
15
17
|
},
|
|
16
18
|
"step": {
|
|
17
19
|
"confirm_otbr": {
|
|
@@ -23,8 +25,13 @@
|
|
|
23
25
|
"title": "Zigbee setup complete"
|
|
24
26
|
},
|
|
25
27
|
"install_otbr_addon": {
|
|
26
|
-
"
|
|
27
|
-
|
|
28
|
+
"title": "Configuring Thread"
|
|
29
|
+
},
|
|
30
|
+
"install_thread_firmware": {
|
|
31
|
+
"title": "Updating adapter"
|
|
32
|
+
},
|
|
33
|
+
"install_zigbee_firmware": {
|
|
34
|
+
"title": "Updating adapter"
|
|
28
35
|
},
|
|
29
36
|
"otbr_failed": {
|
|
30
37
|
"description": "The OpenThread Border Router add-on installation was unsuccessful. Ensure no other software is trying to communicate with the {model}, you have access to the Internet and can install other add-ons, and try again. Check the Supervisor logs if the problem persists.",
|
|
@@ -47,8 +54,7 @@
|
|
|
47
54
|
"title": "Pick your protocol"
|
|
48
55
|
},
|
|
49
56
|
"start_otbr_addon": {
|
|
50
|
-
"
|
|
51
|
-
"title": "Starting OpenThread Border Router add-on"
|
|
57
|
+
"title": "Configuring Thread"
|
|
52
58
|
},
|
|
53
59
|
"zigbee_installation_type": {
|
|
54
60
|
"description": "Choose the installation type for the Zigbee adapter.",
|
|
@@ -11,7 +11,9 @@
|
|
|
11
11
|
"zha_still_using_stick": "{model} est\u00e1 en uso por la integraci\u00f3n de Zigbee Home Automation. Por favor, migra tu red Zigbee a otro adaptador o elimina la integraci\u00f3n e int\u00e9ntalo de nuevo."
|
|
12
12
|
},
|
|
13
13
|
"progress": {
|
|
14
|
-
"install_firmware": "
|
|
14
|
+
"install_firmware": "Instalando el firmware {firmware_name}. \n \nNo realices ning\u00fan cambio en tu hardware o software hasta que esto finalice.",
|
|
15
|
+
"install_otbr_addon": "Instalando el complemento",
|
|
16
|
+
"start_otbr_addon": "Iniciando el complemento"
|
|
15
17
|
},
|
|
16
18
|
"step": {
|
|
17
19
|
"confirm_otbr": {
|
|
@@ -23,8 +25,13 @@
|
|
|
23
25
|
"title": "Configuraci\u00f3n de Zigbee completa"
|
|
24
26
|
},
|
|
25
27
|
"install_otbr_addon": {
|
|
26
|
-
"
|
|
27
|
-
|
|
28
|
+
"title": "Configuraci\u00f3n de Thread"
|
|
29
|
+
},
|
|
30
|
+
"install_thread_firmware": {
|
|
31
|
+
"title": "Actualizaci\u00f3n del adaptador"
|
|
32
|
+
},
|
|
33
|
+
"install_zigbee_firmware": {
|
|
34
|
+
"title": "Actualizaci\u00f3n del adaptador"
|
|
28
35
|
},
|
|
29
36
|
"otbr_failed": {
|
|
30
37
|
"description": "La instalaci\u00f3n del complemento OpenThread Border Router no se realiz\u00f3 correctamente. Aseg\u00farate de que ning\u00fan otro software intente comunicarse con {model}, de que tengas acceso a Internet y de que puedas instalar otros complementos, e int\u00e9ntalo de nuevo. Si el problema persiste, revisa los registros del Supervisor.",
|
|
@@ -47,8 +54,7 @@
|
|
|
47
54
|
"title": "Elige tu protocolo"
|
|
48
55
|
},
|
|
49
56
|
"start_otbr_addon": {
|
|
50
|
-
"
|
|
51
|
-
"title": "Iniciando el complemento OpenThread Border Router"
|
|
57
|
+
"title": "Configuraci\u00f3n de Thread"
|
|
52
58
|
},
|
|
53
59
|
"zigbee_installation_type": {
|
|
54
60
|
"description": "Elige el tipo de instalaci\u00f3n para el adaptador Zigbee.",
|