esphome 2025.6.2__py3-none-any.whl → 2025.7.0b1__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 (601) hide show
  1. esphome/__main__.py +1 -3
  2. esphome/codegen.py +2 -0
  3. esphome/components/ac_dimmer/ac_dimmer.cpp +6 -6
  4. esphome/components/adc/__init__.py +25 -1
  5. esphome/components/adc/adc_sensor.h +11 -11
  6. esphome/components/adc/adc_sensor_common.cpp +1 -1
  7. esphome/components/adc/adc_sensor_esp32.cpp +16 -8
  8. esphome/components/ade7880/ade7880.h +0 -2
  9. esphome/components/ads1115/ads1115.h +0 -1
  10. esphome/components/ads1118/ads1118.h +0 -1
  11. esphome/components/ags10/ags10.h +0 -2
  12. esphome/components/aic3204/aic3204.h +0 -1
  13. esphome/components/alarm_control_panel/__init__.py +5 -2
  14. esphome/components/alpha3/alpha3.h +0 -1
  15. esphome/components/am43/cover/am43_cover.h +0 -1
  16. esphome/components/am43/sensor/am43_sensor.h +0 -1
  17. esphome/components/analog_threshold/analog_threshold_binary_sensor.h +0 -2
  18. esphome/components/anova/anova.cpp +5 -1
  19. esphome/components/anova/anova.h +0 -1
  20. esphome/components/apds9960/apds9960.cpp +1 -1
  21. esphome/components/api/__init__.py +42 -20
  22. esphome/components/api/api_connection.cpp +318 -391
  23. esphome/components/api/api_connection.h +206 -126
  24. esphome/components/api/api_frame_helper.cpp +89 -124
  25. esphome/components/api/api_frame_helper.h +57 -45
  26. esphome/components/api/api_pb2.cpp +414 -4350
  27. esphome/components/api/api_pb2.h +287 -198
  28. esphome/components/api/api_pb2_dump.cpp +4333 -0
  29. esphome/components/api/api_pb2_service.cpp +180 -425
  30. esphome/components/api/api_pb2_service.h +7 -6
  31. esphome/components/api/api_pb2_size.h +2 -4
  32. esphome/components/api/api_server.cpp +138 -167
  33. esphome/components/api/api_server.h +66 -12
  34. esphome/components/api/client.py +10 -4
  35. esphome/components/api/list_entities.cpp +36 -105
  36. esphome/components/api/list_entities.h +31 -23
  37. esphome/components/api/proto.h +26 -3
  38. esphome/components/api/subscribe_state.cpp +23 -29
  39. esphome/components/api/subscribe_state.h +26 -19
  40. esphome/components/as5600/as5600.h +0 -1
  41. esphome/components/async_tcp/__init__.py +14 -5
  42. esphome/components/atc_mithermometer/atc_mithermometer.h +0 -1
  43. esphome/components/atm90e32/atm90e32.cpp +2 -1
  44. esphome/components/audio/audio_decoder.cpp +1 -1
  45. esphome/components/audio/audio_transfer_buffer.cpp +2 -2
  46. esphome/components/b_parasite/b_parasite.h +0 -1
  47. esphome/components/bedjet/bedjet_hub.cpp +5 -1
  48. esphome/components/bedjet/climate/bedjet_climate.cpp +5 -1
  49. esphome/components/beken_spi_led_strip/led_strip.cpp +4 -2
  50. esphome/components/bh1750/bh1750.cpp +5 -5
  51. esphome/components/binary_sensor/__init__.py +82 -5
  52. esphome/components/binary_sensor/automation.h +19 -1
  53. esphome/components/binary_sensor/binary_sensor.cpp +12 -30
  54. esphome/components/binary_sensor/binary_sensor.h +11 -25
  55. esphome/components/binary_sensor/filter.cpp +29 -24
  56. esphome/components/binary_sensor/filter.h +20 -10
  57. esphome/components/ble_client/output/ble_binary_output.h +0 -1
  58. esphome/components/ble_client/sensor/ble_rssi_sensor.cpp +5 -1
  59. esphome/components/ble_client/sensor/ble_rssi_sensor.h +0 -1
  60. esphome/components/ble_client/sensor/ble_sensor.cpp +5 -1
  61. esphome/components/ble_client/sensor/ble_sensor.h +0 -1
  62. esphome/components/ble_client/switch/ble_switch.h +0 -1
  63. esphome/components/ble_client/text_sensor/ble_text_sensor.cpp +5 -1
  64. esphome/components/ble_client/text_sensor/ble_text_sensor.h +0 -1
  65. esphome/components/ble_presence/ble_presence_device.h +0 -1
  66. esphome/components/ble_rssi/ble_rssi_sensor.h +0 -1
  67. esphome/components/ble_scanner/ble_scanner.h +0 -1
  68. esphome/components/bluetooth_proxy/bluetooth_connection.h +9 -2
  69. esphome/components/bluetooth_proxy/bluetooth_proxy.cpp +16 -6
  70. esphome/components/bluetooth_proxy/bluetooth_proxy.h +8 -2
  71. esphome/components/bme680/sensor.py +1 -1
  72. esphome/components/bmp581/bmp581.h +0 -2
  73. esphome/components/button/__init__.py +5 -2
  74. esphome/components/camera/__init__.py +1 -0
  75. esphome/components/camera/camera.cpp +22 -0
  76. esphome/components/camera/camera.h +80 -0
  77. esphome/components/canbus/__init__.py +1 -0
  78. esphome/components/cap1188/cap1188.h +0 -1
  79. esphome/components/captive_portal/__init__.py +12 -2
  80. esphome/components/captive_portal/captive_portal.cpp +12 -2
  81. esphome/components/captive_portal/captive_portal.h +5 -2
  82. esphome/components/ccs811/ccs811.h +0 -2
  83. esphome/components/climate/__init__.py +5 -2
  84. esphome/components/cm1106/sensor.py +2 -2
  85. esphome/components/const/__init__.py +2 -0
  86. esphome/components/copy/binary_sensor/copy_binary_sensor.h +0 -1
  87. esphome/components/copy/button/copy_button.h +0 -1
  88. esphome/components/copy/cover/copy_cover.h +0 -1
  89. esphome/components/copy/fan/copy_fan.h +0 -1
  90. esphome/components/copy/lock/copy_lock.h +0 -1
  91. esphome/components/copy/number/copy_number.h +0 -1
  92. esphome/components/copy/select/copy_select.h +0 -1
  93. esphome/components/copy/sensor/copy_sensor.h +0 -1
  94. esphome/components/copy/switch/copy_switch.h +0 -1
  95. esphome/components/copy/text/copy_text.h +0 -1
  96. esphome/components/copy/text_sensor/copy_text_sensor.h +0 -1
  97. esphome/components/cover/__init__.py +5 -2
  98. esphome/components/cs5460a/cs5460a.h +0 -1
  99. esphome/components/datetime/__init__.py +4 -2
  100. esphome/components/debug/__init__.py +20 -0
  101. esphome/components/deep_sleep/__init__.py +43 -9
  102. esphome/components/demo/__init__.py +2 -2
  103. esphome/components/display/display.cpp +4 -3
  104. esphome/components/display/display.h +0 -2
  105. esphome/components/display/display_buffer.cpp +1 -1
  106. esphome/components/ds2484/__init__.py +1 -0
  107. esphome/components/ds2484/ds2484.cpp +209 -0
  108. esphome/components/ds2484/ds2484.h +43 -0
  109. esphome/components/ds2484/one_wire.py +37 -0
  110. esphome/components/duty_time/duty_time_sensor.h +0 -1
  111. esphome/components/ens160_base/ens160_base.h +0 -1
  112. esphome/components/es7210/es7210.h +0 -1
  113. esphome/components/es7243e/es7243e.h +0 -1
  114. esphome/components/es8156/es8156.h +0 -1
  115. esphome/components/es8311/es8311.h +0 -1
  116. esphome/components/es8388/es8388.h +0 -1
  117. esphome/components/esp32/__init__.py +102 -135
  118. esphome/components/esp32/core.cpp +0 -4
  119. esphome/components/esp32/gpio.h +1 -1
  120. esphome/components/esp32/helpers.cpp +69 -0
  121. esphome/components/esp32_ble/ble.cpp +5 -6
  122. esphome/components/esp32_ble/ble.h +29 -14
  123. esphome/components/esp32_ble/ble_event.h +6 -6
  124. esphome/components/esp32_ble_client/ble_client_base.cpp +21 -6
  125. esphome/components/esp32_ble_client/ble_client_base.h +24 -9
  126. esphome/components/esp32_ble_tracker/__init__.py +2 -8
  127. esphome/components/esp32_ble_tracker/esp32_ble_tracker.cpp +5 -5
  128. esphome/components/esp32_ble_tracker/esp32_ble_tracker.h +11 -7
  129. esphome/components/esp32_camera/__init__.py +111 -97
  130. esphome/components/esp32_camera/esp32_camera.cpp +41 -31
  131. esphome/components/esp32_camera/esp32_camera.h +35 -30
  132. esphome/components/esp32_camera_web_server/__init__.py +2 -1
  133. esphome/components/esp32_camera_web_server/camera_web_server.cpp +8 -8
  134. esphome/components/esp32_camera_web_server/camera_web_server.h +3 -3
  135. esphome/components/esp32_hall/sensor.py +2 -21
  136. esphome/components/esp32_hosted/__init__.py +101 -0
  137. esphome/components/esp32_hosted/esp32_hosted.py.script +12 -0
  138. esphome/components/esp32_improv/esp32_improv_component.cpp +3 -0
  139. esphome/components/esp32_rmt/__init__.py +0 -58
  140. esphome/components/esp32_rmt_led_strip/led_strip.cpp +77 -63
  141. esphome/components/esp32_rmt_led_strip/led_strip.h +11 -17
  142. esphome/components/esp32_rmt_led_strip/light.py +14 -76
  143. esphome/components/esp32_touch/esp32_touch.h +174 -28
  144. esphome/components/esp32_touch/esp32_touch_common.cpp +162 -0
  145. esphome/components/esp32_touch/esp32_touch_v1.cpp +238 -0
  146. esphome/components/esp32_touch/esp32_touch_v2.cpp +397 -0
  147. esphome/components/esp8266/__init__.py +1 -0
  148. esphome/components/esp8266/gpio.cpp +10 -10
  149. esphome/components/esp8266/helpers.cpp +31 -0
  150. esphome/components/esphome/ota/__init__.py +1 -0
  151. esphome/components/esphome/ota/ota_esphome.cpp +24 -19
  152. esphome/components/ethernet/__init__.py +42 -23
  153. esphome/components/ethernet/esp_eth_phy_jl1101.c +0 -16
  154. esphome/components/ethernet/ethernet_component.cpp +69 -29
  155. esphome/components/ethernet/ethernet_component.h +18 -10
  156. esphome/components/event/__init__.py +5 -2
  157. esphome/components/ezo/ezo.h +0 -1
  158. esphome/components/ezo_pmp/ezo_pmp.h +0 -1
  159. esphome/components/fan/__init__.py +5 -2
  160. esphome/components/feedback/feedback_cover.h +0 -1
  161. esphome/components/font/__init__.py +92 -82
  162. esphome/components/font/font.cpp +9 -2
  163. esphome/components/font/font.h +20 -5
  164. esphome/components/fs3000/fs3000.h +0 -1
  165. esphome/components/gcja5/gcja5.h +0 -1
  166. esphome/components/gl_r01_i2c/__init__.py +0 -0
  167. esphome/components/gl_r01_i2c/gl_r01_i2c.cpp +68 -0
  168. esphome/components/gl_r01_i2c/gl_r01_i2c.h +22 -0
  169. esphome/components/gl_r01_i2c/sensor.py +36 -0
  170. esphome/components/gp8403/gp8403.h +0 -1
  171. esphome/components/gpio/binary_sensor/__init__.py +17 -0
  172. esphome/components/gpio/binary_sensor/gpio_binary_sensor.cpp +77 -3
  173. esphome/components/gpio/binary_sensor/gpio_binary_sensor.h +40 -0
  174. esphome/components/grove_gas_mc_v2/grove_gas_mc_v2.h +0 -2
  175. esphome/components/he60r/he60r.h +0 -1
  176. esphome/components/heatpumpir/climate.py +2 -1
  177. esphome/components/heatpumpir/heatpumpir.cpp +1 -0
  178. esphome/components/heatpumpir/heatpumpir.h +1 -0
  179. esphome/components/honeywellabp2_i2c/honeywellabp2.h +0 -1
  180. esphome/components/host/__init__.py +2 -1
  181. esphome/components/host/helpers.cpp +57 -0
  182. esphome/components/http_request/__init__.py +19 -1
  183. esphome/components/http_request/http_request.h +1 -1
  184. esphome/components/http_request/http_request_arduino.cpp +0 -1
  185. esphome/components/http_request/http_request_arduino.h +1 -0
  186. esphome/components/http_request/http_request_idf.cpp +0 -1
  187. esphome/components/http_request/ota/ota_http_request.cpp +1 -1
  188. esphome/components/http_request/update/http_request_update.cpp +28 -9
  189. esphome/components/hydreon_rgxx/hydreon_rgxx.cpp +3 -9
  190. esphome/components/hydreon_rgxx/sensor.py +1 -1
  191. esphome/components/i2c/__init__.py +23 -11
  192. esphome/components/i2c/i2c_bus.h +8 -1
  193. esphome/components/i2c/i2c_bus_arduino.cpp +4 -3
  194. esphome/components/i2c/i2c_bus_arduino.h +6 -3
  195. esphome/components/i2c/i2c_bus_esp_idf.h +5 -3
  196. esphome/components/i2c_device/i2c_device.h +0 -1
  197. esphome/components/i2s_audio/__init__.py +2 -10
  198. esphome/components/i2s_audio/i2s_audio.cpp +1 -5
  199. esphome/components/i2s_audio/media_player/__init__.py +2 -2
  200. esphome/components/i2s_audio/speaker/i2s_audio_speaker.cpp +2 -2
  201. esphome/components/iaqcore/iaqcore.h +0 -2
  202. esphome/components/image/__init__.py +123 -24
  203. esphome/components/improv_serial/improv_serial_component.cpp +0 -4
  204. esphome/components/ina219/ina219.cpp +7 -0
  205. esphome/components/ina219/ina219.h +1 -0
  206. esphome/components/ina260/ina260.h +0 -2
  207. esphome/components/inkbird_ibsth1_mini/inkbird_ibsth1_mini.h +0 -1
  208. esphome/components/inkplate6/display.py +15 -0
  209. esphome/components/inkplate6/inkplate.cpp +2 -2
  210. esphome/components/integration/integration_sensor.h +0 -1
  211. esphome/components/internal_temperature/internal_temperature.cpp +8 -27
  212. esphome/components/internal_temperature/sensor.py +0 -26
  213. esphome/components/interval/interval.h +0 -2
  214. esphome/components/ld2410/button/__init__.py +3 -3
  215. esphome/components/ld2410/button/factory_reset_button.cpp +9 -0
  216. esphome/components/ld2410/button/{reset_button.h → factory_reset_button.h} +2 -2
  217. esphome/components/ld2410/ld2410.cpp +430 -261
  218. esphome/components/ld2410/ld2410.h +44 -146
  219. esphome/components/ld2410/number/__init__.py +2 -2
  220. esphome/components/ld2410/sensor.py +1 -1
  221. esphome/components/ld2410/switch/__init__.py +1 -1
  222. esphome/components/ld2420/ld2420.cpp +196 -100
  223. esphome/components/ld2420/ld2420.h +46 -118
  224. esphome/components/ld2420/number/__init__.py +2 -2
  225. esphome/components/ld2420/sensor/__init__.py +6 -2
  226. esphome/components/ld2420/sensor/ld2420_sensor.h +1 -1
  227. esphome/components/ld2450/button/__init__.py +3 -3
  228. esphome/components/ld2450/button/factory_reset_button.cpp +9 -0
  229. esphome/components/ld2450/button/{reset_button.h → factory_reset_button.h} +2 -2
  230. esphome/components/ld2450/ld2450.cpp +384 -232
  231. esphome/components/ld2450/ld2450.h +60 -69
  232. esphome/components/ld2450/switch/__init__.py +1 -1
  233. esphome/components/ledc/ledc_output.cpp +1 -63
  234. esphome/components/libretiny/__init__.py +4 -3
  235. esphome/components/libretiny/const.py +5 -0
  236. esphome/components/libretiny/generate_components.py +1 -0
  237. esphome/components/libretiny/helpers.cpp +35 -0
  238. esphome/components/libretiny/lt_component.cpp +5 -3
  239. esphome/components/light/__init__.py +4 -2
  240. esphome/components/light/addressable_light.h +3 -3
  241. esphome/components/light/light_call.cpp +180 -243
  242. esphome/components/light/light_call.h +72 -20
  243. esphome/components/light/light_color_values.h +14 -14
  244. esphome/components/light/light_state.h +15 -13
  245. esphome/components/light/transformers.h +2 -2
  246. esphome/components/ln882x/__init__.py +52 -0
  247. esphome/components/ln882x/boards.py +285 -0
  248. esphome/components/lock/__init__.py +5 -2
  249. esphome/components/logger/__init__.py +40 -3
  250. esphome/components/logger/logger.cpp +47 -12
  251. esphome/components/logger/logger.h +80 -49
  252. esphome/components/logger/logger_esp32.cpp +3 -3
  253. esphome/components/lps22/__init__.py +0 -0
  254. esphome/components/lps22/lps22.cpp +75 -0
  255. esphome/components/lps22/lps22.h +27 -0
  256. esphome/components/lps22/sensor.py +58 -0
  257. esphome/components/ltr390/ltr390.h +0 -1
  258. esphome/components/ltr501/ltr501.h +0 -1
  259. esphome/components/ltr_als_ps/ltr_als_ps.h +0 -1
  260. esphome/components/lvgl/__init__.py +1 -1
  261. esphome/components/lvgl/schemas.py +66 -6
  262. esphome/components/lvgl/styles.py +24 -16
  263. esphome/components/lvgl/widgets/__init__.py +12 -2
  264. esphome/components/lvgl/widgets/lv_bar.py +40 -19
  265. esphome/components/m5stack_8angle/light/m5stack_8angle_light.cpp +1 -1
  266. esphome/components/max9611/max9611.h +0 -1
  267. esphome/components/mcp23016/__init__.py +1 -1
  268. esphome/components/mcp23xxx_base/__init__.py +1 -1
  269. esphome/components/mcp4461/__init__.py +1 -1
  270. esphome/components/mcp4461/output/__init__.py +3 -2
  271. esphome/components/mcp9600/mcp9600.h +0 -2
  272. esphome/components/md5/md5.cpp +3 -3
  273. esphome/components/md5/md5.h +1 -6
  274. esphome/components/mdns/__init__.py +22 -11
  275. esphome/components/media_player/__init__.py +4 -3
  276. esphome/components/micro_wake_word/__init__.py +1 -5
  277. esphome/components/micro_wake_word/streaming_model.cpp +2 -2
  278. esphome/components/microphone/microphone.cpp +7 -9
  279. esphome/components/microphone/microphone.h +0 -2
  280. esphome/components/mipi_spi/display.py +1 -0
  281. esphome/components/mmc5603/mmc5603.cpp +1 -1
  282. esphome/components/modbus/modbus.cpp +33 -15
  283. esphome/components/modbus/modbus.h +9 -0
  284. esphome/components/modbus_controller/__init__.py +42 -10
  285. esphome/components/modbus_controller/modbus_controller.cpp +92 -11
  286. esphome/components/modbus_controller/modbus_controller.h +61 -7
  287. esphome/components/mopeka_pro_check/mopeka_pro_check.h +0 -1
  288. esphome/components/mopeka_std_check/mopeka_std_check.h +0 -1
  289. esphome/components/mpl3115a2/mpl3115a2.h +0 -2
  290. esphome/components/mqtt/__init__.py +16 -0
  291. esphome/components/mqtt/mqtt_backend.h +2 -1
  292. esphome/components/mqtt/mqtt_backend_esp32.cpp +126 -45
  293. esphome/components/mqtt/mqtt_backend_esp32.h +106 -4
  294. esphome/components/mqtt/mqtt_client.cpp +15 -9
  295. esphome/components/mqtt/mqtt_client.h +8 -3
  296. esphome/components/ms8607/ms8607.h +0 -1
  297. esphome/components/neopixelbus/light.py +4 -1
  298. esphome/components/neopixelbus/neopixelbus_light.h +1 -1
  299. esphome/components/network/__init__.py +4 -1
  300. esphome/components/network/ip_address.h +1 -0
  301. esphome/components/nextion/__init__.py +16 -0
  302. esphome/components/nextion/base_component.py +1 -0
  303. esphome/components/nextion/binary_sensor/nextion_binarysensor.cpp +1 -1
  304. esphome/components/nextion/display.py +14 -4
  305. esphome/components/nextion/nextion.cpp +166 -101
  306. esphome/components/nextion/nextion.h +84 -53
  307. esphome/components/nextion/nextion_commands.cpp +11 -10
  308. esphome/components/nextion/nextion_component.cpp +28 -28
  309. esphome/components/nextion/nextion_component.h +53 -18
  310. esphome/components/nextion/nextion_component_base.h +3 -0
  311. esphome/components/nextion/nextion_upload.cpp +36 -0
  312. esphome/components/nextion/nextion_upload_arduino.cpp +10 -35
  313. esphome/components/nextion/nextion_upload_idf.cpp +9 -33
  314. esphome/components/nextion/sensor/nextion_sensor.cpp +1 -1
  315. esphome/components/nextion/switch/nextion_switch.cpp +1 -1
  316. esphome/components/nextion/text_sensor/nextion_textsensor.cpp +1 -1
  317. esphome/components/nfc/nfc.cpp +3 -22
  318. esphome/components/nfc/nfc.h +3 -3
  319. esphome/components/number/__init__.py +5 -2
  320. esphome/components/online_image/__init__.py +5 -0
  321. esphome/components/online_image/online_image.cpp +6 -2
  322. esphome/components/online_image/online_image.h +4 -1
  323. esphome/components/opentherm/opentherm.cpp +7 -12
  324. esphome/components/openthread/__init__.py +47 -40
  325. esphome/components/openthread/const.py +1 -0
  326. esphome/components/openthread/openthread_esp.cpp +27 -5
  327. esphome/components/opt3001/__init__.py +0 -0
  328. esphome/components/opt3001/opt3001.cpp +122 -0
  329. esphome/components/opt3001/opt3001.h +27 -0
  330. esphome/components/opt3001/sensor.py +35 -0
  331. esphome/components/ota/__init__.py +17 -0
  332. esphome/components/ota/ota_backend.h +27 -1
  333. esphome/components/ota/ota_backend_arduino_esp32.cpp +12 -2
  334. esphome/components/ota/ota_backend_arduino_esp32.h +3 -0
  335. esphome/components/ota/ota_backend_arduino_esp8266.cpp +18 -4
  336. esphome/components/ota/ota_backend_arduino_esp8266.h +3 -0
  337. esphome/components/ota/ota_backend_arduino_libretiny.cpp +12 -2
  338. esphome/components/ota/ota_backend_arduino_libretiny.h +3 -0
  339. esphome/components/ota/ota_backend_arduino_rp2040.cpp +9 -2
  340. esphome/components/ota/ota_backend_arduino_rp2040.h +3 -0
  341. esphome/components/ota/ota_backend_esp_idf.cpp +10 -16
  342. esphome/components/ota/ota_backend_esp_idf.h +1 -0
  343. esphome/components/packages/__init__.py +5 -2
  344. esphome/components/packet_transport/binary_sensor.py +61 -4
  345. esphome/components/packet_transport/packet_transport.cpp +31 -1
  346. esphome/components/packet_transport/packet_transport.h +11 -5
  347. esphome/components/pcf8574/__init__.py +1 -1
  348. esphome/components/pi4ioe5v6408/__init__.py +84 -0
  349. esphome/components/pi4ioe5v6408/pi4ioe5v6408.cpp +171 -0
  350. esphome/components/pi4ioe5v6408/pi4ioe5v6408.h +70 -0
  351. esphome/components/pmsa003i/pmsa003i.h +0 -1
  352. esphome/components/pmsx003/pmsx003.h +0 -1
  353. esphome/components/pn7150/pn7150.cpp +7 -7
  354. esphome/components/pn7150/pn7150.h +0 -1
  355. esphome/components/pn7160/pn7160.cpp +7 -7
  356. esphome/components/pn7160/pn7160.h +0 -1
  357. esphome/components/preferences/syncer.h +2 -0
  358. esphome/components/prometheus/prometheus_handler.h +1 -1
  359. esphome/components/psram/psram.cpp +0 -20
  360. esphome/components/pulse_counter/pulse_counter_sensor.h +0 -1
  361. esphome/components/pulse_meter/pulse_meter_sensor.cpp +8 -4
  362. esphome/components/pulse_width/pulse_width.h +0 -1
  363. esphome/components/pvvx_mithermometer/display/pvvx_display.cpp +0 -4
  364. esphome/components/pvvx_mithermometer/display/pvvx_display.h +0 -2
  365. esphome/components/pvvx_mithermometer/pvvx_mithermometer.h +0 -1
  366. esphome/components/qr_code/__init__.py +13 -10
  367. esphome/components/qwiic_pir/qwiic_pir.h +0 -1
  368. esphome/components/radon_eye_ble/radon_eye_listener.cpp +1 -1
  369. esphome/components/rc522/rc522.h +0 -1
  370. esphome/components/rdm6300/rdm6300.h +0 -2
  371. esphome/components/remote_base/__init__.py +7 -5
  372. esphome/components/remote_base/remote_base.cpp +24 -21
  373. esphome/components/remote_base/remote_base.h +3 -26
  374. esphome/components/remote_receiver/__init__.py +40 -46
  375. esphome/components/remote_receiver/remote_receiver.h +4 -18
  376. esphome/components/remote_receiver/remote_receiver_esp32.cpp +0 -87
  377. esphome/components/remote_receiver/remote_receiver_esp8266.cpp +1 -1
  378. esphome/components/remote_transmitter/__init__.py +42 -43
  379. esphome/components/remote_transmitter/remote_transmitter.h +2 -14
  380. esphome/components/remote_transmitter/remote_transmitter_esp32.cpp +0 -77
  381. esphome/components/resistance/resistance_sensor.h +0 -1
  382. esphome/components/rp2040/__init__.py +1 -0
  383. esphome/components/rp2040/helpers.cpp +55 -0
  384. esphome/components/rp2040_pio_led_strip/led_strip.cpp +2 -2
  385. esphome/components/rpi_dpi_rgb/rpi_dpi_rgb.cpp +0 -4
  386. esphome/components/rtttl/__init__.py +4 -4
  387. esphome/components/rtttl/rtttl.cpp +10 -1
  388. esphome/components/ruuvitag/ruuvitag.h +0 -1
  389. esphome/components/safe_mode/safe_mode.cpp +2 -0
  390. esphome/components/safe_mode/safe_mode.h +4 -1
  391. esphome/components/scd30/scd30.h +0 -1
  392. esphome/components/scd30/sensor.py +2 -2
  393. esphome/components/scd4x/scd4x.cpp +61 -54
  394. esphome/components/scd4x/scd4x.h +17 -15
  395. esphome/components/scd4x/sensor.py +4 -4
  396. esphome/components/script/script.h +0 -2
  397. esphome/components/sdp3x/sensor.py +1 -1
  398. esphome/components/select/__init__.py +5 -2
  399. esphome/components/sen5x/sen5x.h +0 -1
  400. esphome/components/senseair/senseair.h +0 -1
  401. esphome/components/sensor/__init__.py +4 -2
  402. esphome/components/sensor/filter.cpp +1 -1
  403. esphome/components/sensor/sensor.cpp +12 -6
  404. esphome/components/sensor/sensor.h +13 -5
  405. esphome/components/servo/servo.h +0 -1
  406. esphome/components/sfa30/sfa30.h +0 -1
  407. esphome/components/sgp30/sgp30.h +0 -1
  408. esphome/components/sgp4x/sgp4x.h +0 -1
  409. esphome/components/shelly_dimmer/stm32flash.cpp +1 -2
  410. esphome/components/sht4x/sht4x.h +0 -1
  411. esphome/components/sm300d2/sm300d2.h +0 -2
  412. esphome/components/smt100/sensor.py +8 -4
  413. esphome/components/smt100/smt100.cpp +5 -5
  414. esphome/components/smt100/smt100.h +3 -3
  415. esphome/components/sn74hc595/__init__.py +1 -1
  416. esphome/components/sn74hc595/sn74hc595.cpp +5 -4
  417. esphome/components/sntp/sntp_component.cpp +9 -3
  418. esphome/components/sntp/time.py +2 -0
  419. esphome/components/socket/__init__.py +17 -0
  420. esphome/components/spi/__init__.py +27 -6
  421. esphome/components/spi/spi.cpp +3 -2
  422. esphome/components/spi/spi.h +9 -3
  423. esphome/components/spi/spi_arduino.cpp +3 -5
  424. esphome/components/spi/spi_esp_idf.cpp +40 -21
  425. esphome/components/spi_led_strip/spi_led_strip.cpp +1 -1
  426. esphome/components/sps30/sps30.h +0 -1
  427. esphome/components/ssd1306_base/ssd1306_base.cpp +1 -1
  428. esphome/components/st7701s/st7701s.cpp +0 -4
  429. esphome/components/status/status_binary_sensor.h +0 -2
  430. esphome/components/substitutions/__init__.py +76 -19
  431. esphome/components/substitutions/jinja.py +99 -0
  432. esphome/components/sun/sun.cpp +3 -4
  433. esphome/components/switch/__init__.py +5 -2
  434. esphome/components/switch/binary_sensor/switch_binary_sensor.h +0 -1
  435. esphome/components/sx126x/__init__.py +317 -0
  436. esphome/components/sx126x/automation.h +62 -0
  437. esphome/components/sx126x/packet_transport/__init__.py +26 -0
  438. esphome/components/sx126x/packet_transport/sx126x_transport.cpp +26 -0
  439. esphome/components/sx126x/packet_transport/sx126x_transport.h +25 -0
  440. esphome/components/sx126x/sx126x.cpp +523 -0
  441. esphome/components/sx126x/sx126x.h +140 -0
  442. esphome/components/sx126x/sx126x_reg.h +163 -0
  443. esphome/components/sx127x/__init__.py +325 -0
  444. esphome/components/sx127x/automation.h +62 -0
  445. esphome/components/sx127x/packet_transport/__init__.py +26 -0
  446. esphome/components/sx127x/packet_transport/sx127x_transport.cpp +26 -0
  447. esphome/components/sx127x/packet_transport/sx127x_transport.h +25 -0
  448. esphome/components/sx127x/sx127x.cpp +498 -0
  449. esphome/components/sx127x/sx127x.h +128 -0
  450. esphome/components/sx127x/sx127x_reg.h +295 -0
  451. esphome/components/syslog/esphome_syslog.cpp +5 -3
  452. esphome/components/syslog/esphome_syslog.h +1 -1
  453. esphome/components/tca9555/__init__.py +1 -1
  454. esphome/components/template/binary_sensor/template_binary_sensor.cpp +1 -9
  455. esphome/components/text/__init__.py +5 -2
  456. esphome/components/text_sensor/__init__.py +5 -2
  457. esphome/components/thermostat/thermostat_climate.cpp +34 -31
  458. esphome/components/thermostat/thermostat_climate.h +43 -39
  459. esphome/components/time/__init__.py +16 -2
  460. esphome/components/time/real_time_clock.cpp +4 -0
  461. esphome/components/time/real_time_clock.h +5 -1
  462. esphome/components/tlc5971/tlc5971.cpp +4 -1
  463. esphome/components/tmp1075/tmp1075.h +0 -2
  464. esphome/components/tof10120/tof10120_sensor.h +0 -1
  465. esphome/components/tormatic/tormatic_cover.h +0 -1
  466. esphome/components/total_daily_energy/total_daily_energy.h +0 -1
  467. esphome/components/tsl2591/tsl2591.cpp +1 -1
  468. esphome/components/ttp229_bsf/ttp229_bsf.h +0 -1
  469. esphome/components/ttp229_lsf/ttp229_lsf.h +0 -1
  470. esphome/components/tx20/tx20.cpp +2 -2
  471. esphome/components/uart/__init__.py +18 -0
  472. esphome/components/uart/uart_component_esp_idf.cpp +1 -5
  473. esphome/components/update/__init__.py +5 -2
  474. esphome/components/update/update_entity.h +8 -0
  475. esphome/components/usb_host/__init__.py +5 -2
  476. esphome/components/valve/__init__.py +5 -2
  477. esphome/components/vbus/vbus.h +0 -1
  478. esphome/components/veml3235/veml3235.h +0 -1
  479. esphome/components/veml7700/veml7700.h +0 -1
  480. esphome/components/vl53l0x/vl53l0x_sensor.h +0 -1
  481. esphome/components/voice_assistant/voice_assistant.cpp +4 -4
  482. esphome/components/watchdog/watchdog.cpp +0 -4
  483. esphome/components/waveshare_epaper/waveshare_epaper.cpp +6 -6
  484. esphome/components/web_server/__init__.py +34 -19
  485. esphome/components/web_server/ota/__init__.py +32 -0
  486. esphome/components/web_server/ota/ota_web_server.cpp +210 -0
  487. esphome/components/web_server/ota/ota_web_server.h +26 -0
  488. esphome/components/web_server/web_server.cpp +311 -430
  489. esphome/components/web_server/web_server.h +33 -23
  490. esphome/components/web_server/web_server_v1.cpp +4 -5
  491. esphome/components/web_server_base/__init__.py +5 -2
  492. esphome/components/web_server_base/web_server_base.cpp +2 -94
  493. esphome/components/web_server_base/web_server_base.h +5 -25
  494. esphome/components/web_server_idf/multipart.cpp +254 -0
  495. esphome/components/web_server_idf/multipart.h +86 -0
  496. esphome/components/web_server_idf/utils.cpp +32 -0
  497. esphome/components/web_server_idf/utils.h +10 -0
  498. esphome/components/web_server_idf/web_server_idf.cpp +162 -16
  499. esphome/components/web_server_idf/web_server_idf.h +11 -10
  500. esphome/components/wiegand/wiegand.cpp +2 -2
  501. esphome/components/wifi/__init__.py +18 -0
  502. esphome/components/wifi/wifi_component.cpp +17 -22
  503. esphome/components/wifi/wifi_component.h +27 -23
  504. esphome/components/wifi/wifi_component_esp32_arduino.cpp +52 -59
  505. esphome/components/wifi/wifi_component_esp8266.cpp +46 -46
  506. esphome/components/wifi/wifi_component_esp_idf.cpp +35 -36
  507. esphome/components/wifi/wifi_component_libretiny.cpp +26 -27
  508. esphome/components/wifi/wifi_component_pico_w.cpp +3 -3
  509. esphome/components/wifi_info/wifi_info_text_sensor.cpp +6 -6
  510. esphome/components/wireguard/__init__.py +2 -11
  511. esphome/components/xiaomi_ble/xiaomi_ble.cpp +13 -1
  512. esphome/components/xiaomi_ble/xiaomi_ble.h +1 -0
  513. esphome/components/xiaomi_cgd1/xiaomi_cgd1.h +0 -1
  514. esphome/components/xiaomi_cgdk2/xiaomi_cgdk2.h +0 -1
  515. esphome/components/xiaomi_cgg1/xiaomi_cgg1.h +0 -1
  516. esphome/components/xiaomi_cgpr1/xiaomi_cgpr1.h +0 -1
  517. esphome/components/xiaomi_gcls002/xiaomi_gcls002.h +0 -1
  518. esphome/components/xiaomi_hhccjcy01/xiaomi_hhccjcy01.h +0 -1
  519. esphome/components/xiaomi_hhccjcy10/xiaomi_hhccjcy10.h +0 -1
  520. esphome/components/xiaomi_hhccpot002/xiaomi_hhccpot002.h +0 -1
  521. esphome/components/xiaomi_jqjcy01ym/xiaomi_jqjcy01ym.h +0 -1
  522. esphome/components/xiaomi_lywsd02/xiaomi_lywsd02.h +0 -1
  523. esphome/components/xiaomi_lywsd02mmc/xiaomi_lywsd02mmc.h +0 -1
  524. esphome/components/xiaomi_lywsd03mmc/xiaomi_lywsd03mmc.h +0 -1
  525. esphome/components/xiaomi_lywsdcgq/xiaomi_lywsdcgq.h +0 -1
  526. esphome/components/xiaomi_mhoc303/xiaomi_mhoc303.h +0 -1
  527. esphome/components/xiaomi_mhoc401/xiaomi_mhoc401.h +0 -1
  528. esphome/components/xiaomi_miscale/xiaomi_miscale.h +0 -1
  529. esphome/components/xiaomi_mjyd02yla/xiaomi_mjyd02yla.h +0 -1
  530. esphome/components/xiaomi_mue4094rt/xiaomi_mue4094rt.h +0 -1
  531. esphome/components/xiaomi_rtcgq02lm/xiaomi_rtcgq02lm.h +0 -1
  532. esphome/components/xiaomi_wx08zm/xiaomi_wx08zm.h +0 -1
  533. esphome/components/xiaomi_xmwsdj04mmc/__init__.py +0 -0
  534. esphome/components/xiaomi_xmwsdj04mmc/sensor.py +77 -0
  535. esphome/components/xiaomi_xmwsdj04mmc/xiaomi_xmwsdj04mmc.cpp +77 -0
  536. esphome/components/xiaomi_xmwsdj04mmc/xiaomi_xmwsdj04mmc.h +36 -0
  537. esphome/components/zio_ultrasonic/zio_ultrasonic.h +0 -2
  538. esphome/components/zyaura/zyaura.h +0 -1
  539. esphome/config.py +88 -22
  540. esphome/config_helpers.py +74 -1
  541. esphome/config_validation.py +12 -1
  542. esphome/const.py +65 -10
  543. esphome/core/__init__.py +18 -2
  544. esphome/core/application.cpp +163 -10
  545. esphome/core/application.h +145 -165
  546. esphome/core/area.h +19 -0
  547. esphome/core/automation.h +58 -9
  548. esphome/core/color.cpp +3 -5
  549. esphome/core/color.h +16 -16
  550. esphome/core/component.cpp +151 -18
  551. esphome/core/component.h +98 -4
  552. esphome/core/component_iterator.cpp +7 -7
  553. esphome/core/component_iterator.h +9 -7
  554. esphome/core/config.py +155 -6
  555. esphome/core/controller.cpp +4 -2
  556. esphome/core/controller.h +1 -1
  557. esphome/core/datatypes.h +2 -2
  558. esphome/core/defines.h +17 -2
  559. esphome/core/device.h +20 -0
  560. esphome/core/entity_base.cpp +20 -15
  561. esphome/core/entity_base.h +76 -0
  562. esphome/core/entity_helpers.py +162 -1
  563. esphome/core/event_pool.h +81 -0
  564. esphome/core/helpers.cpp +75 -230
  565. esphome/core/helpers.h +164 -104
  566. esphome/core/lock_free_queue.h +151 -0
  567. esphome/core/log.cpp +2 -2
  568. esphome/core/log.h +2 -0
  569. esphome/core/optional.h +5 -0
  570. esphome/core/ring_buffer.cpp +2 -2
  571. esphome/core/scheduler.cpp +278 -103
  572. esphome/core/scheduler.h +157 -17
  573. esphome/core/time.cpp +5 -5
  574. esphome/core/time.h +5 -5
  575. esphome/cpp_generator.py +17 -0
  576. esphome/cpp_helpers.py +0 -22
  577. esphome/cpp_types.py +3 -1
  578. esphome/dashboard/entries.py +1 -1
  579. esphome/dashboard/util/text.py +5 -21
  580. esphome/dashboard/web_server.py +9 -1
  581. esphome/helpers.py +47 -0
  582. esphome/loader.py +15 -1
  583. esphome/pins.py +14 -8
  584. esphome/wizard.py +16 -3
  585. esphome/writer.py +21 -3
  586. esphome/yaml_util.py +0 -2
  587. {esphome-2025.6.2.dist-info → esphome-2025.7.0b1.dist-info}/METADATA +10 -9
  588. {esphome-2025.6.2.dist-info → esphome-2025.7.0b1.dist-info}/RECORD +593 -533
  589. esphome/components/esp32_ble/ble_event_pool.h +0 -72
  590. esphome/components/esp32_ble/queue.h +0 -85
  591. esphome/components/esp32_hall/esp32_hall.cpp +0 -25
  592. esphome/components/esp32_hall/esp32_hall.h +0 -23
  593. esphome/components/esp32_touch/esp32_touch.cpp +0 -355
  594. esphome/components/ld2410/button/reset_button.cpp +0 -9
  595. esphome/components/ld2450/button/reset_button.cpp +0 -9
  596. esphome/components/openthread/tlv.py +0 -65
  597. /esphome/{dashboard/enum.py → enum.py} +0 -0
  598. {esphome-2025.6.2.dist-info → esphome-2025.7.0b1.dist-info}/WHEEL +0 -0
  599. {esphome-2025.6.2.dist-info → esphome-2025.7.0b1.dist-info}/entry_points.txt +0 -0
  600. {esphome-2025.6.2.dist-info → esphome-2025.7.0b1.dist-info}/licenses/LICENSE +0 -0
  601. {esphome-2025.6.2.dist-info → esphome-2025.7.0b1.dist-info}/top_level.txt +0 -0
@@ -14,7 +14,7 @@ void APIServerConnectionBase::log_send_message_(const char *name, const std::str
14
14
  }
15
15
  #endif
16
16
 
17
- bool APIServerConnectionBase::read_message(uint32_t msg_size, uint32_t msg_type, uint8_t *msg_data) {
17
+ void APIServerConnectionBase::read_message(uint32_t msg_size, uint32_t msg_type, uint8_t *msg_data) {
18
18
  switch (msg_type) {
19
19
  case 1: {
20
20
  HelloRequest msg;
@@ -106,50 +106,50 @@ bool APIServerConnectionBase::read_message(uint32_t msg_size, uint32_t msg_type,
106
106
  this->on_subscribe_logs_request(msg);
107
107
  break;
108
108
  }
109
- case 30: {
110
109
  #ifdef USE_COVER
110
+ case 30: {
111
111
  CoverCommandRequest msg;
112
112
  msg.decode(msg_data, msg_size);
113
113
  #ifdef HAS_PROTO_MESSAGE_DUMP
114
114
  ESP_LOGVV(TAG, "on_cover_command_request: %s", msg.dump().c_str());
115
115
  #endif
116
116
  this->on_cover_command_request(msg);
117
- #endif
118
117
  break;
119
118
  }
120
- case 31: {
119
+ #endif
121
120
  #ifdef USE_FAN
121
+ case 31: {
122
122
  FanCommandRequest msg;
123
123
  msg.decode(msg_data, msg_size);
124
124
  #ifdef HAS_PROTO_MESSAGE_DUMP
125
125
  ESP_LOGVV(TAG, "on_fan_command_request: %s", msg.dump().c_str());
126
126
  #endif
127
127
  this->on_fan_command_request(msg);
128
- #endif
129
128
  break;
130
129
  }
131
- case 32: {
130
+ #endif
132
131
  #ifdef USE_LIGHT
132
+ case 32: {
133
133
  LightCommandRequest msg;
134
134
  msg.decode(msg_data, msg_size);
135
135
  #ifdef HAS_PROTO_MESSAGE_DUMP
136
136
  ESP_LOGVV(TAG, "on_light_command_request: %s", msg.dump().c_str());
137
137
  #endif
138
138
  this->on_light_command_request(msg);
139
- #endif
140
139
  break;
141
140
  }
142
- case 33: {
141
+ #endif
143
142
  #ifdef USE_SWITCH
143
+ case 33: {
144
144
  SwitchCommandRequest msg;
145
145
  msg.decode(msg_data, msg_size);
146
146
  #ifdef HAS_PROTO_MESSAGE_DUMP
147
147
  ESP_LOGVV(TAG, "on_switch_command_request: %s", msg.dump().c_str());
148
148
  #endif
149
149
  this->on_switch_command_request(msg);
150
- #endif
151
150
  break;
152
151
  }
152
+ #endif
153
153
  case 34: {
154
154
  SubscribeHomeassistantServicesRequest msg;
155
155
  msg.decode(msg_data, msg_size);
@@ -204,395 +204,394 @@ bool APIServerConnectionBase::read_message(uint32_t msg_size, uint32_t msg_type,
204
204
  this->on_execute_service_request(msg);
205
205
  break;
206
206
  }
207
+ #ifdef USE_CAMERA
207
208
  case 45: {
208
- #ifdef USE_ESP32_CAMERA
209
209
  CameraImageRequest msg;
210
210
  msg.decode(msg_data, msg_size);
211
211
  #ifdef HAS_PROTO_MESSAGE_DUMP
212
212
  ESP_LOGVV(TAG, "on_camera_image_request: %s", msg.dump().c_str());
213
213
  #endif
214
214
  this->on_camera_image_request(msg);
215
- #endif
216
215
  break;
217
216
  }
218
- case 48: {
217
+ #endif
219
218
  #ifdef USE_CLIMATE
219
+ case 48: {
220
220
  ClimateCommandRequest msg;
221
221
  msg.decode(msg_data, msg_size);
222
222
  #ifdef HAS_PROTO_MESSAGE_DUMP
223
223
  ESP_LOGVV(TAG, "on_climate_command_request: %s", msg.dump().c_str());
224
224
  #endif
225
225
  this->on_climate_command_request(msg);
226
- #endif
227
226
  break;
228
227
  }
229
- case 51: {
228
+ #endif
230
229
  #ifdef USE_NUMBER
230
+ case 51: {
231
231
  NumberCommandRequest msg;
232
232
  msg.decode(msg_data, msg_size);
233
233
  #ifdef HAS_PROTO_MESSAGE_DUMP
234
234
  ESP_LOGVV(TAG, "on_number_command_request: %s", msg.dump().c_str());
235
235
  #endif
236
236
  this->on_number_command_request(msg);
237
- #endif
238
237
  break;
239
238
  }
240
- case 54: {
239
+ #endif
241
240
  #ifdef USE_SELECT
241
+ case 54: {
242
242
  SelectCommandRequest msg;
243
243
  msg.decode(msg_data, msg_size);
244
244
  #ifdef HAS_PROTO_MESSAGE_DUMP
245
245
  ESP_LOGVV(TAG, "on_select_command_request: %s", msg.dump().c_str());
246
246
  #endif
247
247
  this->on_select_command_request(msg);
248
- #endif
249
248
  break;
250
249
  }
251
- case 57: {
250
+ #endif
252
251
  #ifdef USE_SIREN
252
+ case 57: {
253
253
  SirenCommandRequest msg;
254
254
  msg.decode(msg_data, msg_size);
255
255
  #ifdef HAS_PROTO_MESSAGE_DUMP
256
256
  ESP_LOGVV(TAG, "on_siren_command_request: %s", msg.dump().c_str());
257
257
  #endif
258
258
  this->on_siren_command_request(msg);
259
- #endif
260
259
  break;
261
260
  }
262
- case 60: {
261
+ #endif
263
262
  #ifdef USE_LOCK
263
+ case 60: {
264
264
  LockCommandRequest msg;
265
265
  msg.decode(msg_data, msg_size);
266
266
  #ifdef HAS_PROTO_MESSAGE_DUMP
267
267
  ESP_LOGVV(TAG, "on_lock_command_request: %s", msg.dump().c_str());
268
268
  #endif
269
269
  this->on_lock_command_request(msg);
270
- #endif
271
270
  break;
272
271
  }
273
- case 62: {
272
+ #endif
274
273
  #ifdef USE_BUTTON
274
+ case 62: {
275
275
  ButtonCommandRequest msg;
276
276
  msg.decode(msg_data, msg_size);
277
277
  #ifdef HAS_PROTO_MESSAGE_DUMP
278
278
  ESP_LOGVV(TAG, "on_button_command_request: %s", msg.dump().c_str());
279
279
  #endif
280
280
  this->on_button_command_request(msg);
281
- #endif
282
281
  break;
283
282
  }
284
- case 65: {
283
+ #endif
285
284
  #ifdef USE_MEDIA_PLAYER
285
+ case 65: {
286
286
  MediaPlayerCommandRequest msg;
287
287
  msg.decode(msg_data, msg_size);
288
288
  #ifdef HAS_PROTO_MESSAGE_DUMP
289
289
  ESP_LOGVV(TAG, "on_media_player_command_request: %s", msg.dump().c_str());
290
290
  #endif
291
291
  this->on_media_player_command_request(msg);
292
- #endif
293
292
  break;
294
293
  }
295
- case 66: {
294
+ #endif
296
295
  #ifdef USE_BLUETOOTH_PROXY
296
+ case 66: {
297
297
  SubscribeBluetoothLEAdvertisementsRequest msg;
298
298
  msg.decode(msg_data, msg_size);
299
299
  #ifdef HAS_PROTO_MESSAGE_DUMP
300
300
  ESP_LOGVV(TAG, "on_subscribe_bluetooth_le_advertisements_request: %s", msg.dump().c_str());
301
301
  #endif
302
302
  this->on_subscribe_bluetooth_le_advertisements_request(msg);
303
- #endif
304
303
  break;
305
304
  }
306
- case 68: {
305
+ #endif
307
306
  #ifdef USE_BLUETOOTH_PROXY
307
+ case 68: {
308
308
  BluetoothDeviceRequest msg;
309
309
  msg.decode(msg_data, msg_size);
310
310
  #ifdef HAS_PROTO_MESSAGE_DUMP
311
311
  ESP_LOGVV(TAG, "on_bluetooth_device_request: %s", msg.dump().c_str());
312
312
  #endif
313
313
  this->on_bluetooth_device_request(msg);
314
- #endif
315
314
  break;
316
315
  }
317
- case 70: {
316
+ #endif
318
317
  #ifdef USE_BLUETOOTH_PROXY
318
+ case 70: {
319
319
  BluetoothGATTGetServicesRequest msg;
320
320
  msg.decode(msg_data, msg_size);
321
321
  #ifdef HAS_PROTO_MESSAGE_DUMP
322
322
  ESP_LOGVV(TAG, "on_bluetooth_gatt_get_services_request: %s", msg.dump().c_str());
323
323
  #endif
324
324
  this->on_bluetooth_gatt_get_services_request(msg);
325
- #endif
326
325
  break;
327
326
  }
328
- case 73: {
327
+ #endif
329
328
  #ifdef USE_BLUETOOTH_PROXY
329
+ case 73: {
330
330
  BluetoothGATTReadRequest msg;
331
331
  msg.decode(msg_data, msg_size);
332
332
  #ifdef HAS_PROTO_MESSAGE_DUMP
333
333
  ESP_LOGVV(TAG, "on_bluetooth_gatt_read_request: %s", msg.dump().c_str());
334
334
  #endif
335
335
  this->on_bluetooth_gatt_read_request(msg);
336
- #endif
337
336
  break;
338
337
  }
339
- case 75: {
338
+ #endif
340
339
  #ifdef USE_BLUETOOTH_PROXY
340
+ case 75: {
341
341
  BluetoothGATTWriteRequest msg;
342
342
  msg.decode(msg_data, msg_size);
343
343
  #ifdef HAS_PROTO_MESSAGE_DUMP
344
344
  ESP_LOGVV(TAG, "on_bluetooth_gatt_write_request: %s", msg.dump().c_str());
345
345
  #endif
346
346
  this->on_bluetooth_gatt_write_request(msg);
347
- #endif
348
347
  break;
349
348
  }
350
- case 76: {
349
+ #endif
351
350
  #ifdef USE_BLUETOOTH_PROXY
351
+ case 76: {
352
352
  BluetoothGATTReadDescriptorRequest msg;
353
353
  msg.decode(msg_data, msg_size);
354
354
  #ifdef HAS_PROTO_MESSAGE_DUMP
355
355
  ESP_LOGVV(TAG, "on_bluetooth_gatt_read_descriptor_request: %s", msg.dump().c_str());
356
356
  #endif
357
357
  this->on_bluetooth_gatt_read_descriptor_request(msg);
358
- #endif
359
358
  break;
360
359
  }
361
- case 77: {
360
+ #endif
362
361
  #ifdef USE_BLUETOOTH_PROXY
362
+ case 77: {
363
363
  BluetoothGATTWriteDescriptorRequest msg;
364
364
  msg.decode(msg_data, msg_size);
365
365
  #ifdef HAS_PROTO_MESSAGE_DUMP
366
366
  ESP_LOGVV(TAG, "on_bluetooth_gatt_write_descriptor_request: %s", msg.dump().c_str());
367
367
  #endif
368
368
  this->on_bluetooth_gatt_write_descriptor_request(msg);
369
- #endif
370
369
  break;
371
370
  }
372
- case 78: {
371
+ #endif
373
372
  #ifdef USE_BLUETOOTH_PROXY
373
+ case 78: {
374
374
  BluetoothGATTNotifyRequest msg;
375
375
  msg.decode(msg_data, msg_size);
376
376
  #ifdef HAS_PROTO_MESSAGE_DUMP
377
377
  ESP_LOGVV(TAG, "on_bluetooth_gatt_notify_request: %s", msg.dump().c_str());
378
378
  #endif
379
379
  this->on_bluetooth_gatt_notify_request(msg);
380
- #endif
381
380
  break;
382
381
  }
383
- case 80: {
382
+ #endif
384
383
  #ifdef USE_BLUETOOTH_PROXY
384
+ case 80: {
385
385
  SubscribeBluetoothConnectionsFreeRequest msg;
386
386
  msg.decode(msg_data, msg_size);
387
387
  #ifdef HAS_PROTO_MESSAGE_DUMP
388
388
  ESP_LOGVV(TAG, "on_subscribe_bluetooth_connections_free_request: %s", msg.dump().c_str());
389
389
  #endif
390
390
  this->on_subscribe_bluetooth_connections_free_request(msg);
391
- #endif
392
391
  break;
393
392
  }
394
- case 87: {
393
+ #endif
395
394
  #ifdef USE_BLUETOOTH_PROXY
395
+ case 87: {
396
396
  UnsubscribeBluetoothLEAdvertisementsRequest msg;
397
397
  msg.decode(msg_data, msg_size);
398
398
  #ifdef HAS_PROTO_MESSAGE_DUMP
399
399
  ESP_LOGVV(TAG, "on_unsubscribe_bluetooth_le_advertisements_request: %s", msg.dump().c_str());
400
400
  #endif
401
401
  this->on_unsubscribe_bluetooth_le_advertisements_request(msg);
402
- #endif
403
402
  break;
404
403
  }
405
- case 89: {
404
+ #endif
406
405
  #ifdef USE_VOICE_ASSISTANT
406
+ case 89: {
407
407
  SubscribeVoiceAssistantRequest msg;
408
408
  msg.decode(msg_data, msg_size);
409
409
  #ifdef HAS_PROTO_MESSAGE_DUMP
410
410
  ESP_LOGVV(TAG, "on_subscribe_voice_assistant_request: %s", msg.dump().c_str());
411
411
  #endif
412
412
  this->on_subscribe_voice_assistant_request(msg);
413
- #endif
414
413
  break;
415
414
  }
416
- case 91: {
415
+ #endif
417
416
  #ifdef USE_VOICE_ASSISTANT
417
+ case 91: {
418
418
  VoiceAssistantResponse msg;
419
419
  msg.decode(msg_data, msg_size);
420
420
  #ifdef HAS_PROTO_MESSAGE_DUMP
421
421
  ESP_LOGVV(TAG, "on_voice_assistant_response: %s", msg.dump().c_str());
422
422
  #endif
423
423
  this->on_voice_assistant_response(msg);
424
- #endif
425
424
  break;
426
425
  }
427
- case 92: {
426
+ #endif
428
427
  #ifdef USE_VOICE_ASSISTANT
428
+ case 92: {
429
429
  VoiceAssistantEventResponse msg;
430
430
  msg.decode(msg_data, msg_size);
431
431
  #ifdef HAS_PROTO_MESSAGE_DUMP
432
432
  ESP_LOGVV(TAG, "on_voice_assistant_event_response: %s", msg.dump().c_str());
433
433
  #endif
434
434
  this->on_voice_assistant_event_response(msg);
435
- #endif
436
435
  break;
437
436
  }
438
- case 96: {
437
+ #endif
439
438
  #ifdef USE_ALARM_CONTROL_PANEL
439
+ case 96: {
440
440
  AlarmControlPanelCommandRequest msg;
441
441
  msg.decode(msg_data, msg_size);
442
442
  #ifdef HAS_PROTO_MESSAGE_DUMP
443
443
  ESP_LOGVV(TAG, "on_alarm_control_panel_command_request: %s", msg.dump().c_str());
444
444
  #endif
445
445
  this->on_alarm_control_panel_command_request(msg);
446
- #endif
447
446
  break;
448
447
  }
449
- case 99: {
448
+ #endif
450
449
  #ifdef USE_TEXT
450
+ case 99: {
451
451
  TextCommandRequest msg;
452
452
  msg.decode(msg_data, msg_size);
453
453
  #ifdef HAS_PROTO_MESSAGE_DUMP
454
454
  ESP_LOGVV(TAG, "on_text_command_request: %s", msg.dump().c_str());
455
455
  #endif
456
456
  this->on_text_command_request(msg);
457
- #endif
458
457
  break;
459
458
  }
460
- case 102: {
459
+ #endif
461
460
  #ifdef USE_DATETIME_DATE
461
+ case 102: {
462
462
  DateCommandRequest msg;
463
463
  msg.decode(msg_data, msg_size);
464
464
  #ifdef HAS_PROTO_MESSAGE_DUMP
465
465
  ESP_LOGVV(TAG, "on_date_command_request: %s", msg.dump().c_str());
466
466
  #endif
467
467
  this->on_date_command_request(msg);
468
- #endif
469
468
  break;
470
469
  }
471
- case 105: {
470
+ #endif
472
471
  #ifdef USE_DATETIME_TIME
472
+ case 105: {
473
473
  TimeCommandRequest msg;
474
474
  msg.decode(msg_data, msg_size);
475
475
  #ifdef HAS_PROTO_MESSAGE_DUMP
476
476
  ESP_LOGVV(TAG, "on_time_command_request: %s", msg.dump().c_str());
477
477
  #endif
478
478
  this->on_time_command_request(msg);
479
- #endif
480
479
  break;
481
480
  }
482
- case 106: {
481
+ #endif
483
482
  #ifdef USE_VOICE_ASSISTANT
483
+ case 106: {
484
484
  VoiceAssistantAudio msg;
485
485
  msg.decode(msg_data, msg_size);
486
486
  #ifdef HAS_PROTO_MESSAGE_DUMP
487
487
  ESP_LOGVV(TAG, "on_voice_assistant_audio: %s", msg.dump().c_str());
488
488
  #endif
489
489
  this->on_voice_assistant_audio(msg);
490
- #endif
491
490
  break;
492
491
  }
493
- case 111: {
492
+ #endif
494
493
  #ifdef USE_VALVE
494
+ case 111: {
495
495
  ValveCommandRequest msg;
496
496
  msg.decode(msg_data, msg_size);
497
497
  #ifdef HAS_PROTO_MESSAGE_DUMP
498
498
  ESP_LOGVV(TAG, "on_valve_command_request: %s", msg.dump().c_str());
499
499
  #endif
500
500
  this->on_valve_command_request(msg);
501
- #endif
502
501
  break;
503
502
  }
504
- case 114: {
503
+ #endif
505
504
  #ifdef USE_DATETIME_DATETIME
505
+ case 114: {
506
506
  DateTimeCommandRequest msg;
507
507
  msg.decode(msg_data, msg_size);
508
508
  #ifdef HAS_PROTO_MESSAGE_DUMP
509
509
  ESP_LOGVV(TAG, "on_date_time_command_request: %s", msg.dump().c_str());
510
510
  #endif
511
511
  this->on_date_time_command_request(msg);
512
- #endif
513
512
  break;
514
513
  }
515
- case 115: {
514
+ #endif
516
515
  #ifdef USE_VOICE_ASSISTANT
516
+ case 115: {
517
517
  VoiceAssistantTimerEventResponse msg;
518
518
  msg.decode(msg_data, msg_size);
519
519
  #ifdef HAS_PROTO_MESSAGE_DUMP
520
520
  ESP_LOGVV(TAG, "on_voice_assistant_timer_event_response: %s", msg.dump().c_str());
521
521
  #endif
522
522
  this->on_voice_assistant_timer_event_response(msg);
523
- #endif
524
523
  break;
525
524
  }
526
- case 118: {
525
+ #endif
527
526
  #ifdef USE_UPDATE
527
+ case 118: {
528
528
  UpdateCommandRequest msg;
529
529
  msg.decode(msg_data, msg_size);
530
530
  #ifdef HAS_PROTO_MESSAGE_DUMP
531
531
  ESP_LOGVV(TAG, "on_update_command_request: %s", msg.dump().c_str());
532
532
  #endif
533
533
  this->on_update_command_request(msg);
534
- #endif
535
534
  break;
536
535
  }
537
- case 119: {
536
+ #endif
538
537
  #ifdef USE_VOICE_ASSISTANT
538
+ case 119: {
539
539
  VoiceAssistantAnnounceRequest msg;
540
540
  msg.decode(msg_data, msg_size);
541
541
  #ifdef HAS_PROTO_MESSAGE_DUMP
542
542
  ESP_LOGVV(TAG, "on_voice_assistant_announce_request: %s", msg.dump().c_str());
543
543
  #endif
544
544
  this->on_voice_assistant_announce_request(msg);
545
- #endif
546
545
  break;
547
546
  }
548
- case 121: {
547
+ #endif
549
548
  #ifdef USE_VOICE_ASSISTANT
549
+ case 121: {
550
550
  VoiceAssistantConfigurationRequest msg;
551
551
  msg.decode(msg_data, msg_size);
552
552
  #ifdef HAS_PROTO_MESSAGE_DUMP
553
553
  ESP_LOGVV(TAG, "on_voice_assistant_configuration_request: %s", msg.dump().c_str());
554
554
  #endif
555
555
  this->on_voice_assistant_configuration_request(msg);
556
- #endif
557
556
  break;
558
557
  }
559
- case 123: {
558
+ #endif
560
559
  #ifdef USE_VOICE_ASSISTANT
560
+ case 123: {
561
561
  VoiceAssistantSetConfiguration msg;
562
562
  msg.decode(msg_data, msg_size);
563
563
  #ifdef HAS_PROTO_MESSAGE_DUMP
564
564
  ESP_LOGVV(TAG, "on_voice_assistant_set_configuration: %s", msg.dump().c_str());
565
565
  #endif
566
566
  this->on_voice_assistant_set_configuration(msg);
567
- #endif
568
567
  break;
569
568
  }
570
- case 124: {
569
+ #endif
571
570
  #ifdef USE_API_NOISE
571
+ case 124: {
572
572
  NoiseEncryptionSetKeyRequest msg;
573
573
  msg.decode(msg_data, msg_size);
574
574
  #ifdef HAS_PROTO_MESSAGE_DUMP
575
575
  ESP_LOGVV(TAG, "on_noise_encryption_set_key_request: %s", msg.dump().c_str());
576
576
  #endif
577
577
  this->on_noise_encryption_set_key_request(msg);
578
- #endif
579
578
  break;
580
579
  }
581
- case 127: {
580
+ #endif
582
581
  #ifdef USE_BLUETOOTH_PROXY
582
+ case 127: {
583
583
  BluetoothScannerSetModeRequest msg;
584
584
  msg.decode(msg_data, msg_size);
585
585
  #ifdef HAS_PROTO_MESSAGE_DUMP
586
586
  ESP_LOGVV(TAG, "on_bluetooth_scanner_set_mode_request: %s", msg.dump().c_str());
587
587
  #endif
588
588
  this->on_bluetooth_scanner_set_mode_request(msg);
589
- #endif
590
589
  break;
591
590
  }
591
+ #endif
592
592
  default:
593
- return false;
593
+ break;
594
594
  }
595
- return true;
596
595
  }
597
596
 
598
597
  void APIServerConnection::on_hello_request(const HelloRequest &msg) {
@@ -620,544 +619,300 @@ void APIServerConnection::on_ping_request(const PingRequest &msg) {
620
619
  }
621
620
  }
622
621
  void APIServerConnection::on_device_info_request(const DeviceInfoRequest &msg) {
623
- if (!this->is_connection_setup()) {
624
- this->on_no_setup_connection();
625
- return;
626
- }
627
- DeviceInfoResponse ret = this->device_info(msg);
628
- if (!this->send_message(ret)) {
629
- this->on_fatal_error();
622
+ if (this->check_connection_setup_()) {
623
+ DeviceInfoResponse ret = this->device_info(msg);
624
+ if (!this->send_message(ret)) {
625
+ this->on_fatal_error();
626
+ }
630
627
  }
631
628
  }
632
629
  void APIServerConnection::on_list_entities_request(const ListEntitiesRequest &msg) {
633
- if (!this->is_connection_setup()) {
634
- this->on_no_setup_connection();
635
- return;
630
+ if (this->check_authenticated_()) {
631
+ this->list_entities(msg);
636
632
  }
637
- if (!this->is_authenticated()) {
638
- this->on_unauthenticated_access();
639
- return;
640
- }
641
- this->list_entities(msg);
642
633
  }
643
634
  void APIServerConnection::on_subscribe_states_request(const SubscribeStatesRequest &msg) {
644
- if (!this->is_connection_setup()) {
645
- this->on_no_setup_connection();
646
- return;
647
- }
648
- if (!this->is_authenticated()) {
649
- this->on_unauthenticated_access();
650
- return;
635
+ if (this->check_authenticated_()) {
636
+ this->subscribe_states(msg);
651
637
  }
652
- this->subscribe_states(msg);
653
638
  }
654
639
  void APIServerConnection::on_subscribe_logs_request(const SubscribeLogsRequest &msg) {
655
- if (!this->is_connection_setup()) {
656
- this->on_no_setup_connection();
657
- return;
658
- }
659
- if (!this->is_authenticated()) {
660
- this->on_unauthenticated_access();
661
- return;
640
+ if (this->check_authenticated_()) {
641
+ this->subscribe_logs(msg);
662
642
  }
663
- this->subscribe_logs(msg);
664
643
  }
665
644
  void APIServerConnection::on_subscribe_homeassistant_services_request(
666
645
  const SubscribeHomeassistantServicesRequest &msg) {
667
- if (!this->is_connection_setup()) {
668
- this->on_no_setup_connection();
669
- return;
646
+ if (this->check_authenticated_()) {
647
+ this->subscribe_homeassistant_services(msg);
670
648
  }
671
- if (!this->is_authenticated()) {
672
- this->on_unauthenticated_access();
673
- return;
674
- }
675
- this->subscribe_homeassistant_services(msg);
676
649
  }
677
650
  void APIServerConnection::on_subscribe_home_assistant_states_request(const SubscribeHomeAssistantStatesRequest &msg) {
678
- if (!this->is_connection_setup()) {
679
- this->on_no_setup_connection();
680
- return;
681
- }
682
- if (!this->is_authenticated()) {
683
- this->on_unauthenticated_access();
684
- return;
651
+ if (this->check_authenticated_()) {
652
+ this->subscribe_home_assistant_states(msg);
685
653
  }
686
- this->subscribe_home_assistant_states(msg);
687
654
  }
688
655
  void APIServerConnection::on_get_time_request(const GetTimeRequest &msg) {
689
- if (!this->is_connection_setup()) {
690
- this->on_no_setup_connection();
691
- return;
692
- }
693
- GetTimeResponse ret = this->get_time(msg);
694
- if (!this->send_message(ret)) {
695
- this->on_fatal_error();
656
+ if (this->check_connection_setup_()) {
657
+ GetTimeResponse ret = this->get_time(msg);
658
+ if (!this->send_message(ret)) {
659
+ this->on_fatal_error();
660
+ }
696
661
  }
697
662
  }
698
663
  void APIServerConnection::on_execute_service_request(const ExecuteServiceRequest &msg) {
699
- if (!this->is_connection_setup()) {
700
- this->on_no_setup_connection();
701
- return;
702
- }
703
- if (!this->is_authenticated()) {
704
- this->on_unauthenticated_access();
705
- return;
664
+ if (this->check_authenticated_()) {
665
+ this->execute_service(msg);
706
666
  }
707
- this->execute_service(msg);
708
667
  }
709
668
  #ifdef USE_API_NOISE
710
669
  void APIServerConnection::on_noise_encryption_set_key_request(const NoiseEncryptionSetKeyRequest &msg) {
711
- if (!this->is_connection_setup()) {
712
- this->on_no_setup_connection();
713
- return;
714
- }
715
- if (!this->is_authenticated()) {
716
- this->on_unauthenticated_access();
717
- return;
718
- }
719
- NoiseEncryptionSetKeyResponse ret = this->noise_encryption_set_key(msg);
720
- if (!this->send_message(ret)) {
721
- this->on_fatal_error();
670
+ if (this->check_authenticated_()) {
671
+ NoiseEncryptionSetKeyResponse ret = this->noise_encryption_set_key(msg);
672
+ if (!this->send_message(ret)) {
673
+ this->on_fatal_error();
674
+ }
722
675
  }
723
676
  }
724
677
  #endif
725
678
  #ifdef USE_BUTTON
726
679
  void APIServerConnection::on_button_command_request(const ButtonCommandRequest &msg) {
727
- if (!this->is_connection_setup()) {
728
- this->on_no_setup_connection();
729
- return;
730
- }
731
- if (!this->is_authenticated()) {
732
- this->on_unauthenticated_access();
733
- return;
680
+ if (this->check_authenticated_()) {
681
+ this->button_command(msg);
734
682
  }
735
- this->button_command(msg);
736
683
  }
737
684
  #endif
738
- #ifdef USE_ESP32_CAMERA
685
+ #ifdef USE_CAMERA
739
686
  void APIServerConnection::on_camera_image_request(const CameraImageRequest &msg) {
740
- if (!this->is_connection_setup()) {
741
- this->on_no_setup_connection();
742
- return;
743
- }
744
- if (!this->is_authenticated()) {
745
- this->on_unauthenticated_access();
746
- return;
687
+ if (this->check_authenticated_()) {
688
+ this->camera_image(msg);
747
689
  }
748
- this->camera_image(msg);
749
690
  }
750
691
  #endif
751
692
  #ifdef USE_CLIMATE
752
693
  void APIServerConnection::on_climate_command_request(const ClimateCommandRequest &msg) {
753
- if (!this->is_connection_setup()) {
754
- this->on_no_setup_connection();
755
- return;
694
+ if (this->check_authenticated_()) {
695
+ this->climate_command(msg);
756
696
  }
757
- if (!this->is_authenticated()) {
758
- this->on_unauthenticated_access();
759
- return;
760
- }
761
- this->climate_command(msg);
762
697
  }
763
698
  #endif
764
699
  #ifdef USE_COVER
765
700
  void APIServerConnection::on_cover_command_request(const CoverCommandRequest &msg) {
766
- if (!this->is_connection_setup()) {
767
- this->on_no_setup_connection();
768
- return;
769
- }
770
- if (!this->is_authenticated()) {
771
- this->on_unauthenticated_access();
772
- return;
701
+ if (this->check_authenticated_()) {
702
+ this->cover_command(msg);
773
703
  }
774
- this->cover_command(msg);
775
704
  }
776
705
  #endif
777
706
  #ifdef USE_DATETIME_DATE
778
707
  void APIServerConnection::on_date_command_request(const DateCommandRequest &msg) {
779
- if (!this->is_connection_setup()) {
780
- this->on_no_setup_connection();
781
- return;
708
+ if (this->check_authenticated_()) {
709
+ this->date_command(msg);
782
710
  }
783
- if (!this->is_authenticated()) {
784
- this->on_unauthenticated_access();
785
- return;
786
- }
787
- this->date_command(msg);
788
711
  }
789
712
  #endif
790
713
  #ifdef USE_DATETIME_DATETIME
791
714
  void APIServerConnection::on_date_time_command_request(const DateTimeCommandRequest &msg) {
792
- if (!this->is_connection_setup()) {
793
- this->on_no_setup_connection();
794
- return;
795
- }
796
- if (!this->is_authenticated()) {
797
- this->on_unauthenticated_access();
798
- return;
715
+ if (this->check_authenticated_()) {
716
+ this->datetime_command(msg);
799
717
  }
800
- this->datetime_command(msg);
801
718
  }
802
719
  #endif
803
720
  #ifdef USE_FAN
804
721
  void APIServerConnection::on_fan_command_request(const FanCommandRequest &msg) {
805
- if (!this->is_connection_setup()) {
806
- this->on_no_setup_connection();
807
- return;
722
+ if (this->check_authenticated_()) {
723
+ this->fan_command(msg);
808
724
  }
809
- if (!this->is_authenticated()) {
810
- this->on_unauthenticated_access();
811
- return;
812
- }
813
- this->fan_command(msg);
814
725
  }
815
726
  #endif
816
727
  #ifdef USE_LIGHT
817
728
  void APIServerConnection::on_light_command_request(const LightCommandRequest &msg) {
818
- if (!this->is_connection_setup()) {
819
- this->on_no_setup_connection();
820
- return;
821
- }
822
- if (!this->is_authenticated()) {
823
- this->on_unauthenticated_access();
824
- return;
729
+ if (this->check_authenticated_()) {
730
+ this->light_command(msg);
825
731
  }
826
- this->light_command(msg);
827
732
  }
828
733
  #endif
829
734
  #ifdef USE_LOCK
830
735
  void APIServerConnection::on_lock_command_request(const LockCommandRequest &msg) {
831
- if (!this->is_connection_setup()) {
832
- this->on_no_setup_connection();
833
- return;
834
- }
835
- if (!this->is_authenticated()) {
836
- this->on_unauthenticated_access();
837
- return;
736
+ if (this->check_authenticated_()) {
737
+ this->lock_command(msg);
838
738
  }
839
- this->lock_command(msg);
840
739
  }
841
740
  #endif
842
741
  #ifdef USE_MEDIA_PLAYER
843
742
  void APIServerConnection::on_media_player_command_request(const MediaPlayerCommandRequest &msg) {
844
- if (!this->is_connection_setup()) {
845
- this->on_no_setup_connection();
846
- return;
743
+ if (this->check_authenticated_()) {
744
+ this->media_player_command(msg);
847
745
  }
848
- if (!this->is_authenticated()) {
849
- this->on_unauthenticated_access();
850
- return;
851
- }
852
- this->media_player_command(msg);
853
746
  }
854
747
  #endif
855
748
  #ifdef USE_NUMBER
856
749
  void APIServerConnection::on_number_command_request(const NumberCommandRequest &msg) {
857
- if (!this->is_connection_setup()) {
858
- this->on_no_setup_connection();
859
- return;
860
- }
861
- if (!this->is_authenticated()) {
862
- this->on_unauthenticated_access();
863
- return;
750
+ if (this->check_authenticated_()) {
751
+ this->number_command(msg);
864
752
  }
865
- this->number_command(msg);
866
753
  }
867
754
  #endif
868
755
  #ifdef USE_SELECT
869
756
  void APIServerConnection::on_select_command_request(const SelectCommandRequest &msg) {
870
- if (!this->is_connection_setup()) {
871
- this->on_no_setup_connection();
872
- return;
873
- }
874
- if (!this->is_authenticated()) {
875
- this->on_unauthenticated_access();
876
- return;
757
+ if (this->check_authenticated_()) {
758
+ this->select_command(msg);
877
759
  }
878
- this->select_command(msg);
879
760
  }
880
761
  #endif
881
762
  #ifdef USE_SIREN
882
763
  void APIServerConnection::on_siren_command_request(const SirenCommandRequest &msg) {
883
- if (!this->is_connection_setup()) {
884
- this->on_no_setup_connection();
885
- return;
764
+ if (this->check_authenticated_()) {
765
+ this->siren_command(msg);
886
766
  }
887
- if (!this->is_authenticated()) {
888
- this->on_unauthenticated_access();
889
- return;
890
- }
891
- this->siren_command(msg);
892
767
  }
893
768
  #endif
894
769
  #ifdef USE_SWITCH
895
770
  void APIServerConnection::on_switch_command_request(const SwitchCommandRequest &msg) {
896
- if (!this->is_connection_setup()) {
897
- this->on_no_setup_connection();
898
- return;
899
- }
900
- if (!this->is_authenticated()) {
901
- this->on_unauthenticated_access();
902
- return;
771
+ if (this->check_authenticated_()) {
772
+ this->switch_command(msg);
903
773
  }
904
- this->switch_command(msg);
905
774
  }
906
775
  #endif
907
776
  #ifdef USE_TEXT
908
777
  void APIServerConnection::on_text_command_request(const TextCommandRequest &msg) {
909
- if (!this->is_connection_setup()) {
910
- this->on_no_setup_connection();
911
- return;
912
- }
913
- if (!this->is_authenticated()) {
914
- this->on_unauthenticated_access();
915
- return;
778
+ if (this->check_authenticated_()) {
779
+ this->text_command(msg);
916
780
  }
917
- this->text_command(msg);
918
781
  }
919
782
  #endif
920
783
  #ifdef USE_DATETIME_TIME
921
784
  void APIServerConnection::on_time_command_request(const TimeCommandRequest &msg) {
922
- if (!this->is_connection_setup()) {
923
- this->on_no_setup_connection();
924
- return;
785
+ if (this->check_authenticated_()) {
786
+ this->time_command(msg);
925
787
  }
926
- if (!this->is_authenticated()) {
927
- this->on_unauthenticated_access();
928
- return;
929
- }
930
- this->time_command(msg);
931
788
  }
932
789
  #endif
933
790
  #ifdef USE_UPDATE
934
791
  void APIServerConnection::on_update_command_request(const UpdateCommandRequest &msg) {
935
- if (!this->is_connection_setup()) {
936
- this->on_no_setup_connection();
937
- return;
938
- }
939
- if (!this->is_authenticated()) {
940
- this->on_unauthenticated_access();
941
- return;
792
+ if (this->check_authenticated_()) {
793
+ this->update_command(msg);
942
794
  }
943
- this->update_command(msg);
944
795
  }
945
796
  #endif
946
797
  #ifdef USE_VALVE
947
798
  void APIServerConnection::on_valve_command_request(const ValveCommandRequest &msg) {
948
- if (!this->is_connection_setup()) {
949
- this->on_no_setup_connection();
950
- return;
799
+ if (this->check_authenticated_()) {
800
+ this->valve_command(msg);
951
801
  }
952
- if (!this->is_authenticated()) {
953
- this->on_unauthenticated_access();
954
- return;
955
- }
956
- this->valve_command(msg);
957
802
  }
958
803
  #endif
959
804
  #ifdef USE_BLUETOOTH_PROXY
960
805
  void APIServerConnection::on_subscribe_bluetooth_le_advertisements_request(
961
806
  const SubscribeBluetoothLEAdvertisementsRequest &msg) {
962
- if (!this->is_connection_setup()) {
963
- this->on_no_setup_connection();
964
- return;
965
- }
966
- if (!this->is_authenticated()) {
967
- this->on_unauthenticated_access();
968
- return;
807
+ if (this->check_authenticated_()) {
808
+ this->subscribe_bluetooth_le_advertisements(msg);
969
809
  }
970
- this->subscribe_bluetooth_le_advertisements(msg);
971
810
  }
972
811
  #endif
973
812
  #ifdef USE_BLUETOOTH_PROXY
974
813
  void APIServerConnection::on_bluetooth_device_request(const BluetoothDeviceRequest &msg) {
975
- if (!this->is_connection_setup()) {
976
- this->on_no_setup_connection();
977
- return;
814
+ if (this->check_authenticated_()) {
815
+ this->bluetooth_device_request(msg);
978
816
  }
979
- if (!this->is_authenticated()) {
980
- this->on_unauthenticated_access();
981
- return;
982
- }
983
- this->bluetooth_device_request(msg);
984
817
  }
985
818
  #endif
986
819
  #ifdef USE_BLUETOOTH_PROXY
987
820
  void APIServerConnection::on_bluetooth_gatt_get_services_request(const BluetoothGATTGetServicesRequest &msg) {
988
- if (!this->is_connection_setup()) {
989
- this->on_no_setup_connection();
990
- return;
991
- }
992
- if (!this->is_authenticated()) {
993
- this->on_unauthenticated_access();
994
- return;
821
+ if (this->check_authenticated_()) {
822
+ this->bluetooth_gatt_get_services(msg);
995
823
  }
996
- this->bluetooth_gatt_get_services(msg);
997
824
  }
998
825
  #endif
999
826
  #ifdef USE_BLUETOOTH_PROXY
1000
827
  void APIServerConnection::on_bluetooth_gatt_read_request(const BluetoothGATTReadRequest &msg) {
1001
- if (!this->is_connection_setup()) {
1002
- this->on_no_setup_connection();
1003
- return;
1004
- }
1005
- if (!this->is_authenticated()) {
1006
- this->on_unauthenticated_access();
1007
- return;
828
+ if (this->check_authenticated_()) {
829
+ this->bluetooth_gatt_read(msg);
1008
830
  }
1009
- this->bluetooth_gatt_read(msg);
1010
831
  }
1011
832
  #endif
1012
833
  #ifdef USE_BLUETOOTH_PROXY
1013
834
  void APIServerConnection::on_bluetooth_gatt_write_request(const BluetoothGATTWriteRequest &msg) {
1014
- if (!this->is_connection_setup()) {
1015
- this->on_no_setup_connection();
1016
- return;
835
+ if (this->check_authenticated_()) {
836
+ this->bluetooth_gatt_write(msg);
1017
837
  }
1018
- if (!this->is_authenticated()) {
1019
- this->on_unauthenticated_access();
1020
- return;
1021
- }
1022
- this->bluetooth_gatt_write(msg);
1023
838
  }
1024
839
  #endif
1025
840
  #ifdef USE_BLUETOOTH_PROXY
1026
841
  void APIServerConnection::on_bluetooth_gatt_read_descriptor_request(const BluetoothGATTReadDescriptorRequest &msg) {
1027
- if (!this->is_connection_setup()) {
1028
- this->on_no_setup_connection();
1029
- return;
1030
- }
1031
- if (!this->is_authenticated()) {
1032
- this->on_unauthenticated_access();
1033
- return;
842
+ if (this->check_authenticated_()) {
843
+ this->bluetooth_gatt_read_descriptor(msg);
1034
844
  }
1035
- this->bluetooth_gatt_read_descriptor(msg);
1036
845
  }
1037
846
  #endif
1038
847
  #ifdef USE_BLUETOOTH_PROXY
1039
848
  void APIServerConnection::on_bluetooth_gatt_write_descriptor_request(const BluetoothGATTWriteDescriptorRequest &msg) {
1040
- if (!this->is_connection_setup()) {
1041
- this->on_no_setup_connection();
1042
- return;
1043
- }
1044
- if (!this->is_authenticated()) {
1045
- this->on_unauthenticated_access();
1046
- return;
849
+ if (this->check_authenticated_()) {
850
+ this->bluetooth_gatt_write_descriptor(msg);
1047
851
  }
1048
- this->bluetooth_gatt_write_descriptor(msg);
1049
852
  }
1050
853
  #endif
1051
854
  #ifdef USE_BLUETOOTH_PROXY
1052
855
  void APIServerConnection::on_bluetooth_gatt_notify_request(const BluetoothGATTNotifyRequest &msg) {
1053
- if (!this->is_connection_setup()) {
1054
- this->on_no_setup_connection();
1055
- return;
856
+ if (this->check_authenticated_()) {
857
+ this->bluetooth_gatt_notify(msg);
1056
858
  }
1057
- if (!this->is_authenticated()) {
1058
- this->on_unauthenticated_access();
1059
- return;
1060
- }
1061
- this->bluetooth_gatt_notify(msg);
1062
859
  }
1063
860
  #endif
1064
861
  #ifdef USE_BLUETOOTH_PROXY
1065
862
  void APIServerConnection::on_subscribe_bluetooth_connections_free_request(
1066
863
  const SubscribeBluetoothConnectionsFreeRequest &msg) {
1067
- if (!this->is_connection_setup()) {
1068
- this->on_no_setup_connection();
1069
- return;
1070
- }
1071
- if (!this->is_authenticated()) {
1072
- this->on_unauthenticated_access();
1073
- return;
1074
- }
1075
- BluetoothConnectionsFreeResponse ret = this->subscribe_bluetooth_connections_free(msg);
1076
- if (!this->send_message(ret)) {
1077
- this->on_fatal_error();
864
+ if (this->check_authenticated_()) {
865
+ BluetoothConnectionsFreeResponse ret = this->subscribe_bluetooth_connections_free(msg);
866
+ if (!this->send_message(ret)) {
867
+ this->on_fatal_error();
868
+ }
1078
869
  }
1079
870
  }
1080
871
  #endif
1081
872
  #ifdef USE_BLUETOOTH_PROXY
1082
873
  void APIServerConnection::on_unsubscribe_bluetooth_le_advertisements_request(
1083
874
  const UnsubscribeBluetoothLEAdvertisementsRequest &msg) {
1084
- if (!this->is_connection_setup()) {
1085
- this->on_no_setup_connection();
1086
- return;
1087
- }
1088
- if (!this->is_authenticated()) {
1089
- this->on_unauthenticated_access();
1090
- return;
875
+ if (this->check_authenticated_()) {
876
+ this->unsubscribe_bluetooth_le_advertisements(msg);
1091
877
  }
1092
- this->unsubscribe_bluetooth_le_advertisements(msg);
1093
878
  }
1094
879
  #endif
1095
880
  #ifdef USE_BLUETOOTH_PROXY
1096
881
  void APIServerConnection::on_bluetooth_scanner_set_mode_request(const BluetoothScannerSetModeRequest &msg) {
1097
- if (!this->is_connection_setup()) {
1098
- this->on_no_setup_connection();
1099
- return;
882
+ if (this->check_authenticated_()) {
883
+ this->bluetooth_scanner_set_mode(msg);
1100
884
  }
1101
- if (!this->is_authenticated()) {
1102
- this->on_unauthenticated_access();
1103
- return;
1104
- }
1105
- this->bluetooth_scanner_set_mode(msg);
1106
885
  }
1107
886
  #endif
1108
887
  #ifdef USE_VOICE_ASSISTANT
1109
888
  void APIServerConnection::on_subscribe_voice_assistant_request(const SubscribeVoiceAssistantRequest &msg) {
1110
- if (!this->is_connection_setup()) {
1111
- this->on_no_setup_connection();
1112
- return;
1113
- }
1114
- if (!this->is_authenticated()) {
1115
- this->on_unauthenticated_access();
1116
- return;
889
+ if (this->check_authenticated_()) {
890
+ this->subscribe_voice_assistant(msg);
1117
891
  }
1118
- this->subscribe_voice_assistant(msg);
1119
892
  }
1120
893
  #endif
1121
894
  #ifdef USE_VOICE_ASSISTANT
1122
895
  void APIServerConnection::on_voice_assistant_configuration_request(const VoiceAssistantConfigurationRequest &msg) {
1123
- if (!this->is_connection_setup()) {
1124
- this->on_no_setup_connection();
1125
- return;
1126
- }
1127
- if (!this->is_authenticated()) {
1128
- this->on_unauthenticated_access();
1129
- return;
1130
- }
1131
- VoiceAssistantConfigurationResponse ret = this->voice_assistant_get_configuration(msg);
1132
- if (!this->send_message(ret)) {
1133
- this->on_fatal_error();
896
+ if (this->check_authenticated_()) {
897
+ VoiceAssistantConfigurationResponse ret = this->voice_assistant_get_configuration(msg);
898
+ if (!this->send_message(ret)) {
899
+ this->on_fatal_error();
900
+ }
1134
901
  }
1135
902
  }
1136
903
  #endif
1137
904
  #ifdef USE_VOICE_ASSISTANT
1138
905
  void APIServerConnection::on_voice_assistant_set_configuration(const VoiceAssistantSetConfiguration &msg) {
1139
- if (!this->is_connection_setup()) {
1140
- this->on_no_setup_connection();
1141
- return;
1142
- }
1143
- if (!this->is_authenticated()) {
1144
- this->on_unauthenticated_access();
1145
- return;
906
+ if (this->check_authenticated_()) {
907
+ this->voice_assistant_set_configuration(msg);
1146
908
  }
1147
- this->voice_assistant_set_configuration(msg);
1148
909
  }
1149
910
  #endif
1150
911
  #ifdef USE_ALARM_CONTROL_PANEL
1151
912
  void APIServerConnection::on_alarm_control_panel_command_request(const AlarmControlPanelCommandRequest &msg) {
1152
- if (!this->is_connection_setup()) {
1153
- this->on_no_setup_connection();
1154
- return;
1155
- }
1156
- if (!this->is_authenticated()) {
1157
- this->on_unauthenticated_access();
1158
- return;
913
+ if (this->check_authenticated_()) {
914
+ this->alarm_control_panel_command(msg);
1159
915
  }
1160
- this->alarm_control_panel_command(msg);
1161
916
  }
1162
917
  #endif
1163
918