homeassistant 2025.10.0b5__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/id.json +9 -0
- homeassistant/components/airos/translations/id.json +36 -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/translations/id.json +12 -0
- homeassistant/components/analytics/analytics.py +23 -12
- 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/broadlink/translations/zh-Hant.json +1 -1
- homeassistant/components/brother/translations/id.json +21 -0
- homeassistant/components/bsblan/translations/id.json +17 -2
- homeassistant/components/coinbase/translations/id.json +5 -0
- homeassistant/components/compit/translations/id.json +25 -0
- homeassistant/components/cync/translations/id.json +20 -0
- homeassistant/components/datadog/translations/id.json +28 -0
- homeassistant/components/droplet/translations/id.json +17 -0
- 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/ecowitt/manifest.json +1 -1
- homeassistant/components/eheimdigital/translations/id.json +7 -1
- homeassistant/components/ekeybionyx/translations/id.json +24 -0
- homeassistant/components/ekeybionyx/translations/lt.json +1 -0
- homeassistant/components/elevenlabs/translations/id.json +2 -1
- 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/esphome/analytics.py +11 -0
- homeassistant/components/fan/translations/id.json +3 -0
- homeassistant/components/flick_electric/translations/zh-Hant.json +2 -2
- homeassistant/components/frontend/manifest.json +1 -1
- homeassistant/components/google_generative_ai_conversation/translations/id.json +29 -1
- 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/translations/fr.json +14 -0
- homeassistant/components/homeassistant_connect_zbt2/translations/id.json +238 -0
- homeassistant/components/homeassistant_connect_zbt2/translations/lt.json +24 -8
- homeassistant/components/homeassistant_connect_zbt2/translations/ru.json +22 -4
- homeassistant/components/homeassistant_connect_zbt2/update.py +2 -1
- homeassistant/components/homeassistant_hardware/firmware_config_flow.py +13 -67
- homeassistant/components/homeassistant_hardware/manifest.json +1 -1
- homeassistant/components/homeassistant_hardware/translations/fr.json +10 -0
- homeassistant/components/homeassistant_hardware/translations/id.json +58 -0
- homeassistant/components/homeassistant_hardware/translations/lt.json +17 -0
- homeassistant/components/homeassistant_hardware/translations/ru.json +17 -0
- homeassistant/components/homeassistant_hardware/update.py +8 -3
- homeassistant/components/homeassistant_hardware/util.py +22 -5
- homeassistant/components/homeassistant_sky_connect/translations/fr.json +14 -0
- homeassistant/components/homeassistant_sky_connect/translations/id.json +98 -14
- homeassistant/components/homeassistant_sky_connect/translations/lt.json +24 -8
- homeassistant/components/homeassistant_sky_connect/translations/ru.json +24 -8
- homeassistant/components/homeassistant_sky_connect/update.py +2 -1
- homeassistant/components/homeassistant_yellow/config_flow.py +7 -1
- homeassistant/components/homeassistant_yellow/translations/fr.json +7 -0
- homeassistant/components/homeassistant_yellow/translations/id.json +50 -7
- homeassistant/components/homeassistant_yellow/translations/lt.json +12 -4
- homeassistant/components/homeassistant_yellow/translations/ru.json +6 -4
- homeassistant/components/homeassistant_yellow/update.py +2 -1
- homeassistant/components/homee/translations/id.json +14 -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/id.json +10 -0
- homeassistant/components/irm_kmi/translations/id.json +28 -0
- homeassistant/components/keenetic_ndms2/translations/id.json +2 -1
- homeassistant/components/knx/translations/id.json +3 -0
- homeassistant/components/konnected/translations/lt.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/bg.json +0 -5
- 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 +1 -2
- homeassistant/components/letpot/translations/ga.json +1 -2
- homeassistant/components/letpot/translations/id.json +10 -0
- homeassistant/components/letpot/translations/lt.json +1 -2
- 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/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/id.json +15 -0
- homeassistant/components/mcp/translations/fr.json +20 -1
- homeassistant/components/mcp/translations/id.json +8 -1
- homeassistant/components/media_extractor/manifest.json +1 -1
- homeassistant/components/mqtt/translations/fr.json +2 -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/ru.json +2 -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/ntfy/translations/id.json +11 -0
- homeassistant/components/ntfy/translations/zh-Hant.json +1 -1
- homeassistant/components/number/translations/fr.json +3 -0
- homeassistant/components/number/translations/lt.json +3 -0
- homeassistant/components/number/translations/ru.json +3 -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/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/id.json +49 -0
- homeassistant/components/portainer/__init__.py +5 -0
- homeassistant/components/portainer/translations/id.json +22 -0
- homeassistant/components/portainer/translations/ru.json +15 -0
- homeassistant/components/pyload/translations/id.json +6 -0
- homeassistant/components/qbittorrent/translations/cs.json +4 -4
- homeassistant/components/random/translations/fr.json +1 -0
- homeassistant/components/random/translations/lt.json +1 -0
- homeassistant/components/random/translations/ru.json +1 -0
- homeassistant/components/remote/translations/id.json +3 -0
- homeassistant/components/remote_calendar/translations/id.json +2 -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/id.json +24 -0
- homeassistant/components/satel_integra/translations/id.json +85 -0
- homeassistant/components/scrape/translations/fr.json +2 -0
- homeassistant/components/scrape/translations/lt.json +2 -0
- homeassistant/components/scrape/translations/ru.json +2 -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/ru.json +3 -0
- homeassistant/components/sftp_storage/translations/id.json +14 -0
- homeassistant/components/shelly/translations/id.json +19 -0
- homeassistant/components/sleep_as_android/translations/id.json +31 -0
- homeassistant/components/sleepiq/translations/id.json +5 -0
- homeassistant/components/smartthings/translations/id.json +7 -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/translations/fr.json +1 -0
- homeassistant/components/sql/translations/lt.json +1 -0
- homeassistant/components/sql/translations/ru.json +1 -0
- homeassistant/components/sql/translations/zh-Hant.json +4 -4
- homeassistant/components/switch/translations/id.json +3 -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/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/ru.json +1 -0
- homeassistant/components/teslemetry/translations/id.json +33 -0
- homeassistant/components/togrill/translations/id.json +16 -0
- homeassistant/components/tolo/translations/id.json +2 -1
- homeassistant/components/traccar_server/translations/id.json +9 -1
- homeassistant/components/trafikverket_train/translations/zh-Hant.json +1 -1
- 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/uptimerobot/translations/id.json +6 -0
- homeassistant/components/vegehub/translations/id.json +4 -0
- homeassistant/components/victron_remote_monitoring/translations/id.json +25 -0
- homeassistant/components/volvo/translations/id.json +58 -0
- homeassistant/components/whirlpool/translations/id.json +1 -0
- homeassistant/components/wled/analytics.py +11 -0
- homeassistant/components/xiaomi_aqara/translations/zh-Hant.json +2 -2
- homeassistant/components/yolink/translations/id.json +9 -0
- homeassistant/components/zha/config_flow.py +3 -1
- homeassistant/components/zha/strings.json +16 -16
- homeassistant/components/zha/translations/lt.json +18 -1
- homeassistant/components/zha/translations/nl.json +6 -0
- homeassistant/components/zha/translations/pl.json +24 -5
- homeassistant/components/zha/translations/ru.json +3 -0
- homeassistant/const.py +1 -1
- homeassistant/generated/integrations.json +27 -4
- homeassistant/package_constraints.txt +1 -1
- {homeassistant-2025.10.0b5.dist-info → homeassistant-2025.10.0b6.dist-info}/METADATA +1 -1
- {homeassistant-2025.10.0b5.dist-info → homeassistant-2025.10.0b6.dist-info}/RECORD +260 -232
- {homeassistant-2025.10.0b5.dist-info → homeassistant-2025.10.0b6.dist-info}/WHEEL +0 -0
- {homeassistant-2025.10.0b5.dist-info → homeassistant-2025.10.0b6.dist-info}/entry_points.txt +0 -0
- {homeassistant-2025.10.0b5.dist-info → homeassistant-2025.10.0b6.dist-info}/licenses/LICENSE.md +0 -0
- {homeassistant-2025.10.0b5.dist-info → homeassistant-2025.10.0b6.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
- {homeassistant-2025.10.0b5.dist-info → homeassistant-2025.10.0b6.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
{
|
|
2
|
+
"config": {
|
|
3
|
+
"error": {
|
|
4
|
+
"cannot_connect": "Gagal terhubung"
|
|
5
|
+
},
|
|
6
|
+
"step": {
|
|
7
|
+
"user": {
|
|
8
|
+
"data": {
|
|
9
|
+
"host": "Host",
|
|
10
|
+
"port": "Port"
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"config_subentries": {
|
|
16
|
+
"output": {
|
|
17
|
+
"error": {
|
|
18
|
+
"already_configured": "Perangkat sudah dikonfigurasi"
|
|
19
|
+
},
|
|
20
|
+
"step": {
|
|
21
|
+
"reconfigure": {
|
|
22
|
+
"data": {
|
|
23
|
+
"name": "Nama"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"user": {
|
|
27
|
+
"data": {
|
|
28
|
+
"name": "Nama"
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
"partition": {
|
|
34
|
+
"error": {
|
|
35
|
+
"already_configured": "Perangkat sudah dikonfigurasi"
|
|
36
|
+
},
|
|
37
|
+
"step": {
|
|
38
|
+
"reconfigure": {
|
|
39
|
+
"data": {
|
|
40
|
+
"name": "Nama"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"user": {
|
|
44
|
+
"data": {
|
|
45
|
+
"name": "Nama"
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
"switchable_output": {
|
|
51
|
+
"error": {
|
|
52
|
+
"already_configured": "Perangkat sudah dikonfigurasi"
|
|
53
|
+
},
|
|
54
|
+
"step": {
|
|
55
|
+
"reconfigure": {
|
|
56
|
+
"data": {
|
|
57
|
+
"name": "Nama"
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
"user": {
|
|
61
|
+
"data": {
|
|
62
|
+
"name": "Nama"
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
},
|
|
67
|
+
"zone": {
|
|
68
|
+
"error": {
|
|
69
|
+
"already_configured": "Perangkat sudah dikonfigurasi"
|
|
70
|
+
},
|
|
71
|
+
"step": {
|
|
72
|
+
"reconfigure": {
|
|
73
|
+
"data": {
|
|
74
|
+
"name": "Nama"
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
"user": {
|
|
78
|
+
"data": {
|
|
79
|
+
"name": "Nama"
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
@@ -155,11 +155,13 @@
|
|
|
155
155
|
"pm1": "PM1",
|
|
156
156
|
"pm10": "PM10",
|
|
157
157
|
"pm25": "PM2.5",
|
|
158
|
+
"pm4": "PM4",
|
|
158
159
|
"power": "Puissance",
|
|
159
160
|
"power_factor": "Facteur de puissance",
|
|
160
161
|
"precipitation": "Pr\u00e9cipitation",
|
|
161
162
|
"precipitation_intensity": "Intensit\u00e9 des pr\u00e9cipitations",
|
|
162
163
|
"pressure": "Pression",
|
|
164
|
+
"reactive_energy": "\u00c9nergie r\u00e9active",
|
|
163
165
|
"reactive_power": "Puissance r\u00e9active",
|
|
164
166
|
"signal_strength": "Force du signal",
|
|
165
167
|
"sound_pressure": "Pression acoustique",
|
|
@@ -173,11 +173,13 @@
|
|
|
173
173
|
"pm1": "PM1",
|
|
174
174
|
"pm10": "PM10",
|
|
175
175
|
"pm25": "PM2.5",
|
|
176
|
+
"pm4": "PM4",
|
|
176
177
|
"power": "Galia",
|
|
177
178
|
"power_factor": "Galios koeficientas",
|
|
178
179
|
"precipitation": "Krituliai",
|
|
179
180
|
"precipitation_intensity": "Krituli\u0173 intensyvumas",
|
|
180
181
|
"pressure": "Sl\u0117gis",
|
|
182
|
+
"reactive_energy": "Reaktyvioji energija",
|
|
181
183
|
"reactive_power": "Reaktyvioji galia",
|
|
182
184
|
"signal_strength": "Signalo stiprumas",
|
|
183
185
|
"sound_pressure": "Garso sl\u0117gis",
|
|
@@ -173,11 +173,13 @@
|
|
|
173
173
|
"pm1": "PM1",
|
|
174
174
|
"pm10": "PM10",
|
|
175
175
|
"pm25": "PM2.5",
|
|
176
|
+
"pm4": "PM4",
|
|
176
177
|
"power": "\u041c\u043e\u0449\u043d\u043e\u0441\u0442\u044c",
|
|
177
178
|
"power_factor": "\u041a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u0438",
|
|
178
179
|
"precipitation": "\u041e\u0441\u0430\u0434\u043a\u0438",
|
|
179
180
|
"precipitation_intensity": "\u0418\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u043e\u0441\u0430\u0434\u043a\u043e\u0432",
|
|
180
181
|
"pressure": "\u0414\u0430\u0432\u043b\u0435\u043d\u0438\u0435",
|
|
182
|
+
"reactive_energy": "\u0420\u0435\u0430\u043a\u0442\u0438\u0432\u043d\u0430\u044f \u044d\u043d\u0435\u0440\u0433\u0438\u044f",
|
|
181
183
|
"reactive_power": "\u0420\u0435\u0430\u043a\u0442\u0438\u0432\u043d\u0430\u044f \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u044c",
|
|
182
184
|
"signal_strength": "\u0423\u0440\u043e\u0432\u0435\u043d\u044c \u0441\u0438\u0433\u043d\u0430\u043b\u0430",
|
|
183
185
|
"sound_pressure": "\u0417\u0432\u0443\u043a\u043e\u0432\u043e\u0435 \u0432\u043e\u0437\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435",
|
|
@@ -98,6 +98,11 @@
|
|
|
98
98
|
}
|
|
99
99
|
},
|
|
100
100
|
"sensor": {
|
|
101
|
+
"charger_state": {
|
|
102
|
+
"state": {
|
|
103
|
+
"charger_charging": "Mengisi daya"
|
|
104
|
+
}
|
|
105
|
+
},
|
|
101
106
|
"operation": {
|
|
102
107
|
"state": {
|
|
103
108
|
"fault": "Macet",
|
|
@@ -129,6 +134,13 @@
|
|
|
129
134
|
"description": "Perangkat Shelly {device_name} dengan alamat IP {ip_address} memerlukan kalibrasi. Untuk mengkalibrasi perangkat, perangkat harus di-boot ulang setelah pemasangan yang benar pada katup. Anda dapat mem-boot ulang perangkat di panel webnya, buka 'Settings' > 'Device Reboot'.",
|
|
130
135
|
"title": "Perangkat Shelly {device_name} tidak dikalibrasi"
|
|
131
136
|
},
|
|
137
|
+
"outbound_websocket_incorrectly_enabled": {
|
|
138
|
+
"fix_flow": {
|
|
139
|
+
"abort": {
|
|
140
|
+
"cannot_connect": "Gagal terhubung"
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
},
|
|
132
144
|
"push_update_failure": {
|
|
133
145
|
"description": "Home Assistant tidak menerima pembaruan push dari perangkat Shelly {device_name} dengan alamat IP {ip_address}. Periksa konfigurasi CoIoT di panel web perangkat dan konfigurasi jaringan Anda.",
|
|
134
146
|
"title": "Kegagalan pembaruan push perangkat Shelly {device_name}"
|
|
@@ -136,6 +148,13 @@
|
|
|
136
148
|
"unsupported_firmware": {
|
|
137
149
|
"description": "Perangkat Shelly Anda {device_name} dengan alamat IP {ip_address} menjalankan firmware yang tidak didukung. Harap perbarui firmware.\n\nJika perangkat tidak menawarkan pembaruan, periksa konektivitas internet (gateway, DNS, waktu) dan mulai ulang perangkat.",
|
|
138
150
|
"title": "Firmware tidak didukung untuk perangkat {device_name}"
|
|
151
|
+
},
|
|
152
|
+
"wall_display_firmware_unsupported": {
|
|
153
|
+
"fix_flow": {
|
|
154
|
+
"abort": {
|
|
155
|
+
"cannot_connect": "Gagal terhubung"
|
|
156
|
+
}
|
|
157
|
+
}
|
|
139
158
|
}
|
|
140
159
|
},
|
|
141
160
|
"options": {
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"config": {
|
|
3
|
+
"abort": {
|
|
4
|
+
"cloud_not_connected": "Tidak terhubung ke Home Assistant Cloud.",
|
|
5
|
+
"webhook_not_internet_accessible": "Instans Home Assistant Anda harus dapat diakses dari internet untuk menerima pesan webhook."
|
|
6
|
+
}
|
|
7
|
+
},
|
|
8
|
+
"entity": {
|
|
9
|
+
"event": {
|
|
10
|
+
"lullaby": {
|
|
11
|
+
"state_attributes": {
|
|
12
|
+
"event_type": {
|
|
13
|
+
"state": {
|
|
14
|
+
"stop": "Dihentikan"
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
"sleep_tracking": {
|
|
20
|
+
"state_attributes": {
|
|
21
|
+
"event_type": {
|
|
22
|
+
"state": {
|
|
23
|
+
"paused": "Dijeda",
|
|
24
|
+
"stopped": "Dihentikan"
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -53,6 +53,8 @@
|
|
|
53
53
|
},
|
|
54
54
|
"lamp": {
|
|
55
55
|
"state": {
|
|
56
|
+
"high": "Tinggi",
|
|
57
|
+
"low": "Rendah",
|
|
56
58
|
"off": "Mati",
|
|
57
59
|
"on": "Nyala"
|
|
58
60
|
}
|
|
@@ -63,6 +65,11 @@
|
|
|
63
65
|
"stop": "Dihentikan"
|
|
64
66
|
}
|
|
65
67
|
},
|
|
68
|
+
"soil_level": {
|
|
69
|
+
"state": {
|
|
70
|
+
"normal": "Normal"
|
|
71
|
+
}
|
|
72
|
+
},
|
|
66
73
|
"spin_level": {
|
|
67
74
|
"state": {
|
|
68
75
|
"high": "Tinggi",
|
|
@@ -59,17 +59,12 @@ async def async_setup_entry(
|
|
|
59
59
|
for select_data in SELECT_TYPES:
|
|
60
60
|
if select_data.speaker_model == speaker.model_name.upper():
|
|
61
61
|
if (
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
_LOGGER.error(
|
|
69
|
-
"Invalid value for %s %s",
|
|
70
|
-
select_data.speaker_attribute,
|
|
71
|
-
state,
|
|
72
|
-
)
|
|
62
|
+
speaker.update_soco_int_attribute(
|
|
63
|
+
select_data.soco_attribute, select_data.speaker_attribute
|
|
64
|
+
)
|
|
65
|
+
is not None
|
|
66
|
+
):
|
|
67
|
+
features.append(select_data)
|
|
73
68
|
return features
|
|
74
69
|
|
|
75
70
|
async def _async_create_entities(speaker: SonosSpeaker) -> None:
|
|
@@ -112,8 +107,9 @@ class SonosSelectEntity(SonosEntity, SelectEntity):
|
|
|
112
107
|
@soco_error()
|
|
113
108
|
def poll_state(self) -> None:
|
|
114
109
|
"""Poll the device for the current state."""
|
|
115
|
-
|
|
116
|
-
|
|
110
|
+
self.speaker.update_soco_int_attribute(
|
|
111
|
+
self.soco_attribute, self.speaker_attribute
|
|
112
|
+
)
|
|
117
113
|
|
|
118
114
|
@property
|
|
119
115
|
def current_option(self) -> str | None:
|
|
@@ -275,6 +275,29 @@ class SonosSpeaker:
|
|
|
275
275
|
"""Write states for associated SonosEntity instances."""
|
|
276
276
|
async_dispatcher_send(self.hass, f"{SONOS_STATE_UPDATED}-{self.soco.uid}")
|
|
277
277
|
|
|
278
|
+
def update_soco_int_attribute(
|
|
279
|
+
self, soco_attribute: str, speaker_attribute: str
|
|
280
|
+
) -> int | None:
|
|
281
|
+
"""Update an integer attribute from SoCo and set it on the speaker.
|
|
282
|
+
|
|
283
|
+
Returns the integer value if successful, otherwise None. Do not call from
|
|
284
|
+
async context as it is a blocking function.
|
|
285
|
+
"""
|
|
286
|
+
value: int | None = None
|
|
287
|
+
if (state := getattr(self.soco, soco_attribute, None)) is None:
|
|
288
|
+
_LOGGER.error("Missing value for %s", speaker_attribute)
|
|
289
|
+
else:
|
|
290
|
+
try:
|
|
291
|
+
value = int(state)
|
|
292
|
+
except (TypeError, ValueError):
|
|
293
|
+
_LOGGER.error(
|
|
294
|
+
"Invalid value for %s %s",
|
|
295
|
+
speaker_attribute,
|
|
296
|
+
state,
|
|
297
|
+
)
|
|
298
|
+
setattr(self, speaker_attribute, value)
|
|
299
|
+
return value
|
|
300
|
+
|
|
278
301
|
#
|
|
279
302
|
# Properties
|
|
280
303
|
#
|
|
@@ -12,6 +12,16 @@
|
|
|
12
12
|
}
|
|
13
13
|
},
|
|
14
14
|
"entity": {
|
|
15
|
+
"select": {
|
|
16
|
+
"speech_dialog_level": {
|
|
17
|
+
"state": {
|
|
18
|
+
"high": "Tinggi",
|
|
19
|
+
"low": "Rendah",
|
|
20
|
+
"medium": "Sedang",
|
|
21
|
+
"off": "Mati"
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
},
|
|
15
25
|
"switch": {
|
|
16
26
|
"surround_enabled": {
|
|
17
27
|
"name": "Surround diaktifkan"
|
|
@@ -132,6 +132,7 @@
|
|
|
132
132
|
"pm1": "PM1",
|
|
133
133
|
"pm10": "PM10",
|
|
134
134
|
"pm25": "PM2.5",
|
|
135
|
+
"pm4": "PM4",
|
|
135
136
|
"power": "\u041c\u043e\u0449\u043d\u043e\u0441\u0442\u044c",
|
|
136
137
|
"power_factor": "\u041a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u0438",
|
|
137
138
|
"precipitation": "\u041e\u0441\u0430\u0434\u043a\u0438",
|
|
@@ -31,8 +31,8 @@
|
|
|
31
31
|
"data_description": {
|
|
32
32
|
"device_class": "\u65bc Frontend \u4e2d\u8a2d\u5b9a\u4e4b\u611f\u6e2c\u5668\u985e\u578b/\u985e\u5225\u5716\u793a",
|
|
33
33
|
"state_class": "\u611f\u6e2c\u5668\u72c0\u614b\u985e\u5225",
|
|
34
|
-
"unit_of_measurement": "\u611f\u6e2c\u5668\u6e2c\u91cf\u55ae\u4f4d\uff08\u9078\
|
|
35
|
-
"value_template": "\u5f9e\u6709\u6548\u8ca0\u8f09 Payload \u4e2d\u63d0\u53d6\u6578\u503c\u6a21\u677f\uff08\u9078\
|
|
34
|
+
"unit_of_measurement": "\u611f\u6e2c\u5668\u6e2c\u91cf\u55ae\u4f4d\uff08\u9078\u586b\uff09",
|
|
35
|
+
"value_template": "\u5f9e\u6709\u6548\u8ca0\u8f09 Payload \u4e2d\u63d0\u53d6\u6578\u503c\u6a21\u677f\uff08\u9078\u586b\uff09"
|
|
36
36
|
},
|
|
37
37
|
"description": "\u70ba\u611f\u6e2c\u5668\u63d0\u4f9b\u9644\u52a0\u8a2d\u5b9a",
|
|
38
38
|
"name": "\u9032\u968e\u9078\u9805"
|
|
@@ -86,8 +86,8 @@
|
|
|
86
86
|
"data_description": {
|
|
87
87
|
"device_class": "\u65bc Frontend \u4e2d\u8a2d\u5b9a\u4e4b\u611f\u6e2c\u5668\u985e\u578b/\u985e\u5225\u5716\u793a",
|
|
88
88
|
"state_class": "\u611f\u6e2c\u5668\u72c0\u614b\u985e\u5225",
|
|
89
|
-
"unit_of_measurement": "\u611f\u6e2c\u5668\u6e2c\u91cf\u55ae\u4f4d\uff08\u9078\
|
|
90
|
-
"value_template": "\u5f9e\u6709\u6548\u8ca0\u8f09 Payload \u4e2d\u63d0\u53d6\u6578\u503c\u6a21\u677f\uff08\u9078\
|
|
89
|
+
"unit_of_measurement": "\u611f\u6e2c\u5668\u6e2c\u91cf\u55ae\u4f4d\uff08\u9078\u586b\uff09",
|
|
90
|
+
"value_template": "\u5f9e\u6709\u6548\u8ca0\u8f09 Payload \u4e2d\u63d0\u53d6\u6578\u503c\u6a21\u677f\uff08\u9078\u586b\uff09"
|
|
91
91
|
},
|
|
92
92
|
"description": "\u9032\u968e\u9078\u9805",
|
|
93
93
|
"name": "\u9032\u968e\u9078\u9805"
|
|
@@ -10,6 +10,12 @@
|
|
|
10
10
|
},
|
|
11
11
|
"flow_title": "{name} ({address})",
|
|
12
12
|
"step": {
|
|
13
|
+
"cloud_login": {
|
|
14
|
+
"data": {
|
|
15
|
+
"password": "Kata Sandi",
|
|
16
|
+
"username": "Nama Pengguna"
|
|
17
|
+
}
|
|
18
|
+
},
|
|
13
19
|
"confirm": {
|
|
14
20
|
"description": "Ingin menyiapkan {name}?"
|
|
15
21
|
},
|
|
@@ -79,6 +85,11 @@
|
|
|
79
85
|
"false": "Bermasalah",
|
|
80
86
|
"true": "Oke"
|
|
81
87
|
}
|
|
88
|
+
},
|
|
89
|
+
"preset_mode": {
|
|
90
|
+
"state": {
|
|
91
|
+
"normal": "Normal"
|
|
92
|
+
}
|
|
82
93
|
}
|
|
83
94
|
}
|
|
84
95
|
}
|
|
@@ -128,6 +139,7 @@
|
|
|
128
139
|
},
|
|
129
140
|
"water_level": {
|
|
130
141
|
"state": {
|
|
142
|
+
"empty": "Kosong",
|
|
131
143
|
"high": "Tinggi",
|
|
132
144
|
"low": "Rendah",
|
|
133
145
|
"medium": "Sedang"
|
|
@@ -109,15 +109,13 @@ class SwitchBotCloudCoverRollerShade(SwitchBotCloudCover):
|
|
|
109
109
|
|
|
110
110
|
async def async_open_cover(self, **kwargs: Any) -> None:
|
|
111
111
|
"""Open the cover."""
|
|
112
|
-
await self.send_api_command(RollerShadeCommands.SET_POSITION, parameters=
|
|
112
|
+
await self.send_api_command(RollerShadeCommands.SET_POSITION, parameters=0)
|
|
113
113
|
await asyncio.sleep(COVER_ENTITY_AFTER_COMMAND_REFRESH)
|
|
114
114
|
await self.coordinator.async_request_refresh()
|
|
115
115
|
|
|
116
116
|
async def async_close_cover(self, **kwargs: Any) -> None:
|
|
117
117
|
"""Close the cover."""
|
|
118
|
-
await self.send_api_command(
|
|
119
|
-
RollerShadeCommands.SET_POSITION, parameters=str(100)
|
|
120
|
-
)
|
|
118
|
+
await self.send_api_command(RollerShadeCommands.SET_POSITION, parameters=100)
|
|
121
119
|
await asyncio.sleep(COVER_ENTITY_AFTER_COMMAND_REFRESH)
|
|
122
120
|
await self.coordinator.async_request_refresh()
|
|
123
121
|
|
|
@@ -126,7 +124,7 @@ class SwitchBotCloudCoverRollerShade(SwitchBotCloudCover):
|
|
|
126
124
|
position: int | None = kwargs.get("position")
|
|
127
125
|
if position is not None:
|
|
128
126
|
await self.send_api_command(
|
|
129
|
-
RollerShadeCommands.SET_POSITION, parameters=
|
|
127
|
+
RollerShadeCommands.SET_POSITION, parameters=(100 - position)
|
|
130
128
|
)
|
|
131
129
|
await asyncio.sleep(COVER_ENTITY_AFTER_COMMAND_REFRESH)
|
|
132
130
|
await self.coordinator.async_request_refresh()
|
|
@@ -44,7 +44,7 @@ class SwitchBotCloudEntity(CoordinatorEntity[SwitchBotCoordinator]):
|
|
|
44
44
|
self,
|
|
45
45
|
command: Commands,
|
|
46
46
|
command_type: str = "command",
|
|
47
|
-
parameters: dict | str = "default",
|
|
47
|
+
parameters: dict | str | int = "default",
|
|
48
48
|
) -> None:
|
|
49
49
|
"""Send command to device."""
|
|
50
50
|
await self._api.send_command(
|
|
@@ -16,5 +16,32 @@
|
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
|
+
},
|
|
20
|
+
"entity": {
|
|
21
|
+
"fan": {
|
|
22
|
+
"air_purifier": {
|
|
23
|
+
"state_attributes": {
|
|
24
|
+
"preset_mode": {
|
|
25
|
+
"state": {
|
|
26
|
+
"auto": "Otomatis",
|
|
27
|
+
"normal": "Normal"
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
"humidifier": {
|
|
34
|
+
"evaporative_humidifier": {
|
|
35
|
+
"state_attributes": {
|
|
36
|
+
"mode": {
|
|
37
|
+
"state": {
|
|
38
|
+
"high": "Tinggi",
|
|
39
|
+
"low": "Rendah",
|
|
40
|
+
"medium": "Sedang"
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
19
46
|
}
|
|
20
47
|
}
|