esphome 2025.5.2__py3-none-any.whl → 2025.6.0b2__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.
Files changed (746) hide show
  1. esphome/__main__.py +20 -14
  2. esphome/components/a4988/a4988.cpp +1 -1
  3. esphome/components/absolute_humidity/absolute_humidity.cpp +6 -4
  4. esphome/components/ac_dimmer/ac_dimmer.cpp +4 -2
  5. esphome/components/adc/adc_sensor_esp32.cpp +5 -3
  6. esphome/components/adc/adc_sensor_esp8266.cpp +5 -3
  7. esphome/components/adc/adc_sensor_libretiny.cpp +5 -3
  8. esphome/components/adc/adc_sensor_rp2040.cpp +5 -3
  9. esphome/components/adc128s102/adc128s102.cpp +1 -1
  10. esphome/components/ade7880/ade7880.cpp +28 -17
  11. esphome/components/ade7953_base/ade7953_base.cpp +12 -9
  12. esphome/components/ade7953_i2c/ade7953_i2c.cpp +1 -1
  13. esphome/components/ade7953_spi/ade7953_spi.cpp +1 -1
  14. esphome/components/ads1115/ads1115.cpp +3 -5
  15. esphome/components/ads1118/ads1118.cpp +2 -1
  16. esphome/components/ags10/ags10.cpp +3 -2
  17. esphome/components/aht10/aht10.cpp +27 -29
  18. esphome/components/aic3204/aic3204.cpp +2 -2
  19. esphome/components/alarm_control_panel/__init__.py +1 -0
  20. esphome/components/am2315c/am2315c.cpp +2 -2
  21. esphome/components/am2320/am2320.cpp +2 -2
  22. esphome/components/am43/am43_base.h +1 -1
  23. esphome/components/am43/cover/am43_cover.cpp +4 -2
  24. esphome/components/analog_threshold/analog_threshold_binary_sensor.cpp +4 -2
  25. esphome/components/apds9306/apds9306.cpp +8 -5
  26. esphome/components/apds9960/apds9960.cpp +2 -2
  27. esphome/components/api/__init__.py +5 -0
  28. esphome/components/api/api_connection.cpp +753 -379
  29. esphome/components/api/api_connection.h +341 -283
  30. esphome/components/api/api_frame_helper.cpp +349 -344
  31. esphome/components/api/api_frame_helper.h +121 -94
  32. esphome/components/api/api_pb2.cpp +3 -0
  33. esphome/components/api/api_pb2.h +702 -227
  34. esphome/components/api/api_pb2_service.cpp +12 -688
  35. esphome/components/api/api_pb2_service.h +53 -207
  36. esphome/components/api/api_server.cpp +71 -29
  37. esphome/components/api/api_server.h +9 -0
  38. esphome/components/api/client.py +5 -4
  39. esphome/components/api/homeassistant_service.h +1 -1
  40. esphome/components/api/list_entities.cpp +1 -1
  41. esphome/components/api/proto.cpp +1 -0
  42. esphome/components/api/proto.h +5 -4
  43. esphome/components/api/subscribe_state.cpp +8 -16
  44. esphome/components/as3935/as3935.cpp +3 -3
  45. esphome/components/as5600/as5600.cpp +9 -7
  46. esphome/components/as7341/as7341.cpp +7 -5
  47. esphome/components/at581x/at581x.cpp +13 -10
  48. esphome/components/atm90e26/atm90e26.cpp +2 -2
  49. esphome/components/atm90e32/atm90e32.cpp +3 -3
  50. esphome/components/axs15231/touchscreen/axs15231_touchscreen.cpp +5 -3
  51. esphome/components/bang_bang/bang_bang_climate.cpp +8 -5
  52. esphome/components/bedjet/bedjet_hub.cpp +6 -4
  53. esphome/components/beken_spi_led_strip/led_strip.cpp +11 -7
  54. esphome/components/bh1750/bh1750.cpp +2 -2
  55. esphome/components/binary_sensor/__init__.py +1 -0
  56. esphome/components/binary_sensor/automation.cpp +1 -2
  57. esphome/components/bl0906/bl0906.cpp +1 -1
  58. esphome/components/bl0942/bl0942.cpp +11 -8
  59. esphome/components/bl0942/sensor.py +1 -1
  60. esphome/components/ble_client/__init__.py +5 -1
  61. esphome/components/ble_client/output/ble_binary_output.cpp +6 -3
  62. esphome/components/ble_client/sensor/ble_sensor.cpp +9 -6
  63. esphome/components/ble_client/text_sensor/ble_text_sensor.cpp +8 -5
  64. esphome/components/bluetooth_proxy/__init__.py +5 -1
  65. esphome/components/bluetooth_proxy/bluetooth_connection.cpp +5 -5
  66. esphome/components/bluetooth_proxy/bluetooth_proxy.cpp +18 -16
  67. esphome/components/bluetooth_proxy/bluetooth_proxy.h +1 -1
  68. esphome/components/bme280_base/bme280_base.cpp +5 -6
  69. esphome/components/bme680/bme680.cpp +3 -3
  70. esphome/components/bme680/sensor.py +2 -2
  71. esphome/components/bme680_bsec/bme680_bsec.cpp +11 -7
  72. esphome/components/bme680_bsec/sensor.py +7 -3
  73. esphome/components/bme68x_bsec2/__init__.py +6 -5
  74. esphome/components/bme68x_bsec2/bme68x_bsec2.cpp +17 -13
  75. esphome/components/bme68x_bsec2/sensor.py +4 -4
  76. esphome/components/bme68x_bsec2_i2c/bme68x_bsec2_i2c.cpp +1 -0
  77. esphome/components/bmi160/bmi160.cpp +11 -11
  78. esphome/components/bmp085/bmp085.cpp +2 -2
  79. esphome/components/bmp280_base/bmp280_base.cpp +3 -3
  80. esphome/components/bmp3xx_base/bmp3xx_base.cpp +13 -13
  81. esphome/components/bmp581/bmp581.cpp +33 -27
  82. esphome/components/bp1658cj/bp1658cj.cpp +5 -3
  83. esphome/components/bp5758d/bp5758d.cpp +1 -1
  84. esphome/components/button/__init__.py +1 -0
  85. esphome/components/canbus/canbus.cpp +1 -1
  86. esphome/components/cap1188/cap1188.cpp +6 -4
  87. esphome/components/captive_portal/captive_portal.cpp +1 -1
  88. esphome/components/ccs811/ccs811.cpp +3 -2
  89. esphome/components/cd74hc4067/cd74hc4067.cpp +1 -1
  90. esphome/components/ch422g/ch422g.cpp +2 -2
  91. esphome/components/chsc6x/chsc6x_touchscreen.cpp +6 -4
  92. esphome/components/climate/__init__.py +1 -0
  93. esphome/components/climate/climate.cpp +12 -7
  94. esphome/components/climate/climate.h +1 -1
  95. esphome/components/climate_ir/climate_ir.cpp +7 -4
  96. esphome/components/cm1106/__init__.py +1 -0
  97. esphome/components/cm1106/cm1106.cpp +112 -0
  98. esphome/components/cm1106/cm1106.h +40 -0
  99. esphome/components/cm1106/sensor.py +72 -0
  100. esphome/components/const/__init__.py +1 -0
  101. esphome/components/cover/__init__.py +1 -0
  102. esphome/components/cs5460a/cs5460a.cpp +16 -11
  103. esphome/components/cse7761/cse7761.cpp +2 -2
  104. esphome/components/cse7766/cse7766.cpp +0 -5
  105. esphome/components/cse7766/cse7766.h +5 -1
  106. esphome/components/cst226/touchscreen/cst226_touchscreen.cpp +1 -1
  107. esphome/components/cst816/touchscreen/cst816_touchscreen.cpp +6 -3
  108. esphome/components/current_based/current_based_cover.cpp +4 -2
  109. esphome/components/dac7678/dac7678_output.cpp +4 -4
  110. esphome/components/dallas_temp/dallas_temp.cpp +2 -3
  111. esphome/components/daly_bms/daly_bms.cpp +2 -1
  112. esphome/components/dashboard_import/__init__.py +1 -2
  113. esphome/components/datetime/__init__.py +3 -1
  114. esphome/components/datetime/date_entity.cpp +5 -5
  115. esphome/components/datetime/datetime_base.h +0 -5
  116. esphome/components/datetime/datetime_entity.cpp +8 -8
  117. esphome/components/datetime/time_entity.cpp +4 -4
  118. esphome/components/debug/debug_component.cpp +1 -1
  119. esphome/components/debug/debug_component.h +1 -1
  120. esphome/components/debug/debug_esp32.cpp +4 -2
  121. esphome/components/deep_sleep/deep_sleep_component.cpp +11 -5
  122. esphome/components/deep_sleep/deep_sleep_esp32.cpp +7 -5
  123. esphome/components/demo/__init__.py +206 -0
  124. esphome/components/demo/demo_alarm_control_panel.h +65 -0
  125. esphome/components/demo/demo_button.h +15 -0
  126. esphome/components/demo/demo_date.h +34 -0
  127. esphome/components/demo/demo_datetime.h +40 -0
  128. esphome/components/demo/demo_lock.h +17 -0
  129. esphome/components/demo/demo_select.h +15 -0
  130. esphome/components/demo/demo_text.h +18 -0
  131. esphome/components/demo/demo_time.h +34 -0
  132. esphome/components/demo/demo_valve.h +54 -0
  133. esphome/components/dfrobot_sen0395/commands.cpp +3 -3
  134. esphome/components/dht/dht.cpp +29 -50
  135. esphome/components/dht12/dht12.cpp +2 -2
  136. esphome/components/display/display.h +5 -3
  137. esphome/components/dps310/dps310.cpp +7 -5
  138. esphome/components/ds1307/ds1307.cpp +2 -2
  139. esphome/components/dsmr/dsmr.cpp +5 -3
  140. esphome/components/duty_cycle/duty_cycle_sensor.cpp +2 -2
  141. esphome/components/duty_time/duty_time_sensor.cpp +5 -3
  142. esphome/components/ee895/ee895.cpp +3 -3
  143. esphome/components/ektf2232/touchscreen/ektf2232.cpp +1 -1
  144. esphome/components/emc2101/emc2101.cpp +11 -9
  145. esphome/components/ens160_base/ens160_base.cpp +2 -2
  146. esphome/components/ens210/ens210.cpp +2 -2
  147. esphome/components/es7210/es7210.cpp +6 -4
  148. esphome/components/es7243e/es7243e.cpp +1 -1
  149. esphome/components/es8156/es8156.cpp +1 -1
  150. esphome/components/es8311/es8311.cpp +8 -6
  151. esphome/components/es8388/__init__.py +0 -0
  152. esphome/components/es8388/audio_dac.py +26 -0
  153. esphome/components/es8388/es8388.cpp +289 -0
  154. esphome/components/es8388/es8388.h +81 -0
  155. esphome/components/es8388/es8388_const.h +83 -0
  156. esphome/components/es8388/select/__init__.py +47 -0
  157. esphome/components/es8388/select/adc_input_mic_select.cpp +12 -0
  158. esphome/components/es8388/select/adc_input_mic_select.h +15 -0
  159. esphome/components/es8388/select/dac_output_select.cpp +12 -0
  160. esphome/components/es8388/select/dac_output_select.h +15 -0
  161. esphome/components/esp32/__init__.py +118 -23
  162. esphome/components/esp32/boards.py +208 -125
  163. esphome/components/esp32/const.py +6 -0
  164. esphome/components/esp32/gpio.py +14 -1
  165. esphome/components/esp32/gpio_esp32_c5.py +45 -0
  166. esphome/components/esp32/gpio_esp32_p4.py +43 -0
  167. esphome/components/esp32/preferences.cpp +7 -7
  168. esphome/components/esp32_ble/__init__.py +115 -0
  169. esphome/components/esp32_ble/ble.cpp +101 -54
  170. esphome/components/esp32_ble/ble.h +24 -5
  171. esphome/components/esp32_ble/ble_event.h +172 -32
  172. esphome/components/esp32_ble/ble_scan_result.h +24 -0
  173. esphome/components/esp32_ble/ble_uuid.h +1 -1
  174. esphome/components/esp32_ble/queue.h +53 -27
  175. esphome/components/esp32_ble_client/ble_client_base.cpp +4 -2
  176. esphome/components/esp32_ble_server/__init__.py +4 -1
  177. esphome/components/esp32_ble_server/ble_characteristic.cpp +1 -0
  178. esphome/components/esp32_ble_server/ble_server.h +0 -1
  179. esphome/components/esp32_ble_tracker/__init__.py +7 -2
  180. esphome/components/esp32_ble_tracker/esp32_ble_tracker.cpp +107 -75
  181. esphome/components/esp32_ble_tracker/esp32_ble_tracker.h +16 -16
  182. esphome/components/esp32_camera/esp32_camera.cpp +35 -27
  183. esphome/components/esp32_camera_web_server/camera_web_server.cpp +4 -2
  184. esphome/components/esp32_dac/esp32_dac.cpp +2 -2
  185. esphome/components/esp32_improv/__init__.py +5 -1
  186. esphome/components/esp32_improv/esp32_improv_component.cpp +2 -2
  187. esphome/components/esp32_rmt_led_strip/led_strip.cpp +11 -7
  188. esphome/components/esp32_rmt_led_strip/light.py +5 -1
  189. esphome/components/esp32_touch/esp32_touch.cpp +12 -8
  190. esphome/components/esp8266/preferences.cpp +6 -6
  191. esphome/components/esp8266_pwm/esp8266_pwm.cpp +3 -3
  192. esphome/components/esp_ldo/__init__.py +91 -0
  193. esphome/components/esp_ldo/esp_ldo.cpp +43 -0
  194. esphome/components/esp_ldo/esp_ldo.h +43 -0
  195. esphome/components/esphome/ota/ota_esphome.cpp +15 -8
  196. esphome/components/ethernet/ethernet_component.cpp +38 -26
  197. esphome/components/ethernet/ethernet_component.h +1 -1
  198. esphome/components/event/__init__.py +1 -0
  199. esphome/components/exposure_notifications/exposure_notifications.cpp +1 -1
  200. esphome/components/ezo/ezo.cpp +1 -1
  201. esphome/components/ezo_pmp/ezo_pmp.cpp +1 -1
  202. esphome/components/factory_reset/button/factory_reset_button.cpp +1 -1
  203. esphome/components/factory_reset/switch/factory_reset_switch.cpp +1 -1
  204. esphome/components/fan/__init__.py +1 -0
  205. esphome/components/fan/fan.cpp +30 -19
  206. esphome/components/fastled_base/fastled_light.cpp +7 -5
  207. esphome/components/fingerprint_grow/fingerprint_grow.cpp +8 -6
  208. esphome/components/fs3000/fs3000.cpp +1 -1
  209. esphome/components/ft5x06/touchscreen/ft5x06_touchscreen.cpp +7 -4
  210. esphome/components/ft63x6/ft63x6.cpp +5 -3
  211. esphome/components/gcja5/gcja5.cpp +0 -12
  212. esphome/components/gcja5/gcja5.h +8 -3
  213. esphome/components/gdk101/gdk101.cpp +2 -2
  214. esphome/components/globals/globals_component.h +13 -10
  215. esphome/components/gp2y1010au0f/gp2y1010au0f.cpp +4 -2
  216. esphome/components/gp8403/gp8403.cpp +4 -2
  217. esphome/components/gp8403/output/gp8403_output.cpp +4 -2
  218. esphome/components/gpio/one_wire/gpio_one_wire.cpp +2 -2
  219. esphome/components/gpio/output/gpio_binary_output.cpp +1 -1
  220. esphome/components/gpio/switch/gpio_switch.cpp +1 -1
  221. esphome/components/graphical_display_menu/graphical_display_menu.cpp +12 -8
  222. esphome/components/grove_gas_mc_v2/grove_gas_mc_v2.cpp +5 -6
  223. esphome/components/grove_tb6612fng/grove_tb6612fng.cpp +1 -1
  224. esphome/components/grove_tb6612fng/grove_tb6612fng.h +1 -1
  225. esphome/components/growatt_solar/growatt_solar.cpp +6 -3
  226. esphome/components/gt911/touchscreen/gt911_touchscreen.cpp +1 -1
  227. esphome/components/haier/haier_base.cpp +2 -2
  228. esphome/components/haier/hon_climate.cpp +13 -6
  229. esphome/components/havells_solar/havells_solar.cpp +5 -2
  230. esphome/components/hbridge/switch/hbridge_switch.cpp +1 -1
  231. esphome/components/hdc1080/hdc1080.cpp +2 -2
  232. esphome/components/he60r/he60r.cpp +4 -2
  233. esphome/components/hlw8012/hlw8012.cpp +6 -4
  234. esphome/components/hm3301/hm3301.cpp +2 -2
  235. esphome/components/hmc5883l/hmc5883l.cpp +2 -2
  236. esphome/components/homeassistant/time/homeassistant_time.cpp +4 -2
  237. esphome/components/honeywell_hih_i2c/honeywell_hih.cpp +4 -4
  238. esphome/components/honeywellabp/honeywellabp.cpp +4 -2
  239. esphome/components/honeywellabp2_i2c/honeywellabp2.cpp +8 -6
  240. esphome/components/hte501/hte501.cpp +3 -2
  241. esphome/components/http_request/__init__.py +2 -2
  242. esphome/components/http_request/http_request.cpp +7 -5
  243. esphome/components/http_request/http_request_idf.cpp +4 -2
  244. esphome/components/http_request/ota/ota_http_request.cpp +1 -1
  245. esphome/components/htu21d/htu21d.cpp +2 -2
  246. esphome/components/htu31d/htu31d.cpp +2 -2
  247. esphome/components/hx711/hx711.cpp +2 -2
  248. esphome/components/hydreon_rgxx/hydreon_rgxx.cpp +5 -3
  249. esphome/components/hyt271/hyt271.cpp +2 -2
  250. esphome/components/i2c/i2c_bus_arduino.cpp +14 -11
  251. esphome/components/i2c/i2c_bus_esp_idf.cpp +13 -11
  252. esphome/components/i2s_audio/__init__.py +2 -0
  253. esphome/components/i2s_audio/i2s_audio.cpp +3 -4
  254. esphome/components/i2s_audio/i2s_audio.h +1 -1
  255. esphome/components/i2s_audio/media_player/__init__.py +1 -1
  256. esphome/components/i2s_audio/media_player/i2s_audio_media_player.cpp +5 -3
  257. esphome/components/i2s_audio/microphone/i2s_audio_microphone.cpp +13 -10
  258. esphome/components/i2s_audio/speaker/i2s_audio_speaker.cpp +1 -1
  259. esphome/components/iaqcore/iaqcore.cpp +3 -3
  260. esphome/components/ili9xxx/ili9xxx_display.cpp +12 -7
  261. esphome/components/ili9xxx/ili9xxx_display.h +1 -1
  262. esphome/components/image/image.cpp +1 -0
  263. esphome/components/ina219/ina219.cpp +2 -2
  264. esphome/components/ina226/ina226.cpp +8 -5
  265. esphome/components/ina260/ina260.cpp +1 -1
  266. esphome/components/ina2xx_base/ina2xx_base.cpp +13 -9
  267. esphome/components/ina3221/ina3221.cpp +2 -2
  268. esphome/components/inkplate6/display.py +12 -2
  269. esphome/components/inkplate6/inkplate.cpp +13 -9
  270. esphome/components/inkplate6/inkplate.h +7 -6
  271. esphome/components/integration/integration_sensor.cpp +1 -1
  272. esphome/components/internal_temperature/internal_temperature.cpp +4 -4
  273. esphome/components/json/json_util.cpp +4 -5
  274. esphome/components/kamstrup_kmp/kamstrup_kmp.cpp +1 -1
  275. esphome/components/key_collector/key_collector.cpp +4 -2
  276. esphome/components/kmeteriso/kmeteriso.cpp +4 -4
  277. esphome/components/kuntze/kuntze.cpp +4 -2
  278. esphome/components/lc709203f/__init__.py +1 -0
  279. esphome/components/lc709203f/lc709203f.cpp +299 -0
  280. esphome/components/lc709203f/lc709203f.h +55 -0
  281. esphome/components/lc709203f/sensor.py +93 -0
  282. esphome/components/lcd_base/lcd_display.cpp +2 -2
  283. esphome/components/lcd_gpio/gpio_lcd_display.cpp +5 -3
  284. esphome/components/lcd_menu/lcd_menu.cpp +6 -4
  285. esphome/components/lcd_pcf8574/pcf8574_display.cpp +6 -4
  286. esphome/components/ld2410/ld2410.cpp +6 -7
  287. esphome/components/ld2420/ld2420.cpp +9 -7
  288. esphome/components/ld2450/ld2450.cpp +6 -4
  289. esphome/components/ld2450/sensor.py +2 -2
  290. esphome/components/ledc/ledc_output.cpp +32 -28
  291. esphome/components/libretiny/const.py +1 -1
  292. esphome/components/libretiny/preferences.cpp +6 -7
  293. esphome/components/light/__init__.py +2 -1
  294. esphome/components/light/esp_hsv_color.h +1 -1
  295. esphome/components/light/light_state.cpp +9 -5
  296. esphome/components/light/light_transformer.h +1 -1
  297. esphome/components/lightwaverf/LwTx.cpp +1 -1
  298. esphome/components/lightwaverf/lightwaverf.cpp +1 -1
  299. esphome/components/lilygo_t5_47/touchscreen/lilygo_t5_47_touchscreen.cpp +1 -1
  300. esphome/components/lock/__init__.py +1 -0
  301. esphome/components/lock/lock.h +1 -1
  302. esphome/components/logger/__init__.py +6 -0
  303. esphome/components/logger/logger.cpp +11 -20
  304. esphome/components/logger/logger.h +1 -2
  305. esphome/components/logger/logger_esp32.cpp +5 -5
  306. esphome/components/ltr390/ltr390.cpp +8 -5
  307. esphome/components/ltr501/ltr501.cpp +19 -14
  308. esphome/components/ltr_als_ps/ltr_als_ps.cpp +20 -13
  309. esphome/components/lvgl/__init__.py +2 -2
  310. esphome/components/lvgl/automation.py +5 -4
  311. esphome/components/lvgl/defines.py +0 -2
  312. esphome/components/lvgl/lv_validation.py +1 -3
  313. esphome/components/lvgl/lvcode.py +7 -8
  314. esphome/components/lvgl/lvgl_esphome.cpp +26 -10
  315. esphome/components/lvgl/schemas.py +22 -23
  316. esphome/components/lvgl/trigger.py +8 -3
  317. esphome/components/lvgl/widgets/__init__.py +2 -2
  318. esphome/components/lvgl/widgets/canvas.py +9 -3
  319. esphome/components/lvgl/widgets/line.py +2 -1
  320. esphome/components/lvgl/widgets/tabview.py +7 -0
  321. esphome/components/m5stack_8angle/m5stack_8angle.cpp +3 -3
  322. esphome/components/matrix_keypad/matrix_keypad.cpp +2 -2
  323. esphome/components/max17043/max17043.cpp +2 -2
  324. esphome/components/max31855/max31855.cpp +2 -1
  325. esphome/components/max31856/max31856.cpp +9 -11
  326. esphome/components/max31865/max31865.cpp +6 -4
  327. esphome/components/max44009/max44009.cpp +2 -2
  328. esphome/components/max6675/max6675.cpp +1 -1
  329. esphome/components/max6956/max6956.cpp +5 -3
  330. esphome/components/max7219/max7219.cpp +8 -6
  331. esphome/components/max7219digit/automation.h +52 -0
  332. esphome/components/max7219digit/display.py +93 -1
  333. esphome/components/max7219digit/max7219digit.cpp +16 -13
  334. esphome/components/max9611/max9611.cpp +9 -6
  335. esphome/components/mcp23008/mcp23008.cpp +1 -1
  336. esphome/components/mcp23016/mcp23016.cpp +1 -1
  337. esphome/components/mcp23017/mcp23017.cpp +1 -1
  338. esphome/components/mcp23s08/mcp23s08.cpp +1 -1
  339. esphome/components/mcp23s17/mcp23s17.cpp +1 -1
  340. esphome/components/mcp3008/mcp3008.cpp +1 -1
  341. esphome/components/mcp3008/sensor/mcp3008_sensor.cpp +5 -3
  342. esphome/components/mcp3204/mcp3204.cpp +1 -1
  343. esphome/components/mcp4461/mcp4461.cpp +2 -2
  344. esphome/components/mcp4725/mcp4725.cpp +2 -2
  345. esphome/components/mcp4728/mcp4728.cpp +2 -2
  346. esphome/components/mcp9600/mcp9600.cpp +1 -1
  347. esphome/components/mcp9808/mcp9808.cpp +4 -4
  348. esphome/components/mdns/mdns_component.cpp +8 -2
  349. esphome/components/mdns/mdns_component.h +3 -1
  350. esphome/components/mdns/mdns_esp32.cpp +2 -2
  351. esphome/components/media_player/__init__.py +1 -0
  352. esphome/components/micro_wake_word/micro_wake_word.cpp +1 -1
  353. esphome/components/micro_wake_word/streaming_model.cpp +10 -6
  354. esphome/components/micronova/micronova.h +2 -2
  355. esphome/components/mics_4514/mics_4514.cpp +2 -2
  356. esphome/components/midea/air_conditioner.cpp +7 -5
  357. esphome/components/midea_ir/midea_ir.cpp +1 -1
  358. esphome/components/mipi_spi/mipi_spi.cpp +24 -15
  359. esphome/components/mixer/speaker/mixer_speaker.cpp +8 -4
  360. esphome/components/mlx90393/sensor_mlx90393.cpp +2 -2
  361. esphome/components/mlx90614/mlx90614.cpp +4 -3
  362. esphome/components/mmc5603/mmc5603.cpp +2 -2
  363. esphome/components/mmc5983/mmc5983.cpp +1 -1
  364. esphome/components/modbus/modbus.cpp +7 -5
  365. esphome/components/modbus_controller/modbus_controller.cpp +6 -4
  366. esphome/components/modbus_controller/output/modbus_output.cpp +10 -6
  367. esphome/components/modbus_controller/switch/__init__.py +6 -2
  368. esphome/components/modbus_controller/switch/modbus_switch.cpp +4 -0
  369. esphome/components/modbus_controller/switch/modbus_switch.h +3 -0
  370. esphome/components/mpl3115a2/mpl3115a2.cpp +3 -2
  371. esphome/components/mpr121/mpr121.cpp +2 -2
  372. esphome/components/mpu6050/mpu6050.cpp +6 -6
  373. esphome/components/mpu6886/mpu6886.cpp +6 -6
  374. esphome/components/mqtt/mqtt_alarm_control_panel.cpp +7 -3
  375. esphome/components/mqtt/mqtt_backend_esp32.cpp +1 -1
  376. esphome/components/mqtt/mqtt_client.cpp +31 -24
  377. esphome/components/mqtt/mqtt_component.cpp +3 -3
  378. esphome/components/mqtt/mqtt_cover.cpp +8 -4
  379. esphome/components/mqtt/mqtt_fan.cpp +12 -6
  380. esphome/components/mqtt/mqtt_valve.cpp +4 -2
  381. esphome/components/ms5611/ms5611.cpp +2 -2
  382. esphome/components/ms8607/ms8607.cpp +2 -2
  383. esphome/components/msa3xx/msa3xx.cpp +16 -12
  384. esphome/components/my9231/my9231.cpp +7 -5
  385. esphome/components/nau7802/nau7802.cpp +6 -4
  386. esphome/components/neopixelbus/neopixelbus_light.h +2 -2
  387. esphome/components/network/ip_address.h +1 -1
  388. esphome/components/network/util.cpp +13 -0
  389. esphome/components/nextion/base_component.py +2 -0
  390. esphome/components/nextion/binary_sensor/nextion_binarysensor.cpp +3 -4
  391. esphome/components/nextion/display.py +34 -22
  392. esphome/components/nextion/nextion.cpp +182 -143
  393. esphome/components/nextion/nextion.h +36 -0
  394. esphome/components/nextion/nextion_commands.cpp +3 -3
  395. esphome/components/nextion/nextion_upload_arduino.cpp +69 -69
  396. esphome/components/nextion/nextion_upload_idf.cpp +79 -80
  397. esphome/components/nextion/sensor/nextion_sensor.cpp +5 -5
  398. esphome/components/nextion/switch/nextion_switch.cpp +2 -2
  399. esphome/components/nextion/text_sensor/nextion_textsensor.cpp +3 -3
  400. esphome/components/nfc/nci_message.h +1 -1
  401. esphome/components/nfc/ndef_record.h +1 -1
  402. esphome/components/nfc/ndef_record_text.h +1 -1
  403. esphome/components/nfc/ndef_record_uri.h +1 -1
  404. esphome/components/nfc/nfc.h +1 -1
  405. esphome/components/nfc/nfc_tag.h +1 -1
  406. esphome/components/noblex/noblex.cpp +1 -1
  407. esphome/components/npi19/npi19.cpp +5 -7
  408. esphome/components/number/__init__.py +11 -0
  409. esphome/components/number/number.cpp +1 -1
  410. esphome/components/number/number.h +0 -4
  411. esphome/components/online_image/__init__.py +13 -1
  412. esphome/components/online_image/online_image.cpp +26 -4
  413. esphome/components/online_image/online_image.h +21 -4
  414. esphome/components/opentherm/generate.py +3 -3
  415. esphome/components/opentherm/hub.cpp +11 -7
  416. esphome/components/opentherm/number/number.cpp +5 -3
  417. esphome/components/opentherm/opentherm.h +1 -1
  418. esphome/components/opentherm/schema.py +13 -13
  419. esphome/components/opentherm/validate.py +1 -1
  420. esphome/components/openthread/__init__.py +146 -0
  421. esphome/components/openthread/const.py +10 -0
  422. esphome/components/openthread/openthread.cpp +206 -0
  423. esphome/components/openthread/openthread.h +68 -0
  424. esphome/components/openthread/openthread_esp.cpp +164 -0
  425. esphome/components/openthread/tlv.py +58 -0
  426. esphome/components/openthread_info/__init__.py +0 -0
  427. esphome/components/openthread_info/openthread_info_text_sensor.cpp +24 -0
  428. esphome/components/openthread_info/openthread_info_text_sensor.h +218 -0
  429. esphome/components/openthread_info/text_sensor.py +105 -0
  430. esphome/components/output/float_output.cpp +1 -1
  431. esphome/components/output/switch/output_switch.cpp +1 -1
  432. esphome/components/packet_transport/packet_transport.cpp +6 -4
  433. esphome/components/pca6416a/pca6416a.cpp +2 -2
  434. esphome/components/pca9554/pca9554.cpp +6 -4
  435. esphome/components/pca9685/pca9685_output.cpp +12 -8
  436. esphome/components/pcd8544/pcd_8544.cpp +1 -1
  437. esphome/components/pcf85063/pcf85063.cpp +2 -2
  438. esphome/components/pcf8563/pcf8563.cpp +2 -2
  439. esphome/components/pcf8574/pcf8574.cpp +2 -2
  440. esphome/components/pid/pid_climate.cpp +8 -5
  441. esphome/components/pid/pid_climate.h +1 -1
  442. esphome/components/pid/sensor/pid_climate_sensor.cpp +1 -1
  443. esphome/components/pipsolar/output/pipsolar_output.cpp +1 -1
  444. esphome/components/pipsolar/pipsolar.cpp +3 -3
  445. esphome/components/pm1006/pm1006.cpp +3 -7
  446. esphome/components/pm1006/pm1006.h +4 -1
  447. esphome/components/pm2005/pm2005.cpp +12 -13
  448. esphome/components/pm2005/sensor.py +1 -1
  449. esphome/components/pmsa003i/pmsa003i.cpp +2 -2
  450. esphome/components/pmsx003/pmsx003.cpp +0 -4
  451. esphome/components/pmsx003/pmsx003.h +5 -2
  452. esphome/components/pmwcs3/pmwcs3.cpp +9 -13
  453. esphome/components/pmwcs3/pmwcs3.h +0 -1
  454. esphome/components/pn532/pn532.cpp +7 -7
  455. esphome/components/pn532/pn532.h +1 -1
  456. esphome/components/pn532_spi/pn532_spi.cpp +1 -1
  457. esphome/components/pn7150/pn7150.cpp +4 -4
  458. esphome/components/pn7160/pn7160.cpp +4 -4
  459. esphome/components/power_supply/power_supply.cpp +6 -4
  460. esphome/components/power_supply/power_supply.h +1 -1
  461. esphome/components/prometheus/__init__.py +0 -1
  462. esphome/components/psram/__init__.py +59 -35
  463. esphome/components/pulse_counter/pulse_counter_sensor.cpp +7 -4
  464. esphome/components/pvvx_mithermometer/display/pvvx_display.cpp +8 -5
  465. esphome/components/pylontech/pylontech.cpp +2 -2
  466. esphome/components/pylontech/sensor/pylontech_sensor.cpp +4 -2
  467. esphome/components/pylontech/text_sensor/pylontech_text_sensor.cpp +4 -2
  468. esphome/components/pzemac/pzemac.cpp +4 -2
  469. esphome/components/pzemdc/pzemdc.cpp +4 -2
  470. esphome/components/qmc5883l/qmc5883l.cpp +2 -2
  471. esphome/components/qmp6988/qmp6988.cpp +2 -2
  472. esphome/components/qmp6988/qmp6988.h +1 -1
  473. esphome/components/qr_code/qr_code.cpp +5 -3
  474. esphome/components/qspi_dbi/qspi_dbi.cpp +1 -1
  475. esphome/components/qwiic_pir/qwiic_pir.cpp +26 -28
  476. esphome/components/rc522/rc522.cpp +5 -5
  477. esphome/components/rdm6300/rdm6300.cpp +1 -0
  478. esphome/components/remote_receiver/__init__.py +10 -2
  479. esphome/components/remote_receiver/remote_receiver_esp32.cpp +22 -12
  480. esphome/components/remote_receiver/remote_receiver_esp8266.cpp +10 -7
  481. esphome/components/remote_receiver/remote_receiver_libretiny.cpp +10 -7
  482. esphome/components/remote_transmitter/__init__.py +10 -2
  483. esphome/components/remote_transmitter/remote_transmitter_esp32.cpp +10 -6
  484. esphome/components/remote_transmitter/remote_transmitter_esp8266.cpp +5 -3
  485. esphome/components/remote_transmitter/remote_transmitter_libretiny.cpp +5 -3
  486. esphome/components/resistance/resistance_sensor.cpp +6 -3
  487. esphome/components/restart/button/restart_button.cpp +1 -1
  488. esphome/components/restart/switch/restart_switch.cpp +1 -1
  489. esphome/components/rotary_encoder/rotary_encoder.cpp +2 -2
  490. esphome/components/rp2040/__init__.py +7 -0
  491. esphome/components/rp2040/core.cpp +8 -1
  492. esphome/components/rp2040/preferences.cpp +3 -3
  493. esphome/components/rp2040_pio_led_strip/led_strip.cpp +11 -8
  494. esphome/components/rp2040_pio_led_strip/light.py +1 -1
  495. esphome/components/rp2040_pwm/rp2040_pwm.cpp +1 -1
  496. esphome/components/rpi_dpi_rgb/rpi_dpi_rgb.cpp +1 -1
  497. esphome/components/rtttl/rtttl.cpp +11 -9
  498. esphome/components/safe_mode/button/safe_mode_button.cpp +1 -1
  499. esphome/components/safe_mode/safe_mode.cpp +9 -8
  500. esphome/components/safe_mode/switch/safe_mode_switch.cpp +1 -1
  501. esphome/components/scd30/scd30.cpp +11 -8
  502. esphome/components/scd4x/scd4x.cpp +12 -8
  503. esphome/components/sdl/display.py +40 -0
  504. esphome/components/sdl/sdl_esphome.cpp +2 -2
  505. esphome/components/sdl/sdl_esphome.h +8 -0
  506. esphome/components/sdm_meter/sdm_meter.cpp +5 -2
  507. esphome/components/sdp3x/sdp3x.cpp +11 -11
  508. esphome/components/sds011/sds011.cpp +5 -6
  509. esphome/components/sds011/sds011.h +4 -1
  510. esphome/components/seeed_mr24hpc1/seeed_mr24hpc1.cpp +3 -2
  511. esphome/components/seeed_mr60bha2/seeed_mr60bha2.cpp +1 -0
  512. esphome/components/seeed_mr60fda2/seeed_mr60fda2.cpp +3 -2
  513. esphome/components/selec_meter/selec_meter.cpp +5 -2
  514. esphome/components/select/__init__.py +1 -0
  515. esphome/components/select/select.cpp +1 -1
  516. esphome/components/select/select.h +0 -4
  517. esphome/components/sen0321/sen0321.cpp +2 -2
  518. esphome/components/sen21231/sen21231.cpp +1 -1
  519. esphome/components/sen5x/sen5x.cpp +10 -7
  520. esphome/components/sensirion_common/i2c_sensirion.cpp +2 -1
  521. esphome/components/sensirion_common/i2c_sensirion.h +1 -0
  522. esphome/components/sensor/__init__.py +11 -1
  523. esphome/components/sensor/filter.h +1 -1
  524. esphome/components/sensor/sensor.cpp +8 -4
  525. esphome/components/sensor/sensor.h +12 -11
  526. esphome/components/servo/servo.cpp +12 -9
  527. esphome/components/servo/servo.h +1 -1
  528. esphome/components/sfa30/sfa30.cpp +1 -1
  529. esphome/components/sgp30/sgp30.cpp +10 -8
  530. esphome/components/sgp4x/sgp4x.cpp +49 -61
  531. esphome/components/sgp4x/sgp4x.h +0 -1
  532. esphome/components/shelly_dimmer/shelly_dimmer.cpp +11 -7
  533. esphome/components/sht3xd/sht3xd.cpp +1 -1
  534. esphome/components/sht4x/sht4x.cpp +2 -2
  535. esphome/components/shtcx/shtcx.cpp +13 -16
  536. esphome/components/shutdown/button/shutdown_button.cpp +1 -1
  537. esphome/components/shutdown/switch/shutdown_switch.cpp +1 -1
  538. esphome/components/sim800l/sim800l.cpp +2 -2
  539. esphome/components/slow_pwm/slow_pwm_output.cpp +4 -2
  540. esphome/components/sm16716/sm16716.cpp +1 -1
  541. esphome/components/sm2135/sm2135.cpp +1 -1
  542. esphome/components/sm2235/sm2235.cpp +5 -3
  543. esphome/components/sm2335/sm2335.cpp +5 -3
  544. esphome/components/sml/sml.cpp +1 -1
  545. esphome/components/sn74hc165/sn74hc165.cpp +1 -2
  546. esphome/components/sn74hc595/sn74hc595.cpp +1 -2
  547. esphome/components/sntp/sntp_component.cpp +1 -1
  548. esphome/components/socket/__init__.py +2 -0
  549. esphome/components/socket/bsd_sockets_impl.cpp +51 -7
  550. esphome/components/socket/lwip_raw_tcp_impl.cpp +5 -0
  551. esphome/components/socket/lwip_sockets_impl.cpp +51 -7
  552. esphome/components/socket/socket.cpp +31 -0
  553. esphome/components/socket/socket.h +27 -1
  554. esphome/components/sonoff_d1/sonoff_d1.cpp +7 -4
  555. esphome/components/sonoff_d1/sonoff_d1.h +2 -2
  556. esphome/components/sound_level/sound_level.cpp +4 -2
  557. esphome/components/speaker/media_player/__init__.py +3 -0
  558. esphome/components/speaker/media_player/speaker_media_player.cpp +1 -3
  559. esphome/components/speaker/media_player/speaker_media_player.h +6 -0
  560. esphome/components/spi/__init__.py +10 -2
  561. esphome/components/spi/spi.cpp +4 -4
  562. esphome/components/spi_device/spi_device.cpp +1 -2
  563. esphome/components/sprinkler/sprinkler.cpp +9 -6
  564. esphome/components/sps30/sps30.cpp +16 -15
  565. esphome/components/ssd1306_base/ssd1306_base.cpp +1 -1
  566. esphome/components/ssd1306_i2c/ssd1306_i2c.cpp +11 -8
  567. esphome/components/ssd1306_spi/ssd1306_spi.cpp +10 -7
  568. esphome/components/ssd1322_base/ssd1322_base.cpp +1 -1
  569. esphome/components/ssd1322_spi/ssd1322_spi.cpp +1 -1
  570. esphome/components/ssd1325_base/ssd1325_base.cpp +1 -1
  571. esphome/components/ssd1325_spi/ssd1325_spi.cpp +1 -1
  572. esphome/components/ssd1327_base/ssd1327_base.cpp +1 -1
  573. esphome/components/ssd1327_i2c/ssd1327_i2c.cpp +2 -2
  574. esphome/components/ssd1327_spi/ssd1327_spi.cpp +1 -1
  575. esphome/components/ssd1331_base/ssd1331_base.cpp +1 -1
  576. esphome/components/ssd1331_spi/ssd1331_spi.cpp +1 -1
  577. esphome/components/ssd1351_base/ssd1351_base.cpp +1 -1
  578. esphome/components/ssd1351_spi/ssd1351_spi.cpp +1 -1
  579. esphome/components/st7567_base/st7567_base.cpp +3 -3
  580. esphome/components/st7567_i2c/st7567_i2c.cpp +7 -5
  581. esphome/components/st7567_spi/st7567_spi.cpp +1 -1
  582. esphome/components/st7701s/st7701s.cpp +4 -2
  583. esphome/components/st7735/st7735.cpp +3 -3
  584. esphome/components/st7789v/st7789v.cpp +10 -7
  585. esphome/components/st7920/st7920.cpp +6 -4
  586. esphome/components/statsd/statsd.cpp +9 -5
  587. esphome/components/status_led/light/status_led_light.cpp +3 -3
  588. esphome/components/status_led/light/status_led_light.h +1 -1
  589. esphome/components/status_led/status_led.cpp +1 -1
  590. esphome/components/stepper/stepper.h +5 -3
  591. esphome/components/sts3x/sts3x.cpp +2 -2
  592. esphome/components/switch/__init__.py +1 -0
  593. esphome/components/switch/switch.cpp +18 -12
  594. esphome/components/switch/switch.h +1 -1
  595. esphome/components/sx1509/__init__.py +53 -20
  596. esphome/components/sx1509/sx1509.cpp +29 -5
  597. esphome/components/sx1509/sx1509.h +9 -1
  598. esphome/components/t6615/t6615.cpp +1 -0
  599. esphome/components/tc74/tc74.cpp +1 -1
  600. esphome/components/tca9548a/tca9548a.cpp +1 -1
  601. esphome/components/tca9555/tca9555.cpp +2 -2
  602. esphome/components/tcs34725/tcs34725.cpp +4 -4
  603. esphome/components/tee501/tee501.cpp +3 -2
  604. esphome/components/tem3200/tem3200.cpp +5 -6
  605. esphome/components/template/alarm_control_panel/__init__.py +6 -0
  606. esphome/components/template/alarm_control_panel/template_alarm_control_panel.cpp +43 -12
  607. esphome/components/template/alarm_control_panel/template_alarm_control_panel.h +4 -1
  608. esphome/components/template/cover/template_cover.cpp +1 -1
  609. esphome/components/template/select/template_select.cpp +6 -4
  610. esphome/components/template/text/template_text.cpp +2 -3
  611. esphome/components/template/valve/template_valve.cpp +5 -3
  612. esphome/components/text/__init__.py +10 -11
  613. esphome/components/text/text.cpp +1 -1
  614. esphome/components/text/text.h +0 -4
  615. esphome/components/text_sensor/__init__.py +1 -0
  616. esphome/components/text_sensor/text_sensor.cpp +8 -4
  617. esphome/components/text_sensor/text_sensor.h +6 -6
  618. esphome/components/thermostat/thermostat_climate.cpp +67 -43
  619. esphome/components/time/__init__.py +1 -2
  620. esphome/components/time_based/time_based_cover.cpp +4 -2
  621. esphome/components/tlc59208f/tlc59208f_output.cpp +8 -6
  622. esphome/components/tm1621/tm1621.cpp +3 -3
  623. esphome/components/tm1637/tm1637.cpp +9 -7
  624. esphome/components/tm1638/tm1638.cpp +7 -5
  625. esphome/components/tm1651/tm1651.cpp +2 -2
  626. esphome/components/tmp102/tmp102.cpp +1 -3
  627. esphome/components/tmp102/tmp102.h +0 -3
  628. esphome/components/tmp1075/tmp1075.cpp +12 -9
  629. esphome/components/tmp117/tmp117.cpp +2 -2
  630. esphome/components/tof10120/tof10120_sensor.cpp +2 -2
  631. esphome/components/tormatic/tormatic_cover.cpp +4 -2
  632. esphome/components/tsl2561/tsl2561.cpp +7 -5
  633. esphome/components/tsl2591/tsl2591.cpp +25 -27
  634. esphome/components/tt21100/touchscreen/tt21100.cpp +1 -1
  635. esphome/components/ttp229_bsf/ttp229_bsf.cpp +1 -1
  636. esphome/components/ttp229_lsf/ttp229_lsf.cpp +2 -2
  637. esphome/components/tuya/select/tuya_select.cpp +5 -3
  638. esphome/components/tx20/tx20.cpp +3 -3
  639. esphome/components/uart/__init__.py +4 -5
  640. esphome/components/uart/button/uart_button.cpp +1 -1
  641. esphome/components/uart/switch/uart_switch.cpp +2 -2
  642. esphome/components/uart/uart.cpp +2 -2
  643. esphome/components/uart/uart_component_esp32_arduino.cpp +8 -6
  644. esphome/components/uart/uart_component_esp8266.cpp +9 -7
  645. esphome/components/uart/uart_component_esp_idf.cpp +9 -7
  646. esphome/components/uart/uart_component_host.cpp +11 -8
  647. esphome/components/uart/uart_component_libretiny.cpp +8 -6
  648. esphome/components/uart/uart_component_rp2040.cpp +8 -6
  649. esphome/components/udp/udp_component.cpp +9 -5
  650. esphome/components/ufire_ec/ufire_ec.cpp +5 -3
  651. esphome/components/ufire_ise/ufire_ise.cpp +1 -1
  652. esphome/components/ultrasonic/ultrasonic_sensor.cpp +5 -3
  653. esphome/components/update/__init__.py +1 -0
  654. esphome/components/update/update_entity.cpp +1 -1
  655. esphome/components/update/update_entity.h +0 -3
  656. esphome/components/uponor_smatrix/climate/uponor_smatrix_climate.cpp +1 -1
  657. esphome/components/uponor_smatrix/sensor/uponor_smatrix_sensor.cpp +4 -2
  658. esphome/components/uponor_smatrix/uponor_smatrix.cpp +2 -1
  659. esphome/components/uptime/sensor/uptime_timestamp_sensor.cpp +1 -1
  660. esphome/components/usb_host/__init__.py +64 -0
  661. esphome/components/usb_host/usb_host.h +116 -0
  662. esphome/components/usb_host/usb_host_client.cpp +394 -0
  663. esphome/components/usb_host/usb_host_component.cpp +35 -0
  664. esphome/components/usb_uart/__init__.py +134 -0
  665. esphome/components/usb_uart/ch34x.cpp +80 -0
  666. esphome/components/usb_uart/cp210x.cpp +126 -0
  667. esphome/components/usb_uart/usb_uart.cpp +328 -0
  668. esphome/components/usb_uart/usb_uart.h +151 -0
  669. esphome/components/valve/__init__.py +1 -0
  670. esphome/components/veml3235/veml3235.cpp +13 -9
  671. esphome/components/veml7700/veml7700.cpp +10 -6
  672. esphome/components/voice_assistant/voice_assistant.cpp +7 -7
  673. esphome/components/wake_on_lan/wake_on_lan.cpp +1 -1
  674. esphome/components/waveshare_epaper/waveshare_epaper.cpp +1 -1
  675. esphome/components/web_server/server_index_v2.h +632 -630
  676. esphome/components/web_server/server_index_v3.h +411 -409
  677. esphome/components/web_server/web_server.cpp +5 -3
  678. esphome/components/web_server_base/web_server_base.cpp +1 -1
  679. esphome/components/web_server_idf/__init__.py +0 -2
  680. esphome/components/web_server_idf/utils.cpp +1 -1
  681. esphome/components/web_server_idf/web_server_idf.cpp +7 -3
  682. esphome/components/web_server_idf/web_server_idf.h +7 -0
  683. esphome/components/weikai/__init__.py +2 -0
  684. esphome/components/weikai/weikai.cpp +24 -22
  685. esphome/components/weikai_i2c/weikai_i2c.cpp +14 -9
  686. esphome/components/weikai_spi/weikai_spi.cpp +11 -6
  687. esphome/components/wiegand/wiegand.cpp +1 -1
  688. esphome/components/wifi/wifi_component.cpp +50 -37
  689. esphome/components/wifi/wifi_component.h +7 -4
  690. esphome/components/wifi/wifi_component_esp32_arduino.cpp +2 -2
  691. esphome/components/wifi/wifi_component_esp8266.cpp +3 -3
  692. esphome/components/wifi/wifi_component_libretiny.cpp +4 -4
  693. esphome/components/wireguard/wireguard.cpp +21 -21
  694. esphome/components/wl_134/text_sensor.py +1 -2
  695. esphome/components/wled/wled_light_effect.cpp +1 -1
  696. esphome/components/x9c/x9c.cpp +5 -3
  697. esphome/components/xgzp68xx/xgzp68xx.cpp +8 -6
  698. esphome/components/xiaomi_cgd1/xiaomi_cgd1.cpp +4 -2
  699. esphome/components/xiaomi_cgdk2/xiaomi_cgdk2.cpp +4 -2
  700. esphome/components/xiaomi_cgg1/xiaomi_cgg1.cpp +4 -2
  701. esphome/components/xiaomi_hhccjcy10/xiaomi_hhccjcy10.cpp +1 -1
  702. esphome/components/xiaomi_lywsd02mmc/xiaomi_lywsd02mmc.cpp +4 -2
  703. esphome/components/xiaomi_lywsd03mmc/xiaomi_lywsd03mmc.cpp +4 -2
  704. esphome/components/xiaomi_mhoc401/xiaomi_mhoc401.cpp +4 -2
  705. esphome/components/xl9535/xl9535.cpp +2 -2
  706. esphome/components/xpt2046/touchscreen/xpt2046.cpp +12 -11
  707. esphome/components/xpt2046/touchscreen/xpt2046.h +2 -2
  708. esphome/config.py +3 -2
  709. esphome/config_validation.py +46 -17
  710. esphome/const.py +10 -1
  711. esphome/core/__init__.py +37 -18
  712. esphome/core/application.cpp +197 -8
  713. esphome/core/application.h +116 -6
  714. esphome/core/component.cpp +36 -15
  715. esphome/core/component.h +43 -13
  716. esphome/core/config.py +12 -0
  717. esphome/core/defines.h +10 -2
  718. esphome/core/entity_base.cpp +4 -16
  719. esphome/core/entity_base.h +27 -13
  720. esphome/core/helpers.cpp +1 -1
  721. esphome/core/helpers.h +5 -5
  722. esphome/core/log.h +2 -0
  723. esphome/core/log_const_en.h +4 -0
  724. esphome/core/scheduler.cpp +2 -2
  725. esphome/coroutine.py +3 -4
  726. esphome/cpp_generator.py +32 -32
  727. esphome/dashboard/core.py +2 -2
  728. esphome/dashboard/web_server.py +2 -2
  729. esphome/git.py +4 -4
  730. esphome/helpers.py +5 -6
  731. esphome/loader.py +8 -7
  732. esphome/log.py +7 -1
  733. esphome/platformio_api.py +2 -3
  734. esphome/storage_json.py +13 -5
  735. esphome/types.py +12 -13
  736. esphome/util.py +1 -2
  737. esphome/wizard.py +0 -16
  738. esphome/writer.py +5 -3
  739. esphome/yaml_util.py +6 -1
  740. esphome/zeroconf.py +1 -1
  741. {esphome-2025.5.2.dist-info → esphome-2025.6.0b2.dist-info}/METADATA +12 -11
  742. {esphome-2025.5.2.dist-info → esphome-2025.6.0b2.dist-info}/RECORD +746 -692
  743. {esphome-2025.5.2.dist-info → esphome-2025.6.0b2.dist-info}/WHEEL +1 -1
  744. {esphome-2025.5.2.dist-info → esphome-2025.6.0b2.dist-info}/entry_points.txt +0 -0
  745. {esphome-2025.5.2.dist-info → esphome-2025.6.0b2.dist-info}/licenses/LICENSE +0 -0
  746. {esphome-2025.5.2.dist-info → esphome-2025.6.0b2.dist-info}/top_level.txt +0 -0
@@ -41,7 +41,8 @@ enum FanDirection : uint32_t {
41
41
  enum ColorMode : uint32_t {
42
42
  COLOR_MODE_UNKNOWN = 0,
43
43
  COLOR_MODE_ON_OFF = 1,
44
- COLOR_MODE_BRIGHTNESS = 2,
44
+ COLOR_MODE_LEGACY_BRIGHTNESS = 2,
45
+ COLOR_MODE_BRIGHTNESS = 3,
45
46
  COLOR_MODE_WHITE = 7,
46
47
  COLOR_MODE_COLOR_TEMPERATURE = 11,
47
48
  COLOR_MODE_COLD_WARM_WHITE = 19,
@@ -252,8 +253,34 @@ enum UpdateCommand : uint32_t {
252
253
 
253
254
  } // namespace enums
254
255
 
256
+ class InfoResponseProtoMessage : public ProtoMessage {
257
+ public:
258
+ ~InfoResponseProtoMessage() override = default;
259
+ std::string object_id{};
260
+ uint32_t key{0};
261
+ std::string name{};
262
+ std::string unique_id{};
263
+ bool disabled_by_default{false};
264
+ std::string icon{};
265
+ enums::EntityCategory entity_category{};
266
+
267
+ protected:
268
+ };
269
+
270
+ class StateResponseProtoMessage : public ProtoMessage {
271
+ public:
272
+ ~StateResponseProtoMessage() override = default;
273
+ uint32_t key{0};
274
+
275
+ protected:
276
+ };
255
277
  class HelloRequest : public ProtoMessage {
256
278
  public:
279
+ static constexpr uint16_t MESSAGE_TYPE = 1;
280
+ static constexpr uint16_t ESTIMATED_SIZE = 17;
281
+ #ifdef HAS_PROTO_MESSAGE_DUMP
282
+ static constexpr const char *message_name() { return "hello_request"; }
283
+ #endif
257
284
  std::string client_info{};
258
285
  uint32_t api_version_major{0};
259
286
  uint32_t api_version_minor{0};
@@ -269,6 +296,11 @@ class HelloRequest : public ProtoMessage {
269
296
  };
270
297
  class HelloResponse : public ProtoMessage {
271
298
  public:
299
+ static constexpr uint16_t MESSAGE_TYPE = 2;
300
+ static constexpr uint16_t ESTIMATED_SIZE = 26;
301
+ #ifdef HAS_PROTO_MESSAGE_DUMP
302
+ static constexpr const char *message_name() { return "hello_response"; }
303
+ #endif
272
304
  uint32_t api_version_major{0};
273
305
  uint32_t api_version_minor{0};
274
306
  std::string server_info{};
@@ -285,6 +317,11 @@ class HelloResponse : public ProtoMessage {
285
317
  };
286
318
  class ConnectRequest : public ProtoMessage {
287
319
  public:
320
+ static constexpr uint16_t MESSAGE_TYPE = 3;
321
+ static constexpr uint16_t ESTIMATED_SIZE = 9;
322
+ #ifdef HAS_PROTO_MESSAGE_DUMP
323
+ static constexpr const char *message_name() { return "connect_request"; }
324
+ #endif
288
325
  std::string password{};
289
326
  void encode(ProtoWriteBuffer buffer) const override;
290
327
  void calculate_size(uint32_t &total_size) const override;
@@ -297,6 +334,11 @@ class ConnectRequest : public ProtoMessage {
297
334
  };
298
335
  class ConnectResponse : public ProtoMessage {
299
336
  public:
337
+ static constexpr uint16_t MESSAGE_TYPE = 4;
338
+ static constexpr uint16_t ESTIMATED_SIZE = 2;
339
+ #ifdef HAS_PROTO_MESSAGE_DUMP
340
+ static constexpr const char *message_name() { return "connect_response"; }
341
+ #endif
300
342
  bool invalid_password{false};
301
343
  void encode(ProtoWriteBuffer buffer) const override;
302
344
  void calculate_size(uint32_t &total_size) const override;
@@ -309,6 +351,11 @@ class ConnectResponse : public ProtoMessage {
309
351
  };
310
352
  class DisconnectRequest : public ProtoMessage {
311
353
  public:
354
+ static constexpr uint16_t MESSAGE_TYPE = 5;
355
+ static constexpr uint16_t ESTIMATED_SIZE = 0;
356
+ #ifdef HAS_PROTO_MESSAGE_DUMP
357
+ static constexpr const char *message_name() { return "disconnect_request"; }
358
+ #endif
312
359
  void encode(ProtoWriteBuffer buffer) const override;
313
360
  void calculate_size(uint32_t &total_size) const override;
314
361
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -319,6 +366,11 @@ class DisconnectRequest : public ProtoMessage {
319
366
  };
320
367
  class DisconnectResponse : public ProtoMessage {
321
368
  public:
369
+ static constexpr uint16_t MESSAGE_TYPE = 6;
370
+ static constexpr uint16_t ESTIMATED_SIZE = 0;
371
+ #ifdef HAS_PROTO_MESSAGE_DUMP
372
+ static constexpr const char *message_name() { return "disconnect_response"; }
373
+ #endif
322
374
  void encode(ProtoWriteBuffer buffer) const override;
323
375
  void calculate_size(uint32_t &total_size) const override;
324
376
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -329,6 +381,11 @@ class DisconnectResponse : public ProtoMessage {
329
381
  };
330
382
  class PingRequest : public ProtoMessage {
331
383
  public:
384
+ static constexpr uint16_t MESSAGE_TYPE = 7;
385
+ static constexpr uint16_t ESTIMATED_SIZE = 0;
386
+ #ifdef HAS_PROTO_MESSAGE_DUMP
387
+ static constexpr const char *message_name() { return "ping_request"; }
388
+ #endif
332
389
  void encode(ProtoWriteBuffer buffer) const override;
333
390
  void calculate_size(uint32_t &total_size) const override;
334
391
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -339,6 +396,11 @@ class PingRequest : public ProtoMessage {
339
396
  };
340
397
  class PingResponse : public ProtoMessage {
341
398
  public:
399
+ static constexpr uint16_t MESSAGE_TYPE = 8;
400
+ static constexpr uint16_t ESTIMATED_SIZE = 0;
401
+ #ifdef HAS_PROTO_MESSAGE_DUMP
402
+ static constexpr const char *message_name() { return "ping_response"; }
403
+ #endif
342
404
  void encode(ProtoWriteBuffer buffer) const override;
343
405
  void calculate_size(uint32_t &total_size) const override;
344
406
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -349,6 +411,11 @@ class PingResponse : public ProtoMessage {
349
411
  };
350
412
  class DeviceInfoRequest : public ProtoMessage {
351
413
  public:
414
+ static constexpr uint16_t MESSAGE_TYPE = 9;
415
+ static constexpr uint16_t ESTIMATED_SIZE = 0;
416
+ #ifdef HAS_PROTO_MESSAGE_DUMP
417
+ static constexpr const char *message_name() { return "device_info_request"; }
418
+ #endif
352
419
  void encode(ProtoWriteBuffer buffer) const override;
353
420
  void calculate_size(uint32_t &total_size) const override;
354
421
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -359,6 +426,11 @@ class DeviceInfoRequest : public ProtoMessage {
359
426
  };
360
427
  class DeviceInfoResponse : public ProtoMessage {
361
428
  public:
429
+ static constexpr uint16_t MESSAGE_TYPE = 10;
430
+ static constexpr uint16_t ESTIMATED_SIZE = 129;
431
+ #ifdef HAS_PROTO_MESSAGE_DUMP
432
+ static constexpr const char *message_name() { return "device_info_response"; }
433
+ #endif
362
434
  bool uses_password{false};
363
435
  std::string name{};
364
436
  std::string mac_address{};
@@ -390,6 +462,11 @@ class DeviceInfoResponse : public ProtoMessage {
390
462
  };
391
463
  class ListEntitiesRequest : public ProtoMessage {
392
464
  public:
465
+ static constexpr uint16_t MESSAGE_TYPE = 11;
466
+ static constexpr uint16_t ESTIMATED_SIZE = 0;
467
+ #ifdef HAS_PROTO_MESSAGE_DUMP
468
+ static constexpr const char *message_name() { return "list_entities_request"; }
469
+ #endif
393
470
  void encode(ProtoWriteBuffer buffer) const override;
394
471
  void calculate_size(uint32_t &total_size) const override;
395
472
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -400,6 +477,11 @@ class ListEntitiesRequest : public ProtoMessage {
400
477
  };
401
478
  class ListEntitiesDoneResponse : public ProtoMessage {
402
479
  public:
480
+ static constexpr uint16_t MESSAGE_TYPE = 19;
481
+ static constexpr uint16_t ESTIMATED_SIZE = 0;
482
+ #ifdef HAS_PROTO_MESSAGE_DUMP
483
+ static constexpr const char *message_name() { return "list_entities_done_response"; }
484
+ #endif
403
485
  void encode(ProtoWriteBuffer buffer) const override;
404
486
  void calculate_size(uint32_t &total_size) const override;
405
487
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -410,6 +492,11 @@ class ListEntitiesDoneResponse : public ProtoMessage {
410
492
  };
411
493
  class SubscribeStatesRequest : public ProtoMessage {
412
494
  public:
495
+ static constexpr uint16_t MESSAGE_TYPE = 20;
496
+ static constexpr uint16_t ESTIMATED_SIZE = 0;
497
+ #ifdef HAS_PROTO_MESSAGE_DUMP
498
+ static constexpr const char *message_name() { return "subscribe_states_request"; }
499
+ #endif
413
500
  void encode(ProtoWriteBuffer buffer) const override;
414
501
  void calculate_size(uint32_t &total_size) const override;
415
502
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -418,17 +505,15 @@ class SubscribeStatesRequest : public ProtoMessage {
418
505
 
419
506
  protected:
420
507
  };
421
- class ListEntitiesBinarySensorResponse : public ProtoMessage {
508
+ class ListEntitiesBinarySensorResponse : public InfoResponseProtoMessage {
422
509
  public:
423
- std::string object_id{};
424
- uint32_t key{0};
425
- std::string name{};
426
- std::string unique_id{};
510
+ static constexpr uint16_t MESSAGE_TYPE = 12;
511
+ static constexpr uint16_t ESTIMATED_SIZE = 56;
512
+ #ifdef HAS_PROTO_MESSAGE_DUMP
513
+ static constexpr const char *message_name() { return "list_entities_binary_sensor_response"; }
514
+ #endif
427
515
  std::string device_class{};
428
516
  bool is_status_binary_sensor{false};
429
- bool disabled_by_default{false};
430
- std::string icon{};
431
- enums::EntityCategory entity_category{};
432
517
  void encode(ProtoWriteBuffer buffer) const override;
433
518
  void calculate_size(uint32_t &total_size) const override;
434
519
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -440,9 +525,13 @@ class ListEntitiesBinarySensorResponse : public ProtoMessage {
440
525
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
441
526
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
442
527
  };
443
- class BinarySensorStateResponse : public ProtoMessage {
528
+ class BinarySensorStateResponse : public StateResponseProtoMessage {
444
529
  public:
445
- uint32_t key{0};
530
+ static constexpr uint16_t MESSAGE_TYPE = 21;
531
+ static constexpr uint16_t ESTIMATED_SIZE = 9;
532
+ #ifdef HAS_PROTO_MESSAGE_DUMP
533
+ static constexpr const char *message_name() { return "binary_sensor_state_response"; }
534
+ #endif
446
535
  bool state{false};
447
536
  bool missing_state{false};
448
537
  void encode(ProtoWriteBuffer buffer) const override;
@@ -455,19 +544,17 @@ class BinarySensorStateResponse : public ProtoMessage {
455
544
  bool decode_32bit(uint32_t field_id, Proto32Bit value) override;
456
545
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
457
546
  };
458
- class ListEntitiesCoverResponse : public ProtoMessage {
547
+ class ListEntitiesCoverResponse : public InfoResponseProtoMessage {
459
548
  public:
460
- std::string object_id{};
461
- uint32_t key{0};
462
- std::string name{};
463
- std::string unique_id{};
549
+ static constexpr uint16_t MESSAGE_TYPE = 13;
550
+ static constexpr uint16_t ESTIMATED_SIZE = 62;
551
+ #ifdef HAS_PROTO_MESSAGE_DUMP
552
+ static constexpr const char *message_name() { return "list_entities_cover_response"; }
553
+ #endif
464
554
  bool assumed_state{false};
465
555
  bool supports_position{false};
466
556
  bool supports_tilt{false};
467
557
  std::string device_class{};
468
- bool disabled_by_default{false};
469
- std::string icon{};
470
- enums::EntityCategory entity_category{};
471
558
  bool supports_stop{false};
472
559
  void encode(ProtoWriteBuffer buffer) const override;
473
560
  void calculate_size(uint32_t &total_size) const override;
@@ -480,9 +567,13 @@ class ListEntitiesCoverResponse : public ProtoMessage {
480
567
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
481
568
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
482
569
  };
483
- class CoverStateResponse : public ProtoMessage {
570
+ class CoverStateResponse : public StateResponseProtoMessage {
484
571
  public:
485
- uint32_t key{0};
572
+ static constexpr uint16_t MESSAGE_TYPE = 22;
573
+ static constexpr uint16_t ESTIMATED_SIZE = 19;
574
+ #ifdef HAS_PROTO_MESSAGE_DUMP
575
+ static constexpr const char *message_name() { return "cover_state_response"; }
576
+ #endif
486
577
  enums::LegacyCoverState legacy_state{};
487
578
  float position{0.0f};
488
579
  float tilt{0.0f};
@@ -499,6 +590,11 @@ class CoverStateResponse : public ProtoMessage {
499
590
  };
500
591
  class CoverCommandRequest : public ProtoMessage {
501
592
  public:
593
+ static constexpr uint16_t MESSAGE_TYPE = 30;
594
+ static constexpr uint16_t ESTIMATED_SIZE = 25;
595
+ #ifdef HAS_PROTO_MESSAGE_DUMP
596
+ static constexpr const char *message_name() { return "cover_command_request"; }
597
+ #endif
502
598
  uint32_t key{0};
503
599
  bool has_legacy_command{false};
504
600
  enums::LegacyCoverCommand legacy_command{};
@@ -517,19 +613,17 @@ class CoverCommandRequest : public ProtoMessage {
517
613
  bool decode_32bit(uint32_t field_id, Proto32Bit value) override;
518
614
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
519
615
  };
520
- class ListEntitiesFanResponse : public ProtoMessage {
616
+ class ListEntitiesFanResponse : public InfoResponseProtoMessage {
521
617
  public:
522
- std::string object_id{};
523
- uint32_t key{0};
524
- std::string name{};
525
- std::string unique_id{};
618
+ static constexpr uint16_t MESSAGE_TYPE = 14;
619
+ static constexpr uint16_t ESTIMATED_SIZE = 73;
620
+ #ifdef HAS_PROTO_MESSAGE_DUMP
621
+ static constexpr const char *message_name() { return "list_entities_fan_response"; }
622
+ #endif
526
623
  bool supports_oscillation{false};
527
624
  bool supports_speed{false};
528
625
  bool supports_direction{false};
529
626
  int32_t supported_speed_count{0};
530
- bool disabled_by_default{false};
531
- std::string icon{};
532
- enums::EntityCategory entity_category{};
533
627
  std::vector<std::string> supported_preset_modes{};
534
628
  void encode(ProtoWriteBuffer buffer) const override;
535
629
  void calculate_size(uint32_t &total_size) const override;
@@ -542,9 +636,13 @@ class ListEntitiesFanResponse : public ProtoMessage {
542
636
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
543
637
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
544
638
  };
545
- class FanStateResponse : public ProtoMessage {
639
+ class FanStateResponse : public StateResponseProtoMessage {
546
640
  public:
547
- uint32_t key{0};
641
+ static constexpr uint16_t MESSAGE_TYPE = 23;
642
+ static constexpr uint16_t ESTIMATED_SIZE = 26;
643
+ #ifdef HAS_PROTO_MESSAGE_DUMP
644
+ static constexpr const char *message_name() { return "fan_state_response"; }
645
+ #endif
548
646
  bool state{false};
549
647
  bool oscillating{false};
550
648
  enums::FanSpeed speed{};
@@ -564,6 +662,11 @@ class FanStateResponse : public ProtoMessage {
564
662
  };
565
663
  class FanCommandRequest : public ProtoMessage {
566
664
  public:
665
+ static constexpr uint16_t MESSAGE_TYPE = 31;
666
+ static constexpr uint16_t ESTIMATED_SIZE = 38;
667
+ #ifdef HAS_PROTO_MESSAGE_DUMP
668
+ static constexpr const char *message_name() { return "fan_command_request"; }
669
+ #endif
567
670
  uint32_t key{0};
568
671
  bool has_state{false};
569
672
  bool state{false};
@@ -588,12 +691,13 @@ class FanCommandRequest : public ProtoMessage {
588
691
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
589
692
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
590
693
  };
591
- class ListEntitiesLightResponse : public ProtoMessage {
694
+ class ListEntitiesLightResponse : public InfoResponseProtoMessage {
592
695
  public:
593
- std::string object_id{};
594
- uint32_t key{0};
595
- std::string name{};
596
- std::string unique_id{};
696
+ static constexpr uint16_t MESSAGE_TYPE = 15;
697
+ static constexpr uint16_t ESTIMATED_SIZE = 85;
698
+ #ifdef HAS_PROTO_MESSAGE_DUMP
699
+ static constexpr const char *message_name() { return "list_entities_light_response"; }
700
+ #endif
597
701
  std::vector<enums::ColorMode> supported_color_modes{};
598
702
  bool legacy_supports_brightness{false};
599
703
  bool legacy_supports_rgb{false};
@@ -602,9 +706,6 @@ class ListEntitiesLightResponse : public ProtoMessage {
602
706
  float min_mireds{0.0f};
603
707
  float max_mireds{0.0f};
604
708
  std::vector<std::string> effects{};
605
- bool disabled_by_default{false};
606
- std::string icon{};
607
- enums::EntityCategory entity_category{};
608
709
  void encode(ProtoWriteBuffer buffer) const override;
609
710
  void calculate_size(uint32_t &total_size) const override;
610
711
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -616,9 +717,13 @@ class ListEntitiesLightResponse : public ProtoMessage {
616
717
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
617
718
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
618
719
  };
619
- class LightStateResponse : public ProtoMessage {
720
+ class LightStateResponse : public StateResponseProtoMessage {
620
721
  public:
621
- uint32_t key{0};
722
+ static constexpr uint16_t MESSAGE_TYPE = 24;
723
+ static constexpr uint16_t ESTIMATED_SIZE = 63;
724
+ #ifdef HAS_PROTO_MESSAGE_DUMP
725
+ static constexpr const char *message_name() { return "light_state_response"; }
726
+ #endif
622
727
  bool state{false};
623
728
  float brightness{0.0f};
624
729
  enums::ColorMode color_mode{};
@@ -644,6 +749,11 @@ class LightStateResponse : public ProtoMessage {
644
749
  };
645
750
  class LightCommandRequest : public ProtoMessage {
646
751
  public:
752
+ static constexpr uint16_t MESSAGE_TYPE = 32;
753
+ static constexpr uint16_t ESTIMATED_SIZE = 107;
754
+ #ifdef HAS_PROTO_MESSAGE_DUMP
755
+ static constexpr const char *message_name() { return "light_command_request"; }
756
+ #endif
647
757
  uint32_t key{0};
648
758
  bool has_state{false};
649
759
  bool state{false};
@@ -682,21 +792,19 @@ class LightCommandRequest : public ProtoMessage {
682
792
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
683
793
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
684
794
  };
685
- class ListEntitiesSensorResponse : public ProtoMessage {
795
+ class ListEntitiesSensorResponse : public InfoResponseProtoMessage {
686
796
  public:
687
- std::string object_id{};
688
- uint32_t key{0};
689
- std::string name{};
690
- std::string unique_id{};
691
- std::string icon{};
797
+ static constexpr uint16_t MESSAGE_TYPE = 16;
798
+ static constexpr uint16_t ESTIMATED_SIZE = 73;
799
+ #ifdef HAS_PROTO_MESSAGE_DUMP
800
+ static constexpr const char *message_name() { return "list_entities_sensor_response"; }
801
+ #endif
692
802
  std::string unit_of_measurement{};
693
803
  int32_t accuracy_decimals{0};
694
804
  bool force_update{false};
695
805
  std::string device_class{};
696
806
  enums::SensorStateClass state_class{};
697
807
  enums::SensorLastResetType legacy_last_reset_type{};
698
- bool disabled_by_default{false};
699
- enums::EntityCategory entity_category{};
700
808
  void encode(ProtoWriteBuffer buffer) const override;
701
809
  void calculate_size(uint32_t &total_size) const override;
702
810
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -708,9 +816,13 @@ class ListEntitiesSensorResponse : public ProtoMessage {
708
816
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
709
817
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
710
818
  };
711
- class SensorStateResponse : public ProtoMessage {
819
+ class SensorStateResponse : public StateResponseProtoMessage {
712
820
  public:
713
- uint32_t key{0};
821
+ static constexpr uint16_t MESSAGE_TYPE = 25;
822
+ static constexpr uint16_t ESTIMATED_SIZE = 12;
823
+ #ifdef HAS_PROTO_MESSAGE_DUMP
824
+ static constexpr const char *message_name() { return "sensor_state_response"; }
825
+ #endif
714
826
  float state{0.0f};
715
827
  bool missing_state{false};
716
828
  void encode(ProtoWriteBuffer buffer) const override;
@@ -723,16 +835,14 @@ class SensorStateResponse : public ProtoMessage {
723
835
  bool decode_32bit(uint32_t field_id, Proto32Bit value) override;
724
836
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
725
837
  };
726
- class ListEntitiesSwitchResponse : public ProtoMessage {
838
+ class ListEntitiesSwitchResponse : public InfoResponseProtoMessage {
727
839
  public:
728
- std::string object_id{};
729
- uint32_t key{0};
730
- std::string name{};
731
- std::string unique_id{};
732
- std::string icon{};
840
+ static constexpr uint16_t MESSAGE_TYPE = 17;
841
+ static constexpr uint16_t ESTIMATED_SIZE = 56;
842
+ #ifdef HAS_PROTO_MESSAGE_DUMP
843
+ static constexpr const char *message_name() { return "list_entities_switch_response"; }
844
+ #endif
733
845
  bool assumed_state{false};
734
- bool disabled_by_default{false};
735
- enums::EntityCategory entity_category{};
736
846
  std::string device_class{};
737
847
  void encode(ProtoWriteBuffer buffer) const override;
738
848
  void calculate_size(uint32_t &total_size) const override;
@@ -745,9 +855,13 @@ class ListEntitiesSwitchResponse : public ProtoMessage {
745
855
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
746
856
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
747
857
  };
748
- class SwitchStateResponse : public ProtoMessage {
858
+ class SwitchStateResponse : public StateResponseProtoMessage {
749
859
  public:
750
- uint32_t key{0};
860
+ static constexpr uint16_t MESSAGE_TYPE = 26;
861
+ static constexpr uint16_t ESTIMATED_SIZE = 7;
862
+ #ifdef HAS_PROTO_MESSAGE_DUMP
863
+ static constexpr const char *message_name() { return "switch_state_response"; }
864
+ #endif
751
865
  bool state{false};
752
866
  void encode(ProtoWriteBuffer buffer) const override;
753
867
  void calculate_size(uint32_t &total_size) const override;
@@ -761,6 +875,11 @@ class SwitchStateResponse : public ProtoMessage {
761
875
  };
762
876
  class SwitchCommandRequest : public ProtoMessage {
763
877
  public:
878
+ static constexpr uint16_t MESSAGE_TYPE = 33;
879
+ static constexpr uint16_t ESTIMATED_SIZE = 7;
880
+ #ifdef HAS_PROTO_MESSAGE_DUMP
881
+ static constexpr const char *message_name() { return "switch_command_request"; }
882
+ #endif
764
883
  uint32_t key{0};
765
884
  bool state{false};
766
885
  void encode(ProtoWriteBuffer buffer) const override;
@@ -773,15 +892,13 @@ class SwitchCommandRequest : public ProtoMessage {
773
892
  bool decode_32bit(uint32_t field_id, Proto32Bit value) override;
774
893
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
775
894
  };
776
- class ListEntitiesTextSensorResponse : public ProtoMessage {
895
+ class ListEntitiesTextSensorResponse : public InfoResponseProtoMessage {
777
896
  public:
778
- std::string object_id{};
779
- uint32_t key{0};
780
- std::string name{};
781
- std::string unique_id{};
782
- std::string icon{};
783
- bool disabled_by_default{false};
784
- enums::EntityCategory entity_category{};
897
+ static constexpr uint16_t MESSAGE_TYPE = 18;
898
+ static constexpr uint16_t ESTIMATED_SIZE = 54;
899
+ #ifdef HAS_PROTO_MESSAGE_DUMP
900
+ static constexpr const char *message_name() { return "list_entities_text_sensor_response"; }
901
+ #endif
785
902
  std::string device_class{};
786
903
  void encode(ProtoWriteBuffer buffer) const override;
787
904
  void calculate_size(uint32_t &total_size) const override;
@@ -794,9 +911,13 @@ class ListEntitiesTextSensorResponse : public ProtoMessage {
794
911
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
795
912
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
796
913
  };
797
- class TextSensorStateResponse : public ProtoMessage {
914
+ class TextSensorStateResponse : public StateResponseProtoMessage {
798
915
  public:
799
- uint32_t key{0};
916
+ static constexpr uint16_t MESSAGE_TYPE = 27;
917
+ static constexpr uint16_t ESTIMATED_SIZE = 16;
918
+ #ifdef HAS_PROTO_MESSAGE_DUMP
919
+ static constexpr const char *message_name() { return "text_sensor_state_response"; }
920
+ #endif
800
921
  std::string state{};
801
922
  bool missing_state{false};
802
923
  void encode(ProtoWriteBuffer buffer) const override;
@@ -812,6 +933,11 @@ class TextSensorStateResponse : public ProtoMessage {
812
933
  };
813
934
  class SubscribeLogsRequest : public ProtoMessage {
814
935
  public:
936
+ static constexpr uint16_t MESSAGE_TYPE = 28;
937
+ static constexpr uint16_t ESTIMATED_SIZE = 4;
938
+ #ifdef HAS_PROTO_MESSAGE_DUMP
939
+ static constexpr const char *message_name() { return "subscribe_logs_request"; }
940
+ #endif
815
941
  enums::LogLevel level{};
816
942
  bool dump_config{false};
817
943
  void encode(ProtoWriteBuffer buffer) const override;
@@ -825,6 +951,11 @@ class SubscribeLogsRequest : public ProtoMessage {
825
951
  };
826
952
  class SubscribeLogsResponse : public ProtoMessage {
827
953
  public:
954
+ static constexpr uint16_t MESSAGE_TYPE = 29;
955
+ static constexpr uint16_t ESTIMATED_SIZE = 13;
956
+ #ifdef HAS_PROTO_MESSAGE_DUMP
957
+ static constexpr const char *message_name() { return "subscribe_logs_response"; }
958
+ #endif
828
959
  enums::LogLevel level{};
829
960
  std::string message{};
830
961
  bool send_failed{false};
@@ -840,6 +971,11 @@ class SubscribeLogsResponse : public ProtoMessage {
840
971
  };
841
972
  class NoiseEncryptionSetKeyRequest : public ProtoMessage {
842
973
  public:
974
+ static constexpr uint16_t MESSAGE_TYPE = 124;
975
+ static constexpr uint16_t ESTIMATED_SIZE = 9;
976
+ #ifdef HAS_PROTO_MESSAGE_DUMP
977
+ static constexpr const char *message_name() { return "noise_encryption_set_key_request"; }
978
+ #endif
843
979
  std::string key{};
844
980
  void encode(ProtoWriteBuffer buffer) const override;
845
981
  void calculate_size(uint32_t &total_size) const override;
@@ -852,6 +988,11 @@ class NoiseEncryptionSetKeyRequest : public ProtoMessage {
852
988
  };
853
989
  class NoiseEncryptionSetKeyResponse : public ProtoMessage {
854
990
  public:
991
+ static constexpr uint16_t MESSAGE_TYPE = 125;
992
+ static constexpr uint16_t ESTIMATED_SIZE = 2;
993
+ #ifdef HAS_PROTO_MESSAGE_DUMP
994
+ static constexpr const char *message_name() { return "noise_encryption_set_key_response"; }
995
+ #endif
855
996
  bool success{false};
856
997
  void encode(ProtoWriteBuffer buffer) const override;
857
998
  void calculate_size(uint32_t &total_size) const override;
@@ -864,6 +1005,11 @@ class NoiseEncryptionSetKeyResponse : public ProtoMessage {
864
1005
  };
865
1006
  class SubscribeHomeassistantServicesRequest : public ProtoMessage {
866
1007
  public:
1008
+ static constexpr uint16_t MESSAGE_TYPE = 34;
1009
+ static constexpr uint16_t ESTIMATED_SIZE = 0;
1010
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1011
+ static constexpr const char *message_name() { return "subscribe_homeassistant_services_request"; }
1012
+ #endif
867
1013
  void encode(ProtoWriteBuffer buffer) const override;
868
1014
  void calculate_size(uint32_t &total_size) const override;
869
1015
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -887,6 +1033,11 @@ class HomeassistantServiceMap : public ProtoMessage {
887
1033
  };
888
1034
  class HomeassistantServiceResponse : public ProtoMessage {
889
1035
  public:
1036
+ static constexpr uint16_t MESSAGE_TYPE = 35;
1037
+ static constexpr uint16_t ESTIMATED_SIZE = 113;
1038
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1039
+ static constexpr const char *message_name() { return "homeassistant_service_response"; }
1040
+ #endif
890
1041
  std::string service{};
891
1042
  std::vector<HomeassistantServiceMap> data{};
892
1043
  std::vector<HomeassistantServiceMap> data_template{};
@@ -904,6 +1055,11 @@ class HomeassistantServiceResponse : public ProtoMessage {
904
1055
  };
905
1056
  class SubscribeHomeAssistantStatesRequest : public ProtoMessage {
906
1057
  public:
1058
+ static constexpr uint16_t MESSAGE_TYPE = 38;
1059
+ static constexpr uint16_t ESTIMATED_SIZE = 0;
1060
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1061
+ static constexpr const char *message_name() { return "subscribe_home_assistant_states_request"; }
1062
+ #endif
907
1063
  void encode(ProtoWriteBuffer buffer) const override;
908
1064
  void calculate_size(uint32_t &total_size) const override;
909
1065
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -914,6 +1070,11 @@ class SubscribeHomeAssistantStatesRequest : public ProtoMessage {
914
1070
  };
915
1071
  class SubscribeHomeAssistantStateResponse : public ProtoMessage {
916
1072
  public:
1073
+ static constexpr uint16_t MESSAGE_TYPE = 39;
1074
+ static constexpr uint16_t ESTIMATED_SIZE = 20;
1075
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1076
+ static constexpr const char *message_name() { return "subscribe_home_assistant_state_response"; }
1077
+ #endif
917
1078
  std::string entity_id{};
918
1079
  std::string attribute{};
919
1080
  bool once{false};
@@ -929,6 +1090,11 @@ class SubscribeHomeAssistantStateResponse : public ProtoMessage {
929
1090
  };
930
1091
  class HomeAssistantStateResponse : public ProtoMessage {
931
1092
  public:
1093
+ static constexpr uint16_t MESSAGE_TYPE = 40;
1094
+ static constexpr uint16_t ESTIMATED_SIZE = 27;
1095
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1096
+ static constexpr const char *message_name() { return "home_assistant_state_response"; }
1097
+ #endif
932
1098
  std::string entity_id{};
933
1099
  std::string state{};
934
1100
  std::string attribute{};
@@ -943,6 +1109,11 @@ class HomeAssistantStateResponse : public ProtoMessage {
943
1109
  };
944
1110
  class GetTimeRequest : public ProtoMessage {
945
1111
  public:
1112
+ static constexpr uint16_t MESSAGE_TYPE = 36;
1113
+ static constexpr uint16_t ESTIMATED_SIZE = 0;
1114
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1115
+ static constexpr const char *message_name() { return "get_time_request"; }
1116
+ #endif
946
1117
  void encode(ProtoWriteBuffer buffer) const override;
947
1118
  void calculate_size(uint32_t &total_size) const override;
948
1119
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -953,6 +1124,11 @@ class GetTimeRequest : public ProtoMessage {
953
1124
  };
954
1125
  class GetTimeResponse : public ProtoMessage {
955
1126
  public:
1127
+ static constexpr uint16_t MESSAGE_TYPE = 37;
1128
+ static constexpr uint16_t ESTIMATED_SIZE = 5;
1129
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1130
+ static constexpr const char *message_name() { return "get_time_response"; }
1131
+ #endif
956
1132
  uint32_t epoch_seconds{0};
957
1133
  void encode(ProtoWriteBuffer buffer) const override;
958
1134
  void calculate_size(uint32_t &total_size) const override;
@@ -979,6 +1155,11 @@ class ListEntitiesServicesArgument : public ProtoMessage {
979
1155
  };
980
1156
  class ListEntitiesServicesResponse : public ProtoMessage {
981
1157
  public:
1158
+ static constexpr uint16_t MESSAGE_TYPE = 41;
1159
+ static constexpr uint16_t ESTIMATED_SIZE = 48;
1160
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1161
+ static constexpr const char *message_name() { return "list_entities_services_response"; }
1162
+ #endif
982
1163
  std::string name{};
983
1164
  uint32_t key{0};
984
1165
  std::vector<ListEntitiesServicesArgument> args{};
@@ -1016,6 +1197,11 @@ class ExecuteServiceArgument : public ProtoMessage {
1016
1197
  };
1017
1198
  class ExecuteServiceRequest : public ProtoMessage {
1018
1199
  public:
1200
+ static constexpr uint16_t MESSAGE_TYPE = 42;
1201
+ static constexpr uint16_t ESTIMATED_SIZE = 39;
1202
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1203
+ static constexpr const char *message_name() { return "execute_service_request"; }
1204
+ #endif
1019
1205
  uint32_t key{0};
1020
1206
  std::vector<ExecuteServiceArgument> args{};
1021
1207
  void encode(ProtoWriteBuffer buffer) const override;
@@ -1028,15 +1214,13 @@ class ExecuteServiceRequest : public ProtoMessage {
1028
1214
  bool decode_32bit(uint32_t field_id, Proto32Bit value) override;
1029
1215
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
1030
1216
  };
1031
- class ListEntitiesCameraResponse : public ProtoMessage {
1217
+ class ListEntitiesCameraResponse : public InfoResponseProtoMessage {
1032
1218
  public:
1033
- std::string object_id{};
1034
- uint32_t key{0};
1035
- std::string name{};
1036
- std::string unique_id{};
1037
- bool disabled_by_default{false};
1038
- std::string icon{};
1039
- enums::EntityCategory entity_category{};
1219
+ static constexpr uint16_t MESSAGE_TYPE = 43;
1220
+ static constexpr uint16_t ESTIMATED_SIZE = 45;
1221
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1222
+ static constexpr const char *message_name() { return "list_entities_camera_response"; }
1223
+ #endif
1040
1224
  void encode(ProtoWriteBuffer buffer) const override;
1041
1225
  void calculate_size(uint32_t &total_size) const override;
1042
1226
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -1050,6 +1234,11 @@ class ListEntitiesCameraResponse : public ProtoMessage {
1050
1234
  };
1051
1235
  class CameraImageResponse : public ProtoMessage {
1052
1236
  public:
1237
+ static constexpr uint16_t MESSAGE_TYPE = 44;
1238
+ static constexpr uint16_t ESTIMATED_SIZE = 16;
1239
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1240
+ static constexpr const char *message_name() { return "camera_image_response"; }
1241
+ #endif
1053
1242
  uint32_t key{0};
1054
1243
  std::string data{};
1055
1244
  bool done{false};
@@ -1066,6 +1255,11 @@ class CameraImageResponse : public ProtoMessage {
1066
1255
  };
1067
1256
  class CameraImageRequest : public ProtoMessage {
1068
1257
  public:
1258
+ static constexpr uint16_t MESSAGE_TYPE = 45;
1259
+ static constexpr uint16_t ESTIMATED_SIZE = 4;
1260
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1261
+ static constexpr const char *message_name() { return "camera_image_request"; }
1262
+ #endif
1069
1263
  bool single{false};
1070
1264
  bool stream{false};
1071
1265
  void encode(ProtoWriteBuffer buffer) const override;
@@ -1077,12 +1271,13 @@ class CameraImageRequest : public ProtoMessage {
1077
1271
  protected:
1078
1272
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
1079
1273
  };
1080
- class ListEntitiesClimateResponse : public ProtoMessage {
1274
+ class ListEntitiesClimateResponse : public InfoResponseProtoMessage {
1081
1275
  public:
1082
- std::string object_id{};
1083
- uint32_t key{0};
1084
- std::string name{};
1085
- std::string unique_id{};
1276
+ static constexpr uint16_t MESSAGE_TYPE = 46;
1277
+ static constexpr uint16_t ESTIMATED_SIZE = 151;
1278
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1279
+ static constexpr const char *message_name() { return "list_entities_climate_response"; }
1280
+ #endif
1086
1281
  bool supports_current_temperature{false};
1087
1282
  bool supports_two_point_target_temperature{false};
1088
1283
  std::vector<enums::ClimateMode> supported_modes{};
@@ -1096,9 +1291,6 @@ class ListEntitiesClimateResponse : public ProtoMessage {
1096
1291
  std::vector<std::string> supported_custom_fan_modes{};
1097
1292
  std::vector<enums::ClimatePreset> supported_presets{};
1098
1293
  std::vector<std::string> supported_custom_presets{};
1099
- bool disabled_by_default{false};
1100
- std::string icon{};
1101
- enums::EntityCategory entity_category{};
1102
1294
  float visual_current_temperature_step{0.0f};
1103
1295
  bool supports_current_humidity{false};
1104
1296
  bool supports_target_humidity{false};
@@ -1115,9 +1307,13 @@ class ListEntitiesClimateResponse : public ProtoMessage {
1115
1307
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
1116
1308
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
1117
1309
  };
1118
- class ClimateStateResponse : public ProtoMessage {
1310
+ class ClimateStateResponse : public StateResponseProtoMessage {
1119
1311
  public:
1120
- uint32_t key{0};
1312
+ static constexpr uint16_t MESSAGE_TYPE = 47;
1313
+ static constexpr uint16_t ESTIMATED_SIZE = 65;
1314
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1315
+ static constexpr const char *message_name() { return "climate_state_response"; }
1316
+ #endif
1121
1317
  enums::ClimateMode mode{};
1122
1318
  float current_temperature{0.0f};
1123
1319
  float target_temperature{0.0f};
@@ -1145,6 +1341,11 @@ class ClimateStateResponse : public ProtoMessage {
1145
1341
  };
1146
1342
  class ClimateCommandRequest : public ProtoMessage {
1147
1343
  public:
1344
+ static constexpr uint16_t MESSAGE_TYPE = 48;
1345
+ static constexpr uint16_t ESTIMATED_SIZE = 83;
1346
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1347
+ static constexpr const char *message_name() { return "climate_command_request"; }
1348
+ #endif
1148
1349
  uint32_t key{0};
1149
1350
  bool has_mode{false};
1150
1351
  enums::ClimateMode mode{};
@@ -1179,18 +1380,16 @@ class ClimateCommandRequest : public ProtoMessage {
1179
1380
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
1180
1381
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
1181
1382
  };
1182
- class ListEntitiesNumberResponse : public ProtoMessage {
1383
+ class ListEntitiesNumberResponse : public InfoResponseProtoMessage {
1183
1384
  public:
1184
- std::string object_id{};
1185
- uint32_t key{0};
1186
- std::string name{};
1187
- std::string unique_id{};
1188
- std::string icon{};
1385
+ static constexpr uint16_t MESSAGE_TYPE = 49;
1386
+ static constexpr uint16_t ESTIMATED_SIZE = 80;
1387
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1388
+ static constexpr const char *message_name() { return "list_entities_number_response"; }
1389
+ #endif
1189
1390
  float min_value{0.0f};
1190
1391
  float max_value{0.0f};
1191
1392
  float step{0.0f};
1192
- bool disabled_by_default{false};
1193
- enums::EntityCategory entity_category{};
1194
1393
  std::string unit_of_measurement{};
1195
1394
  enums::NumberMode mode{};
1196
1395
  std::string device_class{};
@@ -1205,9 +1404,13 @@ class ListEntitiesNumberResponse : public ProtoMessage {
1205
1404
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
1206
1405
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
1207
1406
  };
1208
- class NumberStateResponse : public ProtoMessage {
1407
+ class NumberStateResponse : public StateResponseProtoMessage {
1209
1408
  public:
1210
- uint32_t key{0};
1409
+ static constexpr uint16_t MESSAGE_TYPE = 50;
1410
+ static constexpr uint16_t ESTIMATED_SIZE = 12;
1411
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1412
+ static constexpr const char *message_name() { return "number_state_response"; }
1413
+ #endif
1211
1414
  float state{0.0f};
1212
1415
  bool missing_state{false};
1213
1416
  void encode(ProtoWriteBuffer buffer) const override;
@@ -1222,6 +1425,11 @@ class NumberStateResponse : public ProtoMessage {
1222
1425
  };
1223
1426
  class NumberCommandRequest : public ProtoMessage {
1224
1427
  public:
1428
+ static constexpr uint16_t MESSAGE_TYPE = 51;
1429
+ static constexpr uint16_t ESTIMATED_SIZE = 10;
1430
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1431
+ static constexpr const char *message_name() { return "number_command_request"; }
1432
+ #endif
1225
1433
  uint32_t key{0};
1226
1434
  float state{0.0f};
1227
1435
  void encode(ProtoWriteBuffer buffer) const override;
@@ -1233,16 +1441,14 @@ class NumberCommandRequest : public ProtoMessage {
1233
1441
  protected:
1234
1442
  bool decode_32bit(uint32_t field_id, Proto32Bit value) override;
1235
1443
  };
1236
- class ListEntitiesSelectResponse : public ProtoMessage {
1444
+ class ListEntitiesSelectResponse : public InfoResponseProtoMessage {
1237
1445
  public:
1238
- std::string object_id{};
1239
- uint32_t key{0};
1240
- std::string name{};
1241
- std::string unique_id{};
1242
- std::string icon{};
1446
+ static constexpr uint16_t MESSAGE_TYPE = 52;
1447
+ static constexpr uint16_t ESTIMATED_SIZE = 63;
1448
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1449
+ static constexpr const char *message_name() { return "list_entities_select_response"; }
1450
+ #endif
1243
1451
  std::vector<std::string> options{};
1244
- bool disabled_by_default{false};
1245
- enums::EntityCategory entity_category{};
1246
1452
  void encode(ProtoWriteBuffer buffer) const override;
1247
1453
  void calculate_size(uint32_t &total_size) const override;
1248
1454
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -1254,9 +1460,13 @@ class ListEntitiesSelectResponse : public ProtoMessage {
1254
1460
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
1255
1461
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
1256
1462
  };
1257
- class SelectStateResponse : public ProtoMessage {
1463
+ class SelectStateResponse : public StateResponseProtoMessage {
1258
1464
  public:
1259
- uint32_t key{0};
1465
+ static constexpr uint16_t MESSAGE_TYPE = 53;
1466
+ static constexpr uint16_t ESTIMATED_SIZE = 16;
1467
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1468
+ static constexpr const char *message_name() { return "select_state_response"; }
1469
+ #endif
1260
1470
  std::string state{};
1261
1471
  bool missing_state{false};
1262
1472
  void encode(ProtoWriteBuffer buffer) const override;
@@ -1272,6 +1482,11 @@ class SelectStateResponse : public ProtoMessage {
1272
1482
  };
1273
1483
  class SelectCommandRequest : public ProtoMessage {
1274
1484
  public:
1485
+ static constexpr uint16_t MESSAGE_TYPE = 54;
1486
+ static constexpr uint16_t ESTIMATED_SIZE = 14;
1487
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1488
+ static constexpr const char *message_name() { return "select_command_request"; }
1489
+ #endif
1275
1490
  uint32_t key{0};
1276
1491
  std::string state{};
1277
1492
  void encode(ProtoWriteBuffer buffer) const override;
@@ -1284,18 +1499,16 @@ class SelectCommandRequest : public ProtoMessage {
1284
1499
  bool decode_32bit(uint32_t field_id, Proto32Bit value) override;
1285
1500
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
1286
1501
  };
1287
- class ListEntitiesSirenResponse : public ProtoMessage {
1502
+ class ListEntitiesSirenResponse : public InfoResponseProtoMessage {
1288
1503
  public:
1289
- std::string object_id{};
1290
- uint32_t key{0};
1291
- std::string name{};
1292
- std::string unique_id{};
1293
- std::string icon{};
1294
- bool disabled_by_default{false};
1504
+ static constexpr uint16_t MESSAGE_TYPE = 55;
1505
+ static constexpr uint16_t ESTIMATED_SIZE = 67;
1506
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1507
+ static constexpr const char *message_name() { return "list_entities_siren_response"; }
1508
+ #endif
1295
1509
  std::vector<std::string> tones{};
1296
1510
  bool supports_duration{false};
1297
1511
  bool supports_volume{false};
1298
- enums::EntityCategory entity_category{};
1299
1512
  void encode(ProtoWriteBuffer buffer) const override;
1300
1513
  void calculate_size(uint32_t &total_size) const override;
1301
1514
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -1307,9 +1520,13 @@ class ListEntitiesSirenResponse : public ProtoMessage {
1307
1520
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
1308
1521
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
1309
1522
  };
1310
- class SirenStateResponse : public ProtoMessage {
1523
+ class SirenStateResponse : public StateResponseProtoMessage {
1311
1524
  public:
1312
- uint32_t key{0};
1525
+ static constexpr uint16_t MESSAGE_TYPE = 56;
1526
+ static constexpr uint16_t ESTIMATED_SIZE = 7;
1527
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1528
+ static constexpr const char *message_name() { return "siren_state_response"; }
1529
+ #endif
1313
1530
  bool state{false};
1314
1531
  void encode(ProtoWriteBuffer buffer) const override;
1315
1532
  void calculate_size(uint32_t &total_size) const override;
@@ -1323,6 +1540,11 @@ class SirenStateResponse : public ProtoMessage {
1323
1540
  };
1324
1541
  class SirenCommandRequest : public ProtoMessage {
1325
1542
  public:
1543
+ static constexpr uint16_t MESSAGE_TYPE = 57;
1544
+ static constexpr uint16_t ESTIMATED_SIZE = 33;
1545
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1546
+ static constexpr const char *message_name() { return "siren_command_request"; }
1547
+ #endif
1326
1548
  uint32_t key{0};
1327
1549
  bool has_state{false};
1328
1550
  bool state{false};
@@ -1343,15 +1565,13 @@ class SirenCommandRequest : public ProtoMessage {
1343
1565
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
1344
1566
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
1345
1567
  };
1346
- class ListEntitiesLockResponse : public ProtoMessage {
1568
+ class ListEntitiesLockResponse : public InfoResponseProtoMessage {
1347
1569
  public:
1348
- std::string object_id{};
1349
- uint32_t key{0};
1350
- std::string name{};
1351
- std::string unique_id{};
1352
- std::string icon{};
1353
- bool disabled_by_default{false};
1354
- enums::EntityCategory entity_category{};
1570
+ static constexpr uint16_t MESSAGE_TYPE = 58;
1571
+ static constexpr uint16_t ESTIMATED_SIZE = 60;
1572
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1573
+ static constexpr const char *message_name() { return "list_entities_lock_response"; }
1574
+ #endif
1355
1575
  bool assumed_state{false};
1356
1576
  bool supports_open{false};
1357
1577
  bool requires_code{false};
@@ -1367,9 +1587,13 @@ class ListEntitiesLockResponse : public ProtoMessage {
1367
1587
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
1368
1588
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
1369
1589
  };
1370
- class LockStateResponse : public ProtoMessage {
1590
+ class LockStateResponse : public StateResponseProtoMessage {
1371
1591
  public:
1372
- uint32_t key{0};
1592
+ static constexpr uint16_t MESSAGE_TYPE = 59;
1593
+ static constexpr uint16_t ESTIMATED_SIZE = 7;
1594
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1595
+ static constexpr const char *message_name() { return "lock_state_response"; }
1596
+ #endif
1373
1597
  enums::LockState state{};
1374
1598
  void encode(ProtoWriteBuffer buffer) const override;
1375
1599
  void calculate_size(uint32_t &total_size) const override;
@@ -1383,6 +1607,11 @@ class LockStateResponse : public ProtoMessage {
1383
1607
  };
1384
1608
  class LockCommandRequest : public ProtoMessage {
1385
1609
  public:
1610
+ static constexpr uint16_t MESSAGE_TYPE = 60;
1611
+ static constexpr uint16_t ESTIMATED_SIZE = 18;
1612
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1613
+ static constexpr const char *message_name() { return "lock_command_request"; }
1614
+ #endif
1386
1615
  uint32_t key{0};
1387
1616
  enums::LockCommand command{};
1388
1617
  bool has_code{false};
@@ -1398,15 +1627,13 @@ class LockCommandRequest : public ProtoMessage {
1398
1627
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
1399
1628
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
1400
1629
  };
1401
- class ListEntitiesButtonResponse : public ProtoMessage {
1630
+ class ListEntitiesButtonResponse : public InfoResponseProtoMessage {
1402
1631
  public:
1403
- std::string object_id{};
1404
- uint32_t key{0};
1405
- std::string name{};
1406
- std::string unique_id{};
1407
- std::string icon{};
1408
- bool disabled_by_default{false};
1409
- enums::EntityCategory entity_category{};
1632
+ static constexpr uint16_t MESSAGE_TYPE = 61;
1633
+ static constexpr uint16_t ESTIMATED_SIZE = 54;
1634
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1635
+ static constexpr const char *message_name() { return "list_entities_button_response"; }
1636
+ #endif
1410
1637
  std::string device_class{};
1411
1638
  void encode(ProtoWriteBuffer buffer) const override;
1412
1639
  void calculate_size(uint32_t &total_size) const override;
@@ -1421,6 +1648,11 @@ class ListEntitiesButtonResponse : public ProtoMessage {
1421
1648
  };
1422
1649
  class ButtonCommandRequest : public ProtoMessage {
1423
1650
  public:
1651
+ static constexpr uint16_t MESSAGE_TYPE = 62;
1652
+ static constexpr uint16_t ESTIMATED_SIZE = 5;
1653
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1654
+ static constexpr const char *message_name() { return "button_command_request"; }
1655
+ #endif
1424
1656
  uint32_t key{0};
1425
1657
  void encode(ProtoWriteBuffer buffer) const override;
1426
1658
  void calculate_size(uint32_t &total_size) const override;
@@ -1448,15 +1680,13 @@ class MediaPlayerSupportedFormat : public ProtoMessage {
1448
1680
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
1449
1681
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
1450
1682
  };
1451
- class ListEntitiesMediaPlayerResponse : public ProtoMessage {
1683
+ class ListEntitiesMediaPlayerResponse : public InfoResponseProtoMessage {
1452
1684
  public:
1453
- std::string object_id{};
1454
- uint32_t key{0};
1455
- std::string name{};
1456
- std::string unique_id{};
1457
- std::string icon{};
1458
- bool disabled_by_default{false};
1459
- enums::EntityCategory entity_category{};
1685
+ static constexpr uint16_t MESSAGE_TYPE = 63;
1686
+ static constexpr uint16_t ESTIMATED_SIZE = 81;
1687
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1688
+ static constexpr const char *message_name() { return "list_entities_media_player_response"; }
1689
+ #endif
1460
1690
  bool supports_pause{false};
1461
1691
  std::vector<MediaPlayerSupportedFormat> supported_formats{};
1462
1692
  void encode(ProtoWriteBuffer buffer) const override;
@@ -1470,9 +1700,13 @@ class ListEntitiesMediaPlayerResponse : public ProtoMessage {
1470
1700
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
1471
1701
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
1472
1702
  };
1473
- class MediaPlayerStateResponse : public ProtoMessage {
1703
+ class MediaPlayerStateResponse : public StateResponseProtoMessage {
1474
1704
  public:
1475
- uint32_t key{0};
1705
+ static constexpr uint16_t MESSAGE_TYPE = 64;
1706
+ static constexpr uint16_t ESTIMATED_SIZE = 14;
1707
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1708
+ static constexpr const char *message_name() { return "media_player_state_response"; }
1709
+ #endif
1476
1710
  enums::MediaPlayerState state{};
1477
1711
  float volume{0.0f};
1478
1712
  bool muted{false};
@@ -1488,6 +1722,11 @@ class MediaPlayerStateResponse : public ProtoMessage {
1488
1722
  };
1489
1723
  class MediaPlayerCommandRequest : public ProtoMessage {
1490
1724
  public:
1725
+ static constexpr uint16_t MESSAGE_TYPE = 65;
1726
+ static constexpr uint16_t ESTIMATED_SIZE = 31;
1727
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1728
+ static constexpr const char *message_name() { return "media_player_command_request"; }
1729
+ #endif
1491
1730
  uint32_t key{0};
1492
1731
  bool has_command{false};
1493
1732
  enums::MediaPlayerCommand command{};
@@ -1510,6 +1749,11 @@ class MediaPlayerCommandRequest : public ProtoMessage {
1510
1749
  };
1511
1750
  class SubscribeBluetoothLEAdvertisementsRequest : public ProtoMessage {
1512
1751
  public:
1752
+ static constexpr uint16_t MESSAGE_TYPE = 66;
1753
+ static constexpr uint16_t ESTIMATED_SIZE = 4;
1754
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1755
+ static constexpr const char *message_name() { return "subscribe_bluetooth_le_advertisements_request"; }
1756
+ #endif
1513
1757
  uint32_t flags{0};
1514
1758
  void encode(ProtoWriteBuffer buffer) const override;
1515
1759
  void calculate_size(uint32_t &total_size) const override;
@@ -1537,6 +1781,11 @@ class BluetoothServiceData : public ProtoMessage {
1537
1781
  };
1538
1782
  class BluetoothLEAdvertisementResponse : public ProtoMessage {
1539
1783
  public:
1784
+ static constexpr uint16_t MESSAGE_TYPE = 67;
1785
+ static constexpr uint16_t ESTIMATED_SIZE = 107;
1786
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1787
+ static constexpr const char *message_name() { return "bluetooth_le_advertisement_response"; }
1788
+ #endif
1540
1789
  uint64_t address{0};
1541
1790
  std::string name{};
1542
1791
  int32_t rssi{0};
@@ -1572,6 +1821,11 @@ class BluetoothLERawAdvertisement : public ProtoMessage {
1572
1821
  };
1573
1822
  class BluetoothLERawAdvertisementsResponse : public ProtoMessage {
1574
1823
  public:
1824
+ static constexpr uint16_t MESSAGE_TYPE = 93;
1825
+ static constexpr uint16_t ESTIMATED_SIZE = 34;
1826
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1827
+ static constexpr const char *message_name() { return "bluetooth_le_raw_advertisements_response"; }
1828
+ #endif
1575
1829
  std::vector<BluetoothLERawAdvertisement> advertisements{};
1576
1830
  void encode(ProtoWriteBuffer buffer) const override;
1577
1831
  void calculate_size(uint32_t &total_size) const override;
@@ -1584,6 +1838,11 @@ class BluetoothLERawAdvertisementsResponse : public ProtoMessage {
1584
1838
  };
1585
1839
  class BluetoothDeviceRequest : public ProtoMessage {
1586
1840
  public:
1841
+ static constexpr uint16_t MESSAGE_TYPE = 68;
1842
+ static constexpr uint16_t ESTIMATED_SIZE = 12;
1843
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1844
+ static constexpr const char *message_name() { return "bluetooth_device_request"; }
1845
+ #endif
1587
1846
  uint64_t address{0};
1588
1847
  enums::BluetoothDeviceRequestType request_type{};
1589
1848
  bool has_address_type{false};
@@ -1599,6 +1858,11 @@ class BluetoothDeviceRequest : public ProtoMessage {
1599
1858
  };
1600
1859
  class BluetoothDeviceConnectionResponse : public ProtoMessage {
1601
1860
  public:
1861
+ static constexpr uint16_t MESSAGE_TYPE = 69;
1862
+ static constexpr uint16_t ESTIMATED_SIZE = 14;
1863
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1864
+ static constexpr const char *message_name() { return "bluetooth_device_connection_response"; }
1865
+ #endif
1602
1866
  uint64_t address{0};
1603
1867
  bool connected{false};
1604
1868
  uint32_t mtu{0};
@@ -1614,6 +1878,11 @@ class BluetoothDeviceConnectionResponse : public ProtoMessage {
1614
1878
  };
1615
1879
  class BluetoothGATTGetServicesRequest : public ProtoMessage {
1616
1880
  public:
1881
+ static constexpr uint16_t MESSAGE_TYPE = 70;
1882
+ static constexpr uint16_t ESTIMATED_SIZE = 4;
1883
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1884
+ static constexpr const char *message_name() { return "bluetooth_gatt_get_services_request"; }
1885
+ #endif
1617
1886
  uint64_t address{0};
1618
1887
  void encode(ProtoWriteBuffer buffer) const override;
1619
1888
  void calculate_size(uint32_t &total_size) const override;
@@ -1670,6 +1939,11 @@ class BluetoothGATTService : public ProtoMessage {
1670
1939
  };
1671
1940
  class BluetoothGATTGetServicesResponse : public ProtoMessage {
1672
1941
  public:
1942
+ static constexpr uint16_t MESSAGE_TYPE = 71;
1943
+ static constexpr uint16_t ESTIMATED_SIZE = 38;
1944
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1945
+ static constexpr const char *message_name() { return "bluetooth_gatt_get_services_response"; }
1946
+ #endif
1673
1947
  uint64_t address{0};
1674
1948
  std::vector<BluetoothGATTService> services{};
1675
1949
  void encode(ProtoWriteBuffer buffer) const override;
@@ -1684,6 +1958,11 @@ class BluetoothGATTGetServicesResponse : public ProtoMessage {
1684
1958
  };
1685
1959
  class BluetoothGATTGetServicesDoneResponse : public ProtoMessage {
1686
1960
  public:
1961
+ static constexpr uint16_t MESSAGE_TYPE = 72;
1962
+ static constexpr uint16_t ESTIMATED_SIZE = 4;
1963
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1964
+ static constexpr const char *message_name() { return "bluetooth_gatt_get_services_done_response"; }
1965
+ #endif
1687
1966
  uint64_t address{0};
1688
1967
  void encode(ProtoWriteBuffer buffer) const override;
1689
1968
  void calculate_size(uint32_t &total_size) const override;
@@ -1696,6 +1975,11 @@ class BluetoothGATTGetServicesDoneResponse : public ProtoMessage {
1696
1975
  };
1697
1976
  class BluetoothGATTReadRequest : public ProtoMessage {
1698
1977
  public:
1978
+ static constexpr uint16_t MESSAGE_TYPE = 73;
1979
+ static constexpr uint16_t ESTIMATED_SIZE = 8;
1980
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1981
+ static constexpr const char *message_name() { return "bluetooth_gatt_read_request"; }
1982
+ #endif
1699
1983
  uint64_t address{0};
1700
1984
  uint32_t handle{0};
1701
1985
  void encode(ProtoWriteBuffer buffer) const override;
@@ -1709,6 +1993,11 @@ class BluetoothGATTReadRequest : public ProtoMessage {
1709
1993
  };
1710
1994
  class BluetoothGATTReadResponse : public ProtoMessage {
1711
1995
  public:
1996
+ static constexpr uint16_t MESSAGE_TYPE = 74;
1997
+ static constexpr uint16_t ESTIMATED_SIZE = 17;
1998
+ #ifdef HAS_PROTO_MESSAGE_DUMP
1999
+ static constexpr const char *message_name() { return "bluetooth_gatt_read_response"; }
2000
+ #endif
1712
2001
  uint64_t address{0};
1713
2002
  uint32_t handle{0};
1714
2003
  std::string data{};
@@ -1724,6 +2013,11 @@ class BluetoothGATTReadResponse : public ProtoMessage {
1724
2013
  };
1725
2014
  class BluetoothGATTWriteRequest : public ProtoMessage {
1726
2015
  public:
2016
+ static constexpr uint16_t MESSAGE_TYPE = 75;
2017
+ static constexpr uint16_t ESTIMATED_SIZE = 19;
2018
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2019
+ static constexpr const char *message_name() { return "bluetooth_gatt_write_request"; }
2020
+ #endif
1727
2021
  uint64_t address{0};
1728
2022
  uint32_t handle{0};
1729
2023
  bool response{false};
@@ -1740,6 +2034,11 @@ class BluetoothGATTWriteRequest : public ProtoMessage {
1740
2034
  };
1741
2035
  class BluetoothGATTReadDescriptorRequest : public ProtoMessage {
1742
2036
  public:
2037
+ static constexpr uint16_t MESSAGE_TYPE = 76;
2038
+ static constexpr uint16_t ESTIMATED_SIZE = 8;
2039
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2040
+ static constexpr const char *message_name() { return "bluetooth_gatt_read_descriptor_request"; }
2041
+ #endif
1743
2042
  uint64_t address{0};
1744
2043
  uint32_t handle{0};
1745
2044
  void encode(ProtoWriteBuffer buffer) const override;
@@ -1753,6 +2052,11 @@ class BluetoothGATTReadDescriptorRequest : public ProtoMessage {
1753
2052
  };
1754
2053
  class BluetoothGATTWriteDescriptorRequest : public ProtoMessage {
1755
2054
  public:
2055
+ static constexpr uint16_t MESSAGE_TYPE = 77;
2056
+ static constexpr uint16_t ESTIMATED_SIZE = 17;
2057
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2058
+ static constexpr const char *message_name() { return "bluetooth_gatt_write_descriptor_request"; }
2059
+ #endif
1756
2060
  uint64_t address{0};
1757
2061
  uint32_t handle{0};
1758
2062
  std::string data{};
@@ -1768,6 +2072,11 @@ class BluetoothGATTWriteDescriptorRequest : public ProtoMessage {
1768
2072
  };
1769
2073
  class BluetoothGATTNotifyRequest : public ProtoMessage {
1770
2074
  public:
2075
+ static constexpr uint16_t MESSAGE_TYPE = 78;
2076
+ static constexpr uint16_t ESTIMATED_SIZE = 10;
2077
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2078
+ static constexpr const char *message_name() { return "bluetooth_gatt_notify_request"; }
2079
+ #endif
1771
2080
  uint64_t address{0};
1772
2081
  uint32_t handle{0};
1773
2082
  bool enable{false};
@@ -1782,6 +2091,11 @@ class BluetoothGATTNotifyRequest : public ProtoMessage {
1782
2091
  };
1783
2092
  class BluetoothGATTNotifyDataResponse : public ProtoMessage {
1784
2093
  public:
2094
+ static constexpr uint16_t MESSAGE_TYPE = 79;
2095
+ static constexpr uint16_t ESTIMATED_SIZE = 17;
2096
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2097
+ static constexpr const char *message_name() { return "bluetooth_gatt_notify_data_response"; }
2098
+ #endif
1785
2099
  uint64_t address{0};
1786
2100
  uint32_t handle{0};
1787
2101
  std::string data{};
@@ -1797,6 +2111,11 @@ class BluetoothGATTNotifyDataResponse : public ProtoMessage {
1797
2111
  };
1798
2112
  class SubscribeBluetoothConnectionsFreeRequest : public ProtoMessage {
1799
2113
  public:
2114
+ static constexpr uint16_t MESSAGE_TYPE = 80;
2115
+ static constexpr uint16_t ESTIMATED_SIZE = 0;
2116
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2117
+ static constexpr const char *message_name() { return "subscribe_bluetooth_connections_free_request"; }
2118
+ #endif
1800
2119
  void encode(ProtoWriteBuffer buffer) const override;
1801
2120
  void calculate_size(uint32_t &total_size) const override;
1802
2121
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -1807,6 +2126,11 @@ class SubscribeBluetoothConnectionsFreeRequest : public ProtoMessage {
1807
2126
  };
1808
2127
  class BluetoothConnectionsFreeResponse : public ProtoMessage {
1809
2128
  public:
2129
+ static constexpr uint16_t MESSAGE_TYPE = 81;
2130
+ static constexpr uint16_t ESTIMATED_SIZE = 16;
2131
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2132
+ static constexpr const char *message_name() { return "bluetooth_connections_free_response"; }
2133
+ #endif
1810
2134
  uint32_t free{0};
1811
2135
  uint32_t limit{0};
1812
2136
  std::vector<uint64_t> allocated{};
@@ -1821,6 +2145,11 @@ class BluetoothConnectionsFreeResponse : public ProtoMessage {
1821
2145
  };
1822
2146
  class BluetoothGATTErrorResponse : public ProtoMessage {
1823
2147
  public:
2148
+ static constexpr uint16_t MESSAGE_TYPE = 82;
2149
+ static constexpr uint16_t ESTIMATED_SIZE = 12;
2150
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2151
+ static constexpr const char *message_name() { return "bluetooth_gatt_error_response"; }
2152
+ #endif
1824
2153
  uint64_t address{0};
1825
2154
  uint32_t handle{0};
1826
2155
  int32_t error{0};
@@ -1835,6 +2164,11 @@ class BluetoothGATTErrorResponse : public ProtoMessage {
1835
2164
  };
1836
2165
  class BluetoothGATTWriteResponse : public ProtoMessage {
1837
2166
  public:
2167
+ static constexpr uint16_t MESSAGE_TYPE = 83;
2168
+ static constexpr uint16_t ESTIMATED_SIZE = 8;
2169
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2170
+ static constexpr const char *message_name() { return "bluetooth_gatt_write_response"; }
2171
+ #endif
1838
2172
  uint64_t address{0};
1839
2173
  uint32_t handle{0};
1840
2174
  void encode(ProtoWriteBuffer buffer) const override;
@@ -1848,6 +2182,11 @@ class BluetoothGATTWriteResponse : public ProtoMessage {
1848
2182
  };
1849
2183
  class BluetoothGATTNotifyResponse : public ProtoMessage {
1850
2184
  public:
2185
+ static constexpr uint16_t MESSAGE_TYPE = 84;
2186
+ static constexpr uint16_t ESTIMATED_SIZE = 8;
2187
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2188
+ static constexpr const char *message_name() { return "bluetooth_gatt_notify_response"; }
2189
+ #endif
1851
2190
  uint64_t address{0};
1852
2191
  uint32_t handle{0};
1853
2192
  void encode(ProtoWriteBuffer buffer) const override;
@@ -1861,6 +2200,11 @@ class BluetoothGATTNotifyResponse : public ProtoMessage {
1861
2200
  };
1862
2201
  class BluetoothDevicePairingResponse : public ProtoMessage {
1863
2202
  public:
2203
+ static constexpr uint16_t MESSAGE_TYPE = 85;
2204
+ static constexpr uint16_t ESTIMATED_SIZE = 10;
2205
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2206
+ static constexpr const char *message_name() { return "bluetooth_device_pairing_response"; }
2207
+ #endif
1864
2208
  uint64_t address{0};
1865
2209
  bool paired{false};
1866
2210
  int32_t error{0};
@@ -1875,6 +2219,11 @@ class BluetoothDevicePairingResponse : public ProtoMessage {
1875
2219
  };
1876
2220
  class BluetoothDeviceUnpairingResponse : public ProtoMessage {
1877
2221
  public:
2222
+ static constexpr uint16_t MESSAGE_TYPE = 86;
2223
+ static constexpr uint16_t ESTIMATED_SIZE = 10;
2224
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2225
+ static constexpr const char *message_name() { return "bluetooth_device_unpairing_response"; }
2226
+ #endif
1878
2227
  uint64_t address{0};
1879
2228
  bool success{false};
1880
2229
  int32_t error{0};
@@ -1889,6 +2238,11 @@ class BluetoothDeviceUnpairingResponse : public ProtoMessage {
1889
2238
  };
1890
2239
  class UnsubscribeBluetoothLEAdvertisementsRequest : public ProtoMessage {
1891
2240
  public:
2241
+ static constexpr uint16_t MESSAGE_TYPE = 87;
2242
+ static constexpr uint16_t ESTIMATED_SIZE = 0;
2243
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2244
+ static constexpr const char *message_name() { return "unsubscribe_bluetooth_le_advertisements_request"; }
2245
+ #endif
1892
2246
  void encode(ProtoWriteBuffer buffer) const override;
1893
2247
  void calculate_size(uint32_t &total_size) const override;
1894
2248
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -1899,6 +2253,11 @@ class UnsubscribeBluetoothLEAdvertisementsRequest : public ProtoMessage {
1899
2253
  };
1900
2254
  class BluetoothDeviceClearCacheResponse : public ProtoMessage {
1901
2255
  public:
2256
+ static constexpr uint16_t MESSAGE_TYPE = 88;
2257
+ static constexpr uint16_t ESTIMATED_SIZE = 10;
2258
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2259
+ static constexpr const char *message_name() { return "bluetooth_device_clear_cache_response"; }
2260
+ #endif
1902
2261
  uint64_t address{0};
1903
2262
  bool success{false};
1904
2263
  int32_t error{0};
@@ -1913,6 +2272,11 @@ class BluetoothDeviceClearCacheResponse : public ProtoMessage {
1913
2272
  };
1914
2273
  class BluetoothScannerStateResponse : public ProtoMessage {
1915
2274
  public:
2275
+ static constexpr uint16_t MESSAGE_TYPE = 126;
2276
+ static constexpr uint16_t ESTIMATED_SIZE = 4;
2277
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2278
+ static constexpr const char *message_name() { return "bluetooth_scanner_state_response"; }
2279
+ #endif
1916
2280
  enums::BluetoothScannerState state{};
1917
2281
  enums::BluetoothScannerMode mode{};
1918
2282
  void encode(ProtoWriteBuffer buffer) const override;
@@ -1926,6 +2290,11 @@ class BluetoothScannerStateResponse : public ProtoMessage {
1926
2290
  };
1927
2291
  class BluetoothScannerSetModeRequest : public ProtoMessage {
1928
2292
  public:
2293
+ static constexpr uint16_t MESSAGE_TYPE = 127;
2294
+ static constexpr uint16_t ESTIMATED_SIZE = 2;
2295
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2296
+ static constexpr const char *message_name() { return "bluetooth_scanner_set_mode_request"; }
2297
+ #endif
1929
2298
  enums::BluetoothScannerMode mode{};
1930
2299
  void encode(ProtoWriteBuffer buffer) const override;
1931
2300
  void calculate_size(uint32_t &total_size) const override;
@@ -1938,6 +2307,11 @@ class BluetoothScannerSetModeRequest : public ProtoMessage {
1938
2307
  };
1939
2308
  class SubscribeVoiceAssistantRequest : public ProtoMessage {
1940
2309
  public:
2310
+ static constexpr uint16_t MESSAGE_TYPE = 89;
2311
+ static constexpr uint16_t ESTIMATED_SIZE = 6;
2312
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2313
+ static constexpr const char *message_name() { return "subscribe_voice_assistant_request"; }
2314
+ #endif
1941
2315
  bool subscribe{false};
1942
2316
  uint32_t flags{0};
1943
2317
  void encode(ProtoWriteBuffer buffer) const override;
@@ -1966,6 +2340,11 @@ class VoiceAssistantAudioSettings : public ProtoMessage {
1966
2340
  };
1967
2341
  class VoiceAssistantRequest : public ProtoMessage {
1968
2342
  public:
2343
+ static constexpr uint16_t MESSAGE_TYPE = 90;
2344
+ static constexpr uint16_t ESTIMATED_SIZE = 41;
2345
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2346
+ static constexpr const char *message_name() { return "voice_assistant_request"; }
2347
+ #endif
1969
2348
  bool start{false};
1970
2349
  std::string conversation_id{};
1971
2350
  uint32_t flags{0};
@@ -1983,6 +2362,11 @@ class VoiceAssistantRequest : public ProtoMessage {
1983
2362
  };
1984
2363
  class VoiceAssistantResponse : public ProtoMessage {
1985
2364
  public:
2365
+ static constexpr uint16_t MESSAGE_TYPE = 91;
2366
+ static constexpr uint16_t ESTIMATED_SIZE = 6;
2367
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2368
+ static constexpr const char *message_name() { return "voice_assistant_response"; }
2369
+ #endif
1986
2370
  uint32_t port{0};
1987
2371
  bool error{false};
1988
2372
  void encode(ProtoWriteBuffer buffer) const override;
@@ -2009,6 +2393,11 @@ class VoiceAssistantEventData : public ProtoMessage {
2009
2393
  };
2010
2394
  class VoiceAssistantEventResponse : public ProtoMessage {
2011
2395
  public:
2396
+ static constexpr uint16_t MESSAGE_TYPE = 92;
2397
+ static constexpr uint16_t ESTIMATED_SIZE = 36;
2398
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2399
+ static constexpr const char *message_name() { return "voice_assistant_event_response"; }
2400
+ #endif
2012
2401
  enums::VoiceAssistantEvent event_type{};
2013
2402
  std::vector<VoiceAssistantEventData> data{};
2014
2403
  void encode(ProtoWriteBuffer buffer) const override;
@@ -2023,6 +2412,11 @@ class VoiceAssistantEventResponse : public ProtoMessage {
2023
2412
  };
2024
2413
  class VoiceAssistantAudio : public ProtoMessage {
2025
2414
  public:
2415
+ static constexpr uint16_t MESSAGE_TYPE = 106;
2416
+ static constexpr uint16_t ESTIMATED_SIZE = 11;
2417
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2418
+ static constexpr const char *message_name() { return "voice_assistant_audio"; }
2419
+ #endif
2026
2420
  std::string data{};
2027
2421
  bool end{false};
2028
2422
  void encode(ProtoWriteBuffer buffer) const override;
@@ -2037,6 +2431,11 @@ class VoiceAssistantAudio : public ProtoMessage {
2037
2431
  };
2038
2432
  class VoiceAssistantTimerEventResponse : public ProtoMessage {
2039
2433
  public:
2434
+ static constexpr uint16_t MESSAGE_TYPE = 115;
2435
+ static constexpr uint16_t ESTIMATED_SIZE = 30;
2436
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2437
+ static constexpr const char *message_name() { return "voice_assistant_timer_event_response"; }
2438
+ #endif
2040
2439
  enums::VoiceAssistantTimerEvent event_type{};
2041
2440
  std::string timer_id{};
2042
2441
  std::string name{};
@@ -2055,6 +2454,11 @@ class VoiceAssistantTimerEventResponse : public ProtoMessage {
2055
2454
  };
2056
2455
  class VoiceAssistantAnnounceRequest : public ProtoMessage {
2057
2456
  public:
2457
+ static constexpr uint16_t MESSAGE_TYPE = 119;
2458
+ static constexpr uint16_t ESTIMATED_SIZE = 29;
2459
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2460
+ static constexpr const char *message_name() { return "voice_assistant_announce_request"; }
2461
+ #endif
2058
2462
  std::string media_id{};
2059
2463
  std::string text{};
2060
2464
  std::string preannounce_media_id{};
@@ -2071,6 +2475,11 @@ class VoiceAssistantAnnounceRequest : public ProtoMessage {
2071
2475
  };
2072
2476
  class VoiceAssistantAnnounceFinished : public ProtoMessage {
2073
2477
  public:
2478
+ static constexpr uint16_t MESSAGE_TYPE = 120;
2479
+ static constexpr uint16_t ESTIMATED_SIZE = 2;
2480
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2481
+ static constexpr const char *message_name() { return "voice_assistant_announce_finished"; }
2482
+ #endif
2074
2483
  bool success{false};
2075
2484
  void encode(ProtoWriteBuffer buffer) const override;
2076
2485
  void calculate_size(uint32_t &total_size) const override;
@@ -2097,6 +2506,11 @@ class VoiceAssistantWakeWord : public ProtoMessage {
2097
2506
  };
2098
2507
  class VoiceAssistantConfigurationRequest : public ProtoMessage {
2099
2508
  public:
2509
+ static constexpr uint16_t MESSAGE_TYPE = 121;
2510
+ static constexpr uint16_t ESTIMATED_SIZE = 0;
2511
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2512
+ static constexpr const char *message_name() { return "voice_assistant_configuration_request"; }
2513
+ #endif
2100
2514
  void encode(ProtoWriteBuffer buffer) const override;
2101
2515
  void calculate_size(uint32_t &total_size) const override;
2102
2516
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -2107,6 +2521,11 @@ class VoiceAssistantConfigurationRequest : public ProtoMessage {
2107
2521
  };
2108
2522
  class VoiceAssistantConfigurationResponse : public ProtoMessage {
2109
2523
  public:
2524
+ static constexpr uint16_t MESSAGE_TYPE = 122;
2525
+ static constexpr uint16_t ESTIMATED_SIZE = 56;
2526
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2527
+ static constexpr const char *message_name() { return "voice_assistant_configuration_response"; }
2528
+ #endif
2110
2529
  std::vector<VoiceAssistantWakeWord> available_wake_words{};
2111
2530
  std::vector<std::string> active_wake_words{};
2112
2531
  uint32_t max_active_wake_words{0};
@@ -2122,6 +2541,11 @@ class VoiceAssistantConfigurationResponse : public ProtoMessage {
2122
2541
  };
2123
2542
  class VoiceAssistantSetConfiguration : public ProtoMessage {
2124
2543
  public:
2544
+ static constexpr uint16_t MESSAGE_TYPE = 123;
2545
+ static constexpr uint16_t ESTIMATED_SIZE = 18;
2546
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2547
+ static constexpr const char *message_name() { return "voice_assistant_set_configuration"; }
2548
+ #endif
2125
2549
  std::vector<std::string> active_wake_words{};
2126
2550
  void encode(ProtoWriteBuffer buffer) const override;
2127
2551
  void calculate_size(uint32_t &total_size) const override;
@@ -2132,15 +2556,13 @@ class VoiceAssistantSetConfiguration : public ProtoMessage {
2132
2556
  protected:
2133
2557
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
2134
2558
  };
2135
- class ListEntitiesAlarmControlPanelResponse : public ProtoMessage {
2559
+ class ListEntitiesAlarmControlPanelResponse : public InfoResponseProtoMessage {
2136
2560
  public:
2137
- std::string object_id{};
2138
- uint32_t key{0};
2139
- std::string name{};
2140
- std::string unique_id{};
2141
- std::string icon{};
2142
- bool disabled_by_default{false};
2143
- enums::EntityCategory entity_category{};
2561
+ static constexpr uint16_t MESSAGE_TYPE = 94;
2562
+ static constexpr uint16_t ESTIMATED_SIZE = 53;
2563
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2564
+ static constexpr const char *message_name() { return "list_entities_alarm_control_panel_response"; }
2565
+ #endif
2144
2566
  uint32_t supported_features{0};
2145
2567
  bool requires_code{false};
2146
2568
  bool requires_code_to_arm{false};
@@ -2155,9 +2577,13 @@ class ListEntitiesAlarmControlPanelResponse : public ProtoMessage {
2155
2577
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
2156
2578
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
2157
2579
  };
2158
- class AlarmControlPanelStateResponse : public ProtoMessage {
2580
+ class AlarmControlPanelStateResponse : public StateResponseProtoMessage {
2159
2581
  public:
2160
- uint32_t key{0};
2582
+ static constexpr uint16_t MESSAGE_TYPE = 95;
2583
+ static constexpr uint16_t ESTIMATED_SIZE = 7;
2584
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2585
+ static constexpr const char *message_name() { return "alarm_control_panel_state_response"; }
2586
+ #endif
2161
2587
  enums::AlarmControlPanelState state{};
2162
2588
  void encode(ProtoWriteBuffer buffer) const override;
2163
2589
  void calculate_size(uint32_t &total_size) const override;
@@ -2171,6 +2597,11 @@ class AlarmControlPanelStateResponse : public ProtoMessage {
2171
2597
  };
2172
2598
  class AlarmControlPanelCommandRequest : public ProtoMessage {
2173
2599
  public:
2600
+ static constexpr uint16_t MESSAGE_TYPE = 96;
2601
+ static constexpr uint16_t ESTIMATED_SIZE = 16;
2602
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2603
+ static constexpr const char *message_name() { return "alarm_control_panel_command_request"; }
2604
+ #endif
2174
2605
  uint32_t key{0};
2175
2606
  enums::AlarmControlPanelStateCommand command{};
2176
2607
  std::string code{};
@@ -2185,15 +2616,13 @@ class AlarmControlPanelCommandRequest : public ProtoMessage {
2185
2616
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
2186
2617
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
2187
2618
  };
2188
- class ListEntitiesTextResponse : public ProtoMessage {
2619
+ class ListEntitiesTextResponse : public InfoResponseProtoMessage {
2189
2620
  public:
2190
- std::string object_id{};
2191
- uint32_t key{0};
2192
- std::string name{};
2193
- std::string unique_id{};
2194
- std::string icon{};
2195
- bool disabled_by_default{false};
2196
- enums::EntityCategory entity_category{};
2621
+ static constexpr uint16_t MESSAGE_TYPE = 97;
2622
+ static constexpr uint16_t ESTIMATED_SIZE = 64;
2623
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2624
+ static constexpr const char *message_name() { return "list_entities_text_response"; }
2625
+ #endif
2197
2626
  uint32_t min_length{0};
2198
2627
  uint32_t max_length{0};
2199
2628
  std::string pattern{};
@@ -2209,9 +2638,13 @@ class ListEntitiesTextResponse : public ProtoMessage {
2209
2638
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
2210
2639
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
2211
2640
  };
2212
- class TextStateResponse : public ProtoMessage {
2641
+ class TextStateResponse : public StateResponseProtoMessage {
2213
2642
  public:
2214
- uint32_t key{0};
2643
+ static constexpr uint16_t MESSAGE_TYPE = 98;
2644
+ static constexpr uint16_t ESTIMATED_SIZE = 16;
2645
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2646
+ static constexpr const char *message_name() { return "text_state_response"; }
2647
+ #endif
2215
2648
  std::string state{};
2216
2649
  bool missing_state{false};
2217
2650
  void encode(ProtoWriteBuffer buffer) const override;
@@ -2227,6 +2660,11 @@ class TextStateResponse : public ProtoMessage {
2227
2660
  };
2228
2661
  class TextCommandRequest : public ProtoMessage {
2229
2662
  public:
2663
+ static constexpr uint16_t MESSAGE_TYPE = 99;
2664
+ static constexpr uint16_t ESTIMATED_SIZE = 14;
2665
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2666
+ static constexpr const char *message_name() { return "text_command_request"; }
2667
+ #endif
2230
2668
  uint32_t key{0};
2231
2669
  std::string state{};
2232
2670
  void encode(ProtoWriteBuffer buffer) const override;
@@ -2239,15 +2677,13 @@ class TextCommandRequest : public ProtoMessage {
2239
2677
  bool decode_32bit(uint32_t field_id, Proto32Bit value) override;
2240
2678
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
2241
2679
  };
2242
- class ListEntitiesDateResponse : public ProtoMessage {
2680
+ class ListEntitiesDateResponse : public InfoResponseProtoMessage {
2243
2681
  public:
2244
- std::string object_id{};
2245
- uint32_t key{0};
2246
- std::string name{};
2247
- std::string unique_id{};
2248
- std::string icon{};
2249
- bool disabled_by_default{false};
2250
- enums::EntityCategory entity_category{};
2682
+ static constexpr uint16_t MESSAGE_TYPE = 100;
2683
+ static constexpr uint16_t ESTIMATED_SIZE = 45;
2684
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2685
+ static constexpr const char *message_name() { return "list_entities_date_response"; }
2686
+ #endif
2251
2687
  void encode(ProtoWriteBuffer buffer) const override;
2252
2688
  void calculate_size(uint32_t &total_size) const override;
2253
2689
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -2259,9 +2695,13 @@ class ListEntitiesDateResponse : public ProtoMessage {
2259
2695
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
2260
2696
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
2261
2697
  };
2262
- class DateStateResponse : public ProtoMessage {
2698
+ class DateStateResponse : public StateResponseProtoMessage {
2263
2699
  public:
2264
- uint32_t key{0};
2700
+ static constexpr uint16_t MESSAGE_TYPE = 101;
2701
+ static constexpr uint16_t ESTIMATED_SIZE = 19;
2702
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2703
+ static constexpr const char *message_name() { return "date_state_response"; }
2704
+ #endif
2265
2705
  bool missing_state{false};
2266
2706
  uint32_t year{0};
2267
2707
  uint32_t month{0};
@@ -2278,6 +2718,11 @@ class DateStateResponse : public ProtoMessage {
2278
2718
  };
2279
2719
  class DateCommandRequest : public ProtoMessage {
2280
2720
  public:
2721
+ static constexpr uint16_t MESSAGE_TYPE = 102;
2722
+ static constexpr uint16_t ESTIMATED_SIZE = 17;
2723
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2724
+ static constexpr const char *message_name() { return "date_command_request"; }
2725
+ #endif
2281
2726
  uint32_t key{0};
2282
2727
  uint32_t year{0};
2283
2728
  uint32_t month{0};
@@ -2292,15 +2737,13 @@ class DateCommandRequest : public ProtoMessage {
2292
2737
  bool decode_32bit(uint32_t field_id, Proto32Bit value) override;
2293
2738
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
2294
2739
  };
2295
- class ListEntitiesTimeResponse : public ProtoMessage {
2740
+ class ListEntitiesTimeResponse : public InfoResponseProtoMessage {
2296
2741
  public:
2297
- std::string object_id{};
2298
- uint32_t key{0};
2299
- std::string name{};
2300
- std::string unique_id{};
2301
- std::string icon{};
2302
- bool disabled_by_default{false};
2303
- enums::EntityCategory entity_category{};
2742
+ static constexpr uint16_t MESSAGE_TYPE = 103;
2743
+ static constexpr uint16_t ESTIMATED_SIZE = 45;
2744
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2745
+ static constexpr const char *message_name() { return "list_entities_time_response"; }
2746
+ #endif
2304
2747
  void encode(ProtoWriteBuffer buffer) const override;
2305
2748
  void calculate_size(uint32_t &total_size) const override;
2306
2749
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -2312,9 +2755,13 @@ class ListEntitiesTimeResponse : public ProtoMessage {
2312
2755
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
2313
2756
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
2314
2757
  };
2315
- class TimeStateResponse : public ProtoMessage {
2758
+ class TimeStateResponse : public StateResponseProtoMessage {
2316
2759
  public:
2317
- uint32_t key{0};
2760
+ static constexpr uint16_t MESSAGE_TYPE = 104;
2761
+ static constexpr uint16_t ESTIMATED_SIZE = 19;
2762
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2763
+ static constexpr const char *message_name() { return "time_state_response"; }
2764
+ #endif
2318
2765
  bool missing_state{false};
2319
2766
  uint32_t hour{0};
2320
2767
  uint32_t minute{0};
@@ -2331,6 +2778,11 @@ class TimeStateResponse : public ProtoMessage {
2331
2778
  };
2332
2779
  class TimeCommandRequest : public ProtoMessage {
2333
2780
  public:
2781
+ static constexpr uint16_t MESSAGE_TYPE = 105;
2782
+ static constexpr uint16_t ESTIMATED_SIZE = 17;
2783
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2784
+ static constexpr const char *message_name() { return "time_command_request"; }
2785
+ #endif
2334
2786
  uint32_t key{0};
2335
2787
  uint32_t hour{0};
2336
2788
  uint32_t minute{0};
@@ -2345,15 +2797,13 @@ class TimeCommandRequest : public ProtoMessage {
2345
2797
  bool decode_32bit(uint32_t field_id, Proto32Bit value) override;
2346
2798
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
2347
2799
  };
2348
- class ListEntitiesEventResponse : public ProtoMessage {
2800
+ class ListEntitiesEventResponse : public InfoResponseProtoMessage {
2349
2801
  public:
2350
- std::string object_id{};
2351
- uint32_t key{0};
2352
- std::string name{};
2353
- std::string unique_id{};
2354
- std::string icon{};
2355
- bool disabled_by_default{false};
2356
- enums::EntityCategory entity_category{};
2802
+ static constexpr uint16_t MESSAGE_TYPE = 107;
2803
+ static constexpr uint16_t ESTIMATED_SIZE = 72;
2804
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2805
+ static constexpr const char *message_name() { return "list_entities_event_response"; }
2806
+ #endif
2357
2807
  std::string device_class{};
2358
2808
  std::vector<std::string> event_types{};
2359
2809
  void encode(ProtoWriteBuffer buffer) const override;
@@ -2367,9 +2817,13 @@ class ListEntitiesEventResponse : public ProtoMessage {
2367
2817
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
2368
2818
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
2369
2819
  };
2370
- class EventResponse : public ProtoMessage {
2820
+ class EventResponse : public StateResponseProtoMessage {
2371
2821
  public:
2372
- uint32_t key{0};
2822
+ static constexpr uint16_t MESSAGE_TYPE = 108;
2823
+ static constexpr uint16_t ESTIMATED_SIZE = 14;
2824
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2825
+ static constexpr const char *message_name() { return "event_response"; }
2826
+ #endif
2373
2827
  std::string event_type{};
2374
2828
  void encode(ProtoWriteBuffer buffer) const override;
2375
2829
  void calculate_size(uint32_t &total_size) const override;
@@ -2381,15 +2835,13 @@ class EventResponse : public ProtoMessage {
2381
2835
  bool decode_32bit(uint32_t field_id, Proto32Bit value) override;
2382
2836
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
2383
2837
  };
2384
- class ListEntitiesValveResponse : public ProtoMessage {
2838
+ class ListEntitiesValveResponse : public InfoResponseProtoMessage {
2385
2839
  public:
2386
- std::string object_id{};
2387
- uint32_t key{0};
2388
- std::string name{};
2389
- std::string unique_id{};
2390
- std::string icon{};
2391
- bool disabled_by_default{false};
2392
- enums::EntityCategory entity_category{};
2840
+ static constexpr uint16_t MESSAGE_TYPE = 109;
2841
+ static constexpr uint16_t ESTIMATED_SIZE = 60;
2842
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2843
+ static constexpr const char *message_name() { return "list_entities_valve_response"; }
2844
+ #endif
2393
2845
  std::string device_class{};
2394
2846
  bool assumed_state{false};
2395
2847
  bool supports_position{false};
@@ -2405,9 +2857,13 @@ class ListEntitiesValveResponse : public ProtoMessage {
2405
2857
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
2406
2858
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
2407
2859
  };
2408
- class ValveStateResponse : public ProtoMessage {
2860
+ class ValveStateResponse : public StateResponseProtoMessage {
2409
2861
  public:
2410
- uint32_t key{0};
2862
+ static constexpr uint16_t MESSAGE_TYPE = 110;
2863
+ static constexpr uint16_t ESTIMATED_SIZE = 12;
2864
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2865
+ static constexpr const char *message_name() { return "valve_state_response"; }
2866
+ #endif
2411
2867
  float position{0.0f};
2412
2868
  enums::ValveOperation current_operation{};
2413
2869
  void encode(ProtoWriteBuffer buffer) const override;
@@ -2422,6 +2878,11 @@ class ValveStateResponse : public ProtoMessage {
2422
2878
  };
2423
2879
  class ValveCommandRequest : public ProtoMessage {
2424
2880
  public:
2881
+ static constexpr uint16_t MESSAGE_TYPE = 111;
2882
+ static constexpr uint16_t ESTIMATED_SIZE = 14;
2883
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2884
+ static constexpr const char *message_name() { return "valve_command_request"; }
2885
+ #endif
2425
2886
  uint32_t key{0};
2426
2887
  bool has_position{false};
2427
2888
  float position{0.0f};
@@ -2436,15 +2897,13 @@ class ValveCommandRequest : public ProtoMessage {
2436
2897
  bool decode_32bit(uint32_t field_id, Proto32Bit value) override;
2437
2898
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
2438
2899
  };
2439
- class ListEntitiesDateTimeResponse : public ProtoMessage {
2900
+ class ListEntitiesDateTimeResponse : public InfoResponseProtoMessage {
2440
2901
  public:
2441
- std::string object_id{};
2442
- uint32_t key{0};
2443
- std::string name{};
2444
- std::string unique_id{};
2445
- std::string icon{};
2446
- bool disabled_by_default{false};
2447
- enums::EntityCategory entity_category{};
2902
+ static constexpr uint16_t MESSAGE_TYPE = 112;
2903
+ static constexpr uint16_t ESTIMATED_SIZE = 45;
2904
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2905
+ static constexpr const char *message_name() { return "list_entities_date_time_response"; }
2906
+ #endif
2448
2907
  void encode(ProtoWriteBuffer buffer) const override;
2449
2908
  void calculate_size(uint32_t &total_size) const override;
2450
2909
  #ifdef HAS_PROTO_MESSAGE_DUMP
@@ -2456,9 +2915,13 @@ class ListEntitiesDateTimeResponse : public ProtoMessage {
2456
2915
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
2457
2916
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
2458
2917
  };
2459
- class DateTimeStateResponse : public ProtoMessage {
2918
+ class DateTimeStateResponse : public StateResponseProtoMessage {
2460
2919
  public:
2461
- uint32_t key{0};
2920
+ static constexpr uint16_t MESSAGE_TYPE = 113;
2921
+ static constexpr uint16_t ESTIMATED_SIZE = 12;
2922
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2923
+ static constexpr const char *message_name() { return "date_time_state_response"; }
2924
+ #endif
2462
2925
  bool missing_state{false};
2463
2926
  uint32_t epoch_seconds{0};
2464
2927
  void encode(ProtoWriteBuffer buffer) const override;
@@ -2473,6 +2936,11 @@ class DateTimeStateResponse : public ProtoMessage {
2473
2936
  };
2474
2937
  class DateTimeCommandRequest : public ProtoMessage {
2475
2938
  public:
2939
+ static constexpr uint16_t MESSAGE_TYPE = 114;
2940
+ static constexpr uint16_t ESTIMATED_SIZE = 10;
2941
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2942
+ static constexpr const char *message_name() { return "date_time_command_request"; }
2943
+ #endif
2476
2944
  uint32_t key{0};
2477
2945
  uint32_t epoch_seconds{0};
2478
2946
  void encode(ProtoWriteBuffer buffer) const override;
@@ -2484,15 +2952,13 @@ class DateTimeCommandRequest : public ProtoMessage {
2484
2952
  protected:
2485
2953
  bool decode_32bit(uint32_t field_id, Proto32Bit value) override;
2486
2954
  };
2487
- class ListEntitiesUpdateResponse : public ProtoMessage {
2955
+ class ListEntitiesUpdateResponse : public InfoResponseProtoMessage {
2488
2956
  public:
2489
- std::string object_id{};
2490
- uint32_t key{0};
2491
- std::string name{};
2492
- std::string unique_id{};
2493
- std::string icon{};
2494
- bool disabled_by_default{false};
2495
- enums::EntityCategory entity_category{};
2957
+ static constexpr uint16_t MESSAGE_TYPE = 116;
2958
+ static constexpr uint16_t ESTIMATED_SIZE = 54;
2959
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2960
+ static constexpr const char *message_name() { return "list_entities_update_response"; }
2961
+ #endif
2496
2962
  std::string device_class{};
2497
2963
  void encode(ProtoWriteBuffer buffer) const override;
2498
2964
  void calculate_size(uint32_t &total_size) const override;
@@ -2505,9 +2971,13 @@ class ListEntitiesUpdateResponse : public ProtoMessage {
2505
2971
  bool decode_length(uint32_t field_id, ProtoLengthDelimited value) override;
2506
2972
  bool decode_varint(uint32_t field_id, ProtoVarInt value) override;
2507
2973
  };
2508
- class UpdateStateResponse : public ProtoMessage {
2974
+ class UpdateStateResponse : public StateResponseProtoMessage {
2509
2975
  public:
2510
- uint32_t key{0};
2976
+ static constexpr uint16_t MESSAGE_TYPE = 117;
2977
+ static constexpr uint16_t ESTIMATED_SIZE = 61;
2978
+ #ifdef HAS_PROTO_MESSAGE_DUMP
2979
+ static constexpr const char *message_name() { return "update_state_response"; }
2980
+ #endif
2511
2981
  bool missing_state{false};
2512
2982
  bool in_progress{false};
2513
2983
  bool has_progress{false};
@@ -2530,6 +3000,11 @@ class UpdateStateResponse : public ProtoMessage {
2530
3000
  };
2531
3001
  class UpdateCommandRequest : public ProtoMessage {
2532
3002
  public:
3003
+ static constexpr uint16_t MESSAGE_TYPE = 118;
3004
+ static constexpr uint16_t ESTIMATED_SIZE = 7;
3005
+ #ifdef HAS_PROTO_MESSAGE_DUMP
3006
+ static constexpr const char *message_name() { return "update_command_request"; }
3007
+ #endif
2533
3008
  uint32_t key{0};
2534
3009
  enums::UpdateCommand command{};
2535
3010
  void encode(ProtoWriteBuffer buffer) const override;