homeassistant 2025.12.0b5__py3-none-any.whl → 2025.12.1__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 (776) hide show
  1. homeassistant/components/airobot/translations/el.json +5 -1
  2. homeassistant/components/airobot/translations/en-GB.json +5 -1
  3. homeassistant/components/airobot/translations/he.json +25 -0
  4. homeassistant/components/airobot/translations/lt.json +5 -1
  5. homeassistant/components/airobot/translations/pt.json +5 -1
  6. homeassistant/components/airobot/translations/sk.json +5 -1
  7. homeassistant/components/alarm_control_panel/translations/cs.json +21 -7
  8. homeassistant/components/alarm_control_panel/translations/de.json +1 -1
  9. homeassistant/components/alarm_control_panel/translations/en-GB.json +21 -7
  10. homeassistant/components/alarm_control_panel/translations/es.json +13 -7
  11. homeassistant/components/alarm_control_panel/translations/he.json +86 -1
  12. homeassistant/components/alarm_control_panel/translations/lt.json +21 -7
  13. homeassistant/components/alarm_control_panel/translations/pt.json +21 -7
  14. homeassistant/components/alarm_control_panel/translations/sk.json +21 -7
  15. homeassistant/components/alarm_control_panel/translations/zh-Hans.json +4 -2
  16. homeassistant/components/alert/translations/he.json +1 -1
  17. homeassistant/components/anglian_water/config_flow.py +4 -18
  18. homeassistant/components/anglian_water/manifest.json +1 -0
  19. homeassistant/components/anglian_water/translations/en-GB.json +2 -1
  20. homeassistant/components/anglian_water/translations/he.json +20 -0
  21. homeassistant/components/anglian_water/translations/lt.json +2 -1
  22. homeassistant/components/anglian_water/translations/pt.json +2 -1
  23. homeassistant/components/anglian_water/translations/sk.json +2 -1
  24. homeassistant/components/anglian_water/translations/sv.json +8 -2
  25. homeassistant/components/anova/translations/he.json +1 -1
  26. homeassistant/components/anthropic/translations/he.json +31 -0
  27. homeassistant/components/apcupsd/translations/sk.json +5 -5
  28. homeassistant/components/aprilaire/translations/he.json +4 -4
  29. homeassistant/components/assist_satellite/manifest.json +1 -1
  30. homeassistant/components/assist_satellite/translations/cs.json +12 -4
  31. homeassistant/components/assist_satellite/translations/en-GB.json +12 -4
  32. homeassistant/components/assist_satellite/translations/es.json +12 -4
  33. homeassistant/components/assist_satellite/translations/he.json +55 -2
  34. homeassistant/components/assist_satellite/translations/lt.json +12 -4
  35. homeassistant/components/assist_satellite/translations/pt.json +12 -4
  36. homeassistant/components/assist_satellite/translations/sk.json +12 -4
  37. homeassistant/components/assist_satellite/translations/zh-Hans.json +4 -2
  38. homeassistant/components/automation/manifest.json +2 -0
  39. homeassistant/components/automation/translations/cs.json +8 -0
  40. homeassistant/components/automation/translations/en-GB.json +8 -0
  41. homeassistant/components/automation/translations/es.json +8 -0
  42. homeassistant/components/automation/translations/fr.json +8 -0
  43. homeassistant/components/automation/translations/lt.json +8 -0
  44. homeassistant/components/automation/translations/pt.json +8 -0
  45. homeassistant/components/automation/translations/sk.json +8 -0
  46. homeassistant/components/automation/translations/sr-Latn.json +1 -1
  47. homeassistant/components/backup/translations/he.json +1 -1
  48. homeassistant/components/bang_olufsen/translations/he.json +901 -0
  49. homeassistant/components/bayesian/translations/sk.json +3 -3
  50. homeassistant/components/binary_sensor/strings.json +4 -4
  51. homeassistant/components/binary_sensor/translations/cs.json +36 -1
  52. homeassistant/components/binary_sensor/translations/de.json +3 -3
  53. homeassistant/components/binary_sensor/translations/en-GB.json +36 -1
  54. homeassistant/components/binary_sensor/translations/en.json +4 -4
  55. homeassistant/components/binary_sensor/translations/es.json +36 -1
  56. homeassistant/components/binary_sensor/translations/et.json +1 -1
  57. homeassistant/components/binary_sensor/translations/ga.json +36 -1
  58. homeassistant/components/binary_sensor/translations/he.json +36 -1
  59. homeassistant/components/binary_sensor/translations/lt.json +36 -1
  60. homeassistant/components/binary_sensor/translations/pt.json +36 -1
  61. homeassistant/components/binary_sensor/translations/ru.json +36 -1
  62. homeassistant/components/binary_sensor/translations/sk.json +4 -4
  63. homeassistant/components/binary_sensor/translations/sv.json +23 -1
  64. homeassistant/components/binary_sensor/translations/zh-Hans.json +29 -1
  65. homeassistant/components/binary_sensor/translations/zh-Hant.json +3 -3
  66. homeassistant/components/binary_sensor/triggers.yaml +2 -2
  67. homeassistant/components/blebox/translations/sr-Latn.json +1 -0
  68. homeassistant/components/bsblan/translations/sr-Latn.json +4 -0
  69. homeassistant/components/camera/__init__.py +1 -1
  70. homeassistant/components/camera/translations/he.json +1 -1
  71. homeassistant/components/climate/translations/cs.json +15 -5
  72. homeassistant/components/climate/translations/en-GB.json +15 -5
  73. homeassistant/components/climate/translations/es.json +11 -5
  74. homeassistant/components/climate/translations/he.json +65 -2
  75. homeassistant/components/climate/translations/lt.json +15 -5
  76. homeassistant/components/climate/translations/pt.json +15 -5
  77. homeassistant/components/climate/translations/ru.json +21 -11
  78. homeassistant/components/climate/translations/sk.json +15 -5
  79. homeassistant/components/cloud/client.py +9 -5
  80. homeassistant/components/cloud/entity.py +1 -1
  81. homeassistant/components/cloud/http_api.py +21 -0
  82. homeassistant/components/cloud/manifest.json +1 -1
  83. homeassistant/components/cloud/translations/he.json +7 -0
  84. homeassistant/components/conversation/manifest.json +1 -1
  85. homeassistant/components/deluge/translations/he.json +1 -1
  86. homeassistant/components/derivative/translations/he.json +5 -0
  87. homeassistant/components/doorbird/device.py +11 -7
  88. homeassistant/components/duckdns/translations/he.json +10 -0
  89. homeassistant/components/duckdns/translations/ru.json +12 -0
  90. homeassistant/components/ecovacs/manifest.json +1 -1
  91. homeassistant/components/ecovacs/translations/he.json +1 -1
  92. homeassistant/components/energyid/translations/he.json +11 -0
  93. homeassistant/components/energyid/translations/sv.json +2 -1
  94. homeassistant/components/enphase_envoy/translations/he.json +1 -1
  95. homeassistant/components/esphome/translations/he.json +1 -0
  96. homeassistant/components/esphome/translations/lt.json +1 -0
  97. homeassistant/components/essent/translations/he.json +9 -0
  98. homeassistant/components/essent/translations/nl.json +32 -0
  99. homeassistant/components/evohome/manifest.json +1 -1
  100. homeassistant/components/fan/translations/cs.json +6 -2
  101. homeassistant/components/fan/translations/en-GB.json +6 -2
  102. homeassistant/components/fan/translations/es.json +2 -1
  103. homeassistant/components/fan/translations/he.json +34 -1
  104. homeassistant/components/fan/translations/lt.json +6 -2
  105. homeassistant/components/fan/translations/nl.json +6 -1
  106. homeassistant/components/fan/translations/pt.json +6 -2
  107. homeassistant/components/fan/translations/ru.json +37 -1
  108. homeassistant/components/fan/translations/sk.json +6 -2
  109. homeassistant/components/forked_daapd/translations/sr-Latn.json +8 -0
  110. homeassistant/components/fritzbox_callmonitor/translations/he.json +1 -1
  111. homeassistant/components/fronius/translations/he.json +1 -1
  112. homeassistant/components/frontend/manifest.json +1 -1
  113. homeassistant/components/frontend/translations/cs.json +2 -2
  114. homeassistant/components/frontend/translations/de.json +2 -2
  115. homeassistant/components/frontend/translations/he.json +8 -0
  116. homeassistant/components/google_air_quality/strings.json +7 -2
  117. homeassistant/components/google_air_quality/translations/bg.json +3 -2
  118. homeassistant/components/google_air_quality/translations/cs.json +7 -2
  119. homeassistant/components/google_air_quality/translations/de.json +7 -2
  120. homeassistant/components/google_air_quality/translations/el.json +3 -2
  121. homeassistant/components/google_air_quality/translations/en-GB.json +161 -3
  122. homeassistant/components/google_air_quality/translations/en.json +7 -2
  123. homeassistant/components/google_air_quality/translations/es.json +7 -2
  124. homeassistant/components/google_air_quality/translations/et.json +7 -2
  125. homeassistant/components/google_air_quality/translations/fr.json +14 -0
  126. homeassistant/components/google_air_quality/translations/ga.json +7 -2
  127. homeassistant/components/google_air_quality/translations/he.json +239 -0
  128. homeassistant/components/google_air_quality/translations/lt.json +0 -9
  129. homeassistant/components/google_air_quality/translations/nl.json +42 -2
  130. homeassistant/components/google_air_quality/translations/pt.json +7 -2
  131. homeassistant/components/google_air_quality/translations/ru.json +2 -9
  132. homeassistant/components/google_air_quality/translations/sk.json +7 -2
  133. homeassistant/components/google_air_quality/translations/sv.json +11 -4
  134. homeassistant/components/google_air_quality/translations/tr.json +0 -9
  135. homeassistant/components/google_air_quality/translations/zh-Hans.json +7 -4
  136. homeassistant/components/google_air_quality/translations/zh-Hant.json +7 -2
  137. homeassistant/components/google_assistant/translations/sr-Latn.json +1 -1
  138. homeassistant/components/google_generative_ai_conversation/__init__.py +1 -0
  139. homeassistant/components/google_generative_ai_conversation/const.py +1 -1
  140. homeassistant/components/google_generative_ai_conversation/strings.json +1 -1
  141. homeassistant/components/google_generative_ai_conversation/translations/bg.json +0 -3
  142. homeassistant/components/google_generative_ai_conversation/translations/cs.json +1 -1
  143. homeassistant/components/google_generative_ai_conversation/translations/de.json +1 -1
  144. homeassistant/components/google_generative_ai_conversation/translations/el.json +0 -1
  145. homeassistant/components/google_generative_ai_conversation/translations/en-GB.json +1 -1
  146. homeassistant/components/google_generative_ai_conversation/translations/en.json +1 -1
  147. homeassistant/components/google_generative_ai_conversation/translations/es.json +1 -1
  148. homeassistant/components/google_generative_ai_conversation/translations/et.json +1 -1
  149. homeassistant/components/google_generative_ai_conversation/translations/fr.json +0 -1
  150. homeassistant/components/google_generative_ai_conversation/translations/ga.json +0 -1
  151. homeassistant/components/google_generative_ai_conversation/translations/he.json +0 -1
  152. homeassistant/components/google_generative_ai_conversation/translations/hu.json +0 -1
  153. homeassistant/components/google_generative_ai_conversation/translations/lt.json +0 -1
  154. homeassistant/components/google_generative_ai_conversation/translations/nl.json +0 -1
  155. homeassistant/components/google_generative_ai_conversation/translations/pt-BR.json +0 -1
  156. homeassistant/components/google_generative_ai_conversation/translations/pt.json +1 -1
  157. homeassistant/components/google_generative_ai_conversation/translations/ru.json +0 -1
  158. homeassistant/components/google_generative_ai_conversation/translations/sk.json +0 -1
  159. homeassistant/components/google_generative_ai_conversation/translations/sl.json +0 -1
  160. homeassistant/components/google_generative_ai_conversation/translations/sv.json +0 -1
  161. homeassistant/components/google_generative_ai_conversation/translations/tr.json +0 -1
  162. homeassistant/components/google_generative_ai_conversation/translations/uk.json +0 -1
  163. homeassistant/components/google_generative_ai_conversation/translations/zh-Hans.json +0 -1
  164. homeassistant/components/google_generative_ai_conversation/translations/zh-Hant.json +0 -1
  165. homeassistant/components/google_photos/services.py +1 -0
  166. homeassistant/components/google_photos/strings.json +1 -1
  167. homeassistant/components/google_photos/translations/bg.json +0 -1
  168. homeassistant/components/google_photos/translations/ca.json +0 -1
  169. homeassistant/components/google_photos/translations/cs.json +1 -1
  170. homeassistant/components/google_photos/translations/de.json +1 -1
  171. homeassistant/components/google_photos/translations/el.json +0 -1
  172. homeassistant/components/google_photos/translations/en-GB.json +1 -1
  173. homeassistant/components/google_photos/translations/en.json +1 -1
  174. homeassistant/components/google_photos/translations/es.json +1 -1
  175. homeassistant/components/google_photos/translations/et.json +1 -1
  176. homeassistant/components/google_photos/translations/fr.json +0 -1
  177. homeassistant/components/google_photos/translations/ga.json +0 -1
  178. homeassistant/components/google_photos/translations/he.json +0 -1
  179. homeassistant/components/google_photos/translations/hu.json +0 -1
  180. homeassistant/components/google_photos/translations/id.json +0 -1
  181. homeassistant/components/google_photos/translations/it.json +0 -1
  182. homeassistant/components/google_photos/translations/ja.json +0 -1
  183. homeassistant/components/google_photos/translations/lt.json +0 -1
  184. homeassistant/components/google_photos/translations/nl.json +0 -1
  185. homeassistant/components/google_photos/translations/pt-BR.json +0 -1
  186. homeassistant/components/google_photos/translations/pt.json +1 -1
  187. homeassistant/components/google_photos/translations/ru.json +0 -1
  188. homeassistant/components/google_photos/translations/sk.json +0 -1
  189. homeassistant/components/google_photos/translations/sv.json +0 -1
  190. homeassistant/components/google_photos/translations/tr.json +0 -1
  191. homeassistant/components/google_photos/translations/uk.json +0 -1
  192. homeassistant/components/google_photos/translations/zh-Hans.json +0 -1
  193. homeassistant/components/google_photos/translations/zh-Hant.json +0 -1
  194. homeassistant/components/google_weather/translations/he.json +102 -0
  195. homeassistant/components/group/notify.py +28 -5
  196. homeassistant/components/hanna/translations/he.json +20 -0
  197. homeassistant/components/hassio/const.py +1 -0
  198. homeassistant/components/hassio/strings.json +1 -1
  199. homeassistant/components/hassio/translations/cs.json +1 -1
  200. homeassistant/components/hassio/translations/de.json +1 -1
  201. homeassistant/components/hassio/translations/el.json +0 -1
  202. homeassistant/components/hassio/translations/en-GB.json +1 -1
  203. homeassistant/components/hassio/translations/en.json +1 -1
  204. homeassistant/components/hassio/translations/es.json +1 -1
  205. homeassistant/components/hassio/translations/et.json +1 -1
  206. homeassistant/components/hassio/translations/fr.json +0 -1
  207. homeassistant/components/hassio/translations/fy.json +0 -3
  208. homeassistant/components/hassio/translations/ga.json +0 -1
  209. homeassistant/components/hassio/translations/he.json +0 -1
  210. homeassistant/components/hassio/translations/id.json +0 -1
  211. homeassistant/components/hassio/translations/lt.json +1 -1
  212. homeassistant/components/hassio/translations/mk.json +0 -1
  213. homeassistant/components/hassio/translations/nl.json +0 -1
  214. homeassistant/components/hassio/translations/pt.json +1 -1
  215. homeassistant/components/hassio/translations/ru.json +0 -1
  216. homeassistant/components/hassio/translations/sk.json +1 -1
  217. homeassistant/components/hassio/translations/sv.json +0 -1
  218. homeassistant/components/hassio/translations/tr.json +0 -1
  219. homeassistant/components/hassio/translations/zh-Hans.json +0 -1
  220. homeassistant/components/hassio/translations/zh-Hant.json +1 -1
  221. homeassistant/components/home_connect/translations/de.json +2 -2
  222. homeassistant/components/home_connect/translations/he.json +3 -0
  223. homeassistant/components/homeassistant_connect_zbt2/config_flow.py +0 -17
  224. homeassistant/components/homeassistant_connect_zbt2/const.py +0 -58
  225. homeassistant/components/homeassistant_hardware/firmware_config_flow.py +0 -5
  226. homeassistant/components/homekit_controller/translations/he.json +1 -1
  227. homeassistant/components/hue_ble/translations/en-GB.json +2 -1
  228. homeassistant/components/hue_ble/translations/he.json +11 -0
  229. homeassistant/components/hue_ble/translations/lt.json +2 -1
  230. homeassistant/components/hue_ble/translations/nl.json +3 -0
  231. homeassistant/components/hue_ble/translations/pt.json +2 -1
  232. homeassistant/components/hue_ble/translations/sk.json +2 -1
  233. homeassistant/components/hue_ble/translations/sv.json +8 -0
  234. homeassistant/components/humidifier/translations/he.json +1 -1
  235. homeassistant/components/integration/translations/pl.json +1 -1
  236. homeassistant/components/iometer/manifest.json +1 -1
  237. homeassistant/components/ipp/translations/he.json +1 -1
  238. homeassistant/components/iron_os/translations/he.json +1 -1
  239. homeassistant/components/kitchen_sink/translations/cs.json +2 -2
  240. homeassistant/components/kitchen_sink/translations/de.json +4 -4
  241. homeassistant/components/kitchen_sink/translations/el.json +5 -0
  242. homeassistant/components/kitchen_sink/translations/en-GB.json +2 -2
  243. homeassistant/components/kitchen_sink/translations/en.json +2 -2
  244. homeassistant/components/kitchen_sink/translations/es.json +2 -2
  245. homeassistant/components/kitchen_sink/translations/et.json +1 -1
  246. homeassistant/components/kitchen_sink/translations/ga.json +0 -2
  247. homeassistant/components/kitchen_sink/translations/it.json +0 -2
  248. homeassistant/components/kitchen_sink/translations/lt.json +0 -2
  249. homeassistant/components/kitchen_sink/translations/nl.json +4 -0
  250. homeassistant/components/kitchen_sink/translations/pt.json +2 -2
  251. homeassistant/components/kitchen_sink/translations/sk.json +2 -2
  252. homeassistant/components/kitchen_sink/translations/tr.json +0 -2
  253. homeassistant/components/kitchen_sink/translations/zh-Hans.json +0 -2
  254. homeassistant/components/labs/__init__.py +2 -54
  255. homeassistant/components/labs/helpers.py +63 -0
  256. homeassistant/components/labs/websocket_api.py +51 -0
  257. homeassistant/components/lametric/services.py +1 -0
  258. homeassistant/components/lametric/strings.json +1 -1
  259. homeassistant/components/lametric/translations/ca.json +0 -3
  260. homeassistant/components/lametric/translations/cs.json +1 -1
  261. homeassistant/components/lametric/translations/de.json +1 -1
  262. homeassistant/components/lametric/translations/el.json +0 -1
  263. homeassistant/components/lametric/translations/en-GB.json +1 -1
  264. homeassistant/components/lametric/translations/en.json +1 -1
  265. homeassistant/components/lametric/translations/es.json +1 -1
  266. homeassistant/components/lametric/translations/et.json +0 -1
  267. homeassistant/components/lametric/translations/fi.json +0 -3
  268. homeassistant/components/lametric/translations/ga.json +0 -1
  269. homeassistant/components/lametric/translations/gl.json +0 -3
  270. homeassistant/components/lametric/translations/hu.json +0 -1
  271. homeassistant/components/lametric/translations/it.json +0 -3
  272. homeassistant/components/lametric/translations/ja.json +0 -1
  273. homeassistant/components/lametric/translations/ko.json +0 -3
  274. homeassistant/components/lametric/translations/lt.json +0 -1
  275. homeassistant/components/lametric/translations/nl.json +0 -3
  276. homeassistant/components/lametric/translations/pt-BR.json +0 -3
  277. homeassistant/components/lametric/translations/pt.json +0 -1
  278. homeassistant/components/lametric/translations/ru.json +0 -1
  279. homeassistant/components/lametric/translations/sk.json +0 -1
  280. homeassistant/components/lametric/translations/sv.json +0 -1
  281. homeassistant/components/lametric/translations/tr.json +0 -1
  282. homeassistant/components/lametric/translations/vi.json +0 -3
  283. homeassistant/components/lametric/translations/zh-Hans.json +0 -1
  284. homeassistant/components/lametric/translations/zh-Hant.json +0 -1
  285. homeassistant/components/lawn_mower/translations/cs.json +12 -4
  286. homeassistant/components/lawn_mower/translations/en-GB.json +12 -4
  287. homeassistant/components/lawn_mower/translations/es.json +4 -4
  288. homeassistant/components/lawn_mower/translations/he.json +38 -0
  289. homeassistant/components/lawn_mower/translations/lt.json +12 -4
  290. homeassistant/components/lawn_mower/translations/pt.json +20 -12
  291. homeassistant/components/lawn_mower/translations/ru.json +56 -1
  292. homeassistant/components/lawn_mower/translations/sk.json +12 -4
  293. homeassistant/components/letpot/manifest.json +1 -1
  294. homeassistant/components/libre_hardware_monitor/coordinator.py +26 -18
  295. homeassistant/components/light/translations/cs.json +6 -2
  296. homeassistant/components/light/translations/en-GB.json +6 -2
  297. homeassistant/components/light/translations/es.json +2 -2
  298. homeassistant/components/light/translations/he.json +69 -2
  299. homeassistant/components/light/translations/lt.json +6 -2
  300. homeassistant/components/light/translations/nl.json +6 -1
  301. homeassistant/components/light/translations/pt.json +6 -2
  302. homeassistant/components/light/translations/ru.json +15 -11
  303. homeassistant/components/light/translations/sk.json +6 -2
  304. homeassistant/components/matter/translations/he.json +56 -2
  305. homeassistant/components/media_player/translations/cs.json +3 -1
  306. homeassistant/components/media_player/translations/en-GB.json +3 -1
  307. homeassistant/components/media_player/translations/es.json +1 -1
  308. homeassistant/components/media_player/translations/he.json +27 -4
  309. homeassistant/components/media_player/translations/lt.json +3 -1
  310. homeassistant/components/media_player/translations/pt.json +3 -1
  311. homeassistant/components/media_player/translations/ru.json +24 -1
  312. homeassistant/components/media_player/translations/sk.json +3 -1
  313. homeassistant/components/miele/translations/en-GB.json +1 -0
  314. homeassistant/components/miele/translations/ga.json +1 -0
  315. homeassistant/components/miele/translations/he.json +4 -1
  316. homeassistant/components/miele/translations/it.json +15 -1
  317. homeassistant/components/miele/translations/lt.json +1 -0
  318. homeassistant/components/miele/translations/pt.json +1 -0
  319. homeassistant/components/miele/translations/zh-Hans.json +1 -0
  320. homeassistant/components/mqtt/translations/cs.json +3 -1
  321. homeassistant/components/mqtt/translations/en-GB.json +3 -1
  322. homeassistant/components/mqtt/translations/es.json +1 -1
  323. homeassistant/components/mqtt/translations/he.json +35 -1
  324. homeassistant/components/mqtt/translations/lt.json +5 -1
  325. homeassistant/components/mqtt/translations/pt.json +3 -1
  326. homeassistant/components/mqtt/translations/sk.json +3 -1
  327. homeassistant/components/music_assistant/__init__.py +2 -1
  328. homeassistant/components/music_assistant/config_flow.py +23 -5
  329. homeassistant/components/music_assistant/translations/he.json +8 -1
  330. homeassistant/components/myuplink/translations/he.json +5 -0
  331. homeassistant/components/neato/translations/he.json +5 -0
  332. homeassistant/components/nest/manifest.json +1 -1
  333. homeassistant/components/netatmo/translations/he.json +5 -0
  334. homeassistant/components/niko_home_control/translations/he.json +3 -1
  335. homeassistant/components/nina/translations/he.json +12 -1
  336. homeassistant/components/nordpool/manifest.json +1 -1
  337. homeassistant/components/ntfy/translations/cs.json +1 -1
  338. homeassistant/components/ntfy/translations/de.json +1 -1
  339. homeassistant/components/ntfy/translations/el.json +0 -3
  340. homeassistant/components/ntfy/translations/en-GB.json +1 -1
  341. homeassistant/components/ntfy/translations/en.json +1 -1
  342. homeassistant/components/ntfy/translations/es.json +1 -1
  343. homeassistant/components/ntfy/translations/et.json +1 -1
  344. homeassistant/components/ntfy/translations/lt.json +0 -1
  345. homeassistant/components/ntfy/translations/pt.json +1 -1
  346. homeassistant/components/ntfy/translations/ru.json +0 -1
  347. homeassistant/components/ntfy/translations/sk.json +1 -1
  348. homeassistant/components/ntfy/translations/sv.json +0 -1
  349. homeassistant/components/ntfy/translations/tr.json +0 -1
  350. homeassistant/components/ntfy/translations/zh-Hans.json +0 -1
  351. homeassistant/components/ntfy/translations/zh-Hant.json +1 -1
  352. homeassistant/components/onedrive/services.py +1 -0
  353. homeassistant/components/onedrive/strings.json +1 -1
  354. homeassistant/components/onedrive/translations/cs.json +1 -1
  355. homeassistant/components/onedrive/translations/de.json +1 -1
  356. homeassistant/components/onedrive/translations/el.json +0 -1
  357. homeassistant/components/onedrive/translations/en-GB.json +1 -1
  358. homeassistant/components/onedrive/translations/en.json +1 -1
  359. homeassistant/components/onedrive/translations/es.json +1 -1
  360. homeassistant/components/onedrive/translations/et.json +1 -1
  361. homeassistant/components/onedrive/translations/ga.json +0 -1
  362. homeassistant/components/onedrive/translations/he.json +3 -1
  363. homeassistant/components/onedrive/translations/hu.json +0 -1
  364. homeassistant/components/onedrive/translations/it.json +0 -1
  365. homeassistant/components/onedrive/translations/ja.json +0 -1
  366. homeassistant/components/onedrive/translations/lt.json +0 -1
  367. homeassistant/components/onedrive/translations/nl.json +0 -1
  368. homeassistant/components/onedrive/translations/pt.json +1 -1
  369. homeassistant/components/onedrive/translations/ru.json +0 -1
  370. homeassistant/components/onedrive/translations/sk.json +0 -1
  371. homeassistant/components/onedrive/translations/sl.json +0 -1
  372. homeassistant/components/onedrive/translations/sv.json +0 -1
  373. homeassistant/components/onedrive/translations/tr.json +0 -1
  374. homeassistant/components/onedrive/translations/zh-Hans.json +0 -1
  375. homeassistant/components/onedrive/translations/zh-Hant.json +0 -1
  376. homeassistant/components/oralb/manifest.json +2 -1
  377. homeassistant/components/oralb/translations/he.json +1 -1
  378. homeassistant/components/pilight/__init__.py +13 -1
  379. homeassistant/components/pilight/strings.json +1 -1
  380. homeassistant/components/pilight/translations/cs.json +1 -1
  381. homeassistant/components/pilight/translations/de.json +1 -1
  382. homeassistant/components/pilight/translations/el.json +0 -1
  383. homeassistant/components/pilight/translations/en-GB.json +1 -1
  384. homeassistant/components/pilight/translations/en.json +1 -1
  385. homeassistant/components/pilight/translations/es.json +1 -1
  386. homeassistant/components/pilight/translations/et.json +1 -1
  387. homeassistant/components/pilight/translations/fi.json +0 -1
  388. homeassistant/components/pilight/translations/ga.json +0 -1
  389. homeassistant/components/pilight/translations/hu.json +0 -1
  390. homeassistant/components/pilight/translations/it.json +0 -1
  391. homeassistant/components/pilight/translations/ja.json +0 -1
  392. homeassistant/components/pilight/translations/ko.json +0 -1
  393. homeassistant/components/pilight/translations/lt.json +0 -1
  394. homeassistant/components/pilight/translations/pt.json +1 -1
  395. homeassistant/components/pilight/translations/ru.json +0 -1
  396. homeassistant/components/pilight/translations/sk.json +1 -1
  397. homeassistant/components/pilight/translations/sv.json +0 -1
  398. homeassistant/components/pilight/translations/tr.json +0 -1
  399. homeassistant/components/pilight/translations/zh-Hans.json +0 -1
  400. homeassistant/components/pilight/translations/zh-Hant.json +1 -1
  401. homeassistant/components/ping/helpers.py +1 -1
  402. homeassistant/components/playstation_network/coordinator.py +14 -7
  403. homeassistant/components/plugwise/translations/en-GB.json +1 -1
  404. homeassistant/components/plugwise/translations/he.json +26 -0
  405. homeassistant/components/plugwise/translations/ru.json +12 -0
  406. homeassistant/components/point/translations/he.json +5 -0
  407. homeassistant/components/pooldose/translations/he.json +11 -0
  408. homeassistant/components/prusalink/translations/he.json +1 -1
  409. homeassistant/components/qbittorrent/translations/he.json +1 -1
  410. homeassistant/components/rainmachine/__init__.py +13 -2
  411. homeassistant/components/rainmachine/strings.json +1 -1
  412. homeassistant/components/rainmachine/translations/cs.json +1 -1
  413. homeassistant/components/rainmachine/translations/de.json +1 -1
  414. homeassistant/components/rainmachine/translations/en-GB.json +1 -1
  415. homeassistant/components/rainmachine/translations/en.json +1 -1
  416. homeassistant/components/rainmachine/translations/es.json +1 -1
  417. homeassistant/components/rainmachine/translations/et.json +1 -1
  418. homeassistant/components/rainmachine/translations/lt.json +0 -1
  419. homeassistant/components/rainmachine/translations/pt.json +1 -1
  420. homeassistant/components/rainmachine/translations/ru.json +1 -0
  421. homeassistant/components/rainmachine/translations/sk.json +1 -1
  422. homeassistant/components/rainmachine/translations/zh-Hans.json +0 -1
  423. homeassistant/components/rainmachine/translations/zh-Hant.json +1 -1
  424. homeassistant/components/reolink/host.py +4 -0
  425. homeassistant/components/reolink/manifest.json +1 -1
  426. homeassistant/components/reolink/strings.json +2 -2
  427. homeassistant/components/reolink/translations/ca.json +0 -2
  428. homeassistant/components/reolink/translations/cs.json +2 -2
  429. homeassistant/components/reolink/translations/de.json +2 -2
  430. homeassistant/components/reolink/translations/el.json +0 -2
  431. homeassistant/components/reolink/translations/en-GB.json +2 -2
  432. homeassistant/components/reolink/translations/en.json +2 -2
  433. homeassistant/components/reolink/translations/es.json +0 -2
  434. homeassistant/components/reolink/translations/et.json +2 -2
  435. homeassistant/components/reolink/translations/fi.json +0 -2
  436. homeassistant/components/reolink/translations/fr.json +0 -2
  437. homeassistant/components/reolink/translations/ga.json +0 -2
  438. homeassistant/components/reolink/translations/hr.json +0 -5
  439. homeassistant/components/reolink/translations/hu.json +0 -2
  440. homeassistant/components/reolink/translations/id.json +0 -2
  441. homeassistant/components/reolink/translations/it.json +0 -2
  442. homeassistant/components/reolink/translations/ja.json +0 -2
  443. homeassistant/components/reolink/translations/ko.json +0 -2
  444. homeassistant/components/reolink/translations/lt.json +0 -2
  445. homeassistant/components/reolink/translations/nb.json +0 -1
  446. homeassistant/components/reolink/translations/nl.json +0 -2
  447. homeassistant/components/reolink/translations/pl.json +0 -1
  448. homeassistant/components/reolink/translations/pt-BR.json +0 -2
  449. homeassistant/components/reolink/translations/pt.json +2 -2
  450. homeassistant/components/reolink/translations/ro.json +0 -2
  451. homeassistant/components/reolink/translations/ru.json +0 -2
  452. homeassistant/components/reolink/translations/sk.json +2 -2
  453. homeassistant/components/reolink/translations/sv.json +0 -2
  454. homeassistant/components/reolink/translations/tr.json +0 -2
  455. homeassistant/components/reolink/translations/uk.json +0 -2
  456. homeassistant/components/reolink/translations/zh-Hans.json +0 -2
  457. homeassistant/components/reolink/translations/zh-Hant.json +2 -2
  458. homeassistant/components/rituals_perfume_genie/__init__.py +47 -7
  459. homeassistant/components/rituals_perfume_genie/config_flow.py +79 -32
  460. homeassistant/components/rituals_perfume_genie/const.py +1 -0
  461. homeassistant/components/rituals_perfume_genie/coordinator.py +39 -4
  462. homeassistant/components/rituals_perfume_genie/manifest.json +2 -2
  463. homeassistant/components/rituals_perfume_genie/strings.json +8 -1
  464. homeassistant/components/rituals_perfume_genie/translations/bg.json +0 -3
  465. homeassistant/components/rituals_perfume_genie/translations/ca.json +0 -3
  466. homeassistant/components/rituals_perfume_genie/translations/cs.json +8 -1
  467. homeassistant/components/rituals_perfume_genie/translations/da.json +0 -3
  468. homeassistant/components/rituals_perfume_genie/translations/de.json +8 -1
  469. homeassistant/components/rituals_perfume_genie/translations/el.json +0 -3
  470. homeassistant/components/rituals_perfume_genie/translations/en-GB.json +8 -1
  471. homeassistant/components/rituals_perfume_genie/translations/en.json +8 -1
  472. homeassistant/components/rituals_perfume_genie/translations/es.json +8 -1
  473. homeassistant/components/rituals_perfume_genie/translations/et.json +7 -1
  474. homeassistant/components/rituals_perfume_genie/translations/fi.json +0 -3
  475. homeassistant/components/rituals_perfume_genie/translations/fr.json +0 -3
  476. homeassistant/components/rituals_perfume_genie/translations/ga.json +0 -3
  477. homeassistant/components/rituals_perfume_genie/translations/he.json +0 -3
  478. homeassistant/components/rituals_perfume_genie/translations/hu.json +0 -3
  479. homeassistant/components/rituals_perfume_genie/translations/id.json +0 -3
  480. homeassistant/components/rituals_perfume_genie/translations/it.json +0 -3
  481. homeassistant/components/rituals_perfume_genie/translations/ja.json +0 -3
  482. homeassistant/components/rituals_perfume_genie/translations/ko.json +0 -3
  483. homeassistant/components/rituals_perfume_genie/translations/lt.json +0 -3
  484. homeassistant/components/rituals_perfume_genie/translations/lv.json +0 -5
  485. homeassistant/components/rituals_perfume_genie/translations/nb.json +0 -3
  486. homeassistant/components/rituals_perfume_genie/translations/nl.json +0 -3
  487. homeassistant/components/rituals_perfume_genie/translations/pl.json +0 -3
  488. homeassistant/components/rituals_perfume_genie/translations/pt-BR.json +0 -3
  489. homeassistant/components/rituals_perfume_genie/translations/pt.json +8 -1
  490. homeassistant/components/rituals_perfume_genie/translations/ro.json +0 -3
  491. homeassistant/components/rituals_perfume_genie/translations/ru.json +0 -3
  492. homeassistant/components/rituals_perfume_genie/translations/sk.json +8 -1
  493. homeassistant/components/rituals_perfume_genie/translations/sl.json +0 -3
  494. homeassistant/components/rituals_perfume_genie/translations/sv.json +0 -3
  495. homeassistant/components/rituals_perfume_genie/translations/tr.json +0 -3
  496. homeassistant/components/rituals_perfume_genie/translations/uk.json +0 -3
  497. homeassistant/components/rituals_perfume_genie/translations/zh-Hans.json +0 -3
  498. homeassistant/components/rituals_perfume_genie/translations/zh-Hant.json +0 -3
  499. homeassistant/components/roborock/__init__.py +20 -1
  500. homeassistant/components/roborock/manifest.json +1 -1
  501. homeassistant/components/roborock/roborock_storage.py +29 -10
  502. homeassistant/components/roborock/translations/he.json +1 -1
  503. homeassistant/components/saunum/translations/he.json +31 -0
  504. homeassistant/components/scene/translations/cs.json +3 -3
  505. homeassistant/components/senz/translations/he.json +11 -1
  506. homeassistant/components/sfr_box/translations/he.json +1 -1
  507. homeassistant/components/sharkiq/manifest.json +1 -1
  508. homeassistant/components/shelly/button.py +11 -2
  509. homeassistant/components/shelly/translations/ga.json +8 -0
  510. homeassistant/components/shelly/translations/he.json +132 -0
  511. homeassistant/components/sleep_as_android/translations/es.json +3 -0
  512. homeassistant/components/smartthings/translations/he.json +19 -1
  513. homeassistant/components/spotify/translations/he.json +5 -0
  514. homeassistant/components/starlink/coordinator.py +0 -1
  515. homeassistant/components/starlink/sensor.py +6 -3
  516. homeassistant/components/switchbot/translations/he.json +12 -0
  517. homeassistant/components/tedee/manifest.json +1 -0
  518. homeassistant/components/telegram_bot/__init__.py +3 -0
  519. homeassistant/components/telegram_bot/config_flow.py +9 -5
  520. homeassistant/components/telegram_bot/strings.json +9 -9
  521. homeassistant/components/telegram_bot/translations/bg.json +0 -7
  522. homeassistant/components/telegram_bot/translations/ca.json +0 -12
  523. homeassistant/components/telegram_bot/translations/cs.json +15 -15
  524. homeassistant/components/telegram_bot/translations/de.json +15 -15
  525. homeassistant/components/telegram_bot/translations/el.json +0 -18
  526. homeassistant/components/telegram_bot/translations/en-GB.json +15 -15
  527. homeassistant/components/telegram_bot/translations/en.json +15 -15
  528. homeassistant/components/telegram_bot/translations/es.json +2 -15
  529. homeassistant/components/telegram_bot/translations/et.json +15 -15
  530. homeassistant/components/telegram_bot/translations/fi.json +0 -12
  531. homeassistant/components/telegram_bot/translations/ga.json +0 -19
  532. homeassistant/components/telegram_bot/translations/gl.json +0 -3
  533. homeassistant/components/telegram_bot/translations/he.json +0 -12
  534. homeassistant/components/telegram_bot/translations/hu.json +0 -18
  535. homeassistant/components/telegram_bot/translations/it.json +0 -18
  536. homeassistant/components/telegram_bot/translations/ja.json +0 -18
  537. homeassistant/components/telegram_bot/translations/ko.json +0 -12
  538. homeassistant/components/telegram_bot/translations/lt.json +0 -19
  539. homeassistant/components/telegram_bot/translations/mk.json +0 -1
  540. homeassistant/components/telegram_bot/translations/nb.json +0 -12
  541. homeassistant/components/telegram_bot/translations/nl.json +0 -18
  542. homeassistant/components/telegram_bot/translations/pt.json +15 -15
  543. homeassistant/components/telegram_bot/translations/ru.json +13 -19
  544. homeassistant/components/telegram_bot/translations/sk.json +15 -15
  545. homeassistant/components/telegram_bot/translations/sr-Latn.json +0 -12
  546. homeassistant/components/telegram_bot/translations/sv.json +0 -19
  547. homeassistant/components/telegram_bot/translations/tr.json +0 -13
  548. homeassistant/components/telegram_bot/translations/zh-Hans.json +0 -19
  549. homeassistant/components/telegram_bot/translations/zh-Hant.json +13 -19
  550. homeassistant/components/template/helpers.py +20 -10
  551. homeassistant/components/template/light.py +12 -18
  552. homeassistant/components/template/strings.json +1 -1
  553. homeassistant/components/template/translations/cs.json +1 -1
  554. homeassistant/components/template/translations/de.json +1 -1
  555. homeassistant/components/template/translations/el.json +0 -1
  556. homeassistant/components/template/translations/en-GB.json +1 -1
  557. homeassistant/components/template/translations/en.json +1 -1
  558. homeassistant/components/template/translations/es.json +0 -1
  559. homeassistant/components/template/translations/et.json +1 -1
  560. homeassistant/components/template/translations/ga.json +0 -1
  561. homeassistant/components/template/translations/he.json +3 -0
  562. homeassistant/components/template/translations/it.json +0 -1
  563. homeassistant/components/template/translations/lt.json +0 -1
  564. homeassistant/components/template/translations/pl.json +0 -1
  565. homeassistant/components/template/translations/pt.json +1 -1
  566. homeassistant/components/template/translations/sk.json +1 -1
  567. homeassistant/components/template/translations/sr-Latn.json +0 -1
  568. homeassistant/components/template/translations/tr.json +0 -1
  569. homeassistant/components/template/translations/zh-Hans.json +0 -1
  570. homeassistant/components/template/translations/zh-Hant.json +0 -1
  571. homeassistant/components/tesla_fleet/translations/he.json +5 -0
  572. homeassistant/components/teslemetry/services.py +3 -0
  573. homeassistant/components/teslemetry/strings.json +1 -1
  574. homeassistant/components/teslemetry/translations/bg.json +0 -1
  575. homeassistant/components/teslemetry/translations/cs.json +1 -1
  576. homeassistant/components/teslemetry/translations/de.json +1 -1
  577. homeassistant/components/teslemetry/translations/el.json +0 -1
  578. homeassistant/components/teslemetry/translations/en-GB.json +1 -1
  579. homeassistant/components/teslemetry/translations/en.json +1 -1
  580. homeassistant/components/teslemetry/translations/es.json +1 -1
  581. homeassistant/components/teslemetry/translations/et.json +1 -1
  582. homeassistant/components/teslemetry/translations/ga.json +0 -1
  583. homeassistant/components/teslemetry/translations/he.json +2 -2
  584. homeassistant/components/teslemetry/translations/hr.json +0 -1
  585. homeassistant/components/teslemetry/translations/hu.json +0 -1
  586. homeassistant/components/teslemetry/translations/ja.json +0 -1
  587. homeassistant/components/teslemetry/translations/lt.json +0 -1
  588. homeassistant/components/teslemetry/translations/pt.json +1 -1
  589. homeassistant/components/teslemetry/translations/ru.json +1 -1
  590. homeassistant/components/teslemetry/translations/sk.json +1 -1
  591. homeassistant/components/teslemetry/translations/sv.json +0 -1
  592. homeassistant/components/teslemetry/translations/tr.json +0 -1
  593. homeassistant/components/teslemetry/translations/zh-Hans.json +0 -1
  594. homeassistant/components/teslemetry/translations/zh-Hant.json +1 -1
  595. homeassistant/components/text/translations/cs.json +7 -1
  596. homeassistant/components/text/translations/en-GB.json +7 -1
  597. homeassistant/components/text/translations/es.json +1 -1
  598. homeassistant/components/text/translations/he.json +7 -1
  599. homeassistant/components/text/translations/lt.json +7 -1
  600. homeassistant/components/text/translations/pt.json +7 -1
  601. homeassistant/components/text/translations/ru.json +7 -1
  602. homeassistant/components/text/translations/sk.json +7 -1
  603. homeassistant/components/timer/translations/he.json +1 -1
  604. homeassistant/components/toon/translations/he.json +5 -0
  605. homeassistant/components/transmission/translations/he.json +1 -1
  606. homeassistant/components/tuya/climate.py +12 -0
  607. homeassistant/components/tuya/translations/he.json +10 -0
  608. homeassistant/components/twitch/translations/he.json +5 -0
  609. homeassistant/components/unifiprotect/manifest.json +1 -1
  610. homeassistant/components/unifiprotect/translations/el.json +6 -0
  611. homeassistant/components/unifiprotect/translations/lt.json +10 -0
  612. homeassistant/components/unifiprotect/translations/pt.json +10 -0
  613. homeassistant/components/unifiprotect/translations/zh-Hans.json +2 -1
  614. homeassistant/components/vacuum/translations/cs.json +12 -4
  615. homeassistant/components/vacuum/translations/en-GB.json +12 -4
  616. homeassistant/components/vacuum/translations/es.json +3 -3
  617. homeassistant/components/vacuum/translations/he.json +57 -2
  618. homeassistant/components/vacuum/translations/lt.json +12 -4
  619. homeassistant/components/vacuum/translations/pt.json +12 -4
  620. homeassistant/components/vacuum/translations/ru.json +20 -12
  621. homeassistant/components/vacuum/translations/sk.json +12 -4
  622. homeassistant/components/vacuum/translations/sv.json +14 -0
  623. homeassistant/components/venstar/translations/he.json +1 -1
  624. homeassistant/components/vesync/binary_sensor.py +1 -1
  625. homeassistant/components/vicare/translations/he.json +10 -0
  626. homeassistant/components/victron_ble/translations/he.json +17 -0
  627. homeassistant/components/volvo/translations/he.json +6 -1
  628. homeassistant/components/weheat/translations/he.json +5 -0
  629. homeassistant/components/withings/translations/he.json +5 -0
  630. homeassistant/components/wled/config_flow.py +5 -1
  631. homeassistant/components/wled/coordinator.py +9 -0
  632. homeassistant/components/wled/strings.json +10 -2
  633. homeassistant/components/wled/translations/cs.json +10 -2
  634. homeassistant/components/wled/translations/de.json +10 -2
  635. homeassistant/components/wled/translations/en-GB.json +10 -2
  636. homeassistant/components/wled/translations/en.json +10 -2
  637. homeassistant/components/wled/translations/es.json +10 -2
  638. homeassistant/components/wled/translations/et.json +10 -2
  639. homeassistant/components/wled/translations/ga.json +10 -2
  640. homeassistant/components/wled/translations/he.json +8 -2
  641. homeassistant/components/wled/translations/lt.json +10 -2
  642. homeassistant/components/wled/translations/pt.json +10 -2
  643. homeassistant/components/wled/translations/ru.json +10 -2
  644. homeassistant/components/wled/translations/sk.json +10 -2
  645. homeassistant/components/wled/translations/zh-Hans.json +10 -2
  646. homeassistant/components/wled/translations/zh-Hant.json +10 -2
  647. homeassistant/components/wled/update.py +1 -1
  648. homeassistant/components/xbox/browse_media.py +3 -1
  649. homeassistant/components/xbox/entity.py +10 -6
  650. homeassistant/components/xbox/media_source.py +2 -1
  651. homeassistant/components/xbox/sensor.py +3 -2
  652. homeassistant/components/xbox/translations/de.json +1 -1
  653. homeassistant/components/xbox/translations/he.json +10 -1
  654. homeassistant/components/xiaomi_aqara/config_flow.py +19 -3
  655. homeassistant/components/xiaomi_aqara/strings.json +2 -2
  656. homeassistant/components/xiaomi_aqara/translations/ca.json +0 -2
  657. homeassistant/components/xiaomi_aqara/translations/cs.json +2 -2
  658. homeassistant/components/xiaomi_aqara/translations/da.json +0 -4
  659. homeassistant/components/xiaomi_aqara/translations/de.json +2 -2
  660. homeassistant/components/xiaomi_aqara/translations/el.json +0 -2
  661. homeassistant/components/xiaomi_aqara/translations/en-GB.json +2 -2
  662. homeassistant/components/xiaomi_aqara/translations/en.json +2 -2
  663. homeassistant/components/xiaomi_aqara/translations/es.json +2 -2
  664. homeassistant/components/xiaomi_aqara/translations/et.json +2 -2
  665. homeassistant/components/xiaomi_aqara/translations/fi.json +0 -2
  666. homeassistant/components/xiaomi_aqara/translations/fr.json +0 -2
  667. homeassistant/components/xiaomi_aqara/translations/ga.json +0 -2
  668. homeassistant/components/xiaomi_aqara/translations/gl.json +1 -2
  669. homeassistant/components/xiaomi_aqara/translations/he.json +0 -2
  670. homeassistant/components/xiaomi_aqara/translations/hu.json +0 -2
  671. homeassistant/components/xiaomi_aqara/translations/id.json +0 -2
  672. homeassistant/components/xiaomi_aqara/translations/it.json +0 -2
  673. homeassistant/components/xiaomi_aqara/translations/ja.json +0 -2
  674. homeassistant/components/xiaomi_aqara/translations/ko.json +0 -2
  675. homeassistant/components/xiaomi_aqara/translations/lb.json +1 -2
  676. homeassistant/components/xiaomi_aqara/translations/lt.json +0 -2
  677. homeassistant/components/xiaomi_aqara/translations/nb.json +0 -1
  678. homeassistant/components/xiaomi_aqara/translations/nl.json +0 -2
  679. homeassistant/components/xiaomi_aqara/translations/pl.json +0 -2
  680. homeassistant/components/xiaomi_aqara/translations/pt-BR.json +0 -2
  681. homeassistant/components/xiaomi_aqara/translations/pt.json +2 -2
  682. homeassistant/components/xiaomi_aqara/translations/ro.json +0 -2
  683. homeassistant/components/xiaomi_aqara/translations/ru.json +2 -2
  684. homeassistant/components/xiaomi_aqara/translations/sk.json +2 -2
  685. homeassistant/components/xiaomi_aqara/translations/sl.json +0 -2
  686. homeassistant/components/xiaomi_aqara/translations/sr-Latn.json +6 -0
  687. homeassistant/components/xiaomi_aqara/translations/sv.json +0 -2
  688. homeassistant/components/xiaomi_aqara/translations/tr.json +0 -2
  689. homeassistant/components/xiaomi_aqara/translations/uk.json +0 -2
  690. homeassistant/components/xiaomi_aqara/translations/vi.json +0 -2
  691. homeassistant/components/xiaomi_aqara/translations/zh-Hans.json +0 -2
  692. homeassistant/components/xiaomi_aqara/translations/zh-Hant.json +2 -2
  693. homeassistant/components/yeelight/light.py +9 -1
  694. homeassistant/components/yeelight/strings.json +2 -2
  695. homeassistant/components/yeelight/translations/cs.json +3 -3
  696. homeassistant/components/yeelight/translations/de.json +3 -3
  697. homeassistant/components/yeelight/translations/el.json +0 -3
  698. homeassistant/components/yeelight/translations/en-GB.json +3 -3
  699. homeassistant/components/yeelight/translations/en.json +3 -3
  700. homeassistant/components/yeelight/translations/es.json +3 -3
  701. homeassistant/components/yeelight/translations/et.json +3 -3
  702. homeassistant/components/yeelight/translations/fi.json +0 -2
  703. homeassistant/components/yeelight/translations/fr.json +0 -3
  704. homeassistant/components/yeelight/translations/ga.json +0 -3
  705. homeassistant/components/yeelight/translations/gl.json +0 -2
  706. homeassistant/components/yeelight/translations/he.json +0 -3
  707. homeassistant/components/yeelight/translations/hu.json +0 -3
  708. homeassistant/components/yeelight/translations/it.json +0 -2
  709. homeassistant/components/yeelight/translations/ja.json +0 -3
  710. homeassistant/components/yeelight/translations/ko.json +0 -2
  711. homeassistant/components/yeelight/translations/lt.json +0 -3
  712. homeassistant/components/yeelight/translations/pt.json +3 -3
  713. homeassistant/components/yeelight/translations/ru.json +0 -3
  714. homeassistant/components/yeelight/translations/sk.json +3 -3
  715. homeassistant/components/yeelight/translations/sv.json +0 -3
  716. homeassistant/components/yeelight/translations/tr.json +0 -3
  717. homeassistant/components/yeelight/translations/vi.json +0 -2
  718. homeassistant/components/yeelight/translations/zh-Hans.json +0 -3
  719. homeassistant/components/yeelight/translations/zh-Hant.json +3 -3
  720. homeassistant/components/yolink/translations/he.json +5 -0
  721. homeassistant/components/youtube/translations/he.json +5 -0
  722. homeassistant/components/zha/config_flow.py +9 -6
  723. homeassistant/components/zha/radio_manager.py +2 -2
  724. homeassistant/components/zha/strings.json +5 -3
  725. homeassistant/components/zha/translations/cs.json +6 -4
  726. homeassistant/components/zha/translations/de.json +6 -4
  727. homeassistant/components/zha/translations/el.json +0 -8
  728. homeassistant/components/zha/translations/en-GB.json +6 -4
  729. homeassistant/components/zha/translations/en.json +6 -4
  730. homeassistant/components/zha/translations/es.json +6 -4
  731. homeassistant/components/zha/translations/et.json +6 -4
  732. homeassistant/components/zha/translations/fr.json +0 -3
  733. homeassistant/components/zha/translations/ga.json +2 -0
  734. homeassistant/components/zha/translations/he.json +1 -1
  735. homeassistant/components/zha/translations/hu.json +0 -3
  736. homeassistant/components/zha/translations/lt.json +0 -8
  737. homeassistant/components/zha/translations/nl.json +8 -0
  738. homeassistant/components/zha/translations/pt.json +6 -4
  739. homeassistant/components/zha/translations/ru.json +46 -8
  740. homeassistant/components/zha/translations/sk.json +6 -4
  741. homeassistant/components/zha/translations/sv.json +2 -0
  742. homeassistant/components/zha/translations/zh-Hans.json +2 -8
  743. homeassistant/components/zha/translations/zh-Hant.json +2 -8
  744. homeassistant/components/zwave_js/services.py +3 -0
  745. homeassistant/components/zwave_js/strings.json +2 -2
  746. homeassistant/components/zwave_js/translations/cs.json +2 -2
  747. homeassistant/components/zwave_js/translations/de.json +2 -2
  748. homeassistant/components/zwave_js/translations/el.json +0 -2
  749. homeassistant/components/zwave_js/translations/en-GB.json +2 -2
  750. homeassistant/components/zwave_js/translations/en.json +2 -2
  751. homeassistant/components/zwave_js/translations/es.json +2 -2
  752. homeassistant/components/zwave_js/translations/et.json +2 -2
  753. homeassistant/components/zwave_js/translations/ga.json +0 -2
  754. homeassistant/components/zwave_js/translations/hu.json +0 -2
  755. homeassistant/components/zwave_js/translations/ja.json +0 -2
  756. homeassistant/components/zwave_js/translations/lt.json +0 -2
  757. homeassistant/components/zwave_js/translations/pt.json +2 -2
  758. homeassistant/components/zwave_js/translations/ru.json +0 -2
  759. homeassistant/components/zwave_js/translations/sk.json +2 -2
  760. homeassistant/components/zwave_js/translations/sv.json +0 -2
  761. homeassistant/components/zwave_js/translations/tr.json +0 -2
  762. homeassistant/components/zwave_js/translations/vi.json +0 -2
  763. homeassistant/components/zwave_js/translations/zh-Hans.json +0 -2
  764. homeassistant/components/zwave_js/translations/zh-Hant.json +2 -2
  765. homeassistant/const.py +1 -1
  766. homeassistant/generated/integrations.json +2 -2
  767. homeassistant/generated/labs.py +2 -2
  768. homeassistant/loader.py +6 -0
  769. homeassistant/package_constraints.txt +3 -3
  770. {homeassistant-2025.12.0b5.dist-info → homeassistant-2025.12.1.dist-info}/METADATA +2 -2
  771. {homeassistant-2025.12.0b5.dist-info → homeassistant-2025.12.1.dist-info}/RECORD +776 -761
  772. {homeassistant-2025.12.0b5.dist-info → homeassistant-2025.12.1.dist-info}/WHEEL +0 -0
  773. {homeassistant-2025.12.0b5.dist-info → homeassistant-2025.12.1.dist-info}/entry_points.txt +0 -0
  774. {homeassistant-2025.12.0b5.dist-info → homeassistant-2025.12.1.dist-info}/licenses/LICENSE.md +0 -0
  775. {homeassistant-2025.12.0b5.dist-info → homeassistant-2025.12.1.dist-info}/licenses/homeassistant/backports/LICENSE.Python +0 -0
  776. {homeassistant-2025.12.0b5.dist-info → homeassistant-2025.12.1.dist-info}/top_level.txt +0 -0
@@ -954,6 +954,7 @@
954
954
  "extra_dry": "Extra dry",
955
955
  "final_rinse": "Final rinse",
956
956
  "finished": "Finished",
957
+ "flex_load_active": "FlexLoad active",
957
958
  "freshen_up_and_moisten": "Freshen up & moisten",
958
959
  "going_to_target_area": "Going to target area",
959
960
  "grinding": "Grinding",
@@ -945,6 +945,7 @@
945
945
  "extra_dry": "An-tirim",
946
946
  "final_rinse": "Sruthl\u00fa deiridh",
947
947
  "finished": "Cr\u00edochnaithe",
948
+ "flex_load_active": "FlexLoad gn\u00edomhach",
948
949
  "freshen_up_and_moisten": "Athnuachan & taiseadh",
949
950
  "going_to_target_area": "Ag dul go dt\u00ed an ceantar sprice",
950
951
  "grinding": "Ag meilt",
@@ -852,7 +852,7 @@
852
852
  },
853
853
  "status": {
854
854
  "state": {
855
- "idle": "\u05d1\u05d4\u05de\u05ea\u05e0\u05d4",
855
+ "idle": "\u05de\u05e6\u05d1 \u05e1\u05e8\u05e7",
856
856
  "in_use": "\u05d1\u05e9\u05d9\u05de\u05d5\u05e9",
857
857
  "off": "\u05db\u05d1\u05d5\u05d9",
858
858
  "on": "\u05de\u05d5\u05e4\u05e2\u05dc"
@@ -864,6 +864,9 @@
864
864
  "get_programs_error": {
865
865
  "message": "\u05e4\u05e2\u05d5\u05dc\u05ea '\u05e7\u05d1\u05dc\u05ea \u05ea\u05d5\u05db\u05e0\u05d9\u05d5\u05ea' \u05e0\u05db\u05e9\u05dc\u05d4: {status} / {message}"
866
866
  },
867
+ "oauth2_implementation_unavailable": {
868
+ "message": "\u05d9\u05d9\u05e9\u05d5\u05dd OAuth2 \u05d0\u05d9\u05e0\u05d5 \u05d6\u05de\u05d9\u05df, \u05d0\u05e0\u05e1\u05d4 \u05e9\u05d5\u05d1"
869
+ },
867
870
  "set_program_error": {
868
871
  "message": "\u05e4\u05e2\u05d5\u05dc\u05ea '\u05d4\u05d2\u05d3\u05e8\u05ea \u05ea\u05d5\u05db\u05e0\u05d9\u05ea' \u05e0\u05db\u05e9\u05dc\u05d4: {status} / {message}"
869
872
  },
@@ -184,6 +184,17 @@
184
184
  "name": "Luce"
185
185
  }
186
186
  },
187
+ "select": {
188
+ "fridge_freezer_mode": {
189
+ "name": "Modalit\u00e0",
190
+ "state": {
191
+ "holiday": "Vacanze",
192
+ "normal": "Normale",
193
+ "party": "Party",
194
+ "sabbath": "Sabbath"
195
+ }
196
+ }
197
+ },
187
198
  "sensor": {
188
199
  "core_target_temperature": {
189
200
  "name": "Temperatura impostata pietanza"
@@ -933,7 +944,7 @@
933
944
  "extra_dry": "Secco",
934
945
  "final_rinse": "Risciacquo con brillantante",
935
946
  "finished": "Fine",
936
- "flex_load_active": "FlexLoad attivo",
947
+ "flex_load_active": "FlexLoad",
937
948
  "freshen_up_and_moisten": "Rinfrescato & inumidito",
938
949
  "going_to_target_area": "In movimento verso l'area",
939
950
  "grinding": "Macinatura",
@@ -1075,6 +1086,9 @@
1075
1086
  "get_programs_error": {
1076
1087
  "message": "Azione 'Ottieni programmi' fallita: {status} / {message}"
1077
1088
  },
1089
+ "invalid_option": {
1090
+ "message": "Opzione invalida: \"{option}\" su {entity}."
1091
+ },
1078
1092
  "invalid_target": {
1079
1093
  "message": "Dispositivo scelto non valido."
1080
1094
  },
@@ -954,6 +954,7 @@
954
954
  "extra_dry": "Ypa\u010d sausas",
955
955
  "final_rinse": "Galutinis skalavimas",
956
956
  "finished": "Baigta",
957
+ "flex_load_active": "FlexLoad aktyvus",
957
958
  "freshen_up_and_moisten": "At\u0161vie\u017einkite ir sudr\u0117kinkite",
958
959
  "going_to_target_area": "Va\u017eiuoja \u012f tikslin\u0119 zon\u0105",
959
960
  "grinding": "\u0160lifavimas",
@@ -954,6 +954,7 @@
954
954
  "extra_dry": "Extra seco",
955
955
  "final_rinse": "Enxaguamento final",
956
956
  "finished": "Terminado",
957
+ "flex_load_active": "FlexLoad ativo",
957
958
  "freshen_up_and_moisten": "Refrescar e humedecer",
958
959
  "going_to_target_area": "Ir para a zona-alvo",
959
960
  "grinding": "Moagem",
@@ -954,6 +954,7 @@
954
954
  "extra_dry": "\u8d85\u5e72",
955
955
  "final_rinse": "\u6700\u540e\u51b2\u6d17",
956
956
  "finished": "\u5df2\u5b8c\u6210",
957
+ "flex_load_active": "FlexLoad \u6fc0\u6d3b",
957
958
  "freshen_up_and_moisten": "\u6e05\u65b0\u6ecb\u6da6",
958
959
  "going_to_target_area": "\u524d\u5f80\u76ee\u6807\u533a\u57df",
959
960
  "grinding": "\u7814\u78e8",
@@ -1562,6 +1562,7 @@
1562
1562
  },
1563
1563
  "triggers": {
1564
1564
  "_": {
1565
+ "description": "Spust\u00ed se po p\u0159ijet\u00ed konkr\u00e9tn\u00ed zpr\u00e1vy k dan\u00e9mu t\u00e9matu MQTT.",
1565
1566
  "fields": {
1566
1567
  "payload": {
1567
1568
  "description": "Datov\u00e1 \u010d\u00e1st, kter\u00e1 se m\u00e1 spustit.",
@@ -1571,7 +1572,8 @@
1571
1572
  "description": "T\u00e9ma MQTT k poslechu.",
1572
1573
  "name": "T\u00e9ma"
1573
1574
  }
1574
- }
1575
+ },
1576
+ "name": "P\u0159ijata zpr\u00e1va MQTT"
1575
1577
  }
1576
1578
  }
1577
1579
  }
@@ -1562,6 +1562,7 @@
1562
1562
  },
1563
1563
  "triggers": {
1564
1564
  "_": {
1565
+ "description": "Triggers after a specific message is received on a given MQTT topic.",
1565
1566
  "fields": {
1566
1567
  "payload": {
1567
1568
  "description": "The payload to trigger on.",
@@ -1571,7 +1572,8 @@
1571
1572
  "description": "MQTT topic to listen to.",
1572
1573
  "name": "Topic"
1573
1574
  }
1574
- }
1575
+ },
1576
+ "name": "MQTT message received"
1575
1577
  }
1576
1578
  }
1577
1579
  }
@@ -1562,7 +1562,7 @@
1562
1562
  },
1563
1563
  "triggers": {
1564
1564
  "_": {
1565
- "description": "Se dispara cuando se recibe un mensaje espec\u00edfico en un topic MQTT determinado.",
1565
+ "description": "Se dispara despu\u00e9s de que se recibe un mensaje espec\u00edfico en un topic MQTT determinado.",
1566
1566
  "fields": {
1567
1567
  "payload": {
1568
1568
  "description": "El payload en el que dispararse.",
@@ -265,6 +265,7 @@
265
265
  "fan_feature_speed": "\u05d4\u05de\u05d0\u05d5\u05d5\u05e8\u05e8 \u05ea\u05d5\u05de\u05da \u05d1\u05de\u05e1\u05e4\u05e8 \u05de\u05d4\u05d9\u05e8\u05d5\u05d9\u05d5\u05ea.",
266
266
  "options": "\u05d0\u05e4\u05e9\u05e8\u05d5\u05d9\u05d5\u05ea \u05e2\u05d1\u05d5\u05e8 \u05e2\u05e8\u05db\u05d9 \u05de\u05e6\u05d1 \u05d7\u05d9\u05d9\u05e9\u05df \u05de\u05d5\u05ea\u05e8\u05d9\u05dd. \u05d9\u05e9 \u05dc\u05d4\u05d2\u05d3\u05d9\u05e8 \u05d0\u05ea \u05de\u05d7\u05dc\u05e7\u05ea \u05d4\u05d4\u05ea\u05e7\u05df \u05e9\u05dc \u05d4\u05d7\u05d9\u05d9\u05e9\u05df \u05dc-Enumeration. \u05dc\u05d0 \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1\u05d4\u05d2\u05d3\u05e8\u05d4 '\u05d0\u05e4\u05e9\u05e8\u05d5\u05d9\u05d5\u05ea' \u05d9\u05d7\u05d3 \u05e2\u05dd \u05de\u05d7\u05dc\u05e7\u05d4 \u05de\u05e6\u05d1 \u05d0\u05d5 \u05d9\u05d7\u05d9\u05d3\u05ea \u05de\u05d3\u05d9\u05d3\u05d4.",
267
267
  "schema": "\u05d4\u05e1\u05db\u05d9\u05de\u05d4 \u05dc\u05e9\u05d9\u05de\u05d5\u05e9. [\u05dc\u05de\u05d9\u05d3\u05e2 \u05e0\u05d5\u05e1\u05e3.]({url}#comparison-of-light-mqtt-schemas)",
268
+ "state_class": "[\u05de\u05d7\u05dc\u05e7\u05ea \u05d4\u05de\u05e6\u05d1]({available_state_classes_url}) \u05e9\u05dc \u05d4\u05d7\u05d9\u05d9\u05e9\u05df. [\u05dc\u05de\u05d9\u05d3\u05e2 \u05e0\u05d5\u05e1\u05e3.]({url}#\u05de\u05d7\u05dc\u05e7\u05ea_\u05de\u05e6\u05d1)",
268
269
  "suggested_display_precision": "\u05de\u05e1\u05e4\u05e8 \u05d4\u05e2\u05e9\u05e8\u05d5\u05e0\u05d9\u05dd \u05e9\u05d1\u05d4\u05dd \u05d9\u05e9 \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1\u05de\u05e6\u05d1 \u05d4\u05d9\u05e9\u05d5\u05ea {platform} \u05dc\u05d0\u05d7\u05e8 \u05e2\u05d9\u05d2\u05d5\u05dc. [\u05dc\u05de\u05d9\u05d3\u05e2 \u05e0\u05d5\u05e1\u05e3.]({url}#suggested_display_precision)",
269
270
  "unit_of_measurement": "\u05de\u05d2\u05d3\u05d9\u05e8 \u05d0\u05ea \u05d9\u05d7\u05d9\u05d3\u05ea \u05d4\u05de\u05d9\u05d3\u05d4, \u05d0\u05dd \u05e7\u05d9\u05d9\u05de\u05ea."
270
271
  },
@@ -867,6 +868,12 @@
867
868
  "temperature_state_topic": "\u05e0\u05d5\u05e9\u05d0 \u05d4-MQTT \u05dc\u05d4\u05d9\u05e8\u05e9\u05dd \u05dc\u05e9\u05d9\u05e0\u05d5\u05d9\u05d9\u05dd \u05d1\u05d8\u05de\u05e4\u05e8\u05d8\u05d5\u05e8\u05ea \u05d4\u05d9\u05e2\u05d3. [\u05dc\u05de\u05d9\u05d3\u05e2 \u05e0\u05d5\u05e1\u05e3.]({url}#temperature_state_topic)"
868
869
  },
869
870
  "name": "\u05d4\u05d2\u05d3\u05e8\u05d5\u05ea \u05d8\u05de\u05e4\u05e8\u05d8\u05d5\u05e8\u05ea \u05d9\u05e2\u05d3"
871
+ },
872
+ "water_heater_power_settings": {
873
+ "data_description": {
874
+ "payload_on": "\u05d4\u05de\u05d8\u05e2\u05df \u05d4\u05de\u05d9\u05d9\u05e6\u05d2 \u05d0\u05ea \u05d4\u05de\u05e6\u05d1 \"\u05e4\u05e2\u05d9\u05dc\".",
875
+ "power_command_template": "[\u05ea\u05d1\u05e0\u05d9\u05ea]({command_templating_url}) \u05db\u05d3\u05d9 \u05dc\u05d7\u05d1\u05e8 \u05d0\u05ea \u05d4\u05de\u05d8\u05e2\u05df \u05e9\u05d9\u05e4\u05d5\u05e8\u05e1\u05dd \u05d1\u05e0\u05d5\u05e9\u05d0 Power Command. \u05d4\u05e4\u05e8\u05de\u05d8\u05e8 `\u05e2\u05e8\u05da` \u05d4\u05d5\u05d0 \u05d4\u05ea\u05d5\u05db\u05df \u05e9\u05e0\u05e7\u05d1\u05e2 \u05e2\u05d1\u05d5\u05e8 \u05ea\u05d5\u05db\u05df \u05de\u05e0\u05d4 \"\u05de\u05d5\u05e4\u05e2\u05dc\" \u05d0\u05d5 \u05ea\u05d5\u05db\u05df \u05de\u05e0\u05d4 \"\u05db\u05d1\u05d5\u05d9\"."
876
+ }
870
877
  }
871
878
  },
872
879
  "title": "\u05d4\u05d2\u05d3\u05e8\u05ea \u05d4\u05ea\u05e7\u05df MQTT \"{mqtt_device}\""
@@ -1222,6 +1229,12 @@
1222
1229
  "switch": "\u05de\u05ea\u05d2"
1223
1230
  }
1224
1231
  },
1232
+ "device_class_valve": {
1233
+ "options": {
1234
+ "gas": "\u05d2\u05d6",
1235
+ "water": "\u05de\u05d9\u05dd"
1236
+ }
1237
+ },
1225
1238
  "entity_category": {
1226
1239
  "options": {
1227
1240
  "config": "\u05ea\u05e6\u05d5\u05e8\u05d4",
@@ -1277,7 +1290,10 @@
1277
1290
  "select": "\u05d1\u05d7\u05e8",
1278
1291
  "sensor": "\u05d7\u05d9\u05d9\u05e9\u05df",
1279
1292
  "siren": "\u05e6\u05d5\u05e4\u05e8",
1280
- "switch": "\u05de\u05ea\u05d2"
1293
+ "switch": "\u05de\u05ea\u05d2",
1294
+ "text": "\u05d8\u05e7\u05e1\u05d8",
1295
+ "valve": "\u05e9\u05e1\u05ea\u05d5\u05dd",
1296
+ "water_heater": "\u05de\u05d7\u05de\u05dd \u05de\u05d9\u05dd"
1281
1297
  }
1282
1298
  },
1283
1299
  "set_ca_cert": {
@@ -1314,6 +1330,24 @@
1314
1330
  "none": "\u05d0\u05d9\u05df \u05d8\u05de\u05e4\u05e8\u05d8\u05d5\u05e8\u05ea \u05d9\u05e2\u05d3",
1315
1331
  "single": "\u05d8\u05de\u05e4\u05e8\u05d8\u05d5\u05e8\u05ea \u05d9\u05e2\u05d3 \u05d9\u05d7\u05d9\u05d3\u05d4"
1316
1332
  }
1333
+ },
1334
+ "text_mode": {
1335
+ "options": {
1336
+ "password": "\u05e1\u05d9\u05e1\u05de\u05d4",
1337
+ "text": "\u05d8\u05e7\u05e1\u05d8"
1338
+ }
1339
+ },
1340
+ "water_heater_modes": {
1341
+ "options": {
1342
+ "auto": "\u05d0\u05d5\u05d8\u05d5\u05de\u05d8\u05d9",
1343
+ "eco": "\u05d7\u05e1\u05db\u05d5\u05e0\u05d9",
1344
+ "electric": "\u05d7\u05e9\u05de\u05dc\u05d9",
1345
+ "gas": "\u05d2\u05d6",
1346
+ "heat_pump": "\u05de\u05e9\u05d0\u05d1\u05ea \u05d7\u05d5\u05dd",
1347
+ "high_demand": "\u05d1\u05d9\u05e7\u05d5\u05e9 \u05d2\u05d1\u05d5\u05d4",
1348
+ "off": "\u05db\u05d1\u05d5\u05d9",
1349
+ "performance": "\u05d1\u05d9\u05e6\u05d5\u05e2\u05d9\u05dd"
1350
+ }
1317
1351
  }
1318
1352
  },
1319
1353
  "services": {
@@ -729,6 +729,8 @@
729
729
  "data_description": {
730
730
  "payload_reset_percentage": "Specialus \u017einut\u0117s turinys, kuris, gautas procentin\u0117s b\u016bsenos temoje, atkuria ventiliatoriaus grei\u010dio procentin\u0117s b\u016bsenos atribut\u0105 \u012f ne\u017einom\u0105.",
731
731
  "percentage_command_template": "[\u0160ablonas]( {command_templating_url} ), skirtas sudaryti nauding\u0105j\u0105 apkrov\u0105, kuri bus publikuojama procentin\u0117s dalies komandos temoje.",
732
+ "percentage_command_topic": "MQTT tema, skirta publikuoti komandas, skirtas ventiliatoriaus grei\u010dio b\u016bsenai keisti pagal procentin\u012f nustatym\u0105. Reik\u0161m\u0117 turi b\u016bti diapazone nuo \"grei\u010dio diapazonas min\" iki \"grei\u010dio diapazonas maks\". [Su\u017einokite daugiau.]({url}#procent\u0173_komandos_tema)",
733
+ "percentage_state_topic": "MQTT tema u\u017esiprenumeravo ventiliatoriaus grei\u010dio b\u016bsenos gavim\u0105. Tai reik\u0161m\u0117 diapazone nuo \"grei\u010dio diapazonas min\" iki \"grei\u010dio diapazonas maks\". [Su\u017einokite daugiau.]({url}#procentin\u0117_valstyb\u0117s_tema)",
732
734
  "percentage_value_template": "Apibr\u0117\u017eia [template]( {value_templating_url} ), kad b\u016bt\u0173 i\u0161gauta grei\u010dio procentin\u0117 vert\u0117.",
733
735
  "speed_range_max": "Skaitmenin\u0117s i\u0161vesties diapazono maksimumas (atitinka 100 %). Procentinis \u017eingsnis yra 100 / grei\u010di\u0173 skai\u010dius \u201egrei\u010di\u0173 diapazone\u201c.",
734
736
  "speed_range_min": "Minimalus skaitinis i\u0161vesties diapazonas (i\u0161jungimas ne\u012ftrauktas, tod\u0117l speed_range_min - 1 rei\u0161kia 0 %). Procentinis \u017eingsnis yra 100 / grei\u010di\u0173 skai\u010dius \u201egrei\u010di\u0173 diapazone\u201c."
@@ -1560,6 +1562,7 @@
1560
1562
  },
1561
1563
  "triggers": {
1562
1564
  "_": {
1565
+ "description": "Suveikia gavus konkret\u0173 prane\u0161im\u0105 tam tikra MQTT tema.",
1563
1566
  "fields": {
1564
1567
  "payload": {
1565
1568
  "description": "\u017dinut\u0117s turinys, nuo kurio reikia suaktyvinti.",
@@ -1569,7 +1572,8 @@
1569
1572
  "description": "MQTT tema, kurios verta klausytis.",
1570
1573
  "name": "Tema"
1571
1574
  }
1572
- }
1575
+ },
1576
+ "name": "Gautas MQTT prane\u0161imas"
1573
1577
  }
1574
1578
  }
1575
1579
  }
@@ -1562,6 +1562,7 @@
1562
1562
  },
1563
1563
  "triggers": {
1564
1564
  "_": {
1565
+ "description": "Acionado ap\u00f3s a rece\u00e7\u00e3o de uma mensagem espec\u00edfica num determinado t\u00f3pico MQTT.",
1565
1566
  "fields": {
1566
1567
  "payload": {
1567
1568
  "description": "O payload a usar como gatilho.",
@@ -1571,7 +1572,8 @@
1571
1572
  "description": "T\u00f3pico MQTT para ouvir.",
1572
1573
  "name": "T\u00f3pico"
1573
1574
  }
1574
- }
1575
+ },
1576
+ "name": "Mensagem MQTT recebida"
1575
1577
  }
1576
1578
  }
1577
1579
  }
@@ -1562,6 +1562,7 @@
1562
1562
  },
1563
1563
  "triggers": {
1564
1564
  "_": {
1565
+ "description": "Sp\u00fa\u0161\u0165a sa po prijat\u00ed konkr\u00e9tnej spr\u00e1vy na dan\u00fa t\u00e9mu MQTT.",
1565
1566
  "fields": {
1566
1567
  "payload": {
1567
1568
  "description": "U\u017eito\u010dn\u00e9 za\u0165a\u017eenie, pri ktorom sa m\u00e1 spusti\u0165.",
@@ -1571,7 +1572,8 @@
1571
1572
  "description": "T\u00e9ma MQTT na po\u010d\u00favanie.",
1572
1573
  "name": "T\u00e9ma"
1573
1574
  }
1574
- }
1575
+ },
1576
+ "name": "Prijat\u00e1 spr\u00e1va MQTT"
1575
1577
  }
1576
1578
  }
1577
1579
  }
@@ -18,6 +18,7 @@ from music_assistant_models.enums import EventType
18
18
  from music_assistant_models.errors import (
19
19
  ActionUnavailable,
20
20
  AuthenticationFailed,
21
+ AuthenticationRequired,
21
22
  InvalidToken,
22
23
  MusicAssistantError,
23
24
  )
@@ -99,7 +100,7 @@ async def async_setup_entry( # noqa: C901
99
100
  translation_key="invalid_server_version",
100
101
  )
101
102
  raise ConfigEntryNotReady(f"Invalid server version: {err}") from err
102
- except (AuthenticationFailed, InvalidToken) as err:
103
+ except (AuthenticationRequired, AuthenticationFailed, InvalidToken) as err:
103
104
  raise ConfigEntryAuthFailed(
104
105
  f"Authentication failed for {mass_url}: {err}"
105
106
  ) from err
@@ -17,7 +17,12 @@ from music_assistant_models.api import ServerInfoMessage
17
17
  from music_assistant_models.errors import AuthenticationFailed, InvalidToken
18
18
  import voluptuous as vol
19
19
 
20
- from homeassistant.config_entries import SOURCE_REAUTH, ConfigFlow, ConfigFlowResult
20
+ from homeassistant.config_entries import (
21
+ SOURCE_REAUTH,
22
+ ConfigEntryState,
23
+ ConfigFlow,
24
+ ConfigFlowResult,
25
+ )
21
26
  from homeassistant.const import CONF_URL
22
27
  from homeassistant.core import HomeAssistant
23
28
  from homeassistant.helpers import aiohttp_client
@@ -165,10 +170,23 @@ class MusicAssistantConfigFlow(ConfigFlow, domain=DOMAIN):
165
170
  self.token = discovery_info.config["auth_token"]
166
171
 
167
172
  self.server_info = server_info
168
- await self.async_set_unique_id(server_info.server_id)
169
- self._abort_if_unique_id_configured(
170
- updates={CONF_URL: self.url, CONF_TOKEN: self.token}
171
- )
173
+
174
+ # Check if there's an existing entry
175
+ if entry := await self.async_set_unique_id(server_info.server_id):
176
+ # Update the entry with new URL and token
177
+ if self.hass.config_entries.async_update_entry(
178
+ entry, data={**entry.data, CONF_URL: self.url, CONF_TOKEN: self.token}
179
+ ):
180
+ # Reload the entry if it's in a state that can be reloaded
181
+ if entry.state in (
182
+ ConfigEntryState.LOADED,
183
+ ConfigEntryState.SETUP_ERROR,
184
+ ConfigEntryState.SETUP_RETRY,
185
+ ):
186
+ self.hass.config_entries.async_schedule_reload(entry.entry_id)
187
+
188
+ # Abort since entry already exists
189
+ return self.async_abort(reason="already_configured")
172
190
 
173
191
  return await self.async_step_hassio_confirm()
174
192
 
@@ -3,7 +3,9 @@
3
3
  "abort": {
4
4
  "already_configured": "\u05ea\u05e6\u05d5\u05e8\u05ea \u05d4\u05d4\u05ea\u05e7\u05df \u05db\u05d1\u05e8 \u05e0\u05e7\u05d1\u05e2\u05d4",
5
5
  "already_in_progress": "\u05d6\u05e8\u05d9\u05de\u05ea \u05d4\u05ea\u05e6\u05d5\u05e8\u05d4 \u05db\u05d1\u05e8 \u05de\u05ea\u05d1\u05e6\u05e2\u05ea",
6
- "cannot_connect": "\u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e0\u05db\u05e9\u05dc\u05d4"
6
+ "cannot_connect": "\u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e0\u05db\u05e9\u05dc\u05d4",
7
+ "reauth_successful": "\u05d4\u05d0\u05d9\u05de\u05d5\u05ea \u05de\u05d7\u05d3\u05e9 \u05d4\u05e6\u05dc\u05d9\u05d7",
8
+ "unknown": "\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05dc\u05ea\u05d9 \u05e6\u05e4\u05d5\u05d9\u05d4"
7
9
  },
8
10
  "error": {
9
11
  "cannot_connect": "\u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e0\u05db\u05e9\u05dc\u05d4",
@@ -13,6 +15,11 @@
13
15
  "discovery_confirm": {
14
16
  "description": "\u05d4\u05d0\u05dd \u05d1\u05e8\u05e6\u05d5\u05e0\u05da \u05dc\u05d4\u05d5\u05e1\u05d9\u05e3 \u05d0\u05ea \u05e9\u05e8\u05ea \u05d4-Music Assistant `{url}` \u05dc-Home Assistant?",
15
17
  "title": "\u05d4\u05ea\u05d2\u05dc\u05d4 \u05e9\u05e8\u05ea Music Assistant"
18
+ },
19
+ "user": {
20
+ "data": {
21
+ "url": "\u05db\u05ea\u05d5\u05d1\u05ea \u05d0\u05ea\u05e8"
22
+ }
16
23
  }
17
24
  }
18
25
  },
@@ -38,5 +38,10 @@
38
38
  "name": "\u05de\u05e6\u05d1"
39
39
  }
40
40
  }
41
+ },
42
+ "exceptions": {
43
+ "implementation_unavailable": {
44
+ "message": "\u05d9\u05d9\u05e9\u05d5\u05dd OAuth2 \u05d0\u05d9\u05e0\u05d5 \u05d6\u05de\u05d9\u05df, \u05d0\u05e0\u05e1\u05d4 \u05e9\u05d5\u05d1"
45
+ }
41
46
  }
42
47
  }
@@ -28,5 +28,10 @@
28
28
  "title": "\u05d4\u05d0\u05dd \u05d1\u05e8\u05e6\u05d5\u05e0\u05da \u05dc\u05d4\u05ea\u05d7\u05d9\u05dc \u05d1\u05d4\u05d2\u05d3\u05e8\u05d4?"
29
29
  }
30
30
  }
31
+ },
32
+ "exceptions": {
33
+ "oauth2_implementation_unavailable": {
34
+ "message": "\u05d9\u05d9\u05e9\u05d5\u05dd OAuth2 \u05d0\u05d9\u05e0\u05d5 \u05d6\u05de\u05d9\u05df, \u05d0\u05e0\u05e1\u05d4 \u05e9\u05d5\u05d1"
35
+ }
31
36
  }
32
37
  }
@@ -19,5 +19,5 @@
19
19
  "documentation": "https://www.home-assistant.io/integrations/nest",
20
20
  "iot_class": "cloud_push",
21
21
  "loggers": ["google_nest_sdm"],
22
- "requirements": ["google-nest-sdm==9.1.1"]
22
+ "requirements": ["google-nest-sdm==9.1.2"]
23
23
  }
@@ -120,6 +120,11 @@
120
120
  }
121
121
  }
122
122
  },
123
+ "exceptions": {
124
+ "oauth2_implementation_unavailable": {
125
+ "message": "\u05d9\u05d9\u05e9\u05d5\u05dd OAuth2 \u05d0\u05d9\u05e0\u05d5 \u05d6\u05de\u05d9\u05df, \u05d0\u05e0\u05e1\u05d4 \u05e9\u05d5\u05d1"
126
+ }
127
+ },
123
128
  "options": {
124
129
  "step": {
125
130
  "public_weather": {
@@ -5,7 +5,9 @@
5
5
  "reconfigure_successful": "\u05e7\u05d1\u05d9\u05e2\u05ea \u05d4\u05ea\u05e6\u05d5\u05e8\u05d4 \u05de\u05d7\u05d3\u05e9 \u05d4\u05e6\u05dc\u05d9\u05d7\u05d4"
6
6
  },
7
7
  "error": {
8
- "cannot_connect": "\u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e0\u05db\u05e9\u05dc\u05d4"
8
+ "cannot_connect": "\u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e0\u05db\u05e9\u05dc\u05d4",
9
+ "timeout_connect": "\u05e4\u05e1\u05e7 \u05d6\u05de\u05df \u05dc\u05d9\u05e6\u05d9\u05e8\u05ea \u05d7\u05d9\u05d1\u05d5\u05e8",
10
+ "unknown": "\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05dc\u05ea\u05d9 \u05e6\u05e4\u05d5\u05d9\u05d4"
9
11
  },
10
12
  "step": {
11
13
  "reconfigure": {
@@ -1 +1,12 @@
1
- {}
1
+ {
2
+ "config": {
3
+ "abort": {
4
+ "unknown": "\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05dc\u05ea\u05d9 \u05e6\u05e4\u05d5\u05d9\u05d4"
5
+ }
6
+ },
7
+ "options": {
8
+ "abort": {
9
+ "unknown": "\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05dc\u05ea\u05d9 \u05e6\u05e4\u05d5\u05d9\u05d4"
10
+ }
11
+ }
12
+ }
@@ -4,7 +4,7 @@
4
4
  "codeowners": ["@gjohansson-ST"],
5
5
  "config_flow": true,
6
6
  "documentation": "https://www.home-assistant.io/integrations/nordpool",
7
- "integration_type": "hub",
7
+ "integration_type": "service",
8
8
  "iot_class": "cloud_polling",
9
9
  "loggers": ["pynordpool"],
10
10
  "quality_scale": "platinum",
@@ -366,7 +366,7 @@
366
366
  "name": "Adresa URL ikony"
367
367
  },
368
368
  "markdown": {
369
- "description": "Povolte form\u00e1tov\u00e1n\u00ed Markdown pro t\u011blo zpr\u00e1vy. Podrobnosti o syntaxi naleznete v pr\u016fvodci Markdown: https://www.markdownguide.org/basic-syntax/",
369
+ "description": "Povolte form\u00e1tov\u00e1n\u00ed Markdown pro t\u011blo zpr\u00e1vy. Podrobnosti o syntaxi naleznete v pr\u016fvodci Markdown: {markdown_guide_url}",
370
370
  "name": "Form\u00e1tovat jako Markdown"
371
371
  },
372
372
  "message": {
@@ -366,7 +366,7 @@
366
366
  "name": "Icon-URL"
367
367
  },
368
368
  "markdown": {
369
- "description": "Markdown-Formatierung f\u00fcr den Nachrichtentext aktivieren. Weitere Informationen zur Syntax finden sich in der Markdown-Anleitung: https://www.markdownguide.org/basic-syntax/.",
369
+ "description": "Markdown-Formatierung f\u00fcr den Nachrichtentext aktivieren. Weitere Informationen zur Syntax finden sich in der Markdown-Anleitung: {markdown_guide_url}",
370
370
  "name": "Als Markdown formatieren"
371
371
  },
372
372
  "message": {
@@ -257,9 +257,6 @@
257
257
  "attach": {
258
258
  "description": "\u0395\u03c0\u03b9\u03c3\u03c5\u03bd\u03ac\u03c8\u03c4\u03b5 \u03b5\u03b9\u03ba\u03cc\u03bd\u03b5\u03c2 \u03ae \u03ac\u03bb\u03bb\u03b1 \u03b1\u03c1\u03c7\u03b5\u03af\u03b1 \u03bc\u03ad\u03c3\u03c9 URL."
259
259
  },
260
- "markdown": {
261
- "description": "\u0395\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03bc\u03bf\u03c1\u03c6\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u03c2 Markdown \u03b3\u03b9\u03b1 \u03c4\u03bf \u03c3\u03ce\u03bc\u03b1 \u03c4\u03bf\u03c5 \u03bc\u03b7\u03bd\u03cd\u03bc\u03b1\u03c4\u03bf\u03c2. \u0391\u03bd\u03b1\u03c4\u03c1\u03ad\u03be\u03c4\u03b5 \u03c3\u03c4\u03bf\u03bd \u03bf\u03b4\u03b7\u03b3\u03cc Markdown \u03b3\u03b9\u03b1 \u03bb\u03b5\u03c0\u03c4\u03bf\u03bc\u03ad\u03c1\u03b5\u03b9\u03b5\u03c2 \u03c3\u03c7\u03b5\u03c4\u03b9\u03ba\u03ac \u03bc\u03b5 \u03c4\u03b7 \u03c3\u03cd\u03bd\u03c4\u03b1\u03be\u03b7: https://www.markdownguide.org/basic-syntax/."
262
- },
263
260
  "message": {
264
261
  "description": "\u03a4\u03bf \u03bc\u03ae\u03bd\u03c5\u03bc\u03b1 \u03b5\u03b9\u03b4\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03ae\u03c2 \u03c3\u03b1\u03c2.",
265
262
  "name": "\u039c\u03ae\u03bd\u03c5\u03bc\u03b1"
@@ -366,7 +366,7 @@
366
366
  "name": "Icon URL"
367
367
  },
368
368
  "markdown": {
369
- "description": "Enable Markdown formatting for the message body. See the Markdown guide for syntax details: https://www.markdownguide.org/basic-syntax/.",
369
+ "description": "Enable Markdown formatting for the message body. See the Markdown guide for syntax details: {markdown_guide_url}.",
370
370
  "name": "Format as Markdown"
371
371
  },
372
372
  "message": {
@@ -366,7 +366,7 @@
366
366
  "name": "Icon URL"
367
367
  },
368
368
  "markdown": {
369
- "description": "Enable Markdown formatting for the message body. See the Markdown guide for syntax details: https://www.markdownguide.org/basic-syntax/.",
369
+ "description": "Enable Markdown formatting for the message body. See the Markdown guide for syntax details: {markdown_guide_url}.",
370
370
  "name": "Format as Markdown"
371
371
  },
372
372
  "message": {
@@ -366,7 +366,7 @@
366
366
  "name": "URL del icono"
367
367
  },
368
368
  "markdown": {
369
- "description": "Habilitar el formato Markdown para el cuerpo del mensaje. Consulta la gu\u00eda de Markdown para obtener m\u00e1s informaci\u00f3n sobre la sintaxis: https://www.markdownguide.org/basic-syntax/.",
369
+ "description": "Habilita el formato Markdown para el cuerpo del mensaje. Consulta la gu\u00eda de Markdown para obtener m\u00e1s informaci\u00f3n sobre la sintaxis: {markdown_guide_url}.",
370
370
  "name": "Formatear como Markdown"
371
371
  },
372
372
  "message": {
@@ -366,7 +366,7 @@
366
366
  "name": "Ikooni URL"
367
367
  },
368
368
  "markdown": {
369
- "description": "Luba s\u00f5numi sisu jaoks Markdowni vorming. S\u00fcntaksi \u00fcksikasjade saamiseks vaata Markdowni juhendit: https://www.markdownguide.org/basic-syntax/.",
369
+ "description": "Luba s\u00f5numi sisule Markdowni vormindamine. S\u00fcntaksi \u00fcksikasjade saamiseks vaata Markdowni juhendit: {markdown_guide_url}.",
370
370
  "name": "Vorminda Markdownina"
371
371
  },
372
372
  "message": {
@@ -366,7 +366,6 @@
366
366
  "name": "Piktogramos URL"
367
367
  },
368
368
  "markdown": {
369
- "description": "\u012egalinkite Markdown formatavim\u0105 prane\u0161imo tekstui. Sintaks\u0117s detali\u0173 ie\u0161kokite Markdown vadove: https://www.markdownguide.org/basic-syntax/.",
370
369
  "name": "Formatuoti kaip Markdown"
371
370
  },
372
371
  "message": {
@@ -366,7 +366,7 @@
366
366
  "name": "URL do \u00edcone"
367
367
  },
368
368
  "markdown": {
369
- "description": "Ativar a formata\u00e7\u00e3o Markdown para o corpo da mensagem. Consulte o guia Markdown para obter detalhes de sintaxe: https://www.markdownguide.org/basic-syntax/.",
369
+ "description": "Ativar a formata\u00e7\u00e3o Markdown para o corpo da mensagem. Consulte o guia Markdown para obter detalhes sobre a sintaxe: {markdown_guide_url}.",
370
370
  "name": "Formatar como Markdown"
371
371
  },
372
372
  "message": {
@@ -363,7 +363,6 @@
363
363
  "name": "URL-\u0430\u0434\u0440\u0435\u0441 \u0438\u043a\u043e\u043d\u043a\u0438"
364
364
  },
365
365
  "markdown": {
366
- "description": "\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 Markdown \u0434\u043b\u044f \u0442\u0435\u043b\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f. \u0421\u043c. \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e Markdown \u0434\u043b\u044f \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0435\u0439 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430: https://www.markdownguide.org/basic-syntax/.",
367
366
  "name": "\u0424\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u043a Markdown"
368
367
  },
369
368
  "message": {
@@ -366,7 +366,7 @@
366
366
  "name": "Ikona URL"
367
367
  },
368
368
  "markdown": {
369
- "description": "Povolenie form\u00e1tovania Markdown pre telo spr\u00e1vy. Podrobnosti o syntaxi n\u00e1jdete v pr\u00edru\u010dke Markdown: https://www.markdownguide.org/basic-syntax/.",
369
+ "description": "Povolenie form\u00e1tovania Markdown pre telo spr\u00e1vy. Podrobnosti o syntaxi n\u00e1jdete v pr\u00edru\u010dke Markdown: {markdown_guide_url}.",
370
370
  "name": "Form\u00e1tova\u0165 ako Markdown"
371
371
  },
372
372
  "message": {
@@ -353,7 +353,6 @@
353
353
  "name": "Ikon URL"
354
354
  },
355
355
  "markdown": {
356
- "description": "Aktivera Markera ner formatering f\u00f6r meddelandets br\u00f6dtext. Se Markera ner guiden f\u00f6r syntaxinformation: https://www.markdownguide.org/basic-syntax/.",
357
356
  "name": "Formatera som Markera ner"
358
357
  },
359
358
  "message": {
@@ -100,7 +100,6 @@
100
100
  "name": "Simge URL'si"
101
101
  },
102
102
  "markdown": {
103
- "description": "\u0130leti g\u00f6vdesi i\u00e7in Markdown bi\u00e7imlendirmesini etkinle\u015ftirin. S\u00f6zdizimi ayr\u0131nt\u0131lar\u0131 i\u00e7in Markdown k\u0131lavuzuna bak\u0131n: https://www.markdownguide.org/basic-syntax/.",
104
103
  "name": "Markdown olarak bi\u00e7imlendir"
105
104
  },
106
105
  "message": {
@@ -366,7 +366,6 @@
366
366
  "name": "\u56fe\u6807\u7f51\u5740"
367
367
  },
368
368
  "markdown": {
369
- "description": "\u4e3a\u90ae\u4ef6\u6b63\u6587\u542f\u7528 Markdown \u683c\u5f0f\u3002\u6709\u5173\u8bed\u6cd5\u8be6\u7ec6\u4fe1\u606f\uff0c\u8bf7\u53c2\u9605 Markdown \u6307\u5357\uff1ahttps://www.markdownguide.org/basic-syntax/ \u3002",
370
369
  "name": "\u683c\u5f0f\u4e3a Markdown"
371
370
  },
372
371
  "message": {
@@ -366,7 +366,7 @@
366
366
  "name": "\u5716\u793a\u7db2\u5740"
367
367
  },
368
368
  "markdown": {
369
- "description": "\u555f\u7528\u8a0a\u606f\u5167\u5bb9\u7684 Markdown \u683c\u5f0f\u3002\u8a73\u7d30\u8a9e\u6cd5\u8acb\u53c3\u95b1 Markdown \u6307\u5357\uff1ahttps://www.markdownguide.org/basic-syntax/",
369
+ "description": "\u555f\u7528\u8a0a\u606f\u5167\u5bb9\u7684 Markdown \u683c\u5f0f\u3002\u8a73\u7d30\u8a9e\u6cd5\u8acb\u53c3\u95b1 Markdown \u6307\u5357\uff1a{markdown_guide_url}\u3002",
370
370
  "name": "\u683c\u5f0f\u70ba Markdown"
371
371
  },
372
372
  "message": {
@@ -129,4 +129,5 @@ def async_setup_services(hass: HomeAssistant) -> None:
129
129
  async_handle_upload,
130
130
  schema=UPLOAD_SERVICE_SCHEMA,
131
131
  supports_response=SupportsResponse.OPTIONAL,
132
+ description_placeholders={"example_image_path": "/config/www/image.jpg"},
132
133
  )