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.

Files changed (260) hide show
  1. homeassistant/brands/eltako.json +5 -0
  2. homeassistant/brands/konnected.json +5 -0
  3. homeassistant/brands/level.json +5 -0
  4. homeassistant/components/accuweather/translations/id.json +9 -0
  5. homeassistant/components/airos/translations/id.json +36 -0
  6. homeassistant/components/aladdin_connect/config_flow.py +11 -0
  7. homeassistant/components/aladdin_connect/strings.json +2 -1
  8. homeassistant/components/aladdin_connect/translations/cs.json +1 -0
  9. homeassistant/components/aladdin_connect/translations/de.json +1 -0
  10. homeassistant/components/aladdin_connect/translations/en-GB.json +1 -0
  11. homeassistant/components/aladdin_connect/translations/en.json +1 -0
  12. homeassistant/components/aladdin_connect/translations/es.json +1 -0
  13. homeassistant/components/aladdin_connect/translations/et.json +1 -0
  14. homeassistant/components/aladdin_connect/translations/id.json +28 -1
  15. homeassistant/components/aladdin_connect/translations/lt.json +1 -0
  16. homeassistant/components/aladdin_connect/translations/pt.json +1 -0
  17. homeassistant/components/alexa_devices/translations/id.json +12 -0
  18. homeassistant/components/analytics/analytics.py +23 -12
  19. homeassistant/components/androidtv_remote/translations/id.json +7 -1
  20. homeassistant/components/anthropic/translations/id.json +2 -1
  21. homeassistant/components/aosmith/translations/id.json +9 -0
  22. homeassistant/components/apcupsd/translations/id.json +6 -0
  23. homeassistant/components/august/translations/id.json +25 -1
  24. homeassistant/components/bayesian/binary_sensor.py +7 -0
  25. homeassistant/components/bayesian/translations/id.json +62 -0
  26. homeassistant/components/broadlink/translations/zh-Hant.json +1 -1
  27. homeassistant/components/brother/translations/id.json +21 -0
  28. homeassistant/components/bsblan/translations/id.json +17 -2
  29. homeassistant/components/coinbase/translations/id.json +5 -0
  30. homeassistant/components/compit/translations/id.json +25 -0
  31. homeassistant/components/cync/translations/id.json +20 -0
  32. homeassistant/components/datadog/translations/id.json +28 -0
  33. homeassistant/components/droplet/translations/id.json +17 -0
  34. homeassistant/components/ecobee/strings.json +2 -2
  35. homeassistant/components/ecobee/translations/cs.json +2 -2
  36. homeassistant/components/ecobee/translations/de.json +3 -3
  37. homeassistant/components/ecobee/translations/el.json +1 -2
  38. homeassistant/components/ecobee/translations/en-GB.json +2 -2
  39. homeassistant/components/ecobee/translations/en.json +2 -2
  40. homeassistant/components/ecobee/translations/es.json +2 -2
  41. homeassistant/components/ecobee/translations/et.json +2 -2
  42. homeassistant/components/ecobee/translations/ga.json +1 -5
  43. homeassistant/components/ecobee/translations/hu.json +1 -5
  44. homeassistant/components/ecobee/translations/it.json +1 -5
  45. homeassistant/components/ecobee/translations/ja.json +1 -5
  46. homeassistant/components/ecobee/translations/lt.json +2 -2
  47. homeassistant/components/ecobee/translations/pt.json +2 -2
  48. homeassistant/components/ecobee/translations/ru.json +1 -5
  49. homeassistant/components/ecobee/translations/sk.json +1 -5
  50. homeassistant/components/ecobee/translations/sv.json +1 -5
  51. homeassistant/components/ecobee/translations/tr.json +1 -5
  52. homeassistant/components/ecobee/translations/zh-Hans.json +1 -5
  53. homeassistant/components/ecobee/translations/zh-Hant.json +1 -5
  54. homeassistant/components/ecowitt/manifest.json +1 -1
  55. homeassistant/components/eheimdigital/translations/id.json +7 -1
  56. homeassistant/components/ekeybionyx/translations/id.json +24 -0
  57. homeassistant/components/ekeybionyx/translations/lt.json +1 -0
  58. homeassistant/components/elevenlabs/translations/id.json +2 -1
  59. homeassistant/components/elkm1/translations/id.json +6 -0
  60. homeassistant/components/emoncms/translations/id.json +9 -0
  61. homeassistant/components/enphase_envoy/translations/id.json +1 -0
  62. homeassistant/components/esphome/analytics.py +11 -0
  63. homeassistant/components/fan/translations/id.json +3 -0
  64. homeassistant/components/flick_electric/translations/zh-Hant.json +2 -2
  65. homeassistant/components/frontend/manifest.json +1 -1
  66. homeassistant/components/google_generative_ai_conversation/translations/id.json +29 -1
  67. homeassistant/components/hassio/translations/id.json +29 -0
  68. homeassistant/components/holiday/translations/zh-Hant.json +2 -2
  69. homeassistant/components/homeassistant/translations/id.json +8 -0
  70. homeassistant/components/homeassistant_connect_zbt2/config_flow.py +6 -0
  71. homeassistant/components/homeassistant_connect_zbt2/translations/fr.json +14 -0
  72. homeassistant/components/homeassistant_connect_zbt2/translations/id.json +238 -0
  73. homeassistant/components/homeassistant_connect_zbt2/translations/lt.json +24 -8
  74. homeassistant/components/homeassistant_connect_zbt2/translations/ru.json +22 -4
  75. homeassistant/components/homeassistant_connect_zbt2/update.py +2 -1
  76. homeassistant/components/homeassistant_hardware/firmware_config_flow.py +13 -67
  77. homeassistant/components/homeassistant_hardware/manifest.json +1 -1
  78. homeassistant/components/homeassistant_hardware/translations/fr.json +10 -0
  79. homeassistant/components/homeassistant_hardware/translations/id.json +58 -0
  80. homeassistant/components/homeassistant_hardware/translations/lt.json +17 -0
  81. homeassistant/components/homeassistant_hardware/translations/ru.json +17 -0
  82. homeassistant/components/homeassistant_hardware/update.py +8 -3
  83. homeassistant/components/homeassistant_hardware/util.py +22 -5
  84. homeassistant/components/homeassistant_sky_connect/translations/fr.json +14 -0
  85. homeassistant/components/homeassistant_sky_connect/translations/id.json +98 -14
  86. homeassistant/components/homeassistant_sky_connect/translations/lt.json +24 -8
  87. homeassistant/components/homeassistant_sky_connect/translations/ru.json +24 -8
  88. homeassistant/components/homeassistant_sky_connect/update.py +2 -1
  89. homeassistant/components/homeassistant_yellow/config_flow.py +7 -1
  90. homeassistant/components/homeassistant_yellow/translations/fr.json +7 -0
  91. homeassistant/components/homeassistant_yellow/translations/id.json +50 -7
  92. homeassistant/components/homeassistant_yellow/translations/lt.json +12 -4
  93. homeassistant/components/homeassistant_yellow/translations/ru.json +6 -4
  94. homeassistant/components/homeassistant_yellow/update.py +2 -1
  95. homeassistant/components/homee/translations/id.json +14 -0
  96. homeassistant/components/husqvarna_automower/translations/id.json +18 -0
  97. homeassistant/components/husqvarna_automower_ble/translations/id.json +4 -0
  98. homeassistant/components/icloud/translations/id.json +3 -0
  99. homeassistant/components/imeon_inverter/translations/id.json +10 -0
  100. homeassistant/components/irm_kmi/translations/id.json +28 -0
  101. homeassistant/components/keenetic_ndms2/translations/id.json +2 -1
  102. homeassistant/components/knx/translations/id.json +3 -0
  103. homeassistant/components/konnected/translations/lt.json +6 -0
  104. homeassistant/components/konnected_esphome/__init__.py +1 -0
  105. homeassistant/components/konnected_esphome/manifest.json +6 -0
  106. homeassistant/components/letpot/number.py +2 -1
  107. homeassistant/components/letpot/strings.json +1 -2
  108. homeassistant/components/letpot/translations/bg.json +0 -5
  109. homeassistant/components/letpot/translations/cs.json +1 -2
  110. homeassistant/components/letpot/translations/de.json +1 -2
  111. homeassistant/components/letpot/translations/en-GB.json +1 -2
  112. homeassistant/components/letpot/translations/en.json +1 -2
  113. homeassistant/components/letpot/translations/es.json +1 -2
  114. homeassistant/components/letpot/translations/et.json +1 -2
  115. homeassistant/components/letpot/translations/fr.json +1 -2
  116. homeassistant/components/letpot/translations/ga.json +1 -2
  117. homeassistant/components/letpot/translations/id.json +10 -0
  118. homeassistant/components/letpot/translations/lt.json +1 -2
  119. homeassistant/components/letpot/translations/nl.json +0 -5
  120. homeassistant/components/letpot/translations/pt.json +1 -2
  121. homeassistant/components/letpot/translations/sk.json +1 -2
  122. homeassistant/components/letpot/translations/zh-Hans.json +1 -2
  123. homeassistant/components/letpot/translations/zh-Hant.json +1 -2
  124. homeassistant/components/lg_thinq/translations/id.json +5 -2
  125. homeassistant/components/libre_hardware_monitor/translations/id.json +19 -0
  126. homeassistant/components/lifx/translations/zh-Hant.json +1 -1
  127. homeassistant/components/light/translations/id.json +2 -1
  128. homeassistant/components/litterrobot/translations/id.json +15 -0
  129. homeassistant/components/mcp/translations/fr.json +20 -1
  130. homeassistant/components/mcp/translations/id.json +8 -1
  131. homeassistant/components/media_extractor/manifest.json +1 -1
  132. homeassistant/components/mqtt/translations/fr.json +2 -0
  133. homeassistant/components/mqtt/translations/id.json +6 -0
  134. homeassistant/components/mqtt/translations/lt.json +2 -0
  135. homeassistant/components/mqtt/translations/nl.json +9 -0
  136. homeassistant/components/mqtt/translations/ru.json +2 -0
  137. homeassistant/components/nasweb/translations/id.json +10 -0
  138. homeassistant/components/nederlandse_spoorwegen/translations/id.json +28 -0
  139. homeassistant/components/nightscout/translations/zh-Hant.json +1 -1
  140. homeassistant/components/niko_home_control/translations/id.json +7 -1
  141. homeassistant/components/ntfy/translations/id.json +11 -0
  142. homeassistant/components/ntfy/translations/zh-Hant.json +1 -1
  143. homeassistant/components/number/translations/fr.json +3 -0
  144. homeassistant/components/number/translations/lt.json +3 -0
  145. homeassistant/components/number/translations/ru.json +3 -0
  146. homeassistant/components/ollama/translations/id.json +18 -1
  147. homeassistant/components/open_router/translations/id.json +40 -0
  148. homeassistant/components/openai_conversation/translations/id.json +26 -1
  149. homeassistant/components/opower/translations/id.json +6 -0
  150. homeassistant/components/overkiz/translations/id.json +1 -0
  151. homeassistant/components/peco/translations/zh-Hant.json +1 -1
  152. homeassistant/components/pi_hole/__init__.py +9 -3
  153. homeassistant/components/playstation_network/translations/id.json +8 -0
  154. homeassistant/components/plex/translations/zh-Hant.json +1 -1
  155. homeassistant/components/pooldose/translations/id.json +49 -0
  156. homeassistant/components/portainer/__init__.py +5 -0
  157. homeassistant/components/portainer/translations/id.json +22 -0
  158. homeassistant/components/portainer/translations/ru.json +15 -0
  159. homeassistant/components/pyload/translations/id.json +6 -0
  160. homeassistant/components/qbittorrent/translations/cs.json +4 -4
  161. homeassistant/components/random/translations/fr.json +1 -0
  162. homeassistant/components/random/translations/lt.json +1 -0
  163. homeassistant/components/random/translations/ru.json +1 -0
  164. homeassistant/components/remote/translations/id.json +3 -0
  165. homeassistant/components/remote_calendar/translations/id.json +2 -1
  166. homeassistant/components/reolink/translations/es.json +4 -4
  167. homeassistant/components/roomba/translations/bg.json +1 -2
  168. homeassistant/components/roomba/translations/ca.json +2 -4
  169. homeassistant/components/roomba/translations/el.json +2 -4
  170. homeassistant/components/roomba/translations/en-GB.json +2 -2
  171. homeassistant/components/roomba/translations/en.json +2 -2
  172. homeassistant/components/roomba/translations/fi.json +2 -4
  173. homeassistant/components/roomba/translations/fr.json +2 -4
  174. homeassistant/components/roomba/translations/ga.json +2 -4
  175. homeassistant/components/roomba/translations/he.json +1 -5
  176. homeassistant/components/roomba/translations/hu.json +2 -4
  177. homeassistant/components/roomba/translations/id.json +2 -4
  178. homeassistant/components/roomba/translations/it.json +2 -4
  179. homeassistant/components/roomba/translations/ja.json +2 -4
  180. homeassistant/components/roomba/translations/ko.json +2 -4
  181. homeassistant/components/roomba/translations/lb.json +1 -5
  182. homeassistant/components/roomba/translations/lt.json +2 -2
  183. homeassistant/components/roomba/translations/nb.json +1 -5
  184. homeassistant/components/roomba/translations/nl.json +2 -4
  185. homeassistant/components/roomba/translations/pl.json +1 -5
  186. homeassistant/components/roomba/translations/pt-BR.json +1 -5
  187. homeassistant/components/roomba/translations/pt.json +2 -2
  188. homeassistant/components/roomba/translations/ro.json +1 -5
  189. homeassistant/components/roomba/translations/ru.json +2 -4
  190. homeassistant/components/roomba/translations/sk.json +2 -4
  191. homeassistant/components/roomba/translations/sv.json +2 -4
  192. homeassistant/components/roomba/translations/tr.json +2 -4
  193. homeassistant/components/roomba/translations/uk.json +1 -5
  194. homeassistant/components/roomba/translations/zh-Hans.json +2 -4
  195. homeassistant/components/roomba/translations/zh-Hant.json +2 -4
  196. homeassistant/components/route_b_smart_meter/translations/id.json +24 -0
  197. homeassistant/components/satel_integra/translations/id.json +85 -0
  198. homeassistant/components/scrape/translations/fr.json +2 -0
  199. homeassistant/components/scrape/translations/lt.json +2 -0
  200. homeassistant/components/scrape/translations/ru.json +2 -0
  201. homeassistant/components/sensor/translations/fr.json +3 -0
  202. homeassistant/components/sensor/translations/lt.json +3 -0
  203. homeassistant/components/sensor/translations/nl.json +3 -0
  204. homeassistant/components/sensor/translations/pl.json +3 -0
  205. homeassistant/components/sensor/translations/ru.json +3 -0
  206. homeassistant/components/sftp_storage/translations/id.json +14 -0
  207. homeassistant/components/shelly/translations/id.json +19 -0
  208. homeassistant/components/sleep_as_android/translations/id.json +31 -0
  209. homeassistant/components/sleepiq/translations/id.json +5 -0
  210. homeassistant/components/smartthings/translations/id.json +7 -0
  211. homeassistant/components/sonos/select.py +9 -13
  212. homeassistant/components/sonos/speaker.py +23 -0
  213. homeassistant/components/sonos/translations/id.json +10 -0
  214. homeassistant/components/sql/translations/fr.json +1 -0
  215. homeassistant/components/sql/translations/lt.json +1 -0
  216. homeassistant/components/sql/translations/ru.json +1 -0
  217. homeassistant/components/sql/translations/zh-Hant.json +4 -4
  218. homeassistant/components/switch/translations/id.json +3 -0
  219. homeassistant/components/switchbot/translations/id.json +12 -0
  220. homeassistant/components/switchbot_cloud/cover.py +3 -5
  221. homeassistant/components/switchbot_cloud/entity.py +1 -1
  222. homeassistant/components/switchbot_cloud/translations/id.json +27 -0
  223. homeassistant/components/telegram_bot/translations/id.json +5 -0
  224. homeassistant/components/template/translations/fr.json +1 -0
  225. homeassistant/components/template/translations/id.json +81 -0
  226. homeassistant/components/template/translations/lt.json +1 -0
  227. homeassistant/components/template/translations/ru.json +1 -0
  228. homeassistant/components/teslemetry/translations/id.json +33 -0
  229. homeassistant/components/togrill/translations/id.json +16 -0
  230. homeassistant/components/tolo/translations/id.json +2 -1
  231. homeassistant/components/traccar_server/translations/id.json +9 -1
  232. homeassistant/components/trafikverket_train/translations/zh-Hant.json +1 -1
  233. homeassistant/components/tuya/translations/id.json +32 -0
  234. homeassistant/components/unifiprotect/translations/id.json +3 -0
  235. homeassistant/components/update/translations/id.json +3 -0
  236. homeassistant/components/uptime_kuma/translations/id.json +40 -0
  237. homeassistant/components/uptimerobot/translations/id.json +6 -0
  238. homeassistant/components/vegehub/translations/id.json +4 -0
  239. homeassistant/components/victron_remote_monitoring/translations/id.json +25 -0
  240. homeassistant/components/volvo/translations/id.json +58 -0
  241. homeassistant/components/whirlpool/translations/id.json +1 -0
  242. homeassistant/components/wled/analytics.py +11 -0
  243. homeassistant/components/xiaomi_aqara/translations/zh-Hant.json +2 -2
  244. homeassistant/components/yolink/translations/id.json +9 -0
  245. homeassistant/components/zha/config_flow.py +3 -1
  246. homeassistant/components/zha/strings.json +16 -16
  247. homeassistant/components/zha/translations/lt.json +18 -1
  248. homeassistant/components/zha/translations/nl.json +6 -0
  249. homeassistant/components/zha/translations/pl.json +24 -5
  250. homeassistant/components/zha/translations/ru.json +3 -0
  251. homeassistant/const.py +1 -1
  252. homeassistant/generated/integrations.json +27 -4
  253. homeassistant/package_constraints.txt +1 -1
  254. {homeassistant-2025.10.0b5.dist-info → homeassistant-2025.10.0b6.dist-info}/METADATA +1 -1
  255. {homeassistant-2025.10.0b5.dist-info → homeassistant-2025.10.0b6.dist-info}/RECORD +260 -232
  256. {homeassistant-2025.10.0b5.dist-info → homeassistant-2025.10.0b6.dist-info}/WHEEL +0 -0
  257. {homeassistant-2025.10.0b5.dist-info → homeassistant-2025.10.0b6.dist-info}/entry_points.txt +0 -0
  258. {homeassistant-2025.10.0b5.dist-info → homeassistant-2025.10.0b6.dist-info}/licenses/LICENSE.md +0 -0
  259. {homeassistant-2025.10.0b5.dist-info → homeassistant-2025.10.0b6.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
  260. {homeassistant-2025.10.0b5.dist-info → homeassistant-2025.10.0b6.dist-info}/top_level.txt +0 -0
@@ -983,11 +983,13 @@
983
983
  "pm1": "PM1",
984
984
  "pm10": "PM10",
985
985
  "pm25": "PM2.5",
986
+ "pm4": "PM4",
986
987
  "power": "\u041c\u043e\u0449\u043d\u043e\u0441\u0442\u044c",
987
988
  "power_factor": "\u041a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u0438",
988
989
  "precipitation": "\u041e\u0441\u0430\u0434\u043a\u0438",
989
990
  "precipitation_intensity": "\u0418\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u043e\u0441\u0430\u0434\u043a\u043e\u0432",
990
991
  "pressure": "\u0414\u0430\u0432\u043b\u0435\u043d\u0438\u0435",
992
+ "reactive_energy": "\u0420\u0435\u0430\u043a\u0442\u0438\u0432\u043d\u0430\u044f \u044d\u043d\u0435\u0440\u0433\u0438\u044f",
991
993
  "reactive_power": "\u0420\u0435\u0430\u043a\u0442\u0438\u0432\u043d\u0430\u044f \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u044c",
992
994
  "signal_strength": "\u0423\u0440\u043e\u0432\u0435\u043d\u044c \u0441\u0438\u0433\u043d\u0430\u043b\u0430",
993
995
  "sound_pressure": "\u0417\u0432\u0443\u043a\u043e\u0432\u043e\u0435 \u0432\u043e\u0437\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435",
@@ -17,5 +17,15 @@
17
17
  }
18
18
  }
19
19
  }
20
+ },
21
+ "entity": {
22
+ "sensor": {
23
+ "sensor_input": {
24
+ "state": {
25
+ "active": "Aktif",
26
+ "normal": "Normal"
27
+ }
28
+ }
29
+ }
20
30
  }
21
31
  }
@@ -0,0 +1,28 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "Layanan sudah dikonfigurasi"
5
+ },
6
+ "error": {
7
+ "invalid_auth": "Kunci API tidak valid",
8
+ "unknown": "Kesalahan tak terduga"
9
+ },
10
+ "step": {
11
+ "user": {
12
+ "data": {
13
+ "api_key": "Kunci API"
14
+ }
15
+ }
16
+ }
17
+ },
18
+ "config_subentries": {
19
+ "route": {
20
+ "abort": {
21
+ "cannot_connect": "Gagal terhubung"
22
+ },
23
+ "error": {
24
+ "cannot_connect": "Gagal terhubung"
25
+ }
26
+ }
27
+ }
28
+ }
@@ -14,7 +14,7 @@
14
14
  "api_key": "API \u91d1\u9470",
15
15
  "url": "\u7db2\u5740"
16
16
  },
17
- "description": "- URL\uff1aNightscout \u88dd\u7f6e\u4f4d\u5740\u3002\u4f8b\u5982\uff1ahttps://myhomeassistant.duckdns.org:5423\n- API \u91d1\u9470\uff08\u9078\u9805\uff09\uff1a\u50c5\u65bc\u88dd\u7f6e\u70ba\u4fdd\u8b77\u72c0\u614b\uff08(auth_default_roles != readable\uff09\u4e0b\u4f7f\u7528\u3002",
17
+ "description": "- URL\uff1aNightscout \u88dd\u7f6e\u4f4d\u5740\u3002\u4f8b\u5982\uff1ahttps://myhomeassistant.duckdns.org:5423\n- API \u91d1\u9470\uff08\u9078\u586b\uff09\uff1a\u50c5\u65bc\u88dd\u7f6e\u70ba\u4fdd\u8b77\u72c0\u614b\uff08(auth_default_roles != readable\uff09\u4e0b\u4f7f\u7528\u3002",
18
18
  "title": "\u8f38\u5165 Nightscout \u4f3a\u670d\u5668\u8cc7\u8a0a\u3002"
19
19
  }
20
20
  }
@@ -1,12 +1,18 @@
1
1
  {
2
2
  "config": {
3
3
  "abort": {
4
- "already_configured": "Perangkat sudah dikonfigurasi"
4
+ "already_configured": "Perangkat sudah dikonfigurasi",
5
+ "reconfigure_successful": "Konfigurasi ulang berhasil"
5
6
  },
6
7
  "error": {
7
8
  "cannot_connect": "Gagal terhubung"
8
9
  },
9
10
  "step": {
11
+ "reconfigure": {
12
+ "data": {
13
+ "host": "Host"
14
+ }
15
+ },
10
16
  "user": {
11
17
  "data": {
12
18
  "host": "Host"
@@ -47,10 +47,21 @@
47
47
  },
48
48
  "config_subentries": {
49
49
  "topic": {
50
+ "abort": {
51
+ "reconfigure_successful": "Konfigurasi ulang berhasil"
52
+ },
50
53
  "error": {
51
54
  "cannot_connect": "Gagal terhubung",
52
55
  "unknown": "Kesalahan tak terduga"
53
56
  }
54
57
  }
58
+ },
59
+ "selector": {
60
+ "priority": {
61
+ "options": {
62
+ "2": "Rendah",
63
+ "4": "Tinggi"
64
+ }
65
+ }
55
66
  }
56
67
  }
@@ -123,7 +123,7 @@
123
123
  "filter_title": "\u5305\u542b\u6a19\u984c\u5b8c\u5168\u7b26\u5408\u6307\u5b9a\u6587\u5b57\u7684\u8a0a\u606f"
124
124
  },
125
125
  "description": "\u5957\u7528\u7be9\u9078\u5668\u4ee5\u7e2e\u5c0f Home Assistant \u8a02\u95b1\u4e3b\u984c\u6642\u63a5\u6536\u7684\u8a0a\u606f\u7bc4\u570d\u3002\u7be9\u9078\u5668\u50c5\u9069\u7528\u65bc\u4e8b\u4ef6\u5be6\u9ad4\u3002",
126
- "name": "\u8a0a\u606f\u7be9\u9078\u5668\uff08\u9078\u9805\uff09"
126
+ "name": "\u8a0a\u606f\u7be9\u9078\u5668\uff08\u9078\u586b\uff09"
127
127
  }
128
128
  },
129
129
  "title": "\u4e3b\u984c"
@@ -117,6 +117,9 @@
117
117
  "pm25": {
118
118
  "name": "PM2.5"
119
119
  },
120
+ "pm4": {
121
+ "name": "PM4"
122
+ },
120
123
  "power": {
121
124
  "name": "Puissance"
122
125
  },
@@ -117,6 +117,9 @@
117
117
  "pm25": {
118
118
  "name": "PM2.5"
119
119
  },
120
+ "pm4": {
121
+ "name": "PM4"
122
+ },
120
123
  "power": {
121
124
  "name": "Galia"
122
125
  },
@@ -117,6 +117,9 @@
117
117
  "pm25": {
118
118
  "name": "PM2.5"
119
119
  },
120
+ "pm4": {
121
+ "name": "PM4"
122
+ },
120
123
  "power": {
121
124
  "name": "\u041c\u043e\u0449\u043d\u043e\u0441\u0442\u044c"
122
125
  },
@@ -5,6 +5,7 @@
5
5
  },
6
6
  "error": {
7
7
  "cannot_connect": "Gagal terhubung",
8
+ "invalid_url": "Nama host atau alamat IP tidak valid",
8
9
  "unknown": "Kesalahan tak terduga"
9
10
  },
10
11
  "step": {
@@ -16,15 +17,31 @@
16
17
  }
17
18
  },
18
19
  "config_subentries": {
20
+ "ai_task_data": {
21
+ "abort": {
22
+ "cannot_connect": "Gagal terhubung",
23
+ "reconfigure_successful": "Konfigurasi ulang berhasil"
24
+ },
25
+ "step": {
26
+ "set_options": {
27
+ "data": {
28
+ "name": "Nama",
29
+ "prompt": "Instruksi"
30
+ }
31
+ }
32
+ }
33
+ },
19
34
  "conversation": {
20
35
  "abort": {
36
+ "cannot_connect": "Gagal terhubung",
21
37
  "reconfigure_successful": "Konfigurasi ulang berhasil"
22
38
  },
23
39
  "step": {
24
40
  "set_options": {
25
41
  "data": {
26
42
  "llm_hass_api": "Kendalikan Home Assistant",
27
- "name": "Nama"
43
+ "name": "Nama",
44
+ "prompt": "Instruksi"
28
45
  }
29
46
  }
30
47
  }
@@ -0,0 +1,40 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "Layanan sudah dikonfigurasi"
5
+ },
6
+ "error": {
7
+ "cannot_connect": "Gagal terhubung",
8
+ "unknown": "Kesalahan tak terduga"
9
+ },
10
+ "step": {
11
+ "user": {
12
+ "data": {
13
+ "api_key": "Kunci API"
14
+ }
15
+ }
16
+ }
17
+ },
18
+ "config_subentries": {
19
+ "ai_task_data": {
20
+ "abort": {
21
+ "cannot_connect": "Gagal terhubung",
22
+ "unknown": "Kesalahan tak terduga"
23
+ }
24
+ },
25
+ "conversation": {
26
+ "abort": {
27
+ "cannot_connect": "Gagal terhubung",
28
+ "unknown": "Kesalahan tak terduga"
29
+ },
30
+ "step": {
31
+ "user": {
32
+ "data": {
33
+ "llm_hass_api": "Kendalikan Home Assistant",
34
+ "prompt": "Instruksi"
35
+ }
36
+ }
37
+ }
38
+ }
39
+ }
40
+ }
@@ -17,6 +17,23 @@
17
17
  }
18
18
  },
19
19
  "config_subentries": {
20
+ "ai_task_data": {
21
+ "abort": {
22
+ "reconfigure_successful": "Konfigurasi ulang berhasil"
23
+ },
24
+ "step": {
25
+ "advanced": {
26
+ "data": {
27
+ "chat_model": "Model"
28
+ }
29
+ },
30
+ "init": {
31
+ "data": {
32
+ "name": "Nama"
33
+ }
34
+ }
35
+ }
36
+ },
20
37
  "conversation": {
21
38
  "abort": {
22
39
  "reconfigure_successful": "Konfigurasi ulang berhasil"
@@ -30,7 +47,8 @@
30
47
  "init": {
31
48
  "data": {
32
49
  "llm_hass_api": "Kendalikan Home Assistant",
33
- "name": "Nama"
50
+ "name": "Nama",
51
+ "prompt": "Instruksi"
34
52
  }
35
53
  }
36
54
  }
@@ -55,6 +73,13 @@
55
73
  "low": "Rendah",
56
74
  "medium": "Sedang"
57
75
  }
76
+ },
77
+ "verbosity": {
78
+ "options": {
79
+ "high": "Tinggi",
80
+ "low": "Rendah",
81
+ "medium": "Sedang"
82
+ }
58
83
  }
59
84
  },
60
85
  "services": {
@@ -9,6 +9,12 @@
9
9
  "invalid_auth": "Autentikasi tidak valid"
10
10
  },
11
11
  "step": {
12
+ "credentials": {
13
+ "data": {
14
+ "password": "Kata Sandi",
15
+ "username": "Nama Pengguna"
16
+ }
17
+ },
12
18
  "reauth_confirm": {
13
19
  "data": {
14
20
  "password": "Kata Sandi",
@@ -103,6 +103,7 @@
103
103
  "sensor": {
104
104
  "battery": {
105
105
  "state": {
106
+ "full": "Penuh",
106
107
  "low": "Rendah",
107
108
  "medium": "Sedang",
108
109
  "normal": "Normal",
@@ -20,7 +20,7 @@
20
20
  },
21
21
  "data_description": {
22
22
  "county": "\u7528\u65bc\u7372\u53d6\u505c\u96fb\u6578\u91cf\u7684\u5730\u5340",
23
- "phone_number": "\u8207 PECO \u5e33\u865f\u95dc\u806f\u7684\u96fb\u8a71\u865f\u78bc\uff08\u9078\u9805\uff09\u3002\u65b0\u589e\u96fb\u8a71\u865f\u78bc\u6703\u65b0\u589e\u4e00\u7d44\u4e8c\u9032\u4f4d\u611f\u6e2c\u5668\u8a2d\u5b9a\u3001\u85c9\u4ee5\u78ba\u8a8d\u96fb\u529b\u4e2d\u65b7\u8207\u5426\uff0c\u800c\u4e0d\u662f\u65b7\u8def\u5668\u6216\u4f7f\u7528\u8005\u7aef\u554f\u984c\u3002"
23
+ "phone_number": "\u8207 PECO \u5e33\u865f\u95dc\u806f\u7684\u96fb\u8a71\u865f\u78bc\uff08\u9078\u586b\uff09\u3002\u65b0\u589e\u96fb\u8a71\u865f\u78bc\u6703\u65b0\u589e\u4e00\u7d44\u4e8c\u9032\u4f4d\u611f\u6e2c\u5668\u8a2d\u5b9a\u3001\u85c9\u4ee5\u78ba\u8a8d\u96fb\u529b\u4e2d\u65b7\u8207\u5426\uff0c\u800c\u4e0d\u662f\u65b7\u8def\u5668\u6216\u4f7f\u7528\u8005\u7aef\u554f\u984c\u3002"
24
24
  }
25
25
  }
26
26
  }
@@ -129,10 +129,16 @@ async def async_setup_entry(hass: HomeAssistant, entry: PiHoleConfigEntry) -> bo
129
129
  raise ConfigEntryAuthFailed
130
130
  except HoleError as err:
131
131
  if str(err) == "Authentication failed: Invalid password":
132
- raise ConfigEntryAuthFailed from err
133
- raise UpdateFailed(f"Failed to communicate with API: {err}") from err
132
+ raise ConfigEntryAuthFailed(
133
+ f"Pi-hole {name} at host {host}, reported an invalid password"
134
+ ) from err
135
+ raise UpdateFailed(
136
+ f"Pi-hole {name} at host {host}, update failed with HoleError: {err}"
137
+ ) from err
134
138
  if not isinstance(api.data, dict):
135
- raise ConfigEntryAuthFailed
139
+ raise ConfigEntryAuthFailed(
140
+ f"Pi-hole {name} at host {host}, returned an unexpected response: {api.data}, assuming authentication failed"
141
+ )
136
142
 
137
143
  coordinator = DataUpdateCoordinator(
138
144
  hass,
@@ -11,5 +11,13 @@
11
11
  "invalid_auth": "Autentikasi tidak valid",
12
12
  "unknown": "Kesalahan tak terduga"
13
13
  }
14
+ },
15
+ "config_subentries": {
16
+ "friend": {
17
+ "error": {
18
+ "cannot_connect": "Gagal terhubung",
19
+ "unknown": "Kesalahan tak terduga"
20
+ }
21
+ }
14
22
  }
15
23
  }
@@ -22,7 +22,7 @@
22
22
  "host": "\u4e3b\u6a5f\u7aef",
23
23
  "port": "\u901a\u8a0a\u57e0",
24
24
  "ssl": "\u4f7f\u7528 SSL \u8a8d\u8b49",
25
- "token": "\u6b0a\u6756\uff08\u9078\u9805\uff09",
25
+ "token": "\u6b0a\u6756\uff08\u9078\u586b\uff09",
26
26
  "verify_ssl": "\u78ba\u8a8d SSL \u8a8d\u8b49"
27
27
  },
28
28
  "title": "Plex \u624b\u52d5\u8a2d\u5b9a"
@@ -0,0 +1,49 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "Perangkat sudah dikonfigurasi",
5
+ "cannot_connect": "Gagal terhubung"
6
+ },
7
+ "error": {
8
+ "cannot_connect": "Gagal terhubung",
9
+ "unknown": "Kesalahan tak terduga"
10
+ },
11
+ "step": {
12
+ "user": {
13
+ "data": {
14
+ "host": "Host"
15
+ }
16
+ }
17
+ }
18
+ },
19
+ "entity": {
20
+ "sensor": {
21
+ "orp_calibration_type": {
22
+ "state": {
23
+ "off": "Mati"
24
+ }
25
+ },
26
+ "orp_type_dosing": {
27
+ "state": {
28
+ "high": "Tinggi",
29
+ "low": "Rendah"
30
+ }
31
+ },
32
+ "peristaltic_orp_dosing": {
33
+ "state": {
34
+ "off": "Mati"
35
+ }
36
+ },
37
+ "peristaltic_ph_dosing": {
38
+ "state": {
39
+ "off": "Mati"
40
+ }
41
+ },
42
+ "ph_calibration_type": {
43
+ "state": {
44
+ "off": "Mati"
45
+ }
46
+ }
47
+ }
48
+ }
49
+ }
@@ -57,4 +57,9 @@ async def async_migrate_entry(hass: HomeAssistant, entry: PortainerConfigEntry)
57
57
  data[CONF_API_TOKEN] = data.pop(CONF_API_KEY)
58
58
  hass.config_entries.async_update_entry(entry=entry, data=data, version=2)
59
59
 
60
+ if entry.version < 3:
61
+ data = dict(entry.data)
62
+ data[CONF_VERIFY_SSL] = True
63
+ hass.config_entries.async_update_entry(entry=entry, data=data, version=3)
64
+
60
65
  return True
@@ -0,0 +1,22 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "Perangkat sudah dikonfigurasi"
5
+ },
6
+ "error": {
7
+ "cannot_connect": "Gagal terhubung",
8
+ "invalid_auth": "Autentikasi tidak valid",
9
+ "timeout_connect": "Tenggang waktu pembuatan koneksi habis",
10
+ "unknown": "Kesalahan tak terduga"
11
+ },
12
+ "step": {
13
+ "user": {
14
+ "data": {
15
+ "api_token": "Token API",
16
+ "url": "URL",
17
+ "verify_ssl": "Verifikasi sertifikat SSL"
18
+ }
19
+ }
20
+ }
21
+ }
22
+ }
@@ -8,6 +8,21 @@
8
8
  "invalid_auth": "\u041e\u0448\u0438\u0431\u043a\u0430 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438",
9
9
  "timeout_connect": "\u0418\u0441\u0442\u0435\u043a\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f",
10
10
  "unknown": "\u041d\u0435\u043f\u0440\u0435\u0434\u0432\u0438\u0434\u0435\u043d\u043d\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430"
11
+ },
12
+ "step": {
13
+ "user": {
14
+ "data": {
15
+ "api_token": "\u0422\u043e\u043a\u0435\u043d API",
16
+ "url": "URL-\u0430\u0434\u0440\u0435\u0441",
17
+ "verify_ssl": "\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 SSL"
18
+ },
19
+ "data_description": {
20
+ "api_token": "\u0422\u043e\u043a\u0435\u043d \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a API \u0434\u043b\u044f \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0432 Portainer",
21
+ "url": "URL-\u0430\u0434\u0440\u0435\u0441, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u043f\u043e\u0440\u0442, \u0432\u0430\u0448\u0435\u0433\u043e \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0430 Portainer",
22
+ "verify_ssl": "\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u043b\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b SSL. \u041e\u0442\u043a\u043b\u044e\u0447\u0430\u0439\u0442\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0441\u0430\u043c\u043e\u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442"
23
+ },
24
+ "description": "\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u043a\u0435\u043d \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0447\u0435\u0440\u0435\u0437 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 Portainer. \u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 **\u041c\u043e\u044f \u0443\u0447\u0451\u0442\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c > \u0422\u043e\u043a\u0435\u043d\u044b \u0434\u043e\u0441\u0442\u0443\u043f\u0430** \u0438 \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 **\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0442\u043e\u043a\u0435\u043d \u0434\u043e\u0441\u0442\u0443\u043f\u0430**"
25
+ }
11
26
  }
12
27
  },
13
28
  "device": {
@@ -11,6 +11,12 @@
11
11
  "unknown": "Kesalahan tak terduga"
12
12
  },
13
13
  "step": {
14
+ "hassio_confirm": {
15
+ "data": {
16
+ "password": "Kata Sandi",
17
+ "username": "Nama Pengguna"
18
+ }
19
+ },
14
20
  "reauth_confirm": {
15
21
  "data": {
16
22
  "password": "Kata Sandi",
@@ -22,11 +22,11 @@
22
22
  "sensor": {
23
23
  "active_torrents": {
24
24
  "name": "Aktivn\u00ed torrenty",
25
- "unit_of_measurement": "torrenty"
25
+ "unit_of_measurement": "torrent\u016f"
26
26
  },
27
27
  "all_torrents": {
28
28
  "name": "V\u0161echny torrenty",
29
- "unit_of_measurement": "torrenty"
29
+ "unit_of_measurement": "torrent\u016f"
30
30
  },
31
31
  "alltime_download": {
32
32
  "name": "Stahov\u00e1n\u00ed kdykoli"
@@ -62,11 +62,11 @@
62
62
  },
63
63
  "inactive_torrents": {
64
64
  "name": "Neaktivn\u00ed torrenty",
65
- "unit_of_measurement": "torrenty"
65
+ "unit_of_measurement": "torrent\u016f"
66
66
  },
67
67
  "paused_torrents": {
68
68
  "name": "Pozastaven\u00e9 torrenty",
69
- "unit_of_measurement": "torrenty"
69
+ "unit_of_measurement": "torrent\u016f"
70
70
  },
71
71
  "upload_speed": {
72
72
  "name": "Rychlost nahr\u00e1v\u00e1n\u00ed"
@@ -114,6 +114,7 @@
114
114
  "pm1": "PM1",
115
115
  "pm10": "PM10",
116
116
  "pm25": "PM2.5",
117
+ "pm4": "PM4",
117
118
  "power": "Puissance",
118
119
  "power_factor": "Facteur de puissance",
119
120
  "precipitation": "Pr\u00e9cipitation",
@@ -114,6 +114,7 @@
114
114
  "pm1": "PM1",
115
115
  "pm10": "PM10",
116
116
  "pm25": "PM2.5",
117
+ "pm4": "PM4",
117
118
  "power": "Galia",
118
119
  "power_factor": "Galios koeficientas",
119
120
  "precipitation": "Krituliai",
@@ -114,6 +114,7 @@
114
114
  "pm1": "PM1",
115
115
  "pm10": "PM10",
116
116
  "pm25": "PM2.5",
117
+ "pm4": "PM4",
117
118
  "power": "\u041c\u043e\u0449\u043d\u043e\u0441\u0442\u044c",
118
119
  "power_factor": "\u041a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u0438",
119
120
  "precipitation": "\u041e\u0441\u0430\u0434\u043a\u0438",
@@ -9,6 +9,9 @@
9
9
  "is_off": "{entity_name} mati",
10
10
  "is_on": "{entity_name} nyala"
11
11
  },
12
+ "extra_fields": {
13
+ "for": "Durasi"
14
+ },
12
15
  "trigger_type": {
13
16
  "changed_states": "{entity_name} dinyalakan atau dimatikan",
14
17
  "turned_off": "{entity_name} dimatikan",
@@ -4,7 +4,8 @@
4
4
  "already_configured": "Layanan sudah dikonfigurasi"
5
5
  },
6
6
  "error": {
7
- "cannot_connect": "Gagal terhubung"
7
+ "cannot_connect": "Gagal terhubung",
8
+ "timeout_connect": "Tenggang waktu pembuatan koneksi habis"
8
9
  }
9
10
  }
10
11
  }
@@ -379,7 +379,7 @@
379
379
  },
380
380
  "light": {
381
381
  "floodlight": {
382
- "name": "Foco"
382
+ "name": "Foco de iluminaci\u00f3n"
383
383
  },
384
384
  "status_led": {
385
385
  "name": "LED de estado"
@@ -450,7 +450,7 @@
450
450
  "name": "Umbral de conmutaci\u00f3n d\u00eda noche"
451
451
  },
452
452
  "floodlight_brightness": {
453
- "name": "Brillo de encendido de iluminaci\u00f3n"
453
+ "name": "Brillo de encendido del foco de iluminaci\u00f3n"
454
454
  },
455
455
  "focus": {
456
456
  "name": "Enfoque"
@@ -573,7 +573,7 @@
573
573
  }
574
574
  },
575
575
  "floodlight_mode": {
576
- "name": "Modo de iluminaci\u00f3n",
576
+ "name": "Modo de iluminaci\u00f3n del foco",
577
577
  "state": {
578
578
  "adaptive": "Adaptativo",
579
579
  "auto": "Auto",
@@ -765,7 +765,7 @@
765
765
  "name": "Estado d\u00eda-noche",
766
766
  "state": {
767
767
  "day": "Color",
768
- "led_day": "Color con foco",
768
+ "led_day": "Color con foco de iluminaci\u00f3n",
769
769
  "night": "Blanco y negro"
770
770
  }
771
771
  },
@@ -13,8 +13,7 @@
13
13
  "link_manual": {
14
14
  "data": {
15
15
  "password": "\u041f\u0430\u0440\u043e\u043b\u0430"
16
- },
17
- "title": "\u0412\u044a\u0432\u0435\u0434\u0435\u0442\u0435 \u043f\u0430\u0440\u043e\u043b\u0430\u0442\u0430"
16
+ }
18
17
  },
19
18
  "manual": {
20
19
  "data": {
@@ -12,15 +12,13 @@
12
12
  "flow_title": "{name} ({host})",
13
13
  "step": {
14
14
  "link": {
15
- "description": "Assegura't que l'aplicaci\u00f3 d'iRobot no est\u00e0 funcionant en cap dispositiu. Mant\u00e9 premut el bot\u00f3 d'inici (els botons tant de Home com de Spot) a {name} fins que el dispositiu emeti un so (aproximadament dos segons) despr\u00e9s, envia en els seg\u00fcents 30 segons.",
16
- "title": "Recupera la contrasenya"
15
+ "description": "Assegura't que l'aplicaci\u00f3 d'iRobot no est\u00e0 funcionant en cap dispositiu. Mant\u00e9 premut el bot\u00f3 d'inici (els botons tant de Home com de Spot) a {name} fins que el dispositiu emeti un so (aproximadament dos segons) despr\u00e9s, envia en els seg\u00fcents 30 segons."
17
16
  },
18
17
  "link_manual": {
19
18
  "data": {
20
19
  "password": "Contrasenya"
21
20
  },
22
- "description": "No s'ha pogut obtenir la contrasenya del dispositiu autom\u00e0ticament. Assegura't que l'aplicaci\u00f3 d'iRobot est\u00e0 tancada de tots els dispositius mentre s'intenti obtenir la contrasenya. Segueix els passos de la documentaci\u00f3 seg\u00fcent: {auth_help_url}",
23
- "title": "Introdueix contrasenya"
21
+ "description": "No s'ha pogut obtenir la contrasenya del dispositiu autom\u00e0ticament. Assegura't que l'aplicaci\u00f3 d'iRobot est\u00e0 tancada de tots els dispositius mentre s'intenti obtenir la contrasenya. Segueix els passos de la documentaci\u00f3 seg\u00fcent: {auth_help_url}"
24
22
  },
25
23
  "manual": {
26
24
  "data": {