ESPHome  2024.2.1
Public Member Functions | Protected Member Functions | Protected Attributes
esphome::web_server::WebServer Class Reference

This class allows users to create a web server with their ESP nodes. More...

#include <web_server.h>

Inheritance diagram for esphome::web_server::WebServer:
esphome::Controller esphome::Component

Public Member Functions

 WebServer (web_server_base::WebServerBase *base)
 
void set_css_url (const char *css_url)
 Set the URL to the CSS <link> that's sent to each client. More...
 
void set_js_url (const char *js_url)
 Set the URL to the script that's embedded in the index page. More...
 
void set_css_include (const char *css_include)
 Set local path to the script that's embedded in the index page. More...
 
void set_js_include (const char *js_include)
 Set local path to the script that's embedded in the index page. More...
 
void set_include_internal (bool include_internal)
 Determine whether internal components should be displayed on the web server. More...
 
void set_allow_ota (bool allow_ota)
 Set whether or not the webserver should expose the OTA form and handler. More...
 
void set_expose_log (bool expose_log)
 Set whether or not the webserver should expose the Log. More...
 
void setup () override
 Setup the internal web server and register handlers. More...
 
void loop () override
 
void dump_config () override
 
float get_setup_priority () const override
 MQTT setup priority. More...
 
void handle_index_request (AsyncWebServerRequest *request)
 Handle an index request under '/'. More...
 
std::string get_config_json ()
 Return the webserver configuration as JSON. More...
 
void handle_css_request (AsyncWebServerRequest *request)
 Handle included css request under '/0.css'. More...
 
void handle_js_request (AsyncWebServerRequest *request)
 Handle included js request under '/0.js'. More...
 
void handle_pna_cors_request (AsyncWebServerRequest *request)
 
void on_sensor_update (sensor::Sensor *obj, float state) override
 
void handle_sensor_request (AsyncWebServerRequest *request, const UrlMatch &match)
 Handle a sensor request under '/sensor/<id>'. More...
 
std::string sensor_json (sensor::Sensor *obj, float value, JsonDetail start_config)
 Dump the sensor state with its value as a JSON string. More...
 
void on_switch_update (switch_::Switch *obj, bool state) override
 
void handle_switch_request (AsyncWebServerRequest *request, const UrlMatch &match)
 Handle a switch request under '/switch/<id>/</turn_on/turn_off/toggle>'. More...
 
std::string switch_json (switch_::Switch *obj, bool value, JsonDetail start_config)
 Dump the switch state with its value as a JSON string. More...
 
void handle_button_request (AsyncWebServerRequest *request, const UrlMatch &match)
 Handle a button request under '/button/<id>/press'. More...
 
std::string button_json (button::Button *obj, JsonDetail start_config)
 Dump the button details with its value as a JSON string. More...
 
void on_binary_sensor_update (binary_sensor::BinarySensor *obj, bool state) override
 
void handle_binary_sensor_request (AsyncWebServerRequest *request, const UrlMatch &match)
 Handle a binary sensor request under '/binary_sensor/<id>'. More...
 
std::string binary_sensor_json (binary_sensor::BinarySensor *obj, bool value, JsonDetail start_config)
 Dump the binary sensor state with its value as a JSON string. More...
 
void on_fan_update (fan::Fan *obj) override
 
void handle_fan_request (AsyncWebServerRequest *request, const UrlMatch &match)
 Handle a fan request under '/fan/<id>/</turn_on/turn_off/toggle>'. More...
 
std::string fan_json (fan::Fan *obj, JsonDetail start_config)
 Dump the fan state as a JSON string. More...
 
void on_light_update (light::LightState *obj) override
 
void handle_light_request (AsyncWebServerRequest *request, const UrlMatch &match)
 Handle a light request under '/light/<id>/</turn_on/turn_off/toggle>'. More...
 
std::string light_json (light::LightState *obj, JsonDetail start_config)
 Dump the light state as a JSON string. More...
 
void on_text_sensor_update (text_sensor::TextSensor *obj, const std::string &state) override
 
void handle_text_sensor_request (AsyncWebServerRequest *request, const UrlMatch &match)
 Handle a text sensor request under '/text_sensor/<id>'. More...
 
std::string text_sensor_json (text_sensor::TextSensor *obj, const std::string &value, JsonDetail start_config)
 Dump the text sensor state with its value as a JSON string. More...
 
void on_cover_update (cover::Cover *obj) override
 
void handle_cover_request (AsyncWebServerRequest *request, const UrlMatch &match)
 Handle a cover request under '/cover/<id>/<open/close/stop/set>'. More...
 
std::string cover_json (cover::Cover *obj, JsonDetail start_config)
 Dump the cover state as a JSON string. More...
 
void on_number_update (number::Number *obj, float state) override
 
void handle_number_request (AsyncWebServerRequest *request, const UrlMatch &match)
 Handle a number request under '/number/<id>'. More...
 
std::string number_json (number::Number *obj, float value, JsonDetail start_config)
 Dump the number state with its value as a JSON string. More...
 
void on_text_update (text::Text *obj, const std::string &state) override
 
void handle_text_request (AsyncWebServerRequest *request, const UrlMatch &match)
 Handle a text input request under '/text/<id>'. More...
 
std::string text_json (text::Text *obj, const std::string &value, JsonDetail start_config)
 Dump the text state with its value as a JSON string. More...
 
void on_select_update (select::Select *obj, const std::string &state, size_t index) override
 
void handle_select_request (AsyncWebServerRequest *request, const UrlMatch &match)
 Handle a select request under '/select/<id>'. More...
 
std::string select_json (select::Select *obj, const std::string &value, JsonDetail start_config)
 Dump the select state with its value as a JSON string. More...
 
void on_climate_update (climate::Climate *obj) override
 
void handle_climate_request (AsyncWebServerRequest *request, const UrlMatch &match)
 Handle a climate request under '/climate/<id>'. More...
 
std::string climate_json (climate::Climate *obj, JsonDetail start_config)
 Dump the climate details. More...
 
void on_lock_update (lock::Lock *obj) override
 
void handle_lock_request (AsyncWebServerRequest *request, const UrlMatch &match)
 Handle a lock request under '/lock/<id>/</lock/unlock/open>'. More...
 
std::string lock_json (lock::Lock *obj, lock::LockState value, JsonDetail start_config)
 Dump the lock state with its value as a JSON string. More...
 
void on_alarm_control_panel_update (alarm_control_panel::AlarmControlPanel *obj) override
 
void handle_alarm_control_panel_request (AsyncWebServerRequest *request, const UrlMatch &match)
 Handle a alarm_control_panel request under '/alarm_control_panel/<id>'. More...
 
std::string alarm_control_panel_json (alarm_control_panel::AlarmControlPanel *obj, alarm_control_panel::AlarmControlPanelState value, JsonDetail start_config)
 Dump the alarm_control_panel state with its value as a JSON string. More...
 
bool canHandle (AsyncWebServerRequest *request) override
 Override the web handler's canHandle method. More...
 
void handleRequest (AsyncWebServerRequest *request) override
 Override the web handler's handleRequest method. More...
 
bool isRequestHandlerTrivial () override
 This web handle is not trivial. More...
 
- Public Member Functions inherited from esphome::Controller
void setup_controller (bool include_internal=false)
 
virtual void on_media_player_update (media_player::MediaPlayer *obj)
 
- Public Member Functions inherited from esphome::Component
float get_actual_setup_priority () const
 
void set_setup_priority (float priority)
 
virtual float get_loop_priority () const
 priority of loop(). More...
 
void call ()
 
virtual void on_shutdown ()
 
virtual void on_safe_shutdown ()
 
uint32_t get_component_state () const
 
virtual void mark_failed ()
 Mark this component as failed. More...
 
bool is_failed ()
 
bool is_ready ()
 
virtual bool can_proceed ()
 
bool status_has_warning ()
 
bool status_has_error ()
 
void status_set_warning ()
 
void status_set_error ()
 
void status_clear_warning ()
 
void status_clear_error ()
 
void status_momentary_warning (const std::string &name, uint32_t length=5000)
 
void status_momentary_error (const std::string &name, uint32_t length=5000)
 
bool has_overridden_loop () const
 
void set_component_source (const char *source)
 Set where this component was loaded from for some debug messages. More...
 
const char * get_component_source () const
 Get the integration where this component was declared as a string. More...
 

Protected Member Functions

void schedule_ (std::function< void()> &&f)
 
- Protected Member Functions inherited from esphome::Component
virtual void call_loop ()
 
virtual void call_setup ()
 
virtual void call_dump_config ()
 
void set_interval (const std::string &name, uint32_t interval, std::function< void()> &&f)
 Set an interval function with a unique name. More...
 
void set_interval (uint32_t interval, std::function< void()> &&f)
 
bool cancel_interval (const std::string &name)
 Cancel an interval function. More...
 
void set_retry (const std::string &name, uint32_t initial_wait_time, uint8_t max_attempts, std::function< RetryResult(uint8_t)> &&f, float backoff_increase_factor=1.0f)
 Set an retry function with a unique name. More...
 
void set_retry (uint32_t initial_wait_time, uint8_t max_attempts, std::function< RetryResult(uint8_t)> &&f, float backoff_increase_factor=1.0f)
 
bool cancel_retry (const std::string &name)
 Cancel a retry function. More...
 
void set_timeout (const std::string &name, uint32_t timeout, std::function< void()> &&f)
 Set a timeout function with a unique name. More...
 
void set_timeout (uint32_t timeout, std::function< void()> &&f)
 
bool cancel_timeout (const std::string &name)
 Cancel a timeout function. More...
 
void defer (const std::string &name, std::function< void()> &&f)
 Defer a callback to the next loop() call. More...
 
void defer (std::function< void()> &&f)
 Defer a callback to the next loop() call. More...
 
bool cancel_defer (const std::string &name)
 Cancel a defer callback using the specified name, name must not be empty. More...
 

Protected Attributes

friend ListEntitiesIterator
 
web_server_base::WebServerBasebase_
 
AsyncEventSource events_ {"/events"}
 
ListEntitiesIterator entities_iterator_
 
const char * css_url_ {nullptr}
 
const char * js_url_ {nullptr}
 
const char * css_include_ {nullptr}
 
const char * js_include_ {nullptr}
 
bool include_internal_ {false}
 
bool allow_ota_ {true}
 
bool expose_log_ {true}
 
std::deque< std::function< void()> > to_schedule_
 
SemaphoreHandle_t to_schedule_lock_
 
- Protected Attributes inherited from esphome::Component
uint32_t component_state_ {0x0000}
 State of this component. More...
 
float setup_priority_override_ {NAN}
 
const char * component_source_ {nullptr}
 

Detailed Description

This class allows users to create a web server with their ESP nodes.

Behind the scenes it's using AsyncWebServer to set up the server. It exposes 3 things: an index page under '/' that's used to show a simple web interface (the css/js is hosted by esphome.io by default), an event source under '/events' that automatically sends all state updates in real time + the debug log. Lastly, there's an REST API available under the '/light/...', '/sensor/...', ... URLs. A full documentation for this API can be found under https://esphome.io/web-api/index.html.

Definition at line 53 of file web_server.h.

Constructor & Destructor Documentation

◆ WebServer()

esphome::web_server::WebServer::WebServer ( web_server_base::WebServerBase base)

Definition at line 93 of file web_server.cpp.

Member Function Documentation

◆ alarm_control_panel_json()

std::string esphome::web_server::WebServer::alarm_control_panel_json ( alarm_control_panel::AlarmControlPanel obj,
alarm_control_panel::AlarmControlPanelState  value,
JsonDetail  start_config 
)

Dump the alarm_control_panel state with its value as a JSON string.

Definition at line 1140 of file web_server.cpp.

◆ binary_sensor_json()

std::string esphome::web_server::WebServer::binary_sensor_json ( binary_sensor::BinarySensor obj,
bool  value,
JsonDetail  start_config 
)

Dump the binary sensor state with its value as a JSON string.

Definition at line 536 of file web_server.cpp.

◆ button_json()

std::string esphome::web_server::WebServer::button_json ( button::Button obj,
JsonDetail  start_config 
)

Dump the button details with its value as a JSON string.

Definition at line 510 of file web_server.cpp.

◆ canHandle()

bool esphome::web_server::WebServer::canHandle ( AsyncWebServerRequest *  request)
override

Override the web handler's canHandle method.

Definition at line 1164 of file web_server.cpp.

◆ climate_json()

std::string esphome::web_server::WebServer::climate_json ( climate::Climate obj,
JsonDetail  start_config 
)

Dump the climate details.

Definition at line 1012 of file web_server.cpp.

◆ cover_json()

std::string esphome::web_server::WebServer::cover_json ( cover::Cover obj,
JsonDetail  start_config 
)

Dump the cover state as a JSON string.

Definition at line 782 of file web_server.cpp.

◆ dump_config()

void esphome::web_server::WebServer::dump_config ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 167 of file web_server.cpp.

◆ fan_json()

std::string esphome::web_server::WebServer::fan_json ( fan::Fan obj,
JsonDetail  start_config 
)

Dump the fan state as a JSON string.

Definition at line 556 of file web_server.cpp.

◆ get_config_json()

std::string esphome::web_server::WebServer::get_config_json ( )

Return the webserver configuration as JSON.

Definition at line 112 of file web_server.cpp.

◆ get_setup_priority()

float esphome::web_server::WebServer::get_setup_priority ( ) const
overridevirtual

MQTT setup priority.

Reimplemented from esphome::Component.

Definition at line 171 of file web_server.cpp.

◆ handle_alarm_control_panel_request()

void esphome::web_server::WebServer::handle_alarm_control_panel_request ( AsyncWebServerRequest *  request,
const UrlMatch match 
)

Handle a alarm_control_panel request under '/alarm_control_panel/<id>'.

Definition at line 1149 of file web_server.cpp.

◆ handle_binary_sensor_request()

void esphome::web_server::WebServer::handle_binary_sensor_request ( AsyncWebServerRequest *  request,
const UrlMatch match 
)

Handle a binary sensor request under '/binary_sensor/<id>'.

Definition at line 542 of file web_server.cpp.

◆ handle_button_request()

void esphome::web_server::WebServer::handle_button_request ( AsyncWebServerRequest *  request,
const UrlMatch match 
)

Handle a button request under '/button/<id>/press'.

Definition at line 515 of file web_server.cpp.

◆ handle_climate_request()

void esphome::web_server::WebServer::handle_climate_request ( AsyncWebServerRequest *  request,
const UrlMatch match 
)

Handle a climate request under '/climate/<id>'.

Definition at line 964 of file web_server.cpp.

◆ handle_cover_request()

void esphome::web_server::WebServer::handle_cover_request ( AsyncWebServerRequest *  request,
const UrlMatch match 
)

Handle a cover request under '/cover/<id>/<open/close/stop/set>'.

Definition at line 733 of file web_server.cpp.

◆ handle_css_request()

void esphome::web_server::WebServer::handle_css_request ( AsyncWebServerRequest *  request)

Handle included css request under '/0.css'.

Definition at line 381 of file web_server.cpp.

◆ handle_fan_request()

void esphome::web_server::WebServer::handle_fan_request ( AsyncWebServerRequest *  request,
const UrlMatch match 
)

Handle a fan request under '/fan/<id>/</turn_on/turn_off/toggle>'.

Definition at line 569 of file web_server.cpp.

◆ handle_index_request()

void esphome::web_server::WebServer::handle_index_request ( AsyncWebServerRequest *  request)

Handle an index request under '/'.

Definition at line 174 of file web_server.cpp.

◆ handle_js_request()

void esphome::web_server::WebServer::handle_js_request ( AsyncWebServerRequest *  request)

Handle included js request under '/0.js'.

Definition at line 390 of file web_server.cpp.

◆ handle_light_request()

void esphome::web_server::WebServer::handle_light_request ( AsyncWebServerRequest *  request,
const UrlMatch match 
)

Handle a light request under '/light/<id>/</turn_on/turn_off/toggle>'.

Definition at line 627 of file web_server.cpp.

◆ handle_lock_request()

void esphome::web_server::WebServer::handle_lock_request ( AsyncWebServerRequest *  request,
const UrlMatch match 
)

Handle a lock request under '/lock/<id>/</lock/unlock/open>'.

Definition at line 1110 of file web_server.cpp.

◆ handle_number_request()

void esphome::web_server::WebServer::handle_number_request ( AsyncWebServerRequest *  request,
const UrlMatch match 
)

Handle a number request under '/number/<id>'.

Definition at line 800 of file web_server.cpp.

◆ handle_pna_cors_request()

void esphome::web_server::WebServer::handle_pna_cors_request ( AsyncWebServerRequest *  request)

Definition at line 370 of file web_server.cpp.

◆ handle_select_request()

void esphome::web_server::WebServer::handle_select_request ( AsyncWebServerRequest *  request,
const UrlMatch match 
)

Handle a select request under '/select/<id>'.

Definition at line 909 of file web_server.cpp.

◆ handle_sensor_request()

void esphome::web_server::WebServer::handle_sensor_request ( AsyncWebServerRequest *  request,
const UrlMatch match 
)

Handle a sensor request under '/sensor/<id>'.

Definition at line 420 of file web_server.cpp.

◆ handle_switch_request()

void esphome::web_server::WebServer::handle_switch_request ( AsyncWebServerRequest *  request,
const UrlMatch match 
)

Handle a switch request under '/switch/<id>/</turn_on/turn_off/toggle>'.

Definition at line 483 of file web_server.cpp.

◆ handle_text_request()

void esphome::web_server::WebServer::handle_text_request ( AsyncWebServerRequest *  request,
const UrlMatch match 
)

Handle a text input request under '/text/<id>'.

Definition at line 858 of file web_server.cpp.

◆ handle_text_sensor_request()

void esphome::web_server::WebServer::handle_text_sensor_request ( AsyncWebServerRequest *  request,
const UrlMatch match 
)

Handle a text sensor request under '/text_sensor/<id>'.

Definition at line 453 of file web_server.cpp.

◆ handleRequest()

void esphome::web_server::WebServer::handleRequest ( AsyncWebServerRequest *  request)
override

Override the web handler's handleRequest method.

Definition at line 1265 of file web_server.cpp.

◆ isRequestHandlerTrivial()

bool esphome::web_server::WebServer::isRequestHandlerTrivial ( )
override

This web handle is not trivial.

Definition at line 1394 of file web_server.cpp.

◆ light_json()

std::string esphome::web_server::WebServer::light_json ( light::LightState obj,
JsonDetail  start_config 
)

Dump the light state as a JSON string.

Definition at line 712 of file web_server.cpp.

◆ lock_json()

std::string esphome::web_server::WebServer::lock_json ( lock::Lock obj,
lock::LockState  value,
JsonDetail  start_config 
)

Dump the lock state with its value as a JSON string.

Definition at line 1104 of file web_server.cpp.

◆ loop()

void esphome::web_server::WebServer::loop ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 148 of file web_server.cpp.

◆ number_json()

std::string esphome::web_server::WebServer::number_json ( number::Number obj,
float  value,
JsonDetail  start_config 
)

Dump the number state with its value as a JSON string.

Definition at line 829 of file web_server.cpp.

◆ on_alarm_control_panel_update()

void esphome::web_server::WebServer::on_alarm_control_panel_update ( alarm_control_panel::AlarmControlPanel obj)
overridevirtual

Reimplemented from esphome::Controller.

Definition at line 1137 of file web_server.cpp.

◆ on_binary_sensor_update()

void esphome::web_server::WebServer::on_binary_sensor_update ( binary_sensor::BinarySensor obj,
bool  state 
)
overridevirtual

Reimplemented from esphome::Controller.

Definition at line 533 of file web_server.cpp.

◆ on_climate_update()

void esphome::web_server::WebServer::on_climate_update ( climate::Climate obj)
overridevirtual

Reimplemented from esphome::Controller.

Definition at line 960 of file web_server.cpp.

◆ on_cover_update()

void esphome::web_server::WebServer::on_cover_update ( cover::Cover obj)
overridevirtual

Reimplemented from esphome::Controller.

Definition at line 730 of file web_server.cpp.

◆ on_fan_update()

void esphome::web_server::WebServer::on_fan_update ( fan::Fan obj)
overridevirtual

Reimplemented from esphome::Controller.

Definition at line 555 of file web_server.cpp.

◆ on_light_update()

void esphome::web_server::WebServer::on_light_update ( light::LightState obj)
overridevirtual

Reimplemented from esphome::Controller.

Definition at line 624 of file web_server.cpp.

◆ on_lock_update()

void esphome::web_server::WebServer::on_lock_update ( lock::Lock obj)
overridevirtual

Reimplemented from esphome::Controller.

Definition at line 1101 of file web_server.cpp.

◆ on_number_update()

void esphome::web_server::WebServer::on_number_update ( number::Number obj,
float  state 
)
overridevirtual

Reimplemented from esphome::Controller.

Definition at line 797 of file web_server.cpp.

◆ on_select_update()

void esphome::web_server::WebServer::on_select_update ( select::Select obj,
const std::string &  state,
size_t  index 
)
overridevirtual

Reimplemented from esphome::Controller.

Definition at line 906 of file web_server.cpp.

◆ on_sensor_update()

void esphome::web_server::WebServer::on_sensor_update ( sensor::Sensor obj,
float  state 
)
overridevirtual

Reimplemented from esphome::Controller.

Definition at line 417 of file web_server.cpp.

◆ on_switch_update()

void esphome::web_server::WebServer::on_switch_update ( switch_::Switch obj,
bool  state 
)
overridevirtual

Reimplemented from esphome::Controller.

Definition at line 472 of file web_server.cpp.

◆ on_text_sensor_update()

void esphome::web_server::WebServer::on_text_sensor_update ( text_sensor::TextSensor obj,
const std::string &  state 
)
overridevirtual

Reimplemented from esphome::Controller.

Definition at line 450 of file web_server.cpp.

◆ on_text_update()

void esphome::web_server::WebServer::on_text_update ( text::Text obj,
const std::string &  state 
)
overridevirtual

Reimplemented from esphome::Controller.

Definition at line 855 of file web_server.cpp.

◆ schedule_()

void esphome::web_server::WebServer::schedule_ ( std::function< void()> &&  f)
protected

Definition at line 1396 of file web_server.cpp.

◆ select_json()

std::string esphome::web_server::WebServer::select_json ( select::Select obj,
const std::string &  value,
JsonDetail  start_config 
)

Dump the select state with its value as a JSON string.

Definition at line 943 of file web_server.cpp.

◆ sensor_json()

std::string esphome::web_server::WebServer::sensor_json ( sensor::Sensor obj,
float  value,
JsonDetail  start_config 
)

Dump the sensor state with its value as a JSON string.

Definition at line 430 of file web_server.cpp.

◆ set_allow_ota()

void esphome::web_server::WebServer::set_allow_ota ( bool  allow_ota)
inline

Set whether or not the webserver should expose the OTA form and handler.

Parameters
allow_ota.

Definition at line 99 of file web_server.h.

◆ set_css_include()

void esphome::web_server::WebServer::set_css_include ( const char *  css_include)

Set local path to the script that's embedded in the index page.

Defaults to

Parameters
css_includeLocal path to web server script.

Definition at line 106 of file web_server.cpp.

◆ set_css_url()

void esphome::web_server::WebServer::set_css_url ( const char *  css_url)

Set the URL to the CSS <link> that's sent to each client.

Defaults to https://esphome.io/_static/webserver-v1.min.css

Parameters
css_urlThe url to the web server stylesheet.

Definition at line 101 of file web_server.cpp.

◆ set_expose_log()

void esphome::web_server::WebServer::set_expose_log ( bool  expose_log)
inline

Set whether or not the webserver should expose the Log.

Parameters
expose_log.

Definition at line 104 of file web_server.h.

◆ set_include_internal()

void esphome::web_server::WebServer::set_include_internal ( bool  include_internal)
inline

Determine whether internal components should be displayed on the web server.

Defaults to false.

Parameters
include_internalWhether internal components should be displayed.

Definition at line 94 of file web_server.h.

◆ set_js_include()

void esphome::web_server::WebServer::set_js_include ( const char *  js_include)

Set local path to the script that's embedded in the index page.

Defaults to

Parameters
js_includeLocal path to web server script.

Definition at line 109 of file web_server.cpp.

◆ set_js_url()

void esphome::web_server::WebServer::set_js_url ( const char *  js_url)

Set the URL to the script that's embedded in the index page.

Defaults to https://esphome.io/_static/webserver-v1.min.js

Parameters
js_urlThe url to the web server script.

Definition at line 102 of file web_server.cpp.

◆ setup()

void esphome::web_server::WebServer::setup ( )
overridevirtual

Setup the internal web server and register handlers.

Reimplemented from esphome::Component.

Definition at line 122 of file web_server.cpp.

◆ switch_json()

std::string esphome::web_server::WebServer::switch_json ( switch_::Switch obj,
bool  value,
JsonDetail  start_config 
)

Dump the switch state with its value as a JSON string.

Definition at line 475 of file web_server.cpp.

◆ text_json()

std::string esphome::web_server::WebServer::text_json ( text::Text obj,
const std::string &  value,
JsonDetail  start_config 
)

Dump the text state with its value as a JSON string.

Definition at line 886 of file web_server.cpp.

◆ text_sensor_json()

std::string esphome::web_server::WebServer::text_sensor_json ( text_sensor::TextSensor obj,
const std::string &  value,
JsonDetail  start_config 
)

Dump the text sensor state with its value as a JSON string.

Definition at line 463 of file web_server.cpp.

Field Documentation

◆ allow_ota_

bool esphome::web_server::WebServer::allow_ota_ {true}
protected

Definition at line 296 of file web_server.h.

◆ base_

web_server_base::WebServerBase* esphome::web_server::WebServer::base_
protected

Definition at line 282 of file web_server.h.

◆ css_include_

const char* esphome::web_server::WebServer::css_include_ {nullptr}
protected

Definition at line 290 of file web_server.h.

◆ css_url_

const char* esphome::web_server::WebServer::css_url_ {nullptr}
protected

Definition at line 286 of file web_server.h.

◆ entities_iterator_

ListEntitiesIterator esphome::web_server::WebServer::entities_iterator_
protected

Definition at line 284 of file web_server.h.

◆ events_

AsyncEventSource esphome::web_server::WebServer::events_ {"/events"}
protected

Definition at line 283 of file web_server.h.

◆ expose_log_

bool esphome::web_server::WebServer::expose_log_ {true}
protected

Definition at line 297 of file web_server.h.

◆ include_internal_

bool esphome::web_server::WebServer::include_internal_ {false}
protected

Definition at line 295 of file web_server.h.

◆ js_include_

const char* esphome::web_server::WebServer::js_include_ {nullptr}
protected

Definition at line 293 of file web_server.h.

◆ js_url_

const char* esphome::web_server::WebServer::js_url_ {nullptr}
protected

Definition at line 287 of file web_server.h.

◆ ListEntitiesIterator

friend esphome::web_server::WebServer::ListEntitiesIterator
protected

Definition at line 281 of file web_server.h.

◆ to_schedule_

std::deque<std::function<void()> > esphome::web_server::WebServer::to_schedule_
protected

Definition at line 299 of file web_server.h.

◆ to_schedule_lock_

SemaphoreHandle_t esphome::web_server::WebServer::to_schedule_lock_
protected

Definition at line 300 of file web_server.h.


The documentation for this class was generated from the following files: