homeassistant 2025.10.0b4__py3-none-any.whl → 2025.10.0b6__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of homeassistant might be problematic. Click here for more details.

Files changed (636) 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/bg.json +7 -1
  5. homeassistant/components/accuweather/translations/id.json +9 -0
  6. homeassistant/components/adax/translations/fy.json +11 -0
  7. homeassistant/components/adguard/translations/zh-Hant.json +1 -1
  8. homeassistant/components/airos/translations/bg.json +8 -0
  9. homeassistant/components/airos/translations/ca.json +8 -0
  10. homeassistant/components/airos/translations/cs.json +12 -0
  11. homeassistant/components/airos/translations/es.json +12 -0
  12. homeassistant/components/airos/translations/et.json +12 -0
  13. homeassistant/components/airos/translations/fr.json +18 -0
  14. homeassistant/components/airos/translations/fy.json +11 -0
  15. homeassistant/components/airos/translations/id.json +36 -0
  16. homeassistant/components/airos/translations/lt.json +12 -0
  17. homeassistant/components/airos/translations/lv.json +1 -0
  18. homeassistant/components/airos/translations/pt.json +12 -0
  19. homeassistant/components/airos/translations/sk.json +12 -0
  20. homeassistant/components/airos/translations/sv.json +40 -1
  21. homeassistant/components/airos/translations/zh-Hans.json +12 -0
  22. homeassistant/components/airos/translations/zh-Hant.json +12 -0
  23. homeassistant/components/airtouch5/translations/da.json +9 -0
  24. homeassistant/components/airzone/translations/fr.json +9 -0
  25. homeassistant/components/airzone/translations/lt.json +10 -0
  26. homeassistant/components/aladdin_connect/config_flow.py +11 -0
  27. homeassistant/components/aladdin_connect/strings.json +2 -1
  28. homeassistant/components/aladdin_connect/translations/cs.json +1 -0
  29. homeassistant/components/aladdin_connect/translations/de.json +1 -0
  30. homeassistant/components/aladdin_connect/translations/en-GB.json +1 -0
  31. homeassistant/components/aladdin_connect/translations/en.json +1 -0
  32. homeassistant/components/aladdin_connect/translations/es.json +1 -0
  33. homeassistant/components/aladdin_connect/translations/et.json +1 -0
  34. homeassistant/components/aladdin_connect/translations/id.json +28 -1
  35. homeassistant/components/aladdin_connect/translations/lt.json +1 -0
  36. homeassistant/components/aladdin_connect/translations/pt.json +1 -0
  37. homeassistant/components/alexa_devices/binary_sensor.py +0 -7
  38. homeassistant/components/alexa_devices/manifest.json +1 -1
  39. homeassistant/components/alexa_devices/translations/fy.json +16 -0
  40. homeassistant/components/alexa_devices/translations/id.json +12 -0
  41. homeassistant/components/analytics/analytics.py +24 -13
  42. homeassistant/components/androidtv_remote/translations/id.json +7 -1
  43. homeassistant/components/anthropic/translations/id.json +2 -1
  44. homeassistant/components/aosmith/translations/id.json +9 -0
  45. homeassistant/components/apcupsd/translations/id.json +6 -0
  46. homeassistant/components/august/translations/id.json +25 -1
  47. homeassistant/components/bayesian/binary_sensor.py +7 -0
  48. homeassistant/components/bayesian/translations/id.json +62 -0
  49. homeassistant/components/blue_current/translations/bg.json +18 -0
  50. homeassistant/components/blue_current/translations/fr.json +9 -0
  51. homeassistant/components/blue_current/translations/lt.json +44 -0
  52. homeassistant/components/broadlink/translations/zh-Hant.json +1 -1
  53. homeassistant/components/brother/translations/id.json +21 -0
  54. homeassistant/components/bsblan/translations/fy.json +16 -0
  55. homeassistant/components/bsblan/translations/id.json +17 -2
  56. homeassistant/components/cast/translations/pl.json +14 -0
  57. homeassistant/components/coinbase/translations/id.json +5 -0
  58. homeassistant/components/compit/translations/bg.json +25 -0
  59. homeassistant/components/compit/translations/fy.json +16 -0
  60. homeassistant/components/compit/translations/id.json +25 -0
  61. homeassistant/components/cover/translations/da.json +20 -1
  62. homeassistant/components/cync/translations/bg.json +20 -0
  63. homeassistant/components/cync/translations/ca.json +12 -0
  64. homeassistant/components/cync/translations/fr.json +32 -0
  65. homeassistant/components/cync/translations/fy.json +11 -0
  66. homeassistant/components/cync/translations/id.json +20 -0
  67. homeassistant/components/cync/translations/lt.json +32 -0
  68. homeassistant/components/datadog/translations/id.json +28 -0
  69. homeassistant/components/deconz/translations/zh-Hant.json +1 -1
  70. homeassistant/components/deluge/translations/bg.json +6 -0
  71. homeassistant/components/devolo_home_control/translations/fy.json +11 -0
  72. homeassistant/components/devolo_home_network/translations/fy.json +10 -0
  73. homeassistant/components/dnsip/sensor.py +17 -4
  74. homeassistant/components/droplet/translations/id.json +17 -0
  75. homeassistant/components/ebusd/__init__.py +5 -1
  76. homeassistant/components/ecobee/strings.json +2 -2
  77. homeassistant/components/ecobee/translations/cs.json +2 -2
  78. homeassistant/components/ecobee/translations/de.json +3 -3
  79. homeassistant/components/ecobee/translations/el.json +1 -2
  80. homeassistant/components/ecobee/translations/en-GB.json +2 -2
  81. homeassistant/components/ecobee/translations/en.json +2 -2
  82. homeassistant/components/ecobee/translations/es.json +2 -2
  83. homeassistant/components/ecobee/translations/et.json +2 -2
  84. homeassistant/components/ecobee/translations/ga.json +1 -5
  85. homeassistant/components/ecobee/translations/hu.json +1 -5
  86. homeassistant/components/ecobee/translations/it.json +1 -5
  87. homeassistant/components/ecobee/translations/ja.json +1 -5
  88. homeassistant/components/ecobee/translations/lt.json +2 -2
  89. homeassistant/components/ecobee/translations/pt.json +2 -2
  90. homeassistant/components/ecobee/translations/ru.json +1 -5
  91. homeassistant/components/ecobee/translations/sk.json +1 -5
  92. homeassistant/components/ecobee/translations/sv.json +1 -5
  93. homeassistant/components/ecobee/translations/tr.json +1 -5
  94. homeassistant/components/ecobee/translations/zh-Hans.json +1 -5
  95. homeassistant/components/ecobee/translations/zh-Hant.json +1 -5
  96. homeassistant/components/ecovacs/image.py +3 -1
  97. homeassistant/components/ecovacs/manifest.json +1 -1
  98. homeassistant/components/ecowitt/manifest.json +1 -1
  99. homeassistant/components/eheimdigital/translations/id.json +7 -1
  100. homeassistant/components/ekeybionyx/translations/bg.json +26 -0
  101. homeassistant/components/ekeybionyx/translations/fr.json +32 -0
  102. homeassistant/components/ekeybionyx/translations/id.json +24 -0
  103. homeassistant/components/ekeybionyx/translations/lt.json +66 -0
  104. homeassistant/components/elevenlabs/translations/id.json +2 -1
  105. homeassistant/components/elkm1/translations/fy.json +11 -0
  106. homeassistant/components/elkm1/translations/id.json +6 -0
  107. homeassistant/components/emoncms/translations/id.json +9 -0
  108. homeassistant/components/enphase_envoy/translations/id.json +1 -0
  109. homeassistant/components/ephember/climate.py +12 -2
  110. homeassistant/components/esphome/analytics.py +11 -0
  111. homeassistant/components/esphome/translations/pl.json +4 -2
  112. homeassistant/components/fan/translations/id.json +3 -0
  113. homeassistant/components/file/translations/bg.json +17 -0
  114. homeassistant/components/flick_electric/translations/zh-Hant.json +2 -2
  115. homeassistant/components/fritz/diagnostics.py +3 -0
  116. homeassistant/components/frontend/manifest.json +1 -1
  117. homeassistant/components/geocaching/translations/bg.json +13 -0
  118. homeassistant/components/google_generative_ai_conversation/translations/id.json +29 -1
  119. homeassistant/components/hassio/translations/bg.json +3 -0
  120. homeassistant/components/hassio/translations/id.json +29 -0
  121. homeassistant/components/holiday/translations/zh-Hant.json +2 -2
  122. homeassistant/components/homeassistant/translations/id.json +8 -0
  123. homeassistant/components/homeassistant_connect_zbt2/config_flow.py +6 -0
  124. homeassistant/components/homeassistant_connect_zbt2/strings.json +22 -12
  125. homeassistant/components/homeassistant_connect_zbt2/translations/bg.json +64 -6
  126. homeassistant/components/homeassistant_connect_zbt2/translations/ca.json +2 -8
  127. homeassistant/components/homeassistant_connect_zbt2/translations/cs.json +22 -12
  128. homeassistant/components/homeassistant_connect_zbt2/translations/de.json +22 -12
  129. homeassistant/components/homeassistant_connect_zbt2/translations/el.json +2 -8
  130. homeassistant/components/homeassistant_connect_zbt2/translations/en-GB.json +22 -12
  131. homeassistant/components/homeassistant_connect_zbt2/translations/en.json +22 -12
  132. homeassistant/components/homeassistant_connect_zbt2/translations/es.json +22 -12
  133. homeassistant/components/homeassistant_connect_zbt2/translations/et.json +22 -12
  134. homeassistant/components/homeassistant_connect_zbt2/translations/fr.json +16 -8
  135. homeassistant/components/homeassistant_connect_zbt2/translations/ga.json +2 -8
  136. homeassistant/components/homeassistant_connect_zbt2/translations/he.json +2 -8
  137. homeassistant/components/homeassistant_connect_zbt2/translations/id.json +238 -0
  138. homeassistant/components/homeassistant_connect_zbt2/translations/lt.json +22 -12
  139. homeassistant/components/homeassistant_connect_zbt2/translations/nl.json +2 -4
  140. homeassistant/components/homeassistant_connect_zbt2/translations/pl.json +1 -2
  141. homeassistant/components/homeassistant_connect_zbt2/translations/pt.json +22 -12
  142. homeassistant/components/homeassistant_connect_zbt2/translations/ru.json +21 -6
  143. homeassistant/components/homeassistant_connect_zbt2/translations/sk.json +6 -12
  144. homeassistant/components/homeassistant_connect_zbt2/translations/zh-Hans.json +2 -8
  145. homeassistant/components/homeassistant_connect_zbt2/translations/zh-Hant.json +22 -12
  146. homeassistant/components/homeassistant_connect_zbt2/update.py +2 -1
  147. homeassistant/components/homeassistant_hardware/firmware_config_flow.py +24 -67
  148. homeassistant/components/homeassistant_hardware/manifest.json +1 -1
  149. homeassistant/components/homeassistant_hardware/strings.json +11 -5
  150. homeassistant/components/homeassistant_hardware/translations/bg.json +40 -0
  151. homeassistant/components/homeassistant_hardware/translations/ca.json +0 -8
  152. homeassistant/components/homeassistant_hardware/translations/cs.json +11 -5
  153. homeassistant/components/homeassistant_hardware/translations/de.json +11 -5
  154. homeassistant/components/homeassistant_hardware/translations/el.json +0 -11
  155. homeassistant/components/homeassistant_hardware/translations/en-GB.json +11 -5
  156. homeassistant/components/homeassistant_hardware/translations/en.json +11 -5
  157. homeassistant/components/homeassistant_hardware/translations/es.json +11 -5
  158. homeassistant/components/homeassistant_hardware/translations/et.json +11 -5
  159. homeassistant/components/homeassistant_hardware/translations/fr.json +7 -8
  160. homeassistant/components/homeassistant_hardware/translations/ga.json +0 -11
  161. homeassistant/components/homeassistant_hardware/translations/he.json +0 -11
  162. homeassistant/components/homeassistant_hardware/translations/hu.json +0 -11
  163. homeassistant/components/homeassistant_hardware/translations/id.json +54 -4
  164. homeassistant/components/homeassistant_hardware/translations/it.json +0 -3
  165. homeassistant/components/homeassistant_hardware/translations/ja.json +0 -11
  166. homeassistant/components/homeassistant_hardware/translations/ko.json +0 -8
  167. homeassistant/components/homeassistant_hardware/translations/lt.json +11 -5
  168. homeassistant/components/homeassistant_hardware/translations/mk.json +0 -3
  169. homeassistant/components/homeassistant_hardware/translations/nl.json +0 -3
  170. homeassistant/components/homeassistant_hardware/translations/pt.json +11 -5
  171. homeassistant/components/homeassistant_hardware/translations/ru.json +11 -5
  172. homeassistant/components/homeassistant_hardware/translations/sk.json +10 -7
  173. homeassistant/components/homeassistant_hardware/translations/sv.json +0 -11
  174. homeassistant/components/homeassistant_hardware/translations/tr.json +0 -8
  175. homeassistant/components/homeassistant_hardware/translations/zh-Hans.json +0 -11
  176. homeassistant/components/homeassistant_hardware/translations/zh-Hant.json +11 -5
  177. homeassistant/components/homeassistant_hardware/update.py +8 -3
  178. homeassistant/components/homeassistant_hardware/util.py +22 -5
  179. homeassistant/components/homeassistant_sky_connect/strings.json +22 -12
  180. homeassistant/components/homeassistant_sky_connect/translations/bg.json +72 -4
  181. homeassistant/components/homeassistant_sky_connect/translations/ca.json +2 -8
  182. homeassistant/components/homeassistant_sky_connect/translations/cs.json +22 -12
  183. homeassistant/components/homeassistant_sky_connect/translations/de.json +22 -12
  184. homeassistant/components/homeassistant_sky_connect/translations/el.json +2 -8
  185. homeassistant/components/homeassistant_sky_connect/translations/en-GB.json +22 -12
  186. homeassistant/components/homeassistant_sky_connect/translations/en.json +22 -12
  187. homeassistant/components/homeassistant_sky_connect/translations/es.json +22 -12
  188. homeassistant/components/homeassistant_sky_connect/translations/et.json +22 -12
  189. homeassistant/components/homeassistant_sky_connect/translations/fi.json +2 -4
  190. homeassistant/components/homeassistant_sky_connect/translations/fr.json +16 -8
  191. homeassistant/components/homeassistant_sky_connect/translations/ga.json +2 -8
  192. homeassistant/components/homeassistant_sky_connect/translations/he.json +2 -8
  193. homeassistant/components/homeassistant_sky_connect/translations/hu.json +2 -8
  194. homeassistant/components/homeassistant_sky_connect/translations/id.json +96 -18
  195. homeassistant/components/homeassistant_sky_connect/translations/it.json +2 -4
  196. homeassistant/components/homeassistant_sky_connect/translations/ja.json +2 -8
  197. homeassistant/components/homeassistant_sky_connect/translations/ko.json +2 -12
  198. homeassistant/components/homeassistant_sky_connect/translations/lt.json +22 -12
  199. homeassistant/components/homeassistant_sky_connect/translations/nl.json +2 -4
  200. homeassistant/components/homeassistant_sky_connect/translations/pl.json +2 -4
  201. homeassistant/components/homeassistant_sky_connect/translations/pt.json +22 -12
  202. homeassistant/components/homeassistant_sky_connect/translations/ru.json +22 -12
  203. homeassistant/components/homeassistant_sky_connect/translations/sk.json +6 -12
  204. homeassistant/components/homeassistant_sky_connect/translations/sv.json +2 -8
  205. homeassistant/components/homeassistant_sky_connect/translations/tr.json +2 -8
  206. homeassistant/components/homeassistant_sky_connect/translations/zh-Hans.json +2 -8
  207. homeassistant/components/homeassistant_sky_connect/translations/zh-Hant.json +22 -12
  208. homeassistant/components/homeassistant_sky_connect/update.py +2 -1
  209. homeassistant/components/homeassistant_yellow/config_flow.py +7 -1
  210. homeassistant/components/homeassistant_yellow/strings.json +11 -6
  211. homeassistant/components/homeassistant_yellow/translations/bg.json +32 -3
  212. homeassistant/components/homeassistant_yellow/translations/ca.json +1 -4
  213. homeassistant/components/homeassistant_yellow/translations/cs.json +11 -6
  214. homeassistant/components/homeassistant_yellow/translations/de.json +11 -6
  215. homeassistant/components/homeassistant_yellow/translations/el.json +1 -4
  216. homeassistant/components/homeassistant_yellow/translations/en-GB.json +11 -6
  217. homeassistant/components/homeassistant_yellow/translations/en.json +11 -6
  218. homeassistant/components/homeassistant_yellow/translations/es.json +11 -6
  219. homeassistant/components/homeassistant_yellow/translations/et.json +11 -6
  220. homeassistant/components/homeassistant_yellow/translations/fr.json +8 -4
  221. homeassistant/components/homeassistant_yellow/translations/ga.json +1 -4
  222. homeassistant/components/homeassistant_yellow/translations/he.json +1 -4
  223. homeassistant/components/homeassistant_yellow/translations/hu.json +1 -4
  224. homeassistant/components/homeassistant_yellow/translations/id.json +49 -9
  225. homeassistant/components/homeassistant_yellow/translations/it.json +1 -2
  226. homeassistant/components/homeassistant_yellow/translations/ja.json +1 -4
  227. homeassistant/components/homeassistant_yellow/translations/ko.json +0 -2
  228. homeassistant/components/homeassistant_yellow/translations/lt.json +11 -6
  229. homeassistant/components/homeassistant_yellow/translations/nl.json +1 -2
  230. homeassistant/components/homeassistant_yellow/translations/pt.json +11 -6
  231. homeassistant/components/homeassistant_yellow/translations/ru.json +5 -6
  232. homeassistant/components/homeassistant_yellow/translations/sk.json +3 -6
  233. homeassistant/components/homeassistant_yellow/translations/sv.json +1 -4
  234. homeassistant/components/homeassistant_yellow/translations/tr.json +1 -4
  235. homeassistant/components/homeassistant_yellow/translations/zh-Hans.json +1 -4
  236. homeassistant/components/homeassistant_yellow/translations/zh-Hant.json +11 -6
  237. homeassistant/components/homeassistant_yellow/update.py +2 -1
  238. homeassistant/components/homee/translations/fy.json +14 -0
  239. homeassistant/components/homee/translations/id.json +14 -0
  240. homeassistant/components/hue/v2/binary_sensor.py +5 -1
  241. homeassistant/components/husqvarna_automower/translations/da.json +16 -0
  242. homeassistant/components/husqvarna_automower/translations/id.json +18 -0
  243. homeassistant/components/husqvarna_automower_ble/translations/id.json +4 -0
  244. homeassistant/components/icloud/translations/id.json +3 -0
  245. homeassistant/components/imeon_inverter/translations/fy.json +11 -0
  246. homeassistant/components/imeon_inverter/translations/id.json +10 -0
  247. homeassistant/components/improv_ble/translations/fy.json +7 -0
  248. homeassistant/components/irm_kmi/translations/bg.json +49 -0
  249. homeassistant/components/irm_kmi/translations/id.json +28 -0
  250. homeassistant/components/ista_ecotrend/translations/fy.json +11 -0
  251. homeassistant/components/keenetic_ndms2/translations/id.json +2 -1
  252. homeassistant/components/knx/translations/fr.json +3 -0
  253. homeassistant/components/knx/translations/id.json +3 -0
  254. homeassistant/components/konnected/__init__.py +14 -1
  255. homeassistant/components/konnected/manifest.json +1 -1
  256. homeassistant/components/konnected/strings.json +6 -0
  257. homeassistant/components/konnected/translations/cs.json +6 -0
  258. homeassistant/components/konnected/translations/de.json +6 -0
  259. homeassistant/components/konnected/translations/en-GB.json +6 -0
  260. homeassistant/components/konnected/translations/en.json +6 -0
  261. homeassistant/components/konnected/translations/es.json +6 -0
  262. homeassistant/components/konnected/translations/et.json +6 -0
  263. homeassistant/components/konnected/translations/lt.json +6 -0
  264. homeassistant/components/konnected/translations/pt.json +6 -0
  265. homeassistant/components/konnected/translations/sk.json +6 -0
  266. homeassistant/components/konnected/translations/zh-Hant.json +6 -0
  267. homeassistant/components/konnected_esphome/__init__.py +1 -0
  268. homeassistant/components/konnected_esphome/manifest.json +6 -0
  269. homeassistant/components/letpot/number.py +2 -1
  270. homeassistant/components/letpot/strings.json +1 -2
  271. homeassistant/components/letpot/translations/cs.json +1 -2
  272. homeassistant/components/letpot/translations/de.json +1 -2
  273. homeassistant/components/letpot/translations/en-GB.json +1 -2
  274. homeassistant/components/letpot/translations/en.json +1 -2
  275. homeassistant/components/letpot/translations/es.json +1 -2
  276. homeassistant/components/letpot/translations/et.json +1 -2
  277. homeassistant/components/letpot/translations/fr.json +9 -0
  278. homeassistant/components/letpot/translations/ga.json +1 -2
  279. homeassistant/components/letpot/translations/id.json +10 -0
  280. homeassistant/components/letpot/translations/lt.json +9 -0
  281. homeassistant/components/letpot/translations/nl.json +0 -5
  282. homeassistant/components/letpot/translations/pt.json +1 -2
  283. homeassistant/components/letpot/translations/sk.json +1 -2
  284. homeassistant/components/letpot/translations/zh-Hans.json +1 -2
  285. homeassistant/components/letpot/translations/zh-Hant.json +1 -2
  286. homeassistant/components/lg_thinq/translations/bg.json +9 -0
  287. homeassistant/components/lg_thinq/translations/id.json +5 -2
  288. homeassistant/components/libre_hardware_monitor/translations/id.json +19 -0
  289. homeassistant/components/lifx/translations/zh-Hant.json +1 -1
  290. homeassistant/components/light/translations/id.json +2 -1
  291. homeassistant/components/litterrobot/translations/bg.json +5 -0
  292. homeassistant/components/litterrobot/translations/id.json +15 -0
  293. homeassistant/components/lovelace/translations/pl.json +6 -1
  294. homeassistant/components/mastodon/translations/bg.json +3 -0
  295. homeassistant/components/matter/translations/bg.json +3 -0
  296. homeassistant/components/matter/translations/da.json +7 -0
  297. homeassistant/components/mcp/strings.json +20 -1
  298. homeassistant/components/mcp/translations/bg.json +1 -0
  299. homeassistant/components/mcp/translations/cs.json +20 -1
  300. homeassistant/components/mcp/translations/de.json +20 -1
  301. homeassistant/components/mcp/translations/en-GB.json +20 -1
  302. homeassistant/components/mcp/translations/en.json +20 -1
  303. homeassistant/components/mcp/translations/es.json +20 -1
  304. homeassistant/components/mcp/translations/et.json +20 -1
  305. homeassistant/components/mcp/translations/fr.json +20 -1
  306. homeassistant/components/mcp/translations/id.json +8 -1
  307. homeassistant/components/mcp/translations/lt.json +20 -1
  308. homeassistant/components/mcp/translations/pt.json +20 -1
  309. homeassistant/components/mcp/translations/sk.json +20 -1
  310. homeassistant/components/mcp/translations/zh-Hant.json +20 -1
  311. homeassistant/components/media_extractor/manifest.json +1 -1
  312. homeassistant/components/motioneye/translations/zh-Hant.json +1 -1
  313. homeassistant/components/mqtt/strings.json +2 -0
  314. homeassistant/components/mqtt/translations/bg.json +1 -0
  315. homeassistant/components/mqtt/translations/cs.json +2 -0
  316. homeassistant/components/mqtt/translations/da.json +19 -0
  317. homeassistant/components/mqtt/translations/de.json +2 -0
  318. homeassistant/components/mqtt/translations/en-GB.json +2 -0
  319. homeassistant/components/mqtt/translations/en.json +2 -0
  320. homeassistant/components/mqtt/translations/es.json +2 -0
  321. homeassistant/components/mqtt/translations/et.json +2 -0
  322. homeassistant/components/mqtt/translations/fr.json +2 -0
  323. homeassistant/components/mqtt/translations/fy.json +9 -0
  324. homeassistant/components/mqtt/translations/id.json +6 -0
  325. homeassistant/components/mqtt/translations/lt.json +2 -0
  326. homeassistant/components/mqtt/translations/nl.json +9 -0
  327. homeassistant/components/mqtt/translations/pt.json +2 -0
  328. homeassistant/components/mqtt/translations/ru.json +2 -0
  329. homeassistant/components/mqtt/translations/zh-Hant.json +3 -1
  330. homeassistant/components/music_assistant/translations/fr.json +7 -0
  331. homeassistant/components/nasweb/translations/id.json +10 -0
  332. homeassistant/components/nederlandse_spoorwegen/translations/id.json +28 -0
  333. homeassistant/components/nightscout/translations/zh-Hant.json +1 -1
  334. homeassistant/components/niko_home_control/translations/id.json +7 -1
  335. homeassistant/components/nina/translations/cs.json +3 -1
  336. homeassistant/components/nina/translations/de.json +1 -1
  337. homeassistant/components/nina/translations/es.json +3 -1
  338. homeassistant/components/nina/translations/et.json +2 -0
  339. homeassistant/components/nina/translations/lt.json +3 -1
  340. homeassistant/components/nina/translations/pt.json +3 -1
  341. homeassistant/components/nina/translations/sk.json +3 -1
  342. homeassistant/components/nina/translations/zh-Hans.json +3 -1
  343. homeassistant/components/nina/translations/zh-Hant.json +3 -1
  344. homeassistant/components/nordpool/translations/bg.json +8 -0
  345. homeassistant/components/ntfy/translations/fy.json +30 -0
  346. homeassistant/components/ntfy/translations/id.json +11 -0
  347. homeassistant/components/ntfy/translations/zh-Hant.json +1 -1
  348. homeassistant/components/number/const.py +2 -5
  349. homeassistant/components/number/strings.json +3 -0
  350. homeassistant/components/number/translations/cs.json +3 -0
  351. homeassistant/components/number/translations/de.json +3 -0
  352. homeassistant/components/number/translations/en-GB.json +3 -0
  353. homeassistant/components/number/translations/en.json +3 -0
  354. homeassistant/components/number/translations/es.json +3 -0
  355. homeassistant/components/number/translations/et.json +3 -0
  356. homeassistant/components/number/translations/fr.json +3 -0
  357. homeassistant/components/number/translations/lt.json +3 -0
  358. homeassistant/components/number/translations/pt.json +3 -0
  359. homeassistant/components/number/translations/ru.json +3 -0
  360. homeassistant/components/number/translations/zh-Hant.json +3 -0
  361. homeassistant/components/ohme/translations/fy.json +11 -0
  362. homeassistant/components/ollama/translations/id.json +18 -1
  363. homeassistant/components/open_router/translations/id.json +40 -0
  364. homeassistant/components/openai_conversation/translations/id.json +26 -1
  365. homeassistant/components/opower/translations/fy.json +5 -0
  366. homeassistant/components/opower/translations/id.json +6 -0
  367. homeassistant/components/overkiz/translations/id.json +1 -0
  368. homeassistant/components/peco/translations/zh-Hant.json +1 -1
  369. homeassistant/components/pi_hole/__init__.py +9 -3
  370. homeassistant/components/playstation_network/translations/id.json +8 -0
  371. homeassistant/components/plex/translations/zh-Hant.json +1 -1
  372. homeassistant/components/pooldose/translations/bg.json +9 -0
  373. homeassistant/components/pooldose/translations/id.json +49 -0
  374. homeassistant/components/portainer/__init__.py +27 -3
  375. homeassistant/components/portainer/config_flow.py +14 -10
  376. homeassistant/components/portainer/coordinator.py +2 -2
  377. homeassistant/components/portainer/strings.json +5 -5
  378. homeassistant/components/portainer/translations/bg.json +2 -2
  379. homeassistant/components/portainer/translations/ca.json +3 -2
  380. homeassistant/components/portainer/translations/cs.json +7 -5
  381. homeassistant/components/portainer/translations/de.json +5 -5
  382. homeassistant/components/portainer/translations/el.json +0 -8
  383. homeassistant/components/portainer/translations/en-GB.json +5 -5
  384. homeassistant/components/portainer/translations/en.json +5 -5
  385. homeassistant/components/portainer/translations/es.json +7 -5
  386. homeassistant/components/portainer/translations/et.json +7 -5
  387. homeassistant/components/portainer/translations/fr.json +18 -0
  388. homeassistant/components/portainer/translations/ga.json +0 -13
  389. homeassistant/components/portainer/translations/he.json +0 -8
  390. homeassistant/components/portainer/translations/id.json +22 -0
  391. homeassistant/components/portainer/translations/lt.json +7 -5
  392. homeassistant/components/portainer/translations/nl.json +0 -8
  393. homeassistant/components/portainer/translations/pt.json +7 -5
  394. homeassistant/components/portainer/translations/ru.json +7 -5
  395. homeassistant/components/portainer/translations/sk.json +7 -5
  396. homeassistant/components/portainer/translations/sl.json +0 -13
  397. homeassistant/components/portainer/translations/zh-Hans.json +7 -5
  398. homeassistant/components/portainer/translations/zh-Hant.json +7 -5
  399. homeassistant/components/pyload/translations/id.json +6 -0
  400. homeassistant/components/pyload/translations/zh-Hant.json +1 -1
  401. homeassistant/components/qbittorrent/translations/cs.json +4 -4
  402. homeassistant/components/random/strings.json +1 -0
  403. homeassistant/components/random/translations/cs.json +1 -0
  404. homeassistant/components/random/translations/de.json +1 -0
  405. homeassistant/components/random/translations/en-GB.json +1 -0
  406. homeassistant/components/random/translations/en.json +1 -0
  407. homeassistant/components/random/translations/es.json +1 -0
  408. homeassistant/components/random/translations/et.json +1 -0
  409. homeassistant/components/random/translations/fr.json +1 -0
  410. homeassistant/components/random/translations/lt.json +1 -0
  411. homeassistant/components/random/translations/pt.json +1 -0
  412. homeassistant/components/random/translations/ru.json +1 -0
  413. homeassistant/components/random/translations/zh-Hant.json +1 -0
  414. homeassistant/components/recorder/statistics.py +0 -5
  415. homeassistant/components/recorder/websocket_api.py +0 -4
  416. homeassistant/components/rehlko/translations/fy.json +16 -0
  417. homeassistant/components/remote/translations/id.json +3 -0
  418. homeassistant/components/remote_calendar/translations/id.json +2 -1
  419. homeassistant/components/reolink/manifest.json +1 -1
  420. homeassistant/components/reolink/translations/es.json +4 -4
  421. homeassistant/components/roomba/translations/bg.json +1 -2
  422. homeassistant/components/roomba/translations/ca.json +2 -4
  423. homeassistant/components/roomba/translations/el.json +2 -4
  424. homeassistant/components/roomba/translations/en-GB.json +2 -2
  425. homeassistant/components/roomba/translations/en.json +2 -2
  426. homeassistant/components/roomba/translations/fi.json +2 -4
  427. homeassistant/components/roomba/translations/fr.json +2 -4
  428. homeassistant/components/roomba/translations/ga.json +2 -4
  429. homeassistant/components/roomba/translations/he.json +1 -5
  430. homeassistant/components/roomba/translations/hu.json +2 -4
  431. homeassistant/components/roomba/translations/id.json +2 -4
  432. homeassistant/components/roomba/translations/it.json +2 -4
  433. homeassistant/components/roomba/translations/ja.json +2 -4
  434. homeassistant/components/roomba/translations/ko.json +2 -4
  435. homeassistant/components/roomba/translations/lb.json +1 -5
  436. homeassistant/components/roomba/translations/lt.json +2 -2
  437. homeassistant/components/roomba/translations/nb.json +1 -5
  438. homeassistant/components/roomba/translations/nl.json +2 -4
  439. homeassistant/components/roomba/translations/pl.json +1 -5
  440. homeassistant/components/roomba/translations/pt-BR.json +1 -5
  441. homeassistant/components/roomba/translations/pt.json +2 -2
  442. homeassistant/components/roomba/translations/ro.json +1 -5
  443. homeassistant/components/roomba/translations/ru.json +2 -4
  444. homeassistant/components/roomba/translations/sk.json +2 -4
  445. homeassistant/components/roomba/translations/sv.json +2 -4
  446. homeassistant/components/roomba/translations/tr.json +2 -4
  447. homeassistant/components/roomba/translations/uk.json +1 -5
  448. homeassistant/components/roomba/translations/zh-Hans.json +2 -4
  449. homeassistant/components/roomba/translations/zh-Hant.json +2 -4
  450. homeassistant/components/route_b_smart_meter/translations/bg.json +24 -0
  451. homeassistant/components/route_b_smart_meter/translations/fr.json +36 -0
  452. homeassistant/components/route_b_smart_meter/translations/fy.json +14 -0
  453. homeassistant/components/route_b_smart_meter/translations/id.json +24 -0
  454. homeassistant/components/route_b_smart_meter/translations/lt.json +42 -0
  455. homeassistant/components/satel_integra/__init__.py +6 -0
  456. homeassistant/components/satel_integra/translations/bg.json +102 -0
  457. homeassistant/components/satel_integra/translations/id.json +85 -0
  458. homeassistant/components/scrape/strings.json +2 -0
  459. homeassistant/components/scrape/translations/cs.json +2 -0
  460. homeassistant/components/scrape/translations/de.json +2 -0
  461. homeassistant/components/scrape/translations/en-GB.json +2 -0
  462. homeassistant/components/scrape/translations/en.json +2 -0
  463. homeassistant/components/scrape/translations/es.json +2 -0
  464. homeassistant/components/scrape/translations/et.json +2 -0
  465. homeassistant/components/scrape/translations/fr.json +2 -0
  466. homeassistant/components/scrape/translations/lt.json +2 -0
  467. homeassistant/components/scrape/translations/pt.json +2 -0
  468. homeassistant/components/scrape/translations/ru.json +2 -0
  469. homeassistant/components/scrape/translations/zh-Hant.json +2 -0
  470. homeassistant/components/sensibo/translations/pl.json +1 -0
  471. homeassistant/components/sensor/const.py +2 -7
  472. homeassistant/components/sensor/strings.json +3 -0
  473. homeassistant/components/sensor/translations/cs.json +3 -0
  474. homeassistant/components/sensor/translations/de.json +3 -0
  475. homeassistant/components/sensor/translations/en-GB.json +3 -0
  476. homeassistant/components/sensor/translations/en.json +3 -0
  477. homeassistant/components/sensor/translations/es.json +3 -0
  478. homeassistant/components/sensor/translations/et.json +3 -0
  479. homeassistant/components/sensor/translations/fr.json +3 -0
  480. homeassistant/components/sensor/translations/lt.json +3 -0
  481. homeassistant/components/sensor/translations/nl.json +3 -0
  482. homeassistant/components/sensor/translations/pl.json +3 -0
  483. homeassistant/components/sensor/translations/pt.json +3 -0
  484. homeassistant/components/sensor/translations/ru.json +3 -0
  485. homeassistant/components/sensor/translations/sk.json +3 -0
  486. homeassistant/components/sensor/translations/zh-Hant.json +3 -0
  487. homeassistant/components/sensorpush_cloud/translations/fy.json +11 -0
  488. homeassistant/components/sftp_storage/translations/id.json +14 -0
  489. homeassistant/components/shelly/icons.json +3 -0
  490. homeassistant/components/shelly/sensor.py +83 -3
  491. homeassistant/components/shelly/strings.json +12 -0
  492. homeassistant/components/shelly/translations/bg.json +19 -0
  493. homeassistant/components/shelly/translations/cs.json +12 -0
  494. homeassistant/components/shelly/translations/de.json +12 -0
  495. homeassistant/components/shelly/translations/en-GB.json +12 -0
  496. homeassistant/components/shelly/translations/en.json +12 -0
  497. homeassistant/components/shelly/translations/es.json +12 -0
  498. homeassistant/components/shelly/translations/et.json +12 -0
  499. homeassistant/components/shelly/translations/id.json +19 -0
  500. homeassistant/components/shelly/translations/lt.json +12 -0
  501. homeassistant/components/shelly/translations/lv.json +6 -0
  502. homeassistant/components/shelly/translations/pl.json +12 -0
  503. homeassistant/components/shelly/translations/pt.json +12 -0
  504. homeassistant/components/shelly/translations/sk.json +12 -0
  505. homeassistant/components/shelly/translations/zh-Hant.json +12 -0
  506. homeassistant/components/sleep_as_android/translations/id.json +31 -0
  507. homeassistant/components/sleepiq/translations/id.json +5 -0
  508. homeassistant/components/sma/translations/fy.json +16 -0
  509. homeassistant/components/smartthings/translations/fr.json +12 -0
  510. homeassistant/components/smartthings/translations/id.json +7 -0
  511. homeassistant/components/smartthings/translations/lt.json +21 -0
  512. homeassistant/components/snoo/translations/fy.json +9 -0
  513. homeassistant/components/sonos/select.py +9 -13
  514. homeassistant/components/sonos/speaker.py +23 -0
  515. homeassistant/components/sonos/translations/id.json +10 -0
  516. homeassistant/components/sql/strings.json +1 -0
  517. homeassistant/components/sql/translations/cs.json +1 -0
  518. homeassistant/components/sql/translations/de.json +1 -0
  519. homeassistant/components/sql/translations/en-GB.json +1 -0
  520. homeassistant/components/sql/translations/en.json +1 -0
  521. homeassistant/components/sql/translations/es.json +1 -0
  522. homeassistant/components/sql/translations/et.json +1 -0
  523. homeassistant/components/sql/translations/fr.json +1 -0
  524. homeassistant/components/sql/translations/lt.json +1 -0
  525. homeassistant/components/sql/translations/pt.json +1 -0
  526. homeassistant/components/sql/translations/ru.json +1 -0
  527. homeassistant/components/sql/translations/zh-Hant.json +5 -4
  528. homeassistant/components/switch/translations/id.json +3 -0
  529. homeassistant/components/switch_as_x/translations/da.json +7 -0
  530. homeassistant/components/switchbot/translations/fy.json +7 -0
  531. homeassistant/components/switchbot/translations/id.json +12 -0
  532. homeassistant/components/switchbot_cloud/cover.py +3 -5
  533. homeassistant/components/switchbot_cloud/entity.py +1 -1
  534. homeassistant/components/switchbot_cloud/translations/id.json +27 -0
  535. homeassistant/components/telegram_bot/translations/id.json +5 -0
  536. homeassistant/components/template/strings.json +1 -0
  537. homeassistant/components/template/translations/cs.json +1 -0
  538. homeassistant/components/template/translations/da.json +17 -0
  539. homeassistant/components/template/translations/de.json +1 -0
  540. homeassistant/components/template/translations/en-GB.json +1 -0
  541. homeassistant/components/template/translations/en.json +1 -0
  542. homeassistant/components/template/translations/es.json +1 -0
  543. homeassistant/components/template/translations/et.json +1 -0
  544. homeassistant/components/template/translations/fr.json +1 -0
  545. homeassistant/components/template/translations/id.json +81 -0
  546. homeassistant/components/template/translations/lt.json +1 -0
  547. homeassistant/components/template/translations/mk.json +9 -0
  548. homeassistant/components/template/translations/pt.json +1 -0
  549. homeassistant/components/template/translations/ru.json +1 -0
  550. homeassistant/components/template/translations/zh-Hant.json +1 -0
  551. homeassistant/components/teslemetry/translations/id.json +33 -0
  552. homeassistant/components/togrill/coordinator.py +24 -6
  553. homeassistant/components/togrill/translations/id.json +16 -0
  554. homeassistant/components/tolo/translations/bg.json +2 -1
  555. homeassistant/components/tolo/translations/id.json +2 -1
  556. homeassistant/components/traccar_server/translations/fy.json +9 -0
  557. homeassistant/components/traccar_server/translations/id.json +9 -1
  558. homeassistant/components/trafikverket_train/translations/zh-Hant.json +1 -1
  559. homeassistant/components/tuya/translations/da.json +8 -0
  560. homeassistant/components/tuya/translations/id.json +32 -0
  561. homeassistant/components/unifiprotect/translations/id.json +3 -0
  562. homeassistant/components/update/translations/id.json +3 -0
  563. homeassistant/components/uptime_kuma/translations/id.json +40 -0
  564. homeassistant/components/uptime_kuma/translations/zh-Hant.json +1 -1
  565. homeassistant/components/uptimerobot/translations/id.json +6 -0
  566. homeassistant/components/valve/translations/da.json +1 -0
  567. homeassistant/components/vegehub/translations/id.json +4 -0
  568. homeassistant/components/velbus/translations/fy.json +11 -0
  569. homeassistant/components/vesync/binary_sensor.py +1 -1
  570. homeassistant/components/vesync/translations/fy.json +9 -0
  571. homeassistant/components/vicare/const.py +1 -0
  572. homeassistant/components/victron_remote_monitoring/translations/bg.json +71 -0
  573. homeassistant/components/victron_remote_monitoring/translations/id.json +25 -0
  574. homeassistant/components/volvo/sensor.py +12 -6
  575. homeassistant/components/volvo/translations/id.json +58 -0
  576. homeassistant/components/webdav/translations/fy.json +11 -0
  577. homeassistant/components/whirlpool/translations/id.json +1 -0
  578. homeassistant/components/wled/analytics.py +11 -0
  579. homeassistant/components/workday/calendar.py +5 -5
  580. homeassistant/components/workday/config_flow.py +1 -0
  581. homeassistant/components/workday/translations/bg.json +5 -0
  582. homeassistant/components/wyoming/translations/zh-Hant.json +1 -1
  583. homeassistant/components/xiaomi_aqara/translations/zh-Hant.json +2 -2
  584. homeassistant/components/xiaomi_miio/translations/fy.json +7 -0
  585. homeassistant/components/yolink/translations/id.json +9 -0
  586. homeassistant/components/zha/config_flow.py +20 -1
  587. homeassistant/components/zha/radio_manager.py +4 -0
  588. homeassistant/components/zha/strings.json +25 -25
  589. homeassistant/components/zha/translations/bg.json +55 -7
  590. homeassistant/components/zha/translations/ca.json +0 -7
  591. homeassistant/components/zha/translations/cs.json +10 -10
  592. homeassistant/components/zha/translations/da.json +0 -9
  593. homeassistant/components/zha/translations/de.json +10 -10
  594. homeassistant/components/zha/translations/el.json +0 -9
  595. homeassistant/components/zha/translations/en-GB.json +10 -10
  596. homeassistant/components/zha/translations/en.json +10 -10
  597. homeassistant/components/zha/translations/es.json +10 -10
  598. homeassistant/components/zha/translations/et.json +10 -10
  599. homeassistant/components/zha/translations/fi.json +0 -9
  600. homeassistant/components/zha/translations/fr.json +0 -17
  601. homeassistant/components/zha/translations/ga.json +0 -17
  602. homeassistant/components/zha/translations/gsw.json +0 -7
  603. homeassistant/components/zha/translations/hr.json +0 -4
  604. homeassistant/components/zha/translations/hu.json +0 -9
  605. homeassistant/components/zha/translations/id.json +0 -9
  606. homeassistant/components/zha/translations/it.json +0 -9
  607. homeassistant/components/zha/translations/ja.json +0 -9
  608. homeassistant/components/zha/translations/ko.json +0 -9
  609. homeassistant/components/zha/translations/lt.json +10 -10
  610. homeassistant/components/zha/translations/nb.json +0 -7
  611. homeassistant/components/zha/translations/nl.json +6 -8
  612. homeassistant/components/zha/translations/pl.json +20 -8
  613. homeassistant/components/zha/translations/pt-BR.json +0 -7
  614. homeassistant/components/zha/translations/pt.json +10 -10
  615. homeassistant/components/zha/translations/ro.json +0 -7
  616. homeassistant/components/zha/translations/ru.json +1 -11
  617. homeassistant/components/zha/translations/sk.json +10 -10
  618. homeassistant/components/zha/translations/sl.json +0 -9
  619. homeassistant/components/zha/translations/sv.json +0 -9
  620. homeassistant/components/zha/translations/tr.json +0 -9
  621. homeassistant/components/zha/translations/uk.json +0 -7
  622. homeassistant/components/zha/translations/vi.json +0 -7
  623. homeassistant/components/zha/translations/zh-Hans.json +0 -17
  624. homeassistant/components/zha/translations/zh-Hant.json +10 -10
  625. homeassistant/const.py +1 -1
  626. homeassistant/generated/integrations.json +27 -4
  627. homeassistant/package_constraints.txt +1 -1
  628. homeassistant/util/unit_conversion.py +0 -16
  629. {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b6.dist-info}/METADATA +1 -1
  630. {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b6.dist-info}/RECORD +635 -572
  631. homeassistant/components/homeassistant_sky_connect/translations/hr.json +0 -7
  632. {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b6.dist-info}/WHEEL +0 -0
  633. {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b6.dist-info}/entry_points.txt +0 -0
  634. {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b6.dist-info}/licenses/LICENSE.md +0 -0
  635. {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b6.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
  636. {homeassistant-2025.10.0b4.dist-info → homeassistant-2025.10.0b6.dist-info}/top_level.txt +0 -0
@@ -1089,6 +1089,7 @@
1089
1089
  "pm1": "PM1",
1090
1090
  "pm10": "PM10",
1091
1091
  "pm25": "PM2.5",
1092
+ "pm4": "PM4",
1092
1093
  "power": "\u96fb\u529b",
1093
1094
  "power_factor": "\u529f\u7387\u56e0\u6578",
1094
1095
  "precipitation": "\u964d\u96e8\u91cf",
@@ -288,7 +288,40 @@
288
288
  }
289
289
  }
290
290
  },
291
+ "selector": {
292
+ "days_of_week": {
293
+ "options": {
294
+ "friday": "Jumat",
295
+ "monday": "Senin",
296
+ "saturday": "Sabtu",
297
+ "sunday": "Minggu",
298
+ "thursday": "Kamis",
299
+ "tuesday": "Selasa",
300
+ "wednesday": "Rabu"
301
+ }
302
+ }
303
+ },
291
304
  "services": {
305
+ "add_charge_schedule": {
306
+ "fields": {
307
+ "enable": {
308
+ "name": "Aktifkan"
309
+ },
310
+ "name": {
311
+ "name": "Nama"
312
+ }
313
+ }
314
+ },
315
+ "add_precondition_schedule": {
316
+ "fields": {
317
+ "enable": {
318
+ "name": "Aktifkan"
319
+ },
320
+ "name": {
321
+ "name": "Nama"
322
+ }
323
+ }
324
+ },
292
325
  "set_scheduled_charging": {
293
326
  "fields": {
294
327
  "enable": {
@@ -139,7 +139,11 @@ class ToGrillCoordinator(DataUpdateCoordinator[dict[tuple[int, int | None], Pack
139
139
  raise DeviceNotFound("Unable to find device")
140
140
 
141
141
  try:
142
- client = await Client.connect(device, self._notify_callback)
142
+ client = await Client.connect(
143
+ device,
144
+ self._notify_callback,
145
+ disconnected_callback=self._disconnected_callback,
146
+ )
143
147
  except BleakError as exc:
144
148
  self.logger.debug("Connection failed", exc_info=True)
145
149
  raise DeviceNotFound("Unable to connect to device") from exc
@@ -169,9 +173,6 @@ class ToGrillCoordinator(DataUpdateCoordinator[dict[tuple[int, int | None], Pack
169
173
  self.client = None
170
174
 
171
175
  async def _get_connected_client(self) -> Client:
172
- if self.client and not self.client.is_connected:
173
- await self.client.disconnect()
174
- self.client = None
175
176
  if self.client:
176
177
  return self.client
177
178
 
@@ -196,6 +197,12 @@ class ToGrillCoordinator(DataUpdateCoordinator[dict[tuple[int, int | None], Pack
196
197
 
197
198
  async def _async_update_data(self) -> dict[tuple[int, int | None], Packet]:
198
199
  """Poll the device."""
200
+ if self.client and not self.client.is_connected:
201
+ await self.client.disconnect()
202
+ self.client = None
203
+ self._async_request_refresh_soon()
204
+ raise DeviceFailed("Device was disconnected")
205
+
199
206
  client = await self._get_connected_client()
200
207
  try:
201
208
  await client.request(PacketA0Notify)
@@ -206,6 +213,17 @@ class ToGrillCoordinator(DataUpdateCoordinator[dict[tuple[int, int | None], Pack
206
213
  raise DeviceFailed(f"Device failed {exc}") from exc
207
214
  return self.data
208
215
 
216
+ @callback
217
+ def _async_request_refresh_soon(self) -> None:
218
+ self.config_entry.async_create_task(
219
+ self.hass, self.async_request_refresh(), eager_start=False
220
+ )
221
+
222
+ @callback
223
+ def _disconnected_callback(self) -> None:
224
+ """Handle Bluetooth device being disconnected."""
225
+ self._async_request_refresh_soon()
226
+
209
227
  @callback
210
228
  def _async_handle_bluetooth_event(
211
229
  self,
@@ -213,5 +231,5 @@ class ToGrillCoordinator(DataUpdateCoordinator[dict[tuple[int, int | None], Pack
213
231
  change: BluetoothChange,
214
232
  ) -> None:
215
233
  """Handle a Bluetooth event."""
216
- if not self.client and isinstance(self.last_exception, DeviceNotFound):
217
- self.hass.async_create_task(self.async_refresh())
234
+ if isinstance(self.last_exception, DeviceNotFound):
235
+ self._async_request_refresh_soon()
@@ -0,0 +1,16 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "Perangkat sudah dikonfigurasi",
5
+ "already_in_progress": "Alur konfigurasi sedang berlangsung",
6
+ "no_devices_found": "Tidak ada perangkat yang ditemukan di jaringan"
7
+ },
8
+ "step": {
9
+ "user": {
10
+ "data": {
11
+ "address": "Perangkat"
12
+ }
13
+ }
14
+ }
15
+ }
16
+ }
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "config": {
3
3
  "abort": {
4
- "already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e"
4
+ "already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e",
5
+ "reconfigure_successful": "\u041f\u0440\u0435\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u0435\u0442\u043e \u0431\u0435\u0448\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e"
5
6
  },
6
7
  "error": {
7
8
  "cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435"
@@ -1,7 +1,8 @@
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"
@@ -1,4 +1,13 @@
1
1
  {
2
+ "config": {
3
+ "step": {
4
+ "reauth_confirm": {
5
+ "data": {
6
+ "password": "Wachtwurd"
7
+ }
8
+ }
9
+ }
10
+ },
2
11
  "entity": {
3
12
  "binary_sensor": {
4
13
  "motion": {
@@ -1,13 +1,21 @@
1
1
  {
2
2
  "config": {
3
3
  "abort": {
4
- "already_configured": "Perangkat sudah dikonfigurasi"
4
+ "already_configured": "Perangkat sudah dikonfigurasi",
5
+ "reauth_successful": "Autentikasi ulang berhasil"
5
6
  },
6
7
  "error": {
7
8
  "cannot_connect": "Gagal terhubung",
9
+ "invalid_auth": "Autentikasi tidak valid",
8
10
  "unknown": "Kesalahan tak terduga"
9
11
  },
10
12
  "step": {
13
+ "reauth_confirm": {
14
+ "data": {
15
+ "password": "Kata Sandi",
16
+ "username": "Nama Pengguna"
17
+ }
18
+ },
11
19
  "user": {
12
20
  "data": {
13
21
  "host": "Host",
@@ -19,7 +19,7 @@
19
19
  "api_key": "API \u91d1\u9470",
20
20
  "filter_product": "\u4f9d\u7522\u54c1\u63cf\u8ff0\u904e\u6ffe",
21
21
  "from": "\u51fa\u767c\u8eca\u7ad9",
22
- "time": "\u6642\u9593\uff08\u9078\u9805\uff09",
22
+ "time": "\u6642\u9593\uff08\u9078\u586b\uff09",
23
23
  "to": "\u62b5\u9054\u8eca\u7ad9",
24
24
  "weekday": "\u5929"
25
25
  },
@@ -5,6 +5,14 @@
5
5
  }
6
6
  },
7
7
  "entity": {
8
+ "cover": {
9
+ "blind": {
10
+ "name": "Persienne"
11
+ },
12
+ "curtain": {
13
+ "name": "Gardin"
14
+ }
15
+ },
8
16
  "select": {
9
17
  "basic_nightvision": {
10
18
  "state": {
@@ -123,6 +123,12 @@
123
123
  "2": "Nyala"
124
124
  }
125
125
  },
126
+ "blanket_level": {
127
+ "state": {
128
+ "level_1": "Rendah",
129
+ "level_10": "Tinggi"
130
+ }
131
+ },
126
132
  "brightness": {
127
133
  "name": "Kecerahan"
128
134
  },
@@ -213,6 +219,12 @@
213
219
  "work": "Bekerja"
214
220
  }
215
221
  },
222
+ "indexed_blanket_level": {
223
+ "state": {
224
+ "level_1": "Rendah",
225
+ "level_10": "Tinggi"
226
+ }
227
+ },
216
228
  "ipc_work_mode": {
217
229
  "state": {
218
230
  "0": "Mode daya rendah",
@@ -392,12 +404,25 @@
392
404
  "last_operation_duration": {
393
405
  "name": "Durasi pengoperasian terakhir"
394
406
  },
407
+ "liquid_state": {
408
+ "state": {
409
+ "lower_alarm": "Rendah",
410
+ "normal": "Normal",
411
+ "upper_alarm": "Tinggi"
412
+ }
413
+ },
395
414
  "luminosity": {
396
415
  "name": "Luminositas"
397
416
  },
398
417
  "methane": {
399
418
  "name": "Metana"
400
419
  },
420
+ "odor_elimination_status": {
421
+ "state": {
422
+ "charging": "Mengisi daya",
423
+ "standby": "Siaga"
424
+ }
425
+ },
401
426
  "pm1": {
402
427
  "name": "PM1"
403
428
  },
@@ -455,6 +480,13 @@
455
480
  },
456
481
  "water_level": {
457
482
  "name": "Tingkat air"
483
+ },
484
+ "water_level_state": {
485
+ "state": {
486
+ "level_1": "Rendah",
487
+ "level_2": "Sedang",
488
+ "level_3": "Penuh"
489
+ }
458
490
  }
459
491
  },
460
492
  "switch": {
@@ -13,12 +13,14 @@
13
13
  "step": {
14
14
  "discovery_confirm": {
15
15
  "data": {
16
+ "api_key": "Kunci API",
16
17
  "password": "Kata Sandi",
17
18
  "username": "Nama Pengguna"
18
19
  }
19
20
  },
20
21
  "reauth_confirm": {
21
22
  "data": {
23
+ "api_key": "Kunci API",
22
24
  "password": "Kata Sandi",
23
25
  "port": "Port",
24
26
  "username": "Nama Pengguna"
@@ -26,6 +28,7 @@
26
28
  },
27
29
  "user": {
28
30
  "data": {
31
+ "api_key": "Kunci API",
29
32
  "host": "Host",
30
33
  "password": "Kata Sandi",
31
34
  "port": "Port",
@@ -1,5 +1,8 @@
1
1
  {
2
2
  "device_automation": {
3
+ "extra_fields": {
4
+ "for": "Durasi"
5
+ },
3
6
  "trigger_type": {
4
7
  "changed_states": "Ketersediaan pembaruan {entity_name} berubah",
5
8
  "turned_off": "{entity_name} menjadi yang terbaru",
@@ -0,0 +1,40 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "Perangkat sudah dikonfigurasi",
5
+ "reauth_successful": "Autentikasi ulang berhasil",
6
+ "reconfigure_successful": "Konfigurasi ulang berhasil"
7
+ },
8
+ "error": {
9
+ "cannot_connect": "Gagal terhubung",
10
+ "invalid_auth": "Autentikasi tidak valid",
11
+ "unknown": "Kesalahan tak terduga"
12
+ },
13
+ "step": {
14
+ "hassio_confirm": {
15
+ "data": {
16
+ "api_key": "Kunci API"
17
+ }
18
+ },
19
+ "reauth_confirm": {
20
+ "data": {
21
+ "api_key": "Kunci API"
22
+ }
23
+ },
24
+ "reconfigure": {
25
+ "data": {
26
+ "api_key": "Kunci API",
27
+ "url": "URL",
28
+ "verify_ssl": "Verifikasi sertifikat SSL"
29
+ }
30
+ },
31
+ "user": {
32
+ "data": {
33
+ "api_key": "Kunci API",
34
+ "url": "URL",
35
+ "verify_ssl": "Verifikasi sertifikat SSL"
36
+ }
37
+ }
38
+ }
39
+ }
40
+ }
@@ -18,7 +18,7 @@
18
18
  "data_description": {
19
19
  "api_key": "\u8f38\u5165 API \u91d1\u9470\u3002\u82e5\u8981\u5efa\u7acb\u65b0\u7684 API \u91d1\u9470\uff0c\u8acb\u524d\u5f80**\u8a2d\u5b9a \u2192 API \u91d1\u9470**\u4e26\u9078\u64c7**\u65b0\u589e API \u91d1\u9470**"
20
20
  },
21
- "description": "\u662f\u5426\u8981\u8a2d\u5b9a Home Assistant \u4ee5\u9023\u7dda\u81f3 Uptime Kuma \u670d\u52d9\u3002\u9644\u52a0\u5143\u4ef6\u70ba\uff1a{addon} \uff1f",
21
+ "description": "\u662f\u5426\u8981\u8a2d\u5b9a Home Assistant \u4ee5\u9023\u7dda\u81f3\u9644\u52a0\u5143\u4ef6 {addon} \u6240\u63d0\u4f9b Uptime Kuma \u670d\u52d9\u3002\uff1f",
22
22
  "title": "\u900f\u904e Home Assistant \u9644\u52a0\u5143\u4ef6\u57f7\u884c Uptime Kuma"
23
23
  },
24
24
  "reauth_confirm": {
@@ -4,6 +4,7 @@
4
4
  "already_configured": "Akun sudah dikonfigurasi",
5
5
  "reauth_failed_existing": "Tidak dapat memperbarui entri konfigurasi, hapus integrasi dan siapkan kembali.",
6
6
  "reauth_successful": "Autentikasi ulang berhasil",
7
+ "reconfigure_successful": "Konfigurasi ulang berhasil",
7
8
  "unknown": "Kesalahan tak terduga"
8
9
  },
9
10
  "error": {
@@ -20,6 +21,11 @@
20
21
  },
21
22
  "title": "Autentikasi ulang integrasi untuk {name}"
22
23
  },
24
+ "reconfigure": {
25
+ "data": {
26
+ "api_key": "Kunci API"
27
+ }
28
+ },
23
29
  "user": {
24
30
  "data": {
25
31
  "api_key": "Kunci API"
@@ -4,6 +4,7 @@
4
4
  "name": "Ventil",
5
5
  "state": {
6
6
  "closed": "Lukket",
7
+ "closing": "Lukker",
7
8
  "open": "\u00c5ben"
8
9
  },
9
10
  "state_attributes": {
@@ -1,5 +1,9 @@
1
1
  {
2
2
  "config": {
3
+ "abort": {
4
+ "already_configured": "Perangkat sudah dikonfigurasi",
5
+ "unknown_error": "Kesalahan tak terduga"
6
+ },
3
7
  "step": {
4
8
  "user": {
5
9
  "data": {
@@ -0,0 +1,11 @@
1
+ {
2
+ "config": {
3
+ "step": {
4
+ "network": {
5
+ "data": {
6
+ "password": "Wachtwurd"
7
+ }
8
+ }
9
+ }
10
+ }
11
+ }
@@ -43,7 +43,7 @@ SENSOR_DESCRIPTIONS: tuple[VeSyncBinarySensorEntityDescription, ...] = (
43
43
  exists_fn=lambda device: rgetattr(device, "state.water_lacks") is not None,
44
44
  ),
45
45
  VeSyncBinarySensorEntityDescription(
46
- key="water_tank_lifted",
46
+ key="details.water_tank_lifted",
47
47
  translation_key="water_tank_lifted",
48
48
  is_on=lambda device: device.state.water_tank_lifted,
49
49
  device_class=BinarySensorDeviceClass.PROBLEM,
@@ -1,4 +1,13 @@
1
1
  {
2
+ "config": {
3
+ "step": {
4
+ "reauth_confirm": {
5
+ "data": {
6
+ "password": "Wachtwurd"
7
+ }
8
+ }
9
+ }
10
+ },
2
11
  "entity": {
3
12
  "select": {
4
13
  "night_light_level": {
@@ -19,6 +19,7 @@ PLATFORMS = [
19
19
  UNSUPPORTED_DEVICES = [
20
20
  "Heatbox1",
21
21
  "Heatbox2_SRC",
22
+ "E3_TCU10_x07",
22
23
  "E3_TCU41_x04",
23
24
  "E3_FloorHeatingCircuitChannel",
24
25
  "E3_FloorHeatingCircuitDistributorBox",
@@ -0,0 +1,71 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e",
5
+ "reauth_successful": "\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u0430\u0442\u0430 \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u043a\u0430\u0446\u0438\u044f \u0431\u0435\u0448\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u0430"
6
+ },
7
+ "error": {
8
+ "cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435",
9
+ "invalid_auth": "\u041d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u0430 \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u043a\u0430\u0446\u0438\u044f",
10
+ "unknown": "\u041d\u0435\u043e\u0447\u0430\u043a\u0432\u0430\u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0430"
11
+ }
12
+ },
13
+ "entity": {
14
+ "sensor": {
15
+ "consumption_highest_peak_time_today": {
16
+ "name": "\u041d\u0430\u0439-\u0432\u0438\u0441\u043e\u043a \u043f\u0438\u043a\u043e\u0432 \u043f\u0435\u0440\u0438\u043e\u0434 \u043d\u0430 \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 - \u0434\u043d\u0435\u0441"
17
+ },
18
+ "consumption_highest_peak_time_tomorrow": {
19
+ "name": "\u041d\u0430\u0439-\u0432\u0438\u0441\u043e\u043a \u043f\u0438\u043a\u043e\u0432 \u043f\u0435\u0440\u0438\u043e\u0434 \u043d\u0430 \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 - \u0443\u0442\u0440\u0435"
20
+ },
21
+ "consumption_highest_peak_time_yesterday": {
22
+ "name": "\u041d\u0430\u0439-\u0432\u0438\u0441\u043e\u043a \u043f\u0438\u043a\u043e\u0432 \u043f\u0435\u0440\u0438\u043e\u0434 \u043d\u0430 \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 - \u0432\u0447\u0435\u0440\u0430"
23
+ },
24
+ "energy_consumption_current_hour": {
25
+ "name": "\u041e\u0447\u0430\u043a\u0432\u0430\u043d\u0430 \u043a\u043e\u043d\u0441\u0443\u043c\u0430\u0446\u0438\u044f \u043d\u0430 \u0435\u043d\u0435\u0440\u0433\u0438\u044f - \u0442\u0435\u043a\u0443\u0449\u0438\u044f \u0447\u0430\u0441"
26
+ },
27
+ "energy_consumption_estimate_today": {
28
+ "name": "\u041e\u0447\u0430\u043a\u0432\u0430\u043d\u0430 \u043a\u043e\u043d\u0441\u0443\u043c\u0430\u0446\u0438\u044f \u043d\u0430 \u0435\u043d\u0435\u0440\u0433\u0438\u044f - \u0434\u043d\u0435\u0441"
29
+ },
30
+ "energy_consumption_estimate_today_remaining": {
31
+ "name": "\u041e\u0447\u0430\u043a\u0432\u0430\u043d\u0430 \u043a\u043e\u043d\u0441\u0443\u043c\u0430\u0446\u0438\u044f \u043d\u0430 \u0435\u043d\u0435\u0440\u0433\u0438\u044f \u2013 \u043e\u0441\u0442\u0430\u0432\u0430\u0449\u0438\u044f \u0434\u0435\u043d"
32
+ },
33
+ "energy_consumption_estimate_tomorrow": {
34
+ "name": "\u041e\u0447\u0430\u043a\u0432\u0430\u043d\u0430 \u043a\u043e\u043d\u0441\u0443\u043c\u0430\u0446\u0438\u044f \u043d\u0430 \u0435\u043d\u0435\u0440\u0433\u0438\u044f - \u0443\u0442\u0440\u0435"
35
+ },
36
+ "energy_consumption_estimate_yesterday": {
37
+ "name": "\u041e\u0447\u0430\u043a\u0432\u0430\u043d\u0430 \u043a\u043e\u043d\u0441\u0443\u043c\u0430\u0446\u0438\u044f \u043d\u0430 \u0435\u043d\u0435\u0440\u0433\u0438\u044f - \u0432\u0447\u0435\u0440\u0430"
38
+ },
39
+ "energy_consumption_next_hour": {
40
+ "name": "\u041e\u0447\u0430\u043a\u0432\u0430\u043d\u0430 \u043a\u043e\u043d\u0441\u0443\u043c\u0430\u0446\u0438\u044f \u043d\u0430 \u0435\u043d\u0435\u0440\u0433\u0438\u044f - \u0441\u043b\u0435\u0434\u0432\u0430\u0449\u0438\u044f \u0447\u0430\u0441"
41
+ },
42
+ "energy_production_current_hour": {
43
+ "name": "\u041f\u0440\u043e\u0433\u043d\u043e\u0437\u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043d\u0430 \u0435\u043d\u0435\u0440\u0433\u0438\u044f - \u0442\u0435\u043a\u0443\u0449\u0438\u044f \u0447\u0430\u0441"
44
+ },
45
+ "energy_production_estimate_today": {
46
+ "name": "\u041f\u0440\u043e\u0433\u043d\u043e\u0437\u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043d\u0430 \u0435\u043d\u0435\u0440\u0433\u0438\u044f - \u0434\u043d\u0435\u0441"
47
+ },
48
+ "energy_production_estimate_today_remaining": {
49
+ "name": "\u041f\u0440\u043e\u0433\u043d\u043e\u0437\u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043d\u0430 \u0435\u043d\u0435\u0440\u0433\u0438\u044f - \u043e\u0441\u0442\u0430\u0432\u0430\u0449\u0438\u044f \u0434\u0435\u043d"
50
+ },
51
+ "energy_production_estimate_tomorrow": {
52
+ "name": "\u041f\u0440\u043e\u0433\u043d\u043e\u0437\u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043d\u0430 \u0435\u043d\u0435\u0440\u0433\u0438\u044f \u2013 \u0443\u0442\u0440\u0435"
53
+ },
54
+ "energy_production_estimate_yesterday": {
55
+ "name": "\u041f\u0440\u043e\u0433\u043d\u043e\u0437\u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043d\u0430 \u0435\u043d\u0435\u0440\u0433\u0438\u044f \u2013 \u0432\u0447\u0435\u0440\u0430"
56
+ },
57
+ "energy_production_next_hour": {
58
+ "name": "\u041f\u0440\u043e\u0433\u043d\u043e\u0437\u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043d\u0430 \u0435\u043d\u0435\u0440\u0433\u0438\u044f \u2013 \u0441\u043b\u0435\u0434\u0432\u0430\u0449\u0438\u044f \u0447\u0430\u0441"
59
+ },
60
+ "power_highest_peak_time_today": {
61
+ "name": "\u041d\u0430\u0439-\u0432\u0438\u0441\u043e\u043a \u043f\u0438\u043a\u043e\u0432 \u0447\u0430\u0441 - \u0414\u043d\u0435\u0441"
62
+ },
63
+ "power_highest_peak_time_tomorrow": {
64
+ "name": "\u041d\u0430\u0439-\u0432\u0438\u0441\u043e\u043a \u043f\u0438\u043a\u043e\u0432 \u0447\u0430\u0441 - \u0423\u0442\u0440\u0435"
65
+ },
66
+ "power_highest_peak_time_yesterday": {
67
+ "name": "\u041d\u0430\u0439-\u0432\u0438\u0441\u043e\u043a \u043f\u0438\u043a\u043e\u0432 \u0447\u0430\u0441 - \u0412\u0447\u0435\u0440\u0430"
68
+ }
69
+ }
70
+ }
71
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "Perangkat sudah dikonfigurasi",
5
+ "reauth_successful": "Autentikasi ulang berhasil"
6
+ },
7
+ "error": {
8
+ "cannot_connect": "Gagal terhubung",
9
+ "invalid_auth": "Autentikasi tidak valid",
10
+ "unknown": "Kesalahan tak terduga"
11
+ },
12
+ "step": {
13
+ "reauth_confirm": {
14
+ "data": {
15
+ "api_token": "Token API"
16
+ }
17
+ },
18
+ "user": {
19
+ "data": {
20
+ "api_token": "Token API"
21
+ }
22
+ }
23
+ }
24
+ }
25
+ }
@@ -354,13 +354,19 @@ async def async_setup_entry(
354
354
  async_add_entities: AddConfigEntryEntitiesCallback,
355
355
  ) -> None:
356
356
  """Set up sensors."""
357
+
358
+ entities: dict[str, VolvoSensor] = {}
357
359
  coordinators = entry.runtime_data.interval_coordinators
358
- async_add_entities(
359
- VolvoSensor(coordinator, description)
360
- for coordinator in coordinators
361
- for description in _DESCRIPTIONS
362
- if description.api_field in coordinator.data
363
- )
360
+
361
+ for coordinator in coordinators:
362
+ for description in _DESCRIPTIONS:
363
+ if description.key in entities:
364
+ continue
365
+
366
+ if description.api_field in coordinator.data:
367
+ entities[description.key] = VolvoSensor(coordinator, description)
368
+
369
+ async_add_entities(entities.values())
364
370
 
365
371
 
366
372
  class VolvoSensor(VolvoEntity, SensorEntity):
@@ -0,0 +1,58 @@
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "already_configured": "Akun sudah dikonfigurasi",
5
+ "already_in_progress": "Alur konfigurasi sedang berlangsung",
6
+ "authorize_url_timeout": "Tenggang waktu pembuatan URL otorisasi habis.",
7
+ "missing_configuration": "Komponen tidak dikonfigurasi. Ikuti petunjuk dalam dokumentasi.",
8
+ "no_url_available": "Tidak ada URL yang tersedia. Untuk informasi tentang kesalahan ini, [lihat bagian bantuan]({docs_url})",
9
+ "oauth_error": "Menerima respons token yang tidak valid.",
10
+ "oauth_failed": "Terjadi kesalahan saat mendapatkan token akses.",
11
+ "oauth_timeout": "Tenggang waktu penyelesaian token OAuth habis.",
12
+ "oauth_unauthorized": "Kesalahan otorisasi OAuth saat mendapatkan token akses.",
13
+ "reauth_successful": "Autentikasi ulang berhasil",
14
+ "reconfigure_successful": "Konfigurasi ulang berhasil",
15
+ "user_rejected_authorize": "Penautan akun ditolak: {error}"
16
+ },
17
+ "create_entry": {
18
+ "default": "Berhasil diautentikasi"
19
+ },
20
+ "step": {
21
+ "api_key": {
22
+ "data": {
23
+ "api_key": "Kunci API"
24
+ }
25
+ },
26
+ "pick_implementation": {
27
+ "title": "Pilih metode autentikasi"
28
+ },
29
+ "reauth_confirm": {
30
+ "title": "Autentikasi ulang integrasi untuk {name}"
31
+ }
32
+ }
33
+ },
34
+ "entity": {
35
+ "sensor": {
36
+ "charger_connection_status": {
37
+ "state": {
38
+ "connected": "Terhubung",
39
+ "disconnected": "Terputus",
40
+ "fault": "Macet"
41
+ }
42
+ },
43
+ "charging_power_status": {
44
+ "state": {
45
+ "fault": "Macet"
46
+ }
47
+ },
48
+ "charging_status": {
49
+ "state": {
50
+ "charging": "Mengisi daya",
51
+ "discharging": "Mengosongkan daya",
52
+ "error": "Kesalahan",
53
+ "idle": "Siaga"
54
+ }
55
+ }
56
+ }
57
+ }
58
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "config": {
3
+ "step": {
4
+ "user": {
5
+ "data": {
6
+ "password": "Wachtwurd"
7
+ }
8
+ }
9
+ }
10
+ }
11
+ }