homeassistant 2025.10.0b4__py3-none-any.whl → 2025.10.0b5__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 (416) hide show
  1. homeassistant/components/accuweather/translations/bg.json +7 -1
  2. homeassistant/components/adax/translations/fy.json +11 -0
  3. homeassistant/components/adguard/translations/zh-Hant.json +1 -1
  4. homeassistant/components/airos/translations/bg.json +8 -0
  5. homeassistant/components/airos/translations/ca.json +8 -0
  6. homeassistant/components/airos/translations/cs.json +12 -0
  7. homeassistant/components/airos/translations/es.json +12 -0
  8. homeassistant/components/airos/translations/et.json +12 -0
  9. homeassistant/components/airos/translations/fr.json +18 -0
  10. homeassistant/components/airos/translations/fy.json +11 -0
  11. homeassistant/components/airos/translations/lt.json +12 -0
  12. homeassistant/components/airos/translations/lv.json +1 -0
  13. homeassistant/components/airos/translations/pt.json +12 -0
  14. homeassistant/components/airos/translations/sk.json +12 -0
  15. homeassistant/components/airos/translations/sv.json +40 -1
  16. homeassistant/components/airos/translations/zh-Hans.json +12 -0
  17. homeassistant/components/airos/translations/zh-Hant.json +12 -0
  18. homeassistant/components/airtouch5/translations/da.json +9 -0
  19. homeassistant/components/airzone/translations/fr.json +9 -0
  20. homeassistant/components/airzone/translations/lt.json +10 -0
  21. homeassistant/components/alexa_devices/binary_sensor.py +0 -7
  22. homeassistant/components/alexa_devices/manifest.json +1 -1
  23. homeassistant/components/alexa_devices/translations/fy.json +16 -0
  24. homeassistant/components/analytics/analytics.py +1 -1
  25. homeassistant/components/blue_current/translations/bg.json +18 -0
  26. homeassistant/components/blue_current/translations/fr.json +9 -0
  27. homeassistant/components/blue_current/translations/lt.json +44 -0
  28. homeassistant/components/bsblan/translations/fy.json +16 -0
  29. homeassistant/components/cast/translations/pl.json +14 -0
  30. homeassistant/components/compit/translations/bg.json +25 -0
  31. homeassistant/components/compit/translations/fy.json +16 -0
  32. homeassistant/components/cover/translations/da.json +20 -1
  33. homeassistant/components/cync/translations/bg.json +20 -0
  34. homeassistant/components/cync/translations/ca.json +12 -0
  35. homeassistant/components/cync/translations/fr.json +32 -0
  36. homeassistant/components/cync/translations/fy.json +11 -0
  37. homeassistant/components/cync/translations/lt.json +32 -0
  38. homeassistant/components/deconz/translations/zh-Hant.json +1 -1
  39. homeassistant/components/deluge/translations/bg.json +6 -0
  40. homeassistant/components/devolo_home_control/translations/fy.json +11 -0
  41. homeassistant/components/devolo_home_network/translations/fy.json +10 -0
  42. homeassistant/components/dnsip/sensor.py +17 -4
  43. homeassistant/components/ebusd/__init__.py +5 -1
  44. homeassistant/components/ecovacs/image.py +3 -1
  45. homeassistant/components/ecovacs/manifest.json +1 -1
  46. homeassistant/components/ekeybionyx/translations/bg.json +26 -0
  47. homeassistant/components/ekeybionyx/translations/fr.json +32 -0
  48. homeassistant/components/ekeybionyx/translations/lt.json +65 -0
  49. homeassistant/components/elkm1/translations/fy.json +11 -0
  50. homeassistant/components/ephember/climate.py +12 -2
  51. homeassistant/components/esphome/translations/pl.json +4 -2
  52. homeassistant/components/file/translations/bg.json +17 -0
  53. homeassistant/components/fritz/diagnostics.py +3 -0
  54. homeassistant/components/geocaching/translations/bg.json +13 -0
  55. homeassistant/components/hassio/translations/bg.json +3 -0
  56. homeassistant/components/homeassistant_connect_zbt2/strings.json +22 -12
  57. homeassistant/components/homeassistant_connect_zbt2/translations/bg.json +64 -6
  58. homeassistant/components/homeassistant_connect_zbt2/translations/ca.json +2 -8
  59. homeassistant/components/homeassistant_connect_zbt2/translations/cs.json +22 -12
  60. homeassistant/components/homeassistant_connect_zbt2/translations/de.json +22 -12
  61. homeassistant/components/homeassistant_connect_zbt2/translations/el.json +2 -8
  62. homeassistant/components/homeassistant_connect_zbt2/translations/en-GB.json +22 -12
  63. homeassistant/components/homeassistant_connect_zbt2/translations/en.json +22 -12
  64. homeassistant/components/homeassistant_connect_zbt2/translations/es.json +22 -12
  65. homeassistant/components/homeassistant_connect_zbt2/translations/et.json +22 -12
  66. homeassistant/components/homeassistant_connect_zbt2/translations/fr.json +2 -8
  67. homeassistant/components/homeassistant_connect_zbt2/translations/ga.json +2 -8
  68. homeassistant/components/homeassistant_connect_zbt2/translations/he.json +2 -8
  69. homeassistant/components/homeassistant_connect_zbt2/translations/lt.json +2 -8
  70. homeassistant/components/homeassistant_connect_zbt2/translations/nl.json +2 -4
  71. homeassistant/components/homeassistant_connect_zbt2/translations/pl.json +1 -2
  72. homeassistant/components/homeassistant_connect_zbt2/translations/pt.json +22 -12
  73. homeassistant/components/homeassistant_connect_zbt2/translations/ru.json +1 -4
  74. homeassistant/components/homeassistant_connect_zbt2/translations/sk.json +6 -12
  75. homeassistant/components/homeassistant_connect_zbt2/translations/zh-Hans.json +2 -8
  76. homeassistant/components/homeassistant_connect_zbt2/translations/zh-Hant.json +22 -12
  77. homeassistant/components/homeassistant_hardware/firmware_config_flow.py +11 -0
  78. homeassistant/components/homeassistant_hardware/strings.json +11 -5
  79. homeassistant/components/homeassistant_hardware/translations/bg.json +40 -0
  80. homeassistant/components/homeassistant_hardware/translations/ca.json +0 -8
  81. homeassistant/components/homeassistant_hardware/translations/cs.json +11 -5
  82. homeassistant/components/homeassistant_hardware/translations/de.json +11 -5
  83. homeassistant/components/homeassistant_hardware/translations/el.json +0 -11
  84. homeassistant/components/homeassistant_hardware/translations/en-GB.json +11 -5
  85. homeassistant/components/homeassistant_hardware/translations/en.json +11 -5
  86. homeassistant/components/homeassistant_hardware/translations/es.json +11 -5
  87. homeassistant/components/homeassistant_hardware/translations/et.json +11 -5
  88. homeassistant/components/homeassistant_hardware/translations/fr.json +0 -11
  89. homeassistant/components/homeassistant_hardware/translations/ga.json +0 -11
  90. homeassistant/components/homeassistant_hardware/translations/he.json +0 -11
  91. homeassistant/components/homeassistant_hardware/translations/hu.json +0 -11
  92. homeassistant/components/homeassistant_hardware/translations/id.json +0 -8
  93. homeassistant/components/homeassistant_hardware/translations/it.json +0 -3
  94. homeassistant/components/homeassistant_hardware/translations/ja.json +0 -11
  95. homeassistant/components/homeassistant_hardware/translations/ko.json +0 -8
  96. homeassistant/components/homeassistant_hardware/translations/lt.json +0 -11
  97. homeassistant/components/homeassistant_hardware/translations/mk.json +0 -3
  98. homeassistant/components/homeassistant_hardware/translations/nl.json +0 -3
  99. homeassistant/components/homeassistant_hardware/translations/pt.json +11 -5
  100. homeassistant/components/homeassistant_hardware/translations/ru.json +0 -11
  101. homeassistant/components/homeassistant_hardware/translations/sk.json +10 -7
  102. homeassistant/components/homeassistant_hardware/translations/sv.json +0 -11
  103. homeassistant/components/homeassistant_hardware/translations/tr.json +0 -8
  104. homeassistant/components/homeassistant_hardware/translations/zh-Hans.json +0 -11
  105. homeassistant/components/homeassistant_hardware/translations/zh-Hant.json +11 -5
  106. homeassistant/components/homeassistant_sky_connect/strings.json +22 -12
  107. homeassistant/components/homeassistant_sky_connect/translations/bg.json +72 -4
  108. homeassistant/components/homeassistant_sky_connect/translations/ca.json +2 -8
  109. homeassistant/components/homeassistant_sky_connect/translations/cs.json +22 -12
  110. homeassistant/components/homeassistant_sky_connect/translations/de.json +22 -12
  111. homeassistant/components/homeassistant_sky_connect/translations/el.json +2 -8
  112. homeassistant/components/homeassistant_sky_connect/translations/en-GB.json +22 -12
  113. homeassistant/components/homeassistant_sky_connect/translations/en.json +22 -12
  114. homeassistant/components/homeassistant_sky_connect/translations/es.json +22 -12
  115. homeassistant/components/homeassistant_sky_connect/translations/et.json +22 -12
  116. homeassistant/components/homeassistant_sky_connect/translations/fi.json +2 -4
  117. homeassistant/components/homeassistant_sky_connect/translations/fr.json +2 -8
  118. homeassistant/components/homeassistant_sky_connect/translations/ga.json +2 -8
  119. homeassistant/components/homeassistant_sky_connect/translations/he.json +2 -8
  120. homeassistant/components/homeassistant_sky_connect/translations/hu.json +2 -8
  121. homeassistant/components/homeassistant_sky_connect/translations/id.json +2 -8
  122. homeassistant/components/homeassistant_sky_connect/translations/it.json +2 -4
  123. homeassistant/components/homeassistant_sky_connect/translations/ja.json +2 -8
  124. homeassistant/components/homeassistant_sky_connect/translations/ko.json +2 -12
  125. homeassistant/components/homeassistant_sky_connect/translations/lt.json +2 -8
  126. homeassistant/components/homeassistant_sky_connect/translations/nl.json +2 -4
  127. homeassistant/components/homeassistant_sky_connect/translations/pl.json +2 -4
  128. homeassistant/components/homeassistant_sky_connect/translations/pt.json +22 -12
  129. homeassistant/components/homeassistant_sky_connect/translations/ru.json +2 -8
  130. homeassistant/components/homeassistant_sky_connect/translations/sk.json +6 -12
  131. homeassistant/components/homeassistant_sky_connect/translations/sv.json +2 -8
  132. homeassistant/components/homeassistant_sky_connect/translations/tr.json +2 -8
  133. homeassistant/components/homeassistant_sky_connect/translations/zh-Hans.json +2 -8
  134. homeassistant/components/homeassistant_sky_connect/translations/zh-Hant.json +22 -12
  135. homeassistant/components/homeassistant_yellow/strings.json +11 -6
  136. homeassistant/components/homeassistant_yellow/translations/bg.json +32 -3
  137. homeassistant/components/homeassistant_yellow/translations/ca.json +1 -4
  138. homeassistant/components/homeassistant_yellow/translations/cs.json +11 -6
  139. homeassistant/components/homeassistant_yellow/translations/de.json +11 -6
  140. homeassistant/components/homeassistant_yellow/translations/el.json +1 -4
  141. homeassistant/components/homeassistant_yellow/translations/en-GB.json +11 -6
  142. homeassistant/components/homeassistant_yellow/translations/en.json +11 -6
  143. homeassistant/components/homeassistant_yellow/translations/es.json +11 -6
  144. homeassistant/components/homeassistant_yellow/translations/et.json +11 -6
  145. homeassistant/components/homeassistant_yellow/translations/fr.json +1 -4
  146. homeassistant/components/homeassistant_yellow/translations/ga.json +1 -4
  147. homeassistant/components/homeassistant_yellow/translations/he.json +1 -4
  148. homeassistant/components/homeassistant_yellow/translations/hu.json +1 -4
  149. homeassistant/components/homeassistant_yellow/translations/id.json +1 -4
  150. homeassistant/components/homeassistant_yellow/translations/it.json +1 -2
  151. homeassistant/components/homeassistant_yellow/translations/ja.json +1 -4
  152. homeassistant/components/homeassistant_yellow/translations/ko.json +0 -2
  153. homeassistant/components/homeassistant_yellow/translations/lt.json +1 -4
  154. homeassistant/components/homeassistant_yellow/translations/nl.json +1 -2
  155. homeassistant/components/homeassistant_yellow/translations/pt.json +11 -6
  156. homeassistant/components/homeassistant_yellow/translations/ru.json +1 -4
  157. homeassistant/components/homeassistant_yellow/translations/sk.json +3 -6
  158. homeassistant/components/homeassistant_yellow/translations/sv.json +1 -4
  159. homeassistant/components/homeassistant_yellow/translations/tr.json +1 -4
  160. homeassistant/components/homeassistant_yellow/translations/zh-Hans.json +1 -4
  161. homeassistant/components/homeassistant_yellow/translations/zh-Hant.json +11 -6
  162. homeassistant/components/homee/translations/fy.json +14 -0
  163. homeassistant/components/hue/v2/binary_sensor.py +5 -1
  164. homeassistant/components/husqvarna_automower/translations/da.json +16 -0
  165. homeassistant/components/imeon_inverter/translations/fy.json +11 -0
  166. homeassistant/components/improv_ble/translations/fy.json +7 -0
  167. homeassistant/components/irm_kmi/translations/bg.json +49 -0
  168. homeassistant/components/ista_ecotrend/translations/fy.json +11 -0
  169. homeassistant/components/knx/translations/fr.json +3 -0
  170. homeassistant/components/konnected/__init__.py +14 -1
  171. homeassistant/components/konnected/manifest.json +1 -1
  172. homeassistant/components/konnected/strings.json +6 -0
  173. homeassistant/components/konnected/translations/cs.json +6 -0
  174. homeassistant/components/konnected/translations/de.json +6 -0
  175. homeassistant/components/konnected/translations/en-GB.json +6 -0
  176. homeassistant/components/konnected/translations/en.json +6 -0
  177. homeassistant/components/konnected/translations/es.json +6 -0
  178. homeassistant/components/konnected/translations/et.json +6 -0
  179. homeassistant/components/konnected/translations/pt.json +6 -0
  180. homeassistant/components/konnected/translations/sk.json +6 -0
  181. homeassistant/components/konnected/translations/zh-Hant.json +6 -0
  182. homeassistant/components/letpot/translations/bg.json +5 -0
  183. homeassistant/components/letpot/translations/fr.json +10 -0
  184. homeassistant/components/letpot/translations/lt.json +10 -0
  185. homeassistant/components/lg_thinq/translations/bg.json +9 -0
  186. homeassistant/components/litterrobot/translations/bg.json +5 -0
  187. homeassistant/components/lovelace/translations/pl.json +6 -1
  188. homeassistant/components/mastodon/translations/bg.json +3 -0
  189. homeassistant/components/matter/translations/bg.json +3 -0
  190. homeassistant/components/matter/translations/da.json +7 -0
  191. homeassistant/components/mcp/strings.json +20 -1
  192. homeassistant/components/mcp/translations/bg.json +1 -0
  193. homeassistant/components/mcp/translations/cs.json +20 -1
  194. homeassistant/components/mcp/translations/de.json +20 -1
  195. homeassistant/components/mcp/translations/en-GB.json +20 -1
  196. homeassistant/components/mcp/translations/en.json +20 -1
  197. homeassistant/components/mcp/translations/es.json +20 -1
  198. homeassistant/components/mcp/translations/et.json +20 -1
  199. homeassistant/components/mcp/translations/lt.json +20 -1
  200. homeassistant/components/mcp/translations/pt.json +20 -1
  201. homeassistant/components/mcp/translations/sk.json +20 -1
  202. homeassistant/components/mcp/translations/zh-Hant.json +20 -1
  203. homeassistant/components/motioneye/translations/zh-Hant.json +1 -1
  204. homeassistant/components/mqtt/strings.json +2 -0
  205. homeassistant/components/mqtt/translations/bg.json +1 -0
  206. homeassistant/components/mqtt/translations/cs.json +2 -0
  207. homeassistant/components/mqtt/translations/da.json +19 -0
  208. homeassistant/components/mqtt/translations/de.json +2 -0
  209. homeassistant/components/mqtt/translations/en-GB.json +2 -0
  210. homeassistant/components/mqtt/translations/en.json +2 -0
  211. homeassistant/components/mqtt/translations/es.json +2 -0
  212. homeassistant/components/mqtt/translations/et.json +2 -0
  213. homeassistant/components/mqtt/translations/fy.json +9 -0
  214. homeassistant/components/mqtt/translations/pt.json +2 -0
  215. homeassistant/components/mqtt/translations/zh-Hant.json +3 -1
  216. homeassistant/components/music_assistant/translations/fr.json +7 -0
  217. homeassistant/components/nina/translations/cs.json +3 -1
  218. homeassistant/components/nina/translations/de.json +1 -1
  219. homeassistant/components/nina/translations/es.json +3 -1
  220. homeassistant/components/nina/translations/et.json +2 -0
  221. homeassistant/components/nina/translations/lt.json +3 -1
  222. homeassistant/components/nina/translations/pt.json +3 -1
  223. homeassistant/components/nina/translations/sk.json +3 -1
  224. homeassistant/components/nina/translations/zh-Hans.json +3 -1
  225. homeassistant/components/nina/translations/zh-Hant.json +3 -1
  226. homeassistant/components/nordpool/translations/bg.json +8 -0
  227. homeassistant/components/ntfy/translations/fy.json +30 -0
  228. homeassistant/components/number/const.py +2 -5
  229. homeassistant/components/number/strings.json +3 -0
  230. homeassistant/components/number/translations/cs.json +3 -0
  231. homeassistant/components/number/translations/de.json +3 -0
  232. homeassistant/components/number/translations/en-GB.json +3 -0
  233. homeassistant/components/number/translations/en.json +3 -0
  234. homeassistant/components/number/translations/es.json +3 -0
  235. homeassistant/components/number/translations/et.json +3 -0
  236. homeassistant/components/number/translations/pt.json +3 -0
  237. homeassistant/components/number/translations/zh-Hant.json +3 -0
  238. homeassistant/components/ohme/translations/fy.json +11 -0
  239. homeassistant/components/opower/translations/fy.json +5 -0
  240. homeassistant/components/pooldose/translations/bg.json +9 -0
  241. homeassistant/components/portainer/__init__.py +22 -3
  242. homeassistant/components/portainer/config_flow.py +14 -10
  243. homeassistant/components/portainer/coordinator.py +2 -2
  244. homeassistant/components/portainer/strings.json +5 -5
  245. homeassistant/components/portainer/translations/bg.json +2 -2
  246. homeassistant/components/portainer/translations/ca.json +3 -2
  247. homeassistant/components/portainer/translations/cs.json +7 -5
  248. homeassistant/components/portainer/translations/de.json +5 -5
  249. homeassistant/components/portainer/translations/el.json +0 -8
  250. homeassistant/components/portainer/translations/en-GB.json +5 -5
  251. homeassistant/components/portainer/translations/en.json +5 -5
  252. homeassistant/components/portainer/translations/es.json +7 -5
  253. homeassistant/components/portainer/translations/et.json +7 -5
  254. homeassistant/components/portainer/translations/fr.json +18 -0
  255. homeassistant/components/portainer/translations/ga.json +0 -13
  256. homeassistant/components/portainer/translations/he.json +0 -8
  257. homeassistant/components/portainer/translations/lt.json +7 -5
  258. homeassistant/components/portainer/translations/nl.json +0 -8
  259. homeassistant/components/portainer/translations/pt.json +7 -5
  260. homeassistant/components/portainer/translations/ru.json +0 -13
  261. homeassistant/components/portainer/translations/sk.json +7 -5
  262. homeassistant/components/portainer/translations/sl.json +0 -13
  263. homeassistant/components/portainer/translations/zh-Hans.json +7 -5
  264. homeassistant/components/portainer/translations/zh-Hant.json +7 -5
  265. homeassistant/components/pyload/translations/zh-Hant.json +1 -1
  266. homeassistant/components/random/strings.json +1 -0
  267. homeassistant/components/random/translations/cs.json +1 -0
  268. homeassistant/components/random/translations/de.json +1 -0
  269. homeassistant/components/random/translations/en-GB.json +1 -0
  270. homeassistant/components/random/translations/en.json +1 -0
  271. homeassistant/components/random/translations/es.json +1 -0
  272. homeassistant/components/random/translations/et.json +1 -0
  273. homeassistant/components/random/translations/pt.json +1 -0
  274. homeassistant/components/random/translations/zh-Hant.json +1 -0
  275. homeassistant/components/recorder/statistics.py +0 -5
  276. homeassistant/components/recorder/websocket_api.py +0 -4
  277. homeassistant/components/rehlko/translations/fy.json +16 -0
  278. homeassistant/components/reolink/manifest.json +1 -1
  279. homeassistant/components/route_b_smart_meter/translations/bg.json +24 -0
  280. homeassistant/components/route_b_smart_meter/translations/fr.json +36 -0
  281. homeassistant/components/route_b_smart_meter/translations/fy.json +14 -0
  282. homeassistant/components/route_b_smart_meter/translations/lt.json +42 -0
  283. homeassistant/components/satel_integra/__init__.py +6 -0
  284. homeassistant/components/satel_integra/translations/bg.json +102 -0
  285. homeassistant/components/scrape/strings.json +2 -0
  286. homeassistant/components/scrape/translations/cs.json +2 -0
  287. homeassistant/components/scrape/translations/de.json +2 -0
  288. homeassistant/components/scrape/translations/en-GB.json +2 -0
  289. homeassistant/components/scrape/translations/en.json +2 -0
  290. homeassistant/components/scrape/translations/es.json +2 -0
  291. homeassistant/components/scrape/translations/et.json +2 -0
  292. homeassistant/components/scrape/translations/pt.json +2 -0
  293. homeassistant/components/scrape/translations/zh-Hant.json +2 -0
  294. homeassistant/components/sensibo/translations/pl.json +1 -0
  295. homeassistant/components/sensor/const.py +2 -7
  296. homeassistant/components/sensor/strings.json +3 -0
  297. homeassistant/components/sensor/translations/cs.json +3 -0
  298. homeassistant/components/sensor/translations/de.json +3 -0
  299. homeassistant/components/sensor/translations/en-GB.json +3 -0
  300. homeassistant/components/sensor/translations/en.json +3 -0
  301. homeassistant/components/sensor/translations/es.json +3 -0
  302. homeassistant/components/sensor/translations/et.json +3 -0
  303. homeassistant/components/sensor/translations/pt.json +3 -0
  304. homeassistant/components/sensor/translations/sk.json +3 -0
  305. homeassistant/components/sensor/translations/zh-Hant.json +3 -0
  306. homeassistant/components/sensorpush_cloud/translations/fy.json +11 -0
  307. homeassistant/components/shelly/icons.json +3 -0
  308. homeassistant/components/shelly/sensor.py +83 -3
  309. homeassistant/components/shelly/strings.json +12 -0
  310. homeassistant/components/shelly/translations/bg.json +19 -0
  311. homeassistant/components/shelly/translations/cs.json +12 -0
  312. homeassistant/components/shelly/translations/de.json +12 -0
  313. homeassistant/components/shelly/translations/en-GB.json +12 -0
  314. homeassistant/components/shelly/translations/en.json +12 -0
  315. homeassistant/components/shelly/translations/es.json +12 -0
  316. homeassistant/components/shelly/translations/et.json +12 -0
  317. homeassistant/components/shelly/translations/lt.json +12 -0
  318. homeassistant/components/shelly/translations/lv.json +6 -0
  319. homeassistant/components/shelly/translations/pl.json +12 -0
  320. homeassistant/components/shelly/translations/pt.json +12 -0
  321. homeassistant/components/shelly/translations/sk.json +12 -0
  322. homeassistant/components/shelly/translations/zh-Hant.json +12 -0
  323. homeassistant/components/sma/translations/fy.json +16 -0
  324. homeassistant/components/smartthings/translations/fr.json +12 -0
  325. homeassistant/components/smartthings/translations/lt.json +21 -0
  326. homeassistant/components/snoo/translations/fy.json +9 -0
  327. homeassistant/components/sql/strings.json +1 -0
  328. homeassistant/components/sql/translations/cs.json +1 -0
  329. homeassistant/components/sql/translations/de.json +1 -0
  330. homeassistant/components/sql/translations/en-GB.json +1 -0
  331. homeassistant/components/sql/translations/en.json +1 -0
  332. homeassistant/components/sql/translations/es.json +1 -0
  333. homeassistant/components/sql/translations/et.json +1 -0
  334. homeassistant/components/sql/translations/pt.json +1 -0
  335. homeassistant/components/sql/translations/zh-Hant.json +1 -0
  336. homeassistant/components/switch_as_x/translations/da.json +7 -0
  337. homeassistant/components/switchbot/translations/fy.json +7 -0
  338. homeassistant/components/template/strings.json +1 -0
  339. homeassistant/components/template/translations/cs.json +1 -0
  340. homeassistant/components/template/translations/da.json +17 -0
  341. homeassistant/components/template/translations/de.json +1 -0
  342. homeassistant/components/template/translations/en-GB.json +1 -0
  343. homeassistant/components/template/translations/en.json +1 -0
  344. homeassistant/components/template/translations/es.json +1 -0
  345. homeassistant/components/template/translations/et.json +1 -0
  346. homeassistant/components/template/translations/mk.json +9 -0
  347. homeassistant/components/template/translations/pt.json +1 -0
  348. homeassistant/components/template/translations/zh-Hant.json +1 -0
  349. homeassistant/components/togrill/coordinator.py +24 -6
  350. homeassistant/components/tolo/translations/bg.json +2 -1
  351. homeassistant/components/traccar_server/translations/fy.json +9 -0
  352. homeassistant/components/tuya/translations/da.json +8 -0
  353. homeassistant/components/uptime_kuma/translations/zh-Hant.json +1 -1
  354. homeassistant/components/valve/translations/da.json +1 -0
  355. homeassistant/components/velbus/translations/fy.json +11 -0
  356. homeassistant/components/vesync/binary_sensor.py +1 -1
  357. homeassistant/components/vesync/translations/fy.json +9 -0
  358. homeassistant/components/vicare/const.py +1 -0
  359. homeassistant/components/victron_remote_monitoring/translations/bg.json +71 -0
  360. homeassistant/components/volvo/sensor.py +12 -6
  361. homeassistant/components/webdav/translations/fy.json +11 -0
  362. homeassistant/components/workday/calendar.py +5 -5
  363. homeassistant/components/workday/config_flow.py +1 -0
  364. homeassistant/components/workday/translations/bg.json +5 -0
  365. homeassistant/components/wyoming/translations/zh-Hant.json +1 -1
  366. homeassistant/components/xiaomi_miio/translations/fy.json +7 -0
  367. homeassistant/components/zha/config_flow.py +17 -0
  368. homeassistant/components/zha/radio_manager.py +4 -0
  369. homeassistant/components/zha/strings.json +9 -9
  370. homeassistant/components/zha/translations/bg.json +55 -7
  371. homeassistant/components/zha/translations/ca.json +0 -7
  372. homeassistant/components/zha/translations/cs.json +10 -10
  373. homeassistant/components/zha/translations/da.json +0 -9
  374. homeassistant/components/zha/translations/de.json +10 -10
  375. homeassistant/components/zha/translations/el.json +0 -9
  376. homeassistant/components/zha/translations/en-GB.json +10 -10
  377. homeassistant/components/zha/translations/en.json +10 -10
  378. homeassistant/components/zha/translations/es.json +10 -10
  379. homeassistant/components/zha/translations/et.json +10 -10
  380. homeassistant/components/zha/translations/fi.json +0 -9
  381. homeassistant/components/zha/translations/fr.json +0 -17
  382. homeassistant/components/zha/translations/ga.json +0 -17
  383. homeassistant/components/zha/translations/gsw.json +0 -7
  384. homeassistant/components/zha/translations/hr.json +0 -4
  385. homeassistant/components/zha/translations/hu.json +0 -9
  386. homeassistant/components/zha/translations/id.json +0 -9
  387. homeassistant/components/zha/translations/it.json +0 -9
  388. homeassistant/components/zha/translations/ja.json +0 -9
  389. homeassistant/components/zha/translations/ko.json +0 -9
  390. homeassistant/components/zha/translations/lt.json +0 -17
  391. homeassistant/components/zha/translations/nb.json +0 -7
  392. homeassistant/components/zha/translations/nl.json +0 -8
  393. homeassistant/components/zha/translations/pl.json +0 -7
  394. homeassistant/components/zha/translations/pt-BR.json +0 -7
  395. homeassistant/components/zha/translations/pt.json +10 -10
  396. homeassistant/components/zha/translations/ro.json +0 -7
  397. homeassistant/components/zha/translations/ru.json +0 -13
  398. homeassistant/components/zha/translations/sk.json +10 -10
  399. homeassistant/components/zha/translations/sl.json +0 -9
  400. homeassistant/components/zha/translations/sv.json +0 -9
  401. homeassistant/components/zha/translations/tr.json +0 -9
  402. homeassistant/components/zha/translations/uk.json +0 -7
  403. homeassistant/components/zha/translations/vi.json +0 -7
  404. homeassistant/components/zha/translations/zh-Hans.json +0 -17
  405. homeassistant/components/zha/translations/zh-Hant.json +10 -10
  406. homeassistant/const.py +1 -1
  407. homeassistant/generated/integrations.json +1 -1
  408. homeassistant/util/unit_conversion.py +0 -16
  409. {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b5.dist-info}/METADATA +1 -1
  410. {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b5.dist-info}/RECORD +415 -380
  411. homeassistant/components/homeassistant_sky_connect/translations/hr.json +0 -7
  412. {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b5.dist-info}/WHEEL +0 -0
  413. {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b5.dist-info}/entry_points.txt +0 -0
  414. {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b5.dist-info}/licenses/LICENSE.md +0 -0
  415. {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b5.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
  416. {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b5.dist-info}/top_level.txt +0 -0
@@ -17,6 +17,9 @@
17
17
  "is_position": "Aktuel {entity_name} position er",
18
18
  "is_tilt_position": "Aktuel {entity_name} vippeposition er"
19
19
  },
20
+ "extra_fields": {
21
+ "position": "Position"
22
+ },
20
23
  "trigger_type": {
21
24
  "closed": "{entity_name} lukket",
22
25
  "closing": "{entity_name} lukker",
@@ -31,8 +34,10 @@
31
34
  "name": "Gardin/port",
32
35
  "state": {
33
36
  "closed": "Lukket",
37
+ "closing": "Lukker",
34
38
  "open": "\u00c5ben",
35
- "opening": "\u00c5bner"
39
+ "opening": "\u00c5bner",
40
+ "stopped": "Stoppet"
36
41
  },
37
42
  "state_attributes": {
38
43
  "current_position": {
@@ -74,5 +79,19 @@
74
79
  "name": "Vindue"
75
80
  }
76
81
  },
82
+ "services": {
83
+ "close_cover": {
84
+ "name": "Luk"
85
+ },
86
+ "open_cover": {
87
+ "name": "\u00c5bn"
88
+ },
89
+ "stop_cover": {
90
+ "name": "Stop"
91
+ },
92
+ "toggle": {
93
+ "name": "Skift til/fra"
94
+ }
95
+ },
77
96
  "title": "Gardin/port"
78
97
  }
@@ -0,0 +1,20 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "\u0410\u043a\u0430\u0443\u043d\u0442\u044a\u0442 \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d"
5
+ },
6
+ "error": {
7
+ "cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435",
8
+ "invalid_auth": "\u041d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u0430 \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u043a\u0430\u0446\u0438\u044f",
9
+ "unknown": "\u041d\u0435\u043e\u0447\u0430\u043a\u0432\u0430\u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0430"
10
+ },
11
+ "step": {
12
+ "user": {
13
+ "data": {
14
+ "email": "\u0418\u043c\u0435\u0439\u043b",
15
+ "password": "\u041f\u0430\u0440\u043e\u043b\u0430"
16
+ }
17
+ }
18
+ }
19
+ }
20
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "config": {
3
+ "step": {
4
+ "user": {
5
+ "data": {
6
+ "email": "Correu electr\u00f2nic",
7
+ "password": "Contrasenya"
8
+ }
9
+ }
10
+ }
11
+ }
12
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "Le compte est d\u00e9j\u00e0 configur\u00e9"
5
+ },
6
+ "error": {
7
+ "cannot_connect": "\u00c9chec de connexion",
8
+ "invalid_auth": "Authentification non valide",
9
+ "unknown": "Erreur inattendue"
10
+ },
11
+ "step": {
12
+ "two_factor": {
13
+ "data": {
14
+ "two_factor_code": "Code \u00e0 deux facteurs"
15
+ },
16
+ "data_description": {
17
+ "two_factor_code": "Le code \u00e0 deux facteurs envoy\u00e9 sur le mail de votre compte Cync."
18
+ }
19
+ },
20
+ "user": {
21
+ "data": {
22
+ "email": "Courriel",
23
+ "password": "Mot de passe"
24
+ },
25
+ "data_description": {
26
+ "email": "L'adresse mail de votre compte Cync",
27
+ "password": "Le mot de passe de votre compte Cync"
28
+ }
29
+ }
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "config": {
3
+ "step": {
4
+ "user": {
5
+ "data": {
6
+ "password": "Wachtwurd"
7
+ }
8
+ }
9
+ }
10
+ }
11
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "Paskyra jau sukonfig\u016bruota"
5
+ },
6
+ "error": {
7
+ "cannot_connect": "Nepavyko prisijungti",
8
+ "invalid_auth": "Neteisingas autentifikavimas",
9
+ "unknown": "Netik\u0117ta klaida"
10
+ },
11
+ "step": {
12
+ "two_factor": {
13
+ "data": {
14
+ "two_factor_code": "Dviej\u0173 veiksni\u0173 kodas"
15
+ },
16
+ "data_description": {
17
+ "two_factor_code": "Dviej\u0173 veiksni\u0173 kodas, i\u0161si\u0173stas \u012f j\u016bs\u0173 Cync paskyros el. pa\u0161to adres\u0105"
18
+ }
19
+ },
20
+ "user": {
21
+ "data": {
22
+ "email": "El. pa\u0161tas",
23
+ "password": "Slapta\u017eodis"
24
+ },
25
+ "data_description": {
26
+ "email": "J\u016bs\u0173 Cync paskyros el. pa\u0161to adresas",
27
+ "password": "J\u016bs\u0173 Cync paskyros slapta\u017eodis"
28
+ }
29
+ }
30
+ }
31
+ }
32
+ }
@@ -14,7 +14,7 @@
14
14
  "flow_title": "{host}",
15
15
  "step": {
16
16
  "hassio_confirm": {
17
- "description": "\u662f\u5426\u8981\u8a2d\u5b9a Home Assistant \u4ee5\u9023\u7dda\u81f3 deCONZ \u9598\u9053\u5668\u3002\u9644\u52a0\u5143\u4ef6\u70ba\uff1a{addon} \uff1f",
17
+ "description": "\u662f\u5426\u8981\u8a2d\u5b9a Home Assistant \u4ee5\u9023\u7dda\u81f3\u9644\u52a0\u5143\u4ef6 {addon} \u6240\u63d0\u4f9b deCONZ \u9598\u9053\u5668\uff1f",
18
18
  "title": "\u4f7f\u7528 Home Assistant \u9644\u52a0\u5143\u4ef6 deCONZ Zigbee \u9598\u9053\u5668"
19
19
  },
20
20
  "link": {
@@ -28,6 +28,12 @@
28
28
  "download_speed": {
29
29
  "name": "\u0421\u043a\u043e\u0440\u043e\u0441\u0442 \u043d\u0430 \u0438\u0437\u0442\u0435\u0433\u043b\u044f\u043d\u0435"
30
30
  },
31
+ "downloading_count": {
32
+ "unit_of_measurement": "\u0442\u043e\u0440\u0435\u043d\u0442\u0438"
33
+ },
34
+ "seeding_count": {
35
+ "unit_of_measurement": "\u0442\u043e\u0440\u0435\u043d\u0442\u0438"
36
+ },
31
37
  "status": {
32
38
  "name": "\u0421\u0442\u0430\u0442\u0443\u0441",
33
39
  "state": {
@@ -0,0 +1,11 @@
1
+ {
2
+ "config": {
3
+ "step": {
4
+ "reauth_confirm": {
5
+ "data": {
6
+ "password": "Wachtwurd"
7
+ }
8
+ }
9
+ }
10
+ }
11
+ }
@@ -5,6 +5,16 @@
5
5
  "data": {
6
6
  "password": "Wachtwurd"
7
7
  }
8
+ },
9
+ "user": {
10
+ "data": {
11
+ "password": "Wachtwurd"
12
+ }
13
+ },
14
+ "zeroconf_confirm": {
15
+ "data": {
16
+ "password": "Wachtwurd"
17
+ }
8
18
  }
9
19
  }
10
20
  }
@@ -2,6 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
+ import asyncio
5
6
  from datetime import timedelta
6
7
  from ipaddress import IPv4Address, IPv6Address
7
8
  import logging
@@ -88,8 +89,8 @@ class WanIpSensor(SensorEntity):
88
89
  self._attr_name = "IPv6" if ipv6 else None
89
90
  self._attr_unique_id = f"{hostname}_{ipv6}"
90
91
  self.hostname = hostname
91
- self.resolver = aiodns.DNSResolver(tcp_port=port, udp_port=port)
92
- self.resolver.nameservers = [resolver]
92
+ self.port = port
93
+ self._resolver = resolver
93
94
  self.querytype: Literal["A", "AAAA"] = "AAAA" if ipv6 else "A"
94
95
  self._retries = DEFAULT_RETRIES
95
96
  self._attr_extra_state_attributes = {
@@ -103,14 +104,26 @@ class WanIpSensor(SensorEntity):
103
104
  model=aiodns.__version__,
104
105
  name=name,
105
106
  )
107
+ self.resolver: aiodns.DNSResolver
108
+ self.create_dns_resolver()
109
+
110
+ def create_dns_resolver(self) -> None:
111
+ """Create the DNS resolver."""
112
+ self.resolver = aiodns.DNSResolver(tcp_port=self.port, udp_port=self.port)
113
+ self.resolver.nameservers = [self._resolver]
106
114
 
107
115
  async def async_update(self) -> None:
108
116
  """Get the current DNS IP address for hostname."""
117
+ if self.resolver._closed: # noqa: SLF001
118
+ self.create_dns_resolver()
119
+ response = None
109
120
  try:
110
- response = await self.resolver.query(self.hostname, self.querytype)
121
+ async with asyncio.timeout(10):
122
+ response = await self.resolver.query(self.hostname, self.querytype)
123
+ except TimeoutError:
124
+ await self.resolver.close()
111
125
  except DNSError as err:
112
126
  _LOGGER.warning("Exception while resolving host: %s", err)
113
- response = None
114
127
 
115
128
  if response:
116
129
  sorted_ips = sort_ips(
@@ -116,7 +116,11 @@ class EbusdData:
116
116
  try:
117
117
  _LOGGER.debug("Opening socket to ebusd %s", name)
118
118
  command_result = ebusdpy.write(self._address, self._circuit, name, value)
119
- if command_result is not None and "done" not in command_result:
119
+ if (
120
+ command_result is not None
121
+ and "done" not in command_result
122
+ and "empty" not in command_result
123
+ ):
120
124
  _LOGGER.warning("Write command failed: %s", name)
121
125
  except RuntimeError as err:
122
126
  _LOGGER.error(err)
@@ -69,7 +69,9 @@ class EcovacsMap(
69
69
  await super().async_added_to_hass()
70
70
 
71
71
  async def on_info(event: CachedMapInfoEvent) -> None:
72
- self._attr_extra_state_attributes["map_name"] = event.name
72
+ for map_obj in event.maps:
73
+ if map_obj.using:
74
+ self._attr_extra_state_attributes["map_name"] = map_obj.name
73
75
 
74
76
  async def on_changed(event: MapChangedEvent) -> None:
75
77
  self._attr_image_last_updated = event.when
@@ -6,5 +6,5 @@
6
6
  "documentation": "https://www.home-assistant.io/integrations/ecovacs",
7
7
  "iot_class": "cloud_push",
8
8
  "loggers": ["sleekxmppfs", "sucks", "deebot_client"],
9
- "requirements": ["py-sucks==0.9.11", "deebot-client==14.0.0"]
9
+ "requirements": ["py-sucks==0.9.11", "deebot-client==15.0.0"]
10
10
  }
@@ -0,0 +1,26 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "\u0410\u043a\u0430\u0443\u043d\u0442\u044a\u0442 \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d",
5
+ "missing_configuration": "\u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044a\u0442 \u043d\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d. \u041c\u043e\u043b\u044f, \u0441\u043b\u0435\u0434\u0432\u0430\u0439\u0442\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u0442\u0430.",
6
+ "no_url_available": "\u041d\u044f\u043c\u0430 \u043d\u0430\u043b\u0438\u0447\u0435\u043d URL. \u0417\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e\u0442\u043d\u043e\u0441\u043d\u043e \u0442\u0430\u0437\u0438 \u0433\u0440\u0435\u0448\u043a\u0430, [\u043f\u0440\u043e\u0432\u0435\u0440\u0435\u0442\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0430 \u0437\u0430 \u043f\u043e\u043c\u043e\u0449]({docs_url})"
7
+ },
8
+ "create_entry": {
9
+ "default": "\u0423\u0441\u043f\u0435\u0448\u043d\u0430 \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u043a\u0430\u0446\u0438\u044f"
10
+ },
11
+ "error": {
12
+ "invalid_name": "\u0418\u043c\u0435\u0442\u043e \u0435 \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e",
13
+ "invalid_url": "URL \u0435 \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u0435\u043d"
14
+ },
15
+ "step": {
16
+ "choose_system": {
17
+ "data": {
18
+ "system": "\u0421\u0438\u0441\u0442\u0435\u043c\u0430"
19
+ }
20
+ },
21
+ "pick_implementation": {
22
+ "title": "\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435 \u043c\u0435\u0442\u043e\u0434 \u0437\u0430 \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u043a\u0430\u0446\u0438\u044f"
23
+ }
24
+ }
25
+ }
26
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "Le compte est d\u00e9j\u00e0 configur\u00e9",
5
+ "already_in_progress": "La configuration est d\u00e9j\u00e0 en cours",
6
+ "authorize_url_timeout": "D\u00e9lai de g\u00e9n\u00e9ration de l'URL d'authentification expir\u00e9.",
7
+ "missing_configuration": "Le composant n'est pas configur\u00e9. Veuillez suivre la documentation.",
8
+ "no_own_systems": "Votre compte ne dispose pas d'acc\u00e8s adminstrateur aux syst\u00e8mes.",
9
+ "no_url_available": "Aucune URL disponible. Pour plus d'informations sur cette erreur, [consultez la section d'aide]({docs_url})",
10
+ "oauth_error": "Des donn\u00e9es de jeton non valides ont \u00e9t\u00e9 re\u00e7ues.",
11
+ "oauth_failed": "Erreur lors de l'obtention du jeton d'acc\u00e8s.",
12
+ "oauth_timeout": "D\u00e9lai d'expiration de la r\u00e9solution du jeton OAuth.",
13
+ "oauth_unauthorized": "Erreur d'autorisation OAuth lors de l'obtention du jeton d'acc\u00e8s.",
14
+ "user_rejected_authorize": "Association de compte refus\u00e9e\u00a0: {error}"
15
+ },
16
+ "create_entry": {
17
+ "default": "Authentification r\u00e9ussie"
18
+ },
19
+ "error": {
20
+ "invalid_name": "Le nom n'est pas valable",
21
+ "invalid_url": "URL non valable",
22
+ "no_webhooks_provided": "Aucun nom d'\u00e9v\u00e8nement fourni"
23
+ },
24
+ "step": {
25
+ "choose_system": {
26
+ "data": {
27
+ "system": "Syst\u00e8me"
28
+ }
29
+ }
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,65 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "Paskyra jau sukonfig\u016bruota",
5
+ "already_in_progress": "Konfig\u016bracijos procesas jau vyksta",
6
+ "authorize_url_timeout": "Baig\u0117si skirtasis laikas generuojant \u012fgaliojimo URL.",
7
+ "cannot_connect": "Ry\u0161ys su {ekeybionyx} nepavyko. Patikrinkite interneto ry\u0161\u012f ir bandykite dar kart\u0105.",
8
+ "no_available_webhooks": "{ekeybionyx} sistemoje n\u0117ra pasiekiam\u0173 \u017einiatinklio kabliuk\u0173. I\u0161trinkite kelis ir bandykite dar kart\u0105.",
9
+ "no_own_systems": "J\u016bs\u0173 paskyra neturi administratoriaus prieigos prie joki\u0173 sistem\u0173.",
10
+ "no_url_available": "N\u0117ra URL. Nor\u0117dami gauti informacijos apie \u0161i\u0105 klaid\u0105, [\u017er. pagalbos skyri\u0173]({docs_url})",
11
+ "oauth_error": "Gauti neteisingi prieigos rakto duomenys.",
12
+ "oauth_failed": "Klaida gaunant prieigos rakt\u0105.",
13
+ "oauth_timeout": "Baig\u0117si skirtasis OAuth prieigos raktas.",
14
+ "oauth_unauthorized": "OAuth prieigos teis\u0117s klaida gaunant prieigos rakt\u0105.",
15
+ "user_rejected_authorize": "Paskyros susiejimas atmestas: {error}"
16
+ },
17
+ "create_entry": {
18
+ "default": "S\u0117kmingai autentifikuota"
19
+ },
20
+ "error": {
21
+ "invalid_name": "Vardas netinkamas",
22
+ "invalid_url": "URL neteisingas",
23
+ "no_webhooks_provided": "Nepateikti \u012fvyki\u0173 pavadinimai"
24
+ },
25
+ "progress": {
26
+ "check_deletion_status": "Atidarykite {ekeybionyx} program\u0117l\u0119 ir patvirtinkite funkcij\u0173 i\u0161trynim\u0105."
27
+ },
28
+ "step": {
29
+ "choose_system": {
30
+ "data": {
31
+ "system": "Sistema"
32
+ },
33
+ "data_description": {
34
+ "system": "Sistema, kuriai tur\u0117t\u0173 b\u016bti nustatyti \u012fvyki\u0173 objektai."
35
+ },
36
+ "description": "Pasirinkite {ekeybionyx} sistem\u0105, kuri\u0105 norite prijungti prie Home Assistant."
37
+ },
38
+ "delete_webhooks": {
39
+ "description": "\u0160i sistema jau prijungta prie Home Assistant. Jei t\u0119site, anks\u010diau sukonfig\u016bruotos funkcijos bus i\u0161trintos."
40
+ },
41
+ "pick_implementation": {
42
+ "title": "Pasirinkite autentifikavimo metod\u0105"
43
+ },
44
+ "webhooks": {
45
+ "data": {
46
+ "url": "Home Assistant URL",
47
+ "webhook1": "\u012evykio objektas 1",
48
+ "webhook2": "\u012evykio objektas 2",
49
+ "webhook3": "\u012evykio objektas 3",
50
+ "webhook4": "\u012evykio objektas 4",
51
+ "webhook5": "\u012evykio objektas 5"
52
+ },
53
+ "data_description": {
54
+ "url": "Home Assistant egzemplioriaus URL, kur\u012f galima pasiekti i\u0161 pir\u0161t\u0173 atspaud\u0173 valdiklio",
55
+ "webhook1": "\u012evykio objekto 1, kuris bus susietas su funkcija, pavadinimas",
56
+ "webhook2": "\u012evykio objekto 2, kuris bus susietas su funkcija, pavadinimas",
57
+ "webhook3": "\u012evykio objekto 3, kuris bus susietas su funkcija, pavadinimas",
58
+ "webhook4": "\u012evykio objekto 4, kuris bus susietas su funkcija, pavadinimas",
59
+ "webhook5": "\u012evykio objekto 5, kuris bus susietas su funkcija, pavadinimas"
60
+ },
61
+ "description": "Pavadinkite savo \u012fvyki\u0173 objektus. \u0160ie \u012fvyki\u0173 objektai bus susieti kaip funkcijos {ekeybionyx} programoje. Galite konfig\u016bruoti iki {webhooks_available} \u012fvyki\u0173 objekt\u0173. Palikus pavadinim\u0105 tu\u0161\u010di\u0105, to \u012fvykio objekto s\u0105ranka bus praleista."
62
+ }
63
+ }
64
+ }
65
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "config": {
3
+ "step": {
4
+ "reconfigure": {
5
+ "data": {
6
+ "password": "Wachtwurd"
7
+ }
8
+ }
9
+ }
10
+ }
11
+ }
@@ -3,14 +3,15 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  from datetime import timedelta
6
+ from enum import IntEnum
6
7
  import logging
7
8
  from typing import Any
8
9
 
9
10
  from pyephember2.pyephember2 import (
10
11
  EphEmber,
11
12
  ZoneMode,
13
+ boiler_state,
12
14
  zone_current_temperature,
13
- zone_is_active,
14
15
  zone_is_hotwater,
15
16
  zone_mode,
16
17
  zone_name,
@@ -53,6 +54,15 @@ EPH_TO_HA_STATE = {
53
54
  "OFF": HVACMode.OFF,
54
55
  }
55
56
 
57
+
58
+ class EPHBoilerStates(IntEnum):
59
+ """Boiler states for a zone given by the api."""
60
+
61
+ FIXME = 0
62
+ OFF = 1
63
+ ON = 2
64
+
65
+
56
66
  HA_STATE_TO_EPH = {value: key for key, value in EPH_TO_HA_STATE.items()}
57
67
 
58
68
 
@@ -123,7 +133,7 @@ class EphEmberThermostat(ClimateEntity):
123
133
  @property
124
134
  def hvac_action(self) -> HVACAction:
125
135
  """Return current HVAC action."""
126
- if zone_is_active(self._zone):
136
+ if boiler_state(self._zone) == EPHBoilerStates.ON:
127
137
  return HVACAction.HEATING
128
138
 
129
139
  return HVACAction.IDLE
@@ -18,12 +18,14 @@
18
18
  "encryption_key": {
19
19
  "data": {
20
20
  "noise_psk": "Klucz szyfruj\u0105cy"
21
- }
21
+ },
22
+ "description": "Wprowad\u017a klucz szyfrowania dla {name}. Mo\u017cesz go znale\u017a\u0107 w panelu ESPHome lub w konfiguracji swojego urz\u0105dzenia."
22
23
  },
23
24
  "reauth_confirm": {
24
25
  "data": {
25
26
  "noise_psk": "Klucz szyfruj\u0105cy"
26
- }
27
+ },
28
+ "description": "Urz\u0105dzenie ESPHome {name} w\u0142\u0105czy\u0142o szyfrowanie transportu lub zmieni\u0142o klucz szyfruj\u0105cy. Wprowad\u017a zaktualizowany klucz. Mo\u017cesz go znale\u017a\u0107 w panelu ESPHome lub w konfiguracji swojego urz\u0105dzenia."
27
29
  },
28
30
  "user": {
29
31
  "data": {
@@ -3,8 +3,25 @@
3
3
  "dir_not_allowed": {
4
4
  "message": "\u0414\u043e\u0441\u0442\u044a\u043f\u044a\u0442 \u0434\u043e {filename} \u043d\u0435 \u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d."
5
5
  },
6
+ "file_not_found": {
7
+ "message": "\u0424\u0430\u0439\u043b\u044a\u0442 {filename} \u043d\u0435 \u0435 \u043d\u0430\u043c\u0435\u0440\u0435\u043d."
8
+ },
6
9
  "write_access_failed": {
7
10
  "message": "\u0414\u043e\u0441\u0442\u044a\u043f\u044a\u0442 \u0437\u0430 \u0437\u0430\u043f\u0438\u0441 \u0434\u043e {filename} \u043d\u0435 \u0435 \u0443\u0441\u043f\u0435\u0448\u0435\u043d: {exc}."
8
11
  }
12
+ },
13
+ "services": {
14
+ "read_file": {
15
+ "fields": {
16
+ "file_encoding": {
17
+ "description": "\u041a\u043e\u0434\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0444\u0430\u0439\u043b\u0430 (JSON, YAML.)",
18
+ "name": "\u041a\u043e\u0434\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u0435"
19
+ },
20
+ "file_name": {
21
+ "description": "\u0418\u043c\u0435 \u043d\u0430 \u0444\u0430\u0439\u043b\u0430 \u0437\u0430 \u0447\u0435\u0442\u0435\u043d\u0435.",
22
+ "name": "\u0418\u043c\u0435 \u043d\u0430 \u0444\u0430\u0439\u043b\u0430"
23
+ }
24
+ }
25
+ }
9
26
  }
10
27
  }
@@ -46,6 +46,9 @@ async def async_get_config_entry_diagnostics(
46
46
  }
47
47
  for _, device in avm_wrapper.devices.items()
48
48
  ],
49
+ "cpu_temperatures": await hass.async_add_executor_job(
50
+ avm_wrapper.fritz_status.get_cpu_temperatures
51
+ ),
49
52
  "wan_link_properties": await avm_wrapper.async_get_wan_link_properties(),
50
53
  },
51
54
  }
@@ -17,5 +17,18 @@
17
17
  "title": "\u0410\u0432\u0442\u0435\u043d\u0442\u0438\u043a\u0430\u0446\u0438\u044f\u0442\u0430 \u0437\u0430 {name} \u0435 \u0438\u0437\u0442\u0435\u043a\u043b\u0430"
18
18
  }
19
19
  }
20
+ },
21
+ "entity": {
22
+ "sensor": {
23
+ "awarded_favorite_points": {
24
+ "unit_of_measurement": "\u0442\u043e\u0447\u043a\u0438"
25
+ },
26
+ "cache_favorite_points": {
27
+ "unit_of_measurement": "\u0442\u043e\u0447\u043a\u0438"
28
+ },
29
+ "favorite_points": {
30
+ "unit_of_measurement": "\u0442\u043e\u0447\u043a\u0438"
31
+ }
32
+ }
20
33
  }
21
34
  }
@@ -72,6 +72,9 @@
72
72
  },
73
73
  "title": "\u0418\u0437\u0438\u0441\u043a\u0432\u0430 \u0441\u0435 \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435(\u0438\u044f)."
74
74
  },
75
+ "issue_system_free_space": {
76
+ "title": "\u0421\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0442\u043e \u043c\u044f\u0441\u0442\u043e \u043d\u0430 \u0434\u0438\u0441\u043a\u0430 \u0441 \u0434\u0430\u043d\u043d\u0438 \u0435 \u043c\u0430\u043b\u043a\u043e"
77
+ },
75
78
  "issue_system_multiple_data_disks": {
76
79
  "fix_flow": {
77
80
  "abort": {
@@ -27,6 +27,12 @@
27
27
  "install_addon": {
28
28
  "title": "[%key:component::homeassistant_hardware::silabs_multiprotocol_hardware::options::step::install_addon::title%]"
29
29
  },
30
+ "install_thread_firmware": {
31
+ "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::install_thread_firmware::title%]"
32
+ },
33
+ "install_zigbee_firmware": {
34
+ "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::install_zigbee_firmware::title%]"
35
+ },
30
36
  "notify_channel_change": {
31
37
  "title": "[%key:component::homeassistant_hardware::silabs_multiprotocol_hardware::options::step::notify_channel_change::title%]",
32
38
  "description": "[%key:component::homeassistant_hardware::silabs_multiprotocol_hardware::options::step::notify_channel_change::description%]"
@@ -69,12 +75,10 @@
69
75
  "description": "[%key:component::homeassistant_hardware::firmware_picker::options::step::confirm_zigbee::description%]"
70
76
  },
71
77
  "install_otbr_addon": {
72
- "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::install_otbr_addon::title%]",
73
- "description": "[%key:component::homeassistant_hardware::firmware_picker::options::step::install_otbr_addon::description%]"
78
+ "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::install_otbr_addon::title%]"
74
79
  },
75
80
  "start_otbr_addon": {
76
- "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::start_otbr_addon::title%]",
77
- "description": "[%key:component::homeassistant_hardware::firmware_picker::options::step::start_otbr_addon::description%]"
81
+ "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::start_otbr_addon::title%]"
78
82
  },
79
83
  "otbr_failed": {
80
84
  "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::otbr_failed::title%]",
@@ -129,14 +133,21 @@
129
133
  },
130
134
  "progress": {
131
135
  "install_addon": "[%key:component::homeassistant_hardware::silabs_multiprotocol_hardware::options::progress::install_addon%]",
136
+ "install_firmware": "[%key:component::homeassistant_hardware::firmware_picker::options::progress::install_firmware%]",
137
+ "install_otbr_addon": "[%key:component::homeassistant_hardware::firmware_picker::options::progress::install_otbr_addon%]",
132
138
  "start_addon": "[%key:component::homeassistant_hardware::silabs_multiprotocol_hardware::options::progress::start_addon%]",
133
- "start_otbr_addon": "[%key:component::homeassistant_hardware::silabs_multiprotocol_hardware::options::progress::start_addon%]",
134
- "install_firmware": "[%key:component::homeassistant_hardware::firmware_picker::options::progress::install_firmware%]"
139
+ "start_otbr_addon": "[%key:component::homeassistant_hardware::firmware_picker::options::progress::start_otbr_addon%]"
135
140
  }
136
141
  },
137
142
  "config": {
138
143
  "flow_title": "{model}",
139
144
  "step": {
145
+ "install_thread_firmware": {
146
+ "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::install_thread_firmware::title%]"
147
+ },
148
+ "install_zigbee_firmware": {
149
+ "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::install_zigbee_firmware::title%]"
150
+ },
140
151
  "pick_firmware": {
141
152
  "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::pick_firmware::title%]",
142
153
  "description": "[%key:component::homeassistant_hardware::firmware_picker::options::step::pick_firmware::description%]",
@@ -158,12 +169,10 @@
158
169
  "description": "[%key:component::homeassistant_hardware::firmware_picker::options::step::confirm_zigbee::description%]"
159
170
  },
160
171
  "install_otbr_addon": {
161
- "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::install_otbr_addon::title%]",
162
- "description": "[%key:component::homeassistant_hardware::firmware_picker::options::step::install_otbr_addon::description%]"
172
+ "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::install_otbr_addon::title%]"
163
173
  },
164
174
  "start_otbr_addon": {
165
- "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::start_otbr_addon::title%]",
166
- "description": "[%key:component::homeassistant_hardware::firmware_picker::options::step::start_otbr_addon::description%]"
175
+ "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::start_otbr_addon::title%]"
167
176
  },
168
177
  "otbr_failed": {
169
178
  "title": "[%key:component::homeassistant_hardware::firmware_picker::options::step::otbr_failed::title%]",
@@ -215,9 +224,10 @@
215
224
  },
216
225
  "progress": {
217
226
  "install_addon": "[%key:component::homeassistant_hardware::silabs_multiprotocol_hardware::options::progress::install_addon%]",
227
+ "install_firmware": "[%key:component::homeassistant_hardware::firmware_picker::options::progress::install_firmware%]",
228
+ "install_otbr_addon": "[%key:component::homeassistant_hardware::firmware_picker::options::progress::install_otbr_addon%]",
218
229
  "start_addon": "[%key:component::homeassistant_hardware::silabs_multiprotocol_hardware::options::progress::start_addon%]",
219
- "start_otbr_addon": "[%key:component::homeassistant_hardware::silabs_multiprotocol_hardware::options::progress::start_addon%]",
220
- "install_firmware": "[%key:component::homeassistant_hardware::firmware_picker::options::progress::install_firmware%]"
230
+ "start_otbr_addon": "[%key:component::homeassistant_hardware::firmware_picker::options::progress::start_otbr_addon%]"
221
231
  }
222
232
  },
223
233
  "exceptions": {