homeassistant 2025.7.0b5__py3-none-any.whl → 2025.7.0b7__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.
- homeassistant/components/accuweather/translations/it.json +31 -6
- homeassistant/components/accuweather/translations/nl.json +4 -2
- homeassistant/components/ai_task/translations/nl.json +11 -1
- homeassistant/components/airgradient/translations/it.json +11 -1
- homeassistant/components/airzone/translations/it.json +1 -1
- homeassistant/components/airzone_cloud/translations/it.json +7 -0
- homeassistant/components/alexa_devices/translations/id.json +14 -0
- homeassistant/components/alexa_devices/translations/it.json +53 -0
- homeassistant/components/alexa_devices/translations/nl.json +23 -0
- homeassistant/components/altruist/translations/id.json +7 -0
- homeassistant/components/altruist/translations/it.json +51 -0
- homeassistant/components/anthropic/__init__.py +30 -0
- homeassistant/components/anthropic/config_flow.py +1 -0
- homeassistant/components/anthropic/translations/nl.json +1 -0
- homeassistant/components/aprilaire/translations/it.json +14 -14
- homeassistant/components/aquacell/translations/it.json +6 -1
- homeassistant/components/aranet/translations/it.json +9 -0
- homeassistant/components/assist_satellite/translations/es.json +1 -1
- homeassistant/components/assist_satellite/translations/it.json +30 -0
- homeassistant/components/automation/translations/it.json +2 -2
- homeassistant/components/baf/translations/it.json +11 -0
- homeassistant/components/balboa/translations/it.json +5 -1
- homeassistant/components/binary_sensor/translations/es.json +3 -3
- homeassistant/components/binary_sensor/translations/it.json +13 -6
- homeassistant/components/blue_current/translations/it.json +16 -0
- homeassistant/components/bmw_connected_drive/translations/it.json +7 -0
- homeassistant/components/bmw_connected_drive/translations/nl.json +57 -1
- homeassistant/components/calendar/translations/it.json +2 -2
- homeassistant/components/cambridge_audio/translations/it.json +2 -2
- homeassistant/components/camera/translations/it.json +2 -2
- homeassistant/components/climate/translations/it.json +20 -9
- homeassistant/components/comelit/translations/it.json +13 -0
- homeassistant/components/cover/translations/it.json +3 -1
- homeassistant/components/demo/translations/it.json +6 -3
- homeassistant/components/drop_connect/sensor.py +1 -1
- homeassistant/components/drop_connect/translations/it.json +12 -0
- homeassistant/components/drop_connect/translations/nl.json +5 -0
- homeassistant/components/dsmr/translations/it.json +5 -1
- homeassistant/components/dsmr_reader/translations/it.json +5 -1
- homeassistant/components/ecoforest/translations/it.json +2 -2
- homeassistant/components/ecovacs/translations/it.json +14 -0
- homeassistant/components/ecovacs/translations/nl.json +4 -0
- homeassistant/components/enphase_envoy/translations/bg.json +0 -1
- homeassistant/components/enphase_envoy/translations/cs.json +0 -1
- homeassistant/components/enphase_envoy/translations/el.json +0 -1
- homeassistant/components/enphase_envoy/translations/et.json +0 -1
- homeassistant/components/enphase_envoy/translations/hu.json +0 -1
- homeassistant/components/enphase_envoy/translations/it.json +3 -0
- homeassistant/components/enphase_envoy/translations/ja.json +0 -1
- homeassistant/components/enphase_envoy/translations/lt.json +0 -1
- homeassistant/components/enphase_envoy/translations/pt-BR.json +0 -1
- homeassistant/components/enphase_envoy/translations/pt.json +0 -1
- homeassistant/components/enphase_envoy/translations/ru.json +0 -1
- homeassistant/components/enphase_envoy/translations/sv.json +0 -1
- homeassistant/components/enphase_envoy/translations/tr.json +0 -1
- homeassistant/components/esphome/entity.py +1 -1
- homeassistant/components/esphome/sensor.py +3 -2
- homeassistant/components/ezviz/translations/nl.json +10 -0
- homeassistant/components/fan/translations/it.json +2 -2
- homeassistant/components/fan/translations/sv.json +1 -1
- homeassistant/components/flipr/translations/it.json +8 -0
- homeassistant/components/fronius/translations/it.json +4 -0
- homeassistant/components/frontend/manifest.json +1 -1
- homeassistant/components/fyta/translations/it.json +8 -0
- homeassistant/components/google_generative_ai_conversation/__init__.py +46 -0
- homeassistant/components/google_generative_ai_conversation/config_flow.py +1 -0
- homeassistant/components/google_generative_ai_conversation/translations/nl.json +3 -0
- homeassistant/components/google_mail/translations/it.json +7 -1
- homeassistant/components/google_photos/translations/it.json +6 -0
- homeassistant/components/google_sheets/translations/it.json +6 -0
- homeassistant/components/google_tasks/translations/it.json +3 -0
- homeassistant/components/group/translations/it.json +2 -2
- homeassistant/components/hive/translations/it.json +4 -3
- homeassistant/components/home_connect/translations/it.json +125 -30
- homeassistant/components/homeassistant/translations/it.json +3 -0
- homeassistant/components/homeassistant/translations/nl.json +1 -0
- homeassistant/components/homeassistant_hardware/translations/es.json +1 -0
- homeassistant/components/homeassistant_hardware/translations/it.json +2 -1
- homeassistant/components/homeassistant_hardware/translations/nl.json +4 -0
- homeassistant/components/homeassistant_hardware/translations/sk.json +1 -0
- homeassistant/components/homeassistant_hardware/translations/sv.json +1 -0
- homeassistant/components/homeassistant_hardware/translations/zh-Hans.json +1 -0
- homeassistant/components/homeassistant_hardware/translations/zh-Hant.json +1 -0
- homeassistant/components/homeassistant_sky_connect/translations/es.json +2 -0
- homeassistant/components/homeassistant_sky_connect/translations/it.json +2 -0
- homeassistant/components/homeassistant_sky_connect/translations/nl.json +4 -0
- homeassistant/components/homeassistant_sky_connect/translations/sk.json +2 -0
- homeassistant/components/homeassistant_sky_connect/translations/sv.json +2 -0
- homeassistant/components/homeassistant_sky_connect/translations/zh-Hans.json +2 -0
- homeassistant/components/homeassistant_sky_connect/translations/zh-Hant.json +2 -0
- homeassistant/components/homeassistant_yellow/translations/es.json +1 -0
- homeassistant/components/homeassistant_yellow/translations/it.json +1 -0
- homeassistant/components/homeassistant_yellow/translations/nl.json +2 -0
- homeassistant/components/homeassistant_yellow/translations/sk.json +1 -0
- homeassistant/components/homeassistant_yellow/translations/sv.json +1 -0
- homeassistant/components/homeassistant_yellow/translations/zh-Hans.json +1 -0
- homeassistant/components/homeassistant_yellow/translations/zh-Hant.json +1 -0
- homeassistant/components/homee/translations/it.json +54 -1
- homeassistant/components/homekit_controller/translations/it.json +4 -2
- homeassistant/components/homewizard/translations/it.json +15 -0
- homeassistant/components/huawei_lte/translations/it.json +5 -1
- homeassistant/components/humidifier/translations/it.json +6 -3
- homeassistant/components/husqvarna_automower/const.py +12 -0
- homeassistant/components/husqvarna_automower/lawn_mower.py +15 -5
- homeassistant/components/husqvarna_automower/sensor.py +2 -16
- homeassistant/components/husqvarna_automower/translations/it.json +3 -1
- homeassistant/components/husqvarna_automower/translations/nl.json +122 -2
- homeassistant/components/husqvarna_automower_ble/translations/nl.json +12 -0
- homeassistant/components/immich/translations/id.json +6 -0
- homeassistant/components/incomfort/translations/it.json +2 -1
- homeassistant/components/input_boolean/translations/it.json +2 -2
- homeassistant/components/iotty/translations/it.json +6 -0
- homeassistant/components/ipp/translations/it.json +2 -1
- homeassistant/components/iron_os/translations/it.json +12 -6
- homeassistant/components/jvc_projector/translations/it.json +2 -1
- homeassistant/components/knx/translations/it.json +3 -1
- homeassistant/components/lamarzocco/translations/it.json +5 -0
- homeassistant/components/lametric/translations/it.json +11 -1
- homeassistant/components/lawn_mower/translations/it.json +1 -0
- homeassistant/components/lektrico/translations/it.json +5 -1
- homeassistant/components/lg_thinq/translations/bg.json +1 -5
- homeassistant/components/lg_thinq/translations/cs.json +1 -3
- homeassistant/components/lg_thinq/translations/et.json +1 -3
- homeassistant/components/lg_thinq/translations/hu.json +1 -3
- homeassistant/components/lg_thinq/translations/it.json +77 -21
- homeassistant/components/lg_thinq/translations/ja.json +1 -5
- homeassistant/components/lg_thinq/translations/ko.json +1 -5
- homeassistant/components/lg_thinq/translations/lt.json +1 -3
- homeassistant/components/lg_thinq/translations/nl.json +1 -3
- homeassistant/components/lg_thinq/translations/pt-BR.json +1 -5
- homeassistant/components/lg_thinq/translations/pt.json +1 -3
- homeassistant/components/lg_thinq/translations/ru.json +1 -3
- homeassistant/components/lg_thinq/translations/sk.json +1 -1
- homeassistant/components/lg_thinq/translations/sv.json +1 -3
- homeassistant/components/lg_thinq/translations/tr.json +1 -5
- homeassistant/components/light/translations/it.json +6 -3
- homeassistant/components/litterrobot/translations/cs.json +0 -1
- homeassistant/components/litterrobot/translations/en-GB.json +0 -1
- homeassistant/components/litterrobot/translations/et.json +0 -1
- homeassistant/components/litterrobot/translations/ga.json +0 -1
- homeassistant/components/litterrobot/translations/hu.json +0 -1
- homeassistant/components/litterrobot/translations/it.json +14 -3
- homeassistant/components/litterrobot/translations/lt.json +0 -1
- homeassistant/components/litterrobot/translations/nl.json +0 -1
- homeassistant/components/litterrobot/translations/pt-BR.json +0 -1
- homeassistant/components/litterrobot/translations/pt.json +0 -1
- homeassistant/components/litterrobot/translations/ru.json +0 -1
- homeassistant/components/litterrobot/translations/sensor.it.json +1 -1
- homeassistant/components/litterrobot/translations/sk.json +0 -1
- homeassistant/components/litterrobot/translations/sv.json +0 -1
- homeassistant/components/litterrobot/translations/tr.json +0 -1
- homeassistant/components/litterrobot/translations/zh-Hans.json +0 -1
- homeassistant/components/lutron_caseta/translations/it.json +2 -2
- homeassistant/components/lyric/translations/it.json +9 -0
- homeassistant/components/matter/translations/id.json +5 -0
- homeassistant/components/matter/translations/it.json +69 -5
- homeassistant/components/meater/translations/it.json +12 -1
- homeassistant/components/media_player/translations/it.json +6 -5
- homeassistant/components/meteo_france/weather.py +9 -3
- homeassistant/components/metoffice/sensor.py +8 -7
- homeassistant/components/microbees/translations/it.json +6 -0
- homeassistant/components/miele/translations/it.json +9 -3
- homeassistant/components/monzo/translations/it.json +6 -0
- homeassistant/components/motionblinds_ble/translations/it.json +14 -1
- homeassistant/components/mqtt/config_flow.py +4 -5
- homeassistant/components/mqtt/translations/it.json +2 -1
- homeassistant/components/music_assistant/entity.py +1 -1
- homeassistant/components/music_assistant/manifest.json +1 -1
- homeassistant/components/music_assistant/media_browser.py +1 -7
- homeassistant/components/music_assistant/media_player.py +6 -6
- homeassistant/components/music_assistant/translations/it.json +7 -0
- homeassistant/components/myuplink/translations/it.json +6 -0
- homeassistant/components/nam/__init__.py +0 -9
- homeassistant/components/nam/config_flow.py +22 -43
- homeassistant/components/nam/manifest.json +1 -1
- homeassistant/components/nam/translations/it.json +57 -3
- homeassistant/components/nam/translations/nl.json +21 -1
- homeassistant/components/neato/translations/it.json +6 -0
- homeassistant/components/nest/translations/it.json +6 -0
- homeassistant/components/netatmo/translations/it.json +7 -0
- homeassistant/components/nextdns/translations/it.json +8 -0
- homeassistant/components/ntfy/translations/id.json +2 -1
- homeassistant/components/ntfy/translations/it.json +15 -1
- homeassistant/components/ntfy/translations/nl.json +2 -1
- homeassistant/components/nuki/translations/it.json +14 -0
- homeassistant/components/nut/translations/it.json +4 -3
- homeassistant/components/ohme/translations/it.json +6 -0
- homeassistant/components/ollama/__init__.py +30 -0
- homeassistant/components/ollama/config_flow.py +1 -0
- homeassistant/components/ollama/translations/nl.json +12 -1
- homeassistant/components/ondilo_ico/translations/it.json +6 -0
- homeassistant/components/onedrive/translations/it.json +15 -0
- homeassistant/components/openai_conversation/__init__.py +30 -0
- homeassistant/components/openai_conversation/config_flow.py +1 -0
- homeassistant/components/openai_conversation/translations/it.json +16 -0
- homeassistant/components/openai_conversation/translations/nl.json +2 -1
- homeassistant/components/opentherm_gw/translations/es.json +3 -0
- homeassistant/components/opentherm_gw/translations/it.json +5 -0
- homeassistant/components/opentherm_gw/translations/nl.json +5 -0
- homeassistant/components/opentherm_gw/translations/sk.json +3 -0
- homeassistant/components/opentherm_gw/translations/sv.json +3 -0
- homeassistant/components/opentherm_gw/translations/zh-Hans.json +3 -0
- homeassistant/components/opentherm_gw/translations/zh-Hant.json +3 -0
- homeassistant/components/openuv/translations/it.json +4 -1
- homeassistant/components/osoenergy/translations/it.json +14 -0
- homeassistant/components/overkiz/translations/ca.json +0 -5
- homeassistant/components/overkiz/translations/cs.json +0 -1
- homeassistant/components/overkiz/translations/el.json +0 -1
- homeassistant/components/overkiz/translations/et.json +0 -1
- homeassistant/components/overkiz/translations/fi.json +0 -5
- homeassistant/components/overkiz/translations/fr.json +0 -1
- homeassistant/components/overkiz/translations/hu.json +0 -1
- homeassistant/components/overkiz/translations/id.json +0 -1
- homeassistant/components/overkiz/translations/it.json +11 -2
- homeassistant/components/overkiz/translations/ja.json +0 -5
- homeassistant/components/overkiz/translations/ko.json +0 -5
- homeassistant/components/overkiz/translations/lt.json +0 -1
- homeassistant/components/overkiz/translations/lv.json +0 -5
- homeassistant/components/overkiz/translations/nb.json +0 -5
- homeassistant/components/overkiz/translations/nl.json +0 -1
- homeassistant/components/overkiz/translations/pl.json +0 -5
- homeassistant/components/overkiz/translations/pt-BR.json +0 -5
- homeassistant/components/overkiz/translations/pt.json +0 -1
- homeassistant/components/overkiz/translations/ro.json +0 -5
- homeassistant/components/overkiz/translations/ru.json +0 -1
- homeassistant/components/overkiz/translations/sv.json +0 -1
- homeassistant/components/overkiz/translations/tr.json +0 -5
- homeassistant/components/overkiz/translations/uk.json +0 -5
- homeassistant/components/overkiz/translations/zh-Hans.json +0 -1
- homeassistant/components/palazzetti/translations/it.json +4 -0
- homeassistant/components/paperless_ngx/translations/it.json +50 -0
- homeassistant/components/peblar/translations/it.json +3 -1
- homeassistant/components/playstation_network/manifest.json +15 -0
- homeassistant/components/playstation_network/translations/nl.json +29 -0
- homeassistant/components/plugwise/translations/it.json +12 -3
- homeassistant/components/point/translations/it.json +6 -0
- homeassistant/components/prusalink/translations/it.json +3 -1
- homeassistant/components/qbittorrent/translations/it.json +6 -0
- homeassistant/components/qbus/translations/nl.json +17 -0
- homeassistant/components/remote/translations/it.json +2 -2
- homeassistant/components/renault/translations/it.json +1 -0
- homeassistant/components/renson/translations/it.json +4 -4
- homeassistant/components/renson/translations/nl.json +85 -18
- homeassistant/components/reolink/translations/it.json +28 -13
- homeassistant/components/rfxtrx/translations/it.json +4 -1
- homeassistant/components/roborock/translations/it.json +11 -2
- homeassistant/components/romy/translations/it.json +13 -0
- homeassistant/components/russound_rio/translations/it.json +21 -0
- homeassistant/components/samsungtv/translations/nl.json +24 -1
- homeassistant/components/schedule/translations/it.json +2 -2
- homeassistant/components/schlage/translations/it.json +1 -0
- homeassistant/components/script/translations/it.json +2 -2
- homeassistant/components/sensibo/translations/it.json +43 -28
- homeassistant/components/sensor/translations/it.json +2 -2
- homeassistant/components/senz/translations/it.json +6 -0
- homeassistant/components/shelly/translations/it.json +5 -2
- homeassistant/components/siren/translations/it.json +2 -2
- homeassistant/components/sleepiq/translations/it.json +12 -0
- homeassistant/components/smappee/translations/it.json +6 -0
- homeassistant/components/smartthings/translations/it.json +40 -11
- homeassistant/components/snoo/translations/it.json +16 -0
- homeassistant/components/solaredge/translations/nl.json +42 -0
- homeassistant/components/spotify/translations/it.json +6 -0
- homeassistant/components/sun/translations/nl.json +6 -0
- homeassistant/components/switch/translations/it.json +6 -6
- homeassistant/components/switch/translations/sv.json +1 -1
- homeassistant/components/switchbot/translations/cs.json +0 -1
- homeassistant/components/switchbot/translations/es.json +1 -1
- homeassistant/components/switchbot/translations/et.json +0 -1
- homeassistant/components/switchbot/translations/hu.json +0 -1
- homeassistant/components/switchbot/translations/it.json +10 -1
- homeassistant/components/switchbot/translations/ja.json +1 -4
- homeassistant/components/switchbot/translations/mk.json +1 -4
- homeassistant/components/switchbot/translations/nl.json +25 -2
- homeassistant/components/switchbot/translations/pt.json +0 -1
- homeassistant/components/switchbot/translations/ru.json +0 -1
- homeassistant/components/switchbot/translations/sk.json +0 -1
- homeassistant/components/switchbot/translations/sv.json +0 -1
- homeassistant/components/switchbot/translations/zh-Hant.json +0 -1
- homeassistant/components/tado/translations/it.json +11 -0
- homeassistant/components/telegram_bot/config_flow.py +4 -7
- homeassistant/components/telegram_bot/translations/it.json +28 -1
- homeassistant/components/telegram_bot/translations/nl.json +30 -0
- homeassistant/components/tesla_fleet/translations/ca.json +0 -3
- homeassistant/components/tesla_fleet/translations/cs.json +0 -3
- homeassistant/components/tesla_fleet/translations/el.json +0 -3
- homeassistant/components/tesla_fleet/translations/en-GB.json +0 -3
- homeassistant/components/tesla_fleet/translations/en.json +1 -1
- homeassistant/components/tesla_fleet/translations/es.json +1 -1
- homeassistant/components/tesla_fleet/translations/et.json +0 -3
- homeassistant/components/tesla_fleet/translations/fy.json +0 -3
- homeassistant/components/tesla_fleet/translations/hu.json +0 -3
- homeassistant/components/tesla_fleet/translations/it.json +78 -12
- homeassistant/components/tesla_fleet/translations/ja.json +0 -3
- homeassistant/components/tesla_fleet/translations/lt.json +0 -3
- homeassistant/components/tesla_fleet/translations/pt.json +0 -3
- homeassistant/components/tesla_fleet/translations/ru.json +0 -3
- homeassistant/components/tesla_fleet/translations/sk.json +1 -1
- homeassistant/components/tesla_fleet/translations/sv.json +0 -3
- homeassistant/components/tesla_fleet/translations/tr.json +0 -3
- homeassistant/components/tesla_fleet/translations/zh-Hans.json +0 -3
- homeassistant/components/tesla_wall_connector/translations/it.json +2 -1
- homeassistant/components/teslemetry/translations/it.json +149 -11
- homeassistant/components/teslemetry/translations/nl.json +6 -3
- homeassistant/components/tessie/translations/it.json +49 -11
- homeassistant/components/tilt_pi/translations/id.json +10 -0
- homeassistant/components/tilt_pi/translations/it.json +31 -0
- homeassistant/components/tolo/translations/it.json +2 -1
- homeassistant/components/tomorrowio/translations/it.json +22 -4
- homeassistant/components/toon/translations/it.json +6 -0
- homeassistant/components/tplink_omada/translations/it.json +1 -0
- homeassistant/components/traccar_server/translations/it.json +1 -0
- homeassistant/components/tuya/translations/it.json +17 -9
- homeassistant/components/tuya/translations/select.it.json +5 -5
- homeassistant/components/twinkly/translations/it.json +1 -1
- homeassistant/components/unifi/translations/nl.json +3 -1
- homeassistant/components/unifiprotect/translations/nl.json +284 -1
- homeassistant/components/vacuum/translations/it.json +3 -2
- homeassistant/components/vacuum/translations/sv.json +1 -1
- homeassistant/components/vallox/translations/it.json +3 -1
- homeassistant/components/valve/translations/it.json +2 -1
- homeassistant/components/vegehub/translations/nl.json +3 -0
- homeassistant/components/venstar/translations/it.json +5 -0
- homeassistant/components/vesync/translations/it.json +19 -0
- homeassistant/components/vicare/translations/it.json +21 -2
- homeassistant/components/voip/manifest.json +1 -1
- homeassistant/components/wallbox/translations/it.json +12 -0
- homeassistant/components/water_heater/translations/it.json +3 -3
- homeassistant/components/webdav/config_flow.py +7 -1
- homeassistant/components/webdav/strings.json +1 -3
- homeassistant/components/webdav/translations/cs.json +0 -3
- homeassistant/components/webdav/translations/de.json +1 -3
- homeassistant/components/webdav/translations/en-GB.json +0 -3
- homeassistant/components/webdav/translations/en.json +1 -3
- homeassistant/components/webdav/translations/es.json +1 -3
- homeassistant/components/webdav/translations/et.json +0 -3
- homeassistant/components/webdav/translations/fr.json +0 -3
- homeassistant/components/webdav/translations/ga.json +0 -3
- homeassistant/components/webdav/translations/hu.json +0 -3
- homeassistant/components/webdav/translations/it.json +1 -0
- homeassistant/components/webdav/translations/ja.json +0 -3
- homeassistant/components/webdav/translations/lt.json +0 -3
- homeassistant/components/webdav/translations/nl.json +0 -3
- homeassistant/components/webdav/translations/pt-BR.json +0 -3
- homeassistant/components/webdav/translations/pt.json +0 -3
- homeassistant/components/webdav/translations/ru.json +0 -3
- homeassistant/components/webdav/translations/sk.json +1 -3
- homeassistant/components/webdav/translations/sl.json +0 -5
- homeassistant/components/webdav/translations/sv.json +0 -3
- homeassistant/components/webdav/translations/tr.json +0 -3
- homeassistant/components/webdav/translations/zh-Hans.json +0 -3
- homeassistant/components/webdav/translations/zh-Hant.json +1 -3
- homeassistant/components/weheat/translations/it.json +6 -0
- homeassistant/components/whirlpool/translations/ca.json +0 -1
- homeassistant/components/whirlpool/translations/cs.json +0 -1
- homeassistant/components/whirlpool/translations/el.json +0 -1
- homeassistant/components/whirlpool/translations/et.json +0 -1
- homeassistant/components/whirlpool/translations/fi.json +0 -1
- homeassistant/components/whirlpool/translations/fr.json +0 -1
- homeassistant/components/whirlpool/translations/hu.json +0 -1
- homeassistant/components/whirlpool/translations/id.json +0 -1
- homeassistant/components/whirlpool/translations/it.json +1 -1
- homeassistant/components/whirlpool/translations/ja.json +0 -1
- homeassistant/components/whirlpool/translations/ko.json +0 -1
- homeassistant/components/whirlpool/translations/lt.json +0 -1
- homeassistant/components/whirlpool/translations/lv.json +0 -1
- homeassistant/components/whirlpool/translations/nb.json +0 -1
- homeassistant/components/whirlpool/translations/nl.json +0 -1
- homeassistant/components/whirlpool/translations/pl.json +0 -1
- homeassistant/components/whirlpool/translations/pt-BR.json +0 -1
- homeassistant/components/whirlpool/translations/pt.json +0 -1
- homeassistant/components/whirlpool/translations/ro.json +0 -1
- homeassistant/components/whirlpool/translations/ru.json +0 -1
- homeassistant/components/whirlpool/translations/sv.json +0 -1
- homeassistant/components/whirlpool/translations/tr.json +0 -1
- homeassistant/components/whirlpool/translations/uk.json +0 -1
- homeassistant/components/whirlpool/translations/zh-Hans.json +0 -1
- homeassistant/components/whirlpool/translations/zh-Hant.json +1 -1
- homeassistant/components/withings/translations/it.json +15 -1
- homeassistant/components/wled/translations/it.json +2 -2
- homeassistant/components/wolflink/translations/it.json +5 -0
- homeassistant/components/wyoming/translations/it.json +1 -1
- homeassistant/components/xbox/translations/it.json +6 -0
- homeassistant/components/xiaomi_miio/translations/it.json +11 -2
- homeassistant/components/yale/translations/it.json +6 -0
- homeassistant/components/yale_smart_alarm/translations/it.json +3 -1
- homeassistant/components/yamaha/translations/it.json +1 -1
- homeassistant/components/yamaha_musiccast/__init__.py +3 -2
- homeassistant/components/yamaha_musiccast/config_flow.py +5 -4
- homeassistant/components/yamaha_musiccast/translations/it.json +13 -3
- homeassistant/components/yeelight/translations/it.json +2 -1
- homeassistant/components/yolink/translations/it.json +16 -4
- homeassistant/components/zha/translations/it.json +18 -1
- homeassistant/components/zha/translations/nl.json +34 -0
- homeassistant/components/zwave_js/translations/nl.json +28 -1
- homeassistant/const.py +1 -1
- homeassistant/generated/dhcp.py +20 -0
- homeassistant/package_constraints.txt +1 -1
- {homeassistant-2025.7.0b5.dist-info → homeassistant-2025.7.0b7.dist-info}/METADATA +1 -1
- {homeassistant-2025.7.0b5.dist-info → homeassistant-2025.7.0b7.dist-info}/RECORD +405 -401
- {homeassistant-2025.7.0b5.dist-info → homeassistant-2025.7.0b7.dist-info}/WHEEL +0 -0
- {homeassistant-2025.7.0b5.dist-info → homeassistant-2025.7.0b7.dist-info}/entry_points.txt +0 -0
- {homeassistant-2025.7.0b5.dist-info → homeassistant-2025.7.0b7.dist-info}/licenses/LICENSE.md +0 -0
- {homeassistant-2025.7.0b5.dist-info → homeassistant-2025.7.0b7.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
- {homeassistant-2025.7.0b5.dist-info → homeassistant-2025.7.0b7.dist-info}/top_level.txt +0 -0
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
5
|
from collections.abc import Mapping
|
|
6
|
-
from dataclasses import dataclass
|
|
7
6
|
import logging
|
|
8
7
|
from typing import Any
|
|
9
8
|
|
|
@@ -26,15 +25,6 @@ from homeassistant.helpers.service_info.zeroconf import ZeroconfServiceInfo
|
|
|
26
25
|
|
|
27
26
|
from .const import DOMAIN
|
|
28
27
|
|
|
29
|
-
|
|
30
|
-
@dataclass
|
|
31
|
-
class NamConfig:
|
|
32
|
-
"""NAM device configuration class."""
|
|
33
|
-
|
|
34
|
-
mac_address: str
|
|
35
|
-
auth_enabled: bool
|
|
36
|
-
|
|
37
|
-
|
|
38
28
|
_LOGGER = logging.getLogger(__name__)
|
|
39
29
|
|
|
40
30
|
AUTH_SCHEMA = vol.Schema(
|
|
@@ -42,29 +32,14 @@ AUTH_SCHEMA = vol.Schema(
|
|
|
42
32
|
)
|
|
43
33
|
|
|
44
34
|
|
|
45
|
-
async def
|
|
46
|
-
"""Get device MAC address and auth_enabled property."""
|
|
47
|
-
websession = async_get_clientsession(hass)
|
|
48
|
-
|
|
49
|
-
options = ConnectionOptions(host)
|
|
50
|
-
nam = await NettigoAirMonitor.create(websession, options)
|
|
51
|
-
|
|
52
|
-
mac = await nam.async_get_mac_address()
|
|
53
|
-
|
|
54
|
-
return NamConfig(mac, nam.auth_enabled)
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
async def async_check_credentials(
|
|
35
|
+
async def async_get_nam(
|
|
58
36
|
hass: HomeAssistant, host: str, data: dict[str, Any]
|
|
59
|
-
) ->
|
|
60
|
-
"""
|
|
37
|
+
) -> NettigoAirMonitor:
|
|
38
|
+
"""Get NAM client."""
|
|
61
39
|
websession = async_get_clientsession(hass)
|
|
62
|
-
|
|
63
40
|
options = ConnectionOptions(host, data.get(CONF_USERNAME), data.get(CONF_PASSWORD))
|
|
64
41
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
await nam.async_check_credentials()
|
|
42
|
+
return await NettigoAirMonitor.create(websession, options)
|
|
68
43
|
|
|
69
44
|
|
|
70
45
|
class NAMFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
@@ -72,8 +47,8 @@ class NAMFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
|
72
47
|
|
|
73
48
|
VERSION = 1
|
|
74
49
|
|
|
75
|
-
_config: NamConfig
|
|
76
50
|
host: str
|
|
51
|
+
auth_enabled: bool = False
|
|
77
52
|
|
|
78
53
|
async def async_step_user(
|
|
79
54
|
self, user_input: dict[str, Any] | None = None
|
|
@@ -85,21 +60,20 @@ class NAMFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
|
85
60
|
self.host = user_input[CONF_HOST]
|
|
86
61
|
|
|
87
62
|
try:
|
|
88
|
-
|
|
63
|
+
nam = await async_get_nam(self.hass, self.host, {})
|
|
89
64
|
except (ApiError, ClientConnectorError, TimeoutError):
|
|
90
65
|
errors["base"] = "cannot_connect"
|
|
91
66
|
except CannotGetMacError:
|
|
92
67
|
return self.async_abort(reason="device_unsupported")
|
|
68
|
+
except AuthFailedError:
|
|
69
|
+
return await self.async_step_credentials()
|
|
93
70
|
except Exception:
|
|
94
71
|
_LOGGER.exception("Unexpected exception")
|
|
95
72
|
errors["base"] = "unknown"
|
|
96
73
|
else:
|
|
97
|
-
await self.async_set_unique_id(format_mac(
|
|
74
|
+
await self.async_set_unique_id(format_mac(nam.mac))
|
|
98
75
|
self._abort_if_unique_id_configured({CONF_HOST: self.host})
|
|
99
76
|
|
|
100
|
-
if config.auth_enabled is True:
|
|
101
|
-
return await self.async_step_credentials()
|
|
102
|
-
|
|
103
77
|
return self.async_create_entry(
|
|
104
78
|
title=self.host,
|
|
105
79
|
data=user_input,
|
|
@@ -119,7 +93,7 @@ class NAMFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
|
119
93
|
|
|
120
94
|
if user_input is not None:
|
|
121
95
|
try:
|
|
122
|
-
await
|
|
96
|
+
nam = await async_get_nam(self.hass, self.host, user_input)
|
|
123
97
|
except AuthFailedError:
|
|
124
98
|
errors["base"] = "invalid_auth"
|
|
125
99
|
except (ApiError, ClientConnectorError, TimeoutError):
|
|
@@ -128,6 +102,9 @@ class NAMFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
|
128
102
|
_LOGGER.exception("Unexpected exception")
|
|
129
103
|
errors["base"] = "unknown"
|
|
130
104
|
else:
|
|
105
|
+
await self.async_set_unique_id(format_mac(nam.mac))
|
|
106
|
+
self._abort_if_unique_id_configured({CONF_HOST: self.host})
|
|
107
|
+
|
|
131
108
|
return self.async_create_entry(
|
|
132
109
|
title=self.host,
|
|
133
110
|
data={**user_input, CONF_HOST: self.host},
|
|
@@ -148,14 +125,16 @@ class NAMFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
|
148
125
|
self._async_abort_entries_match({CONF_HOST: self.host})
|
|
149
126
|
|
|
150
127
|
try:
|
|
151
|
-
|
|
128
|
+
nam = await async_get_nam(self.hass, self.host, {})
|
|
152
129
|
except (ApiError, ClientConnectorError, TimeoutError):
|
|
153
130
|
return self.async_abort(reason="cannot_connect")
|
|
154
131
|
except CannotGetMacError:
|
|
155
132
|
return self.async_abort(reason="device_unsupported")
|
|
133
|
+
except AuthFailedError:
|
|
134
|
+
self.auth_enabled = True
|
|
135
|
+
return await self.async_step_confirm_discovery()
|
|
156
136
|
|
|
157
|
-
await self.async_set_unique_id(format_mac(
|
|
158
|
-
self._abort_if_unique_id_configured({CONF_HOST: self.host})
|
|
137
|
+
await self.async_set_unique_id(format_mac(nam.mac))
|
|
159
138
|
|
|
160
139
|
return await self.async_step_confirm_discovery()
|
|
161
140
|
|
|
@@ -171,7 +150,7 @@ class NAMFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
|
171
150
|
data={CONF_HOST: self.host},
|
|
172
151
|
)
|
|
173
152
|
|
|
174
|
-
if self.
|
|
153
|
+
if self.auth_enabled is True:
|
|
175
154
|
return await self.async_step_credentials()
|
|
176
155
|
|
|
177
156
|
self._set_confirm_only()
|
|
@@ -198,7 +177,7 @@ class NAMFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
|
198
177
|
|
|
199
178
|
if user_input is not None:
|
|
200
179
|
try:
|
|
201
|
-
await
|
|
180
|
+
await async_get_nam(self.hass, self.host, user_input)
|
|
202
181
|
except (
|
|
203
182
|
ApiError,
|
|
204
183
|
AuthFailedError,
|
|
@@ -228,11 +207,11 @@ class NAMFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
|
228
207
|
|
|
229
208
|
if user_input is not None:
|
|
230
209
|
try:
|
|
231
|
-
|
|
210
|
+
nam = await async_get_nam(self.hass, user_input[CONF_HOST], {})
|
|
232
211
|
except (ApiError, ClientConnectorError, TimeoutError):
|
|
233
212
|
errors["base"] = "cannot_connect"
|
|
234
213
|
else:
|
|
235
|
-
await self.async_set_unique_id(format_mac(
|
|
214
|
+
await self.async_set_unique_id(format_mac(nam.mac))
|
|
236
215
|
self._abort_if_unique_id_mismatch(reason="another_device")
|
|
237
216
|
|
|
238
217
|
return self.async_update_reload_and_abort(
|
|
@@ -96,7 +96,25 @@
|
|
|
96
96
|
"name": "PMSx003 indice comune di qualit\u00e0 dell'aria"
|
|
97
97
|
},
|
|
98
98
|
"pmsx003_caqi_level": {
|
|
99
|
-
"name": "PMSx003 livello comune dell'indice di qualit\u00e0 dell'aria"
|
|
99
|
+
"name": "PMSx003 livello comune dell'indice di qualit\u00e0 dell'aria",
|
|
100
|
+
"state": {
|
|
101
|
+
"high": "Alto/a",
|
|
102
|
+
"low": "Basso/a",
|
|
103
|
+
"medium": "Medio/a",
|
|
104
|
+
"very_high": "Molto alto/a",
|
|
105
|
+
"very_low": "Molto basso/a"
|
|
106
|
+
},
|
|
107
|
+
"state_attributes": {
|
|
108
|
+
"options": {
|
|
109
|
+
"state": {
|
|
110
|
+
"high": "Alto/a",
|
|
111
|
+
"low": "Basso/a",
|
|
112
|
+
"medium": "Medio/a",
|
|
113
|
+
"very_high": "Molto alto/a",
|
|
114
|
+
"very_low": "Molto basso/a"
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
100
118
|
},
|
|
101
119
|
"pmsx003_pm1": {
|
|
102
120
|
"name": "PMSx003 PM1"
|
|
@@ -111,7 +129,25 @@
|
|
|
111
129
|
"name": "SDS011 indice di qualit\u00e0 dell'aria comune"
|
|
112
130
|
},
|
|
113
131
|
"sds011_caqi_level": {
|
|
114
|
-
"name": "SDS011 livello dell'indice di qualit\u00e0 dell'aria comune"
|
|
132
|
+
"name": "SDS011 livello dell'indice di qualit\u00e0 dell'aria comune",
|
|
133
|
+
"state": {
|
|
134
|
+
"high": "Alto/a",
|
|
135
|
+
"low": "Basso/a",
|
|
136
|
+
"medium": "Medio/a",
|
|
137
|
+
"very_high": "Molto alto/a",
|
|
138
|
+
"very_low": "Molto basso/a"
|
|
139
|
+
},
|
|
140
|
+
"state_attributes": {
|
|
141
|
+
"options": {
|
|
142
|
+
"state": {
|
|
143
|
+
"high": "Alto/a",
|
|
144
|
+
"low": "Basso/a",
|
|
145
|
+
"medium": "Medio/a",
|
|
146
|
+
"very_high": "Molto alto/a",
|
|
147
|
+
"very_low": "Molto basso/a"
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
115
151
|
},
|
|
116
152
|
"sds011_pm10": {
|
|
117
153
|
"name": "SDS011 PM10"
|
|
@@ -129,7 +165,25 @@
|
|
|
129
165
|
"name": "Indice comune di qualit\u00e0 dell'aria SPS30"
|
|
130
166
|
},
|
|
131
167
|
"sps30_caqi_level": {
|
|
132
|
-
"name": "Livello comune dell'indice di qualit\u00e0 dell'aria SPS30"
|
|
168
|
+
"name": "Livello comune dell'indice di qualit\u00e0 dell'aria SPS30",
|
|
169
|
+
"state": {
|
|
170
|
+
"high": "Alto/a",
|
|
171
|
+
"low": "Basso/a",
|
|
172
|
+
"medium": "Medio/a",
|
|
173
|
+
"very_high": "Molto alto/a",
|
|
174
|
+
"very_low": "Molto basso/a"
|
|
175
|
+
},
|
|
176
|
+
"state_attributes": {
|
|
177
|
+
"options": {
|
|
178
|
+
"state": {
|
|
179
|
+
"high": "Alto/a",
|
|
180
|
+
"low": "Basso/a",
|
|
181
|
+
"medium": "Medio/a",
|
|
182
|
+
"very_high": "Molto alto/a",
|
|
183
|
+
"very_low": "Molto basso/a"
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
133
187
|
},
|
|
134
188
|
"sps30_pm1": {
|
|
135
189
|
"name": "SPS30 PM1"
|
|
@@ -106,6 +106,15 @@
|
|
|
106
106
|
"medium": "Gemiddeld",
|
|
107
107
|
"very_high": "Zeer hoog",
|
|
108
108
|
"very_low": "Zeer laag"
|
|
109
|
+
},
|
|
110
|
+
"state_attributes": {
|
|
111
|
+
"options": {
|
|
112
|
+
"state": {
|
|
113
|
+
"high": "Hoog",
|
|
114
|
+
"low": "Laag",
|
|
115
|
+
"medium": "Gemiddeld"
|
|
116
|
+
}
|
|
117
|
+
}
|
|
109
118
|
}
|
|
110
119
|
},
|
|
111
120
|
"pmsx003_pm1": {
|
|
@@ -139,7 +148,18 @@
|
|
|
139
148
|
"name": "SPS30 algemene luchtkwaliteitsindex"
|
|
140
149
|
},
|
|
141
150
|
"sps30_caqi_level": {
|
|
142
|
-
"name": "SPS30 algemene luchtkwaliteitsindex niveau"
|
|
151
|
+
"name": "SPS30 algemene luchtkwaliteitsindex niveau",
|
|
152
|
+
"state_attributes": {
|
|
153
|
+
"options": {
|
|
154
|
+
"state": {
|
|
155
|
+
"high": "Hoog",
|
|
156
|
+
"low": "Laag",
|
|
157
|
+
"medium": "Gemiddeld",
|
|
158
|
+
"very_high": "Zeer hoog",
|
|
159
|
+
"very_low": "Zeer laag"
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
143
163
|
},
|
|
144
164
|
"sps30_pm1": {
|
|
145
165
|
"name": "SPS30 PM1"
|
|
@@ -16,6 +16,12 @@
|
|
|
16
16
|
},
|
|
17
17
|
"step": {
|
|
18
18
|
"pick_implementation": {
|
|
19
|
+
"data": {
|
|
20
|
+
"implementation": "Credenziali dell'applicazione"
|
|
21
|
+
},
|
|
22
|
+
"data_description": {
|
|
23
|
+
"implementation": "Le credenziali che desideri utilizzare per l'autenticazione."
|
|
24
|
+
},
|
|
19
25
|
"title": "Scegli il metodo di autenticazione"
|
|
20
26
|
},
|
|
21
27
|
"reauth_confirm": {
|
|
@@ -44,6 +44,12 @@
|
|
|
44
44
|
"title": "Nest: crea un progetto di accesso al dispositivo"
|
|
45
45
|
},
|
|
46
46
|
"pick_implementation": {
|
|
47
|
+
"data": {
|
|
48
|
+
"implementation": "Credenziali dell'applicazione"
|
|
49
|
+
},
|
|
50
|
+
"data_description": {
|
|
51
|
+
"implementation": "Le credenziali che desideri utilizzare per l'autenticazione."
|
|
52
|
+
},
|
|
47
53
|
"title": "Scegli il metodo di autenticazione"
|
|
48
54
|
},
|
|
49
55
|
"pubsub_topic_confirm": {
|
|
@@ -16,6 +16,12 @@
|
|
|
16
16
|
},
|
|
17
17
|
"step": {
|
|
18
18
|
"pick_implementation": {
|
|
19
|
+
"data": {
|
|
20
|
+
"implementation": "Credenziali dell'applicazione"
|
|
21
|
+
},
|
|
22
|
+
"data_description": {
|
|
23
|
+
"implementation": "Le credenziali che desideri utilizzare per l'autenticazione."
|
|
24
|
+
},
|
|
19
25
|
"title": "Scegli il metodo di autenticazione"
|
|
20
26
|
},
|
|
21
27
|
"reauth_confirm": {
|
|
@@ -53,6 +59,7 @@
|
|
|
53
59
|
"preset_mode": {
|
|
54
60
|
"state": {
|
|
55
61
|
"frost_guard": "Protezione antigelo",
|
|
62
|
+
"manual": "Manuale",
|
|
56
63
|
"schedule": "Pianificazione"
|
|
57
64
|
}
|
|
58
65
|
}
|
|
@@ -10,6 +10,14 @@
|
|
|
10
10
|
"unknown": "Errore imprevisto"
|
|
11
11
|
},
|
|
12
12
|
"step": {
|
|
13
|
+
"profiles": {
|
|
14
|
+
"data": {
|
|
15
|
+
"profile_name": "Profilo"
|
|
16
|
+
},
|
|
17
|
+
"data_description": {
|
|
18
|
+
"profile_name": "Il profilo di configurazione NextDNS che si desidera integrare"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
13
21
|
"reauth_confirm": {
|
|
14
22
|
"data": {
|
|
15
23
|
"api_key": "Chiave API"
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
"config": {
|
|
3
3
|
"abort": {
|
|
4
4
|
"already_configured": "Layanan sudah dikonfigurasi",
|
|
5
|
-
"reauth_successful": "Autentikasi ulang berhasil"
|
|
5
|
+
"reauth_successful": "Autentikasi ulang berhasil",
|
|
6
|
+
"reconfigure_successful": "Konfigurasi ulang berhasil"
|
|
6
7
|
},
|
|
7
8
|
"error": {
|
|
8
9
|
"cannot_connect": "Gagal terhubung",
|
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
},
|
|
6
6
|
"config": {
|
|
7
7
|
"abort": {
|
|
8
|
-
"already_configured": "Il servizio \u00e8 gi\u00e0 configurato"
|
|
8
|
+
"already_configured": "Il servizio \u00e8 gi\u00e0 configurato",
|
|
9
|
+
"reconfigure_successful": "La riconfigurazione \u00e8 stata completata con successo"
|
|
9
10
|
},
|
|
10
11
|
"error": {
|
|
11
12
|
"cannot_connect": "Impossibile connettersi",
|
|
@@ -13,6 +14,19 @@
|
|
|
13
14
|
"unknown": "Errore imprevisto"
|
|
14
15
|
},
|
|
15
16
|
"step": {
|
|
17
|
+
"reconfigure": {
|
|
18
|
+
"data": {
|
|
19
|
+
"password": "Password",
|
|
20
|
+
"token": "Token di accesso",
|
|
21
|
+
"username": "Nome utente"
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
"reconfigure_user": {
|
|
25
|
+
"data": {
|
|
26
|
+
"password": "Password",
|
|
27
|
+
"token": "Token di accesso"
|
|
28
|
+
}
|
|
29
|
+
},
|
|
16
30
|
"user": {
|
|
17
31
|
"sections": {
|
|
18
32
|
"auth": {
|
|
@@ -20,7 +20,8 @@
|
|
|
20
20
|
"token": "Toegangscode"
|
|
21
21
|
},
|
|
22
22
|
"data_description": {
|
|
23
|
-
"password": "Voer het wachtwoord in dat overeenkomt met de bovengenoemde gebruikersnaam om automatisch een toegangstoken aan te maken"
|
|
23
|
+
"password": "Voer het wachtwoord in dat overeenkomt met de bovengenoemde gebruikersnaam om automatisch een toegangstoken aan te maken",
|
|
24
|
+
"token": "Voer een nieuw toegangstoken in. Om een nieuw toegangstoken aan te maken navigeer je naar Account \u2192 Toegangstokens en klik je op Toegangstoken aanmaken"
|
|
24
25
|
},
|
|
25
26
|
"description": "Het toegangstoken voor **{username}** is ongeldig. Om opnieuw te authenticeren bij de ntfy service, kan je inloggen met je wachtwoord (een nieuw toegangstoken zal dan automatisch worden aangemaakt) of je kan direct een geldig toegangstoken opgeven",
|
|
26
27
|
"title": "Opnieuw authenticeren met ntfy ({name})"
|
|
@@ -31,6 +31,20 @@
|
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
},
|
|
34
|
+
"entity": {
|
|
35
|
+
"lock": {
|
|
36
|
+
"nuki_lock": {
|
|
37
|
+
"state_attributes": {
|
|
38
|
+
"battery_critical": {
|
|
39
|
+
"state": {
|
|
40
|
+
"off": "Normale",
|
|
41
|
+
"on": "Basso/a"
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
},
|
|
34
48
|
"issues": {
|
|
35
49
|
"https_webhook": {
|
|
36
50
|
"description": "Il bridge Nuki non pu\u00f2 inviare eventi a un indirizzo HTTPS (SSL), per favore configura un indirizzo HTTP (locale) in \"Home Assistant URL\" nelle [impostazioni di rete]({network_link}). L'indirizzo (locale) corrente \u00e8: `{base_url}`, un indirizzo valido potrebbe essere, ad esempio, `http://192.168.1.10:8123` dove `192.168.1.10` \u00e8 l'IP del dispositivo Home Assistant",
|
|
@@ -118,9 +118,10 @@
|
|
|
118
118
|
"name": "Stato di carica",
|
|
119
119
|
"state": {
|
|
120
120
|
"charging": "In carica",
|
|
121
|
-
"disabled": "Disabilitato",
|
|
121
|
+
"disabled": "Disabilitato/a",
|
|
122
122
|
"discharging": "In scaricamento",
|
|
123
123
|
"floating": "Galleggiante",
|
|
124
|
+
"off": "Spento/a",
|
|
124
125
|
"resting": "In riposo",
|
|
125
126
|
"unknown": "Sconosciuto"
|
|
126
127
|
}
|
|
@@ -347,8 +348,8 @@
|
|
|
347
348
|
"ups_beeper_status": {
|
|
348
349
|
"name": "Stato del segnalatore acustico",
|
|
349
350
|
"state": {
|
|
350
|
-
"disabled": "Disabilitato",
|
|
351
|
-
"enabled": "Abilitato",
|
|
351
|
+
"disabled": "Disabilitato/a",
|
|
352
|
+
"enabled": "Abilitato/a",
|
|
352
353
|
"muted": "Silenziato"
|
|
353
354
|
}
|
|
354
355
|
},
|
|
@@ -26,6 +26,11 @@
|
|
|
26
26
|
},
|
|
27
27
|
"entity": {
|
|
28
28
|
"select": {
|
|
29
|
+
"charge_mode": {
|
|
30
|
+
"state": {
|
|
31
|
+
"paused": "In pausa"
|
|
32
|
+
}
|
|
33
|
+
},
|
|
29
34
|
"vehicle": {
|
|
30
35
|
"name": "Veicolo"
|
|
31
36
|
}
|
|
@@ -34,6 +39,7 @@
|
|
|
34
39
|
"status": {
|
|
35
40
|
"name": "Stato",
|
|
36
41
|
"state": {
|
|
42
|
+
"charging": "In carica",
|
|
37
43
|
"paused": "In pausa",
|
|
38
44
|
"pending_approval": "In attesa di approvazione"
|
|
39
45
|
}
|
|
@@ -148,4 +148,34 @@ async def async_migrate_integration(hass: HomeAssistant) -> None:
|
|
|
148
148
|
title=DEFAULT_NAME,
|
|
149
149
|
options={},
|
|
150
150
|
version=2,
|
|
151
|
+
minor_version=2,
|
|
151
152
|
)
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
async def async_migrate_entry(hass: HomeAssistant, entry: OllamaConfigEntry) -> bool:
|
|
156
|
+
"""Migrate entry."""
|
|
157
|
+
_LOGGER.debug("Migrating from version %s:%s", entry.version, entry.minor_version)
|
|
158
|
+
|
|
159
|
+
if entry.version > 2:
|
|
160
|
+
# This means the user has downgraded from a future version
|
|
161
|
+
return False
|
|
162
|
+
|
|
163
|
+
if entry.version == 2 and entry.minor_version == 1:
|
|
164
|
+
# Correct broken device migration in Home Assistant Core 2025.7.0b0-2025.7.0b1
|
|
165
|
+
device_registry = dr.async_get(hass)
|
|
166
|
+
for device in dr.async_entries_for_config_entry(
|
|
167
|
+
device_registry, entry.entry_id
|
|
168
|
+
):
|
|
169
|
+
device_registry.async_update_device(
|
|
170
|
+
device.id,
|
|
171
|
+
remove_config_entry_id=entry.entry_id,
|
|
172
|
+
remove_config_subentry_id=None,
|
|
173
|
+
)
|
|
174
|
+
|
|
175
|
+
hass.config_entries.async_update_entry(entry, minor_version=2)
|
|
176
|
+
|
|
177
|
+
_LOGGER.debug(
|
|
178
|
+
"Migration to version %s:%s successful", entry.version, entry.minor_version
|
|
179
|
+
)
|
|
180
|
+
|
|
181
|
+
return True
|
|
@@ -23,8 +23,19 @@
|
|
|
23
23
|
"step": {
|
|
24
24
|
"set_options": {
|
|
25
25
|
"data": {
|
|
26
|
+
"keep_alive": "Behouden",
|
|
26
27
|
"llm_hass_api": "Beheer Home Assistant",
|
|
27
|
-
"
|
|
28
|
+
"max_history": "Maximum geschiedenisberichten",
|
|
29
|
+
"name": "Naam",
|
|
30
|
+
"num_ctx": "Grootte van het contextvenster",
|
|
31
|
+
"prompt": "Instructies",
|
|
32
|
+
"think": "Denk na vooraleer te reageren"
|
|
33
|
+
},
|
|
34
|
+
"data_description": {
|
|
35
|
+
"keep_alive": "Duur in seconden waarin Ollama het model in het geheugen houdt. -1 = onbepaald, 0 = nooit.",
|
|
36
|
+
"num_ctx": "Maximaal aantal teksttokens dat het model kan verwerken. Verlagen om het Ollama RAM-geheugen te verminderen, of verhogen voor een groot aantal blootgestelde entiteiten.",
|
|
37
|
+
"prompt": "Geef aan hoe de LLM moet reageren. Dit kan een sjabloon zijn.",
|
|
38
|
+
"think": "Als deze optie is ingeschakeld, zal de LLM nadenken voordat hij reageert. Dit kan de reactiekwaliteit verbeteren, maar kan de latentie verhogen."
|
|
28
39
|
}
|
|
29
40
|
}
|
|
30
41
|
}
|
|
@@ -13,6 +13,12 @@
|
|
|
13
13
|
},
|
|
14
14
|
"step": {
|
|
15
15
|
"pick_implementation": {
|
|
16
|
+
"data": {
|
|
17
|
+
"implementation": "Credenziali dell'applicazione"
|
|
18
|
+
},
|
|
19
|
+
"data_description": {
|
|
20
|
+
"implementation": "Le credenziali che desideri utilizzare per l'autenticazione."
|
|
21
|
+
},
|
|
16
22
|
"title": "Scegli il metodo di autenticazione"
|
|
17
23
|
}
|
|
18
24
|
}
|
|
@@ -13,6 +13,12 @@
|
|
|
13
13
|
},
|
|
14
14
|
"step": {
|
|
15
15
|
"pick_implementation": {
|
|
16
|
+
"data": {
|
|
17
|
+
"implementation": "Credenziali dell'applicazione"
|
|
18
|
+
},
|
|
19
|
+
"data_description": {
|
|
20
|
+
"implementation": "Le credenziali che desideri utilizzare per l'autenticazione."
|
|
21
|
+
},
|
|
16
22
|
"title": "Scegli il metodo di autenticazione"
|
|
17
23
|
},
|
|
18
24
|
"reauth_confirm": {
|
|
@@ -20,6 +26,15 @@
|
|
|
20
26
|
}
|
|
21
27
|
}
|
|
22
28
|
},
|
|
29
|
+
"entity": {
|
|
30
|
+
"sensor": {
|
|
31
|
+
"drive_state": {
|
|
32
|
+
"state": {
|
|
33
|
+
"normal": "Normale"
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
},
|
|
23
38
|
"exceptions": {
|
|
24
39
|
"create_folder_error": {
|
|
25
40
|
"message": "Impossibile creare la cartella: {message}"
|
|
@@ -361,4 +361,34 @@ async def async_migrate_integration(hass: HomeAssistant) -> None:
|
|
|
361
361
|
title=DEFAULT_NAME,
|
|
362
362
|
options={},
|
|
363
363
|
version=2,
|
|
364
|
+
minor_version=2,
|
|
364
365
|
)
|
|
366
|
+
|
|
367
|
+
|
|
368
|
+
async def async_migrate_entry(hass: HomeAssistant, entry: OpenAIConfigEntry) -> bool:
|
|
369
|
+
"""Migrate entry."""
|
|
370
|
+
LOGGER.debug("Migrating from version %s:%s", entry.version, entry.minor_version)
|
|
371
|
+
|
|
372
|
+
if entry.version > 2:
|
|
373
|
+
# This means the user has downgraded from a future version
|
|
374
|
+
return False
|
|
375
|
+
|
|
376
|
+
if entry.version == 2 and entry.minor_version == 1:
|
|
377
|
+
# Correct broken device migration in Home Assistant Core 2025.7.0b0-2025.7.0b1
|
|
378
|
+
device_registry = dr.async_get(hass)
|
|
379
|
+
for device in dr.async_entries_for_config_entry(
|
|
380
|
+
device_registry, entry.entry_id
|
|
381
|
+
):
|
|
382
|
+
device_registry.async_update_device(
|
|
383
|
+
device.id,
|
|
384
|
+
remove_config_entry_id=entry.entry_id,
|
|
385
|
+
remove_config_subentry_id=None,
|
|
386
|
+
)
|
|
387
|
+
|
|
388
|
+
hass.config_entries.async_update_entry(entry, minor_version=2)
|
|
389
|
+
|
|
390
|
+
LOGGER.debug(
|
|
391
|
+
"Migration to version %s:%s successful", entry.version, entry.minor_version
|
|
392
|
+
)
|
|
393
|
+
|
|
394
|
+
return True
|
|
@@ -74,6 +74,22 @@
|
|
|
74
74
|
"message": "Configurazione fornita non valida. Ricevuta {config_entry}"
|
|
75
75
|
}
|
|
76
76
|
},
|
|
77
|
+
"selector": {
|
|
78
|
+
"reasoning_effort": {
|
|
79
|
+
"options": {
|
|
80
|
+
"high": "Alto/a",
|
|
81
|
+
"low": "Basso/a",
|
|
82
|
+
"medium": "Medio/a"
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
"search_context_size": {
|
|
86
|
+
"options": {
|
|
87
|
+
"high": "Alto/a",
|
|
88
|
+
"low": "Basso/a",
|
|
89
|
+
"medium": "Medio/a"
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
},
|
|
77
93
|
"services": {
|
|
78
94
|
"generate_image": {
|
|
79
95
|
"fields": {
|