15#ifdef USE_API_SERVICES
32 void setup()
override;
39#ifdef USE_API_PASSWORD
58#ifdef USE_BINARY_SENSOR
85#ifdef USE_DATETIME_DATE
88#ifdef USE_DATETIME_TIME
91#ifdef USE_DATETIME_DATETIME
106#ifdef USE_MEDIA_PLAYER
109#ifdef USE_API_HOMEASSISTANT_SERVICES
112#ifdef USE_API_SERVICES
115#ifdef USE_HOMEASSISTANT_TIME
119#ifdef USE_ALARM_CONTROL_PANEL
131#ifdef USE_API_HOMEASSISTANT_STATES
140 std::function<
void(std::string)> f);
142 std::function<
void(std::string)> f);
143 const std::vector<HomeAssistantStateSubscription> &
get_state_subs()
const;
145#ifdef USE_API_SERVICES
149#ifdef USE_API_CLIENT_CONNECTED_TRIGGER
152#ifdef USE_API_CLIENT_DISCONNECTED_TRIGGER
161 std::unique_ptr<socket::Socket>
socket_ =
nullptr;
162#ifdef USE_API_CLIENT_CONNECTED_TRIGGER
165#ifdef USE_API_CLIENT_DISCONNECTED_TRIGGER
173 std::vector<std::unique_ptr<APIConnection>>
clients_;
174#ifdef USE_API_PASSWORD
178#ifdef USE_API_HOMEASSISTANT_STATES
181#ifdef USE_API_SERVICES
192 std::shared_ptr<APINoiseContext>
noise_ctx_ = std::make_shared<APINoiseContext>();
Base class for all automation conditions.
bool check(Ts... x) override
void on_valve_update(valve::Valve *obj) override
uint16_t get_batch_delay() const
std::shared_ptr< APINoiseContext > get_noise_ctx()
std::vector< std::unique_ptr< APIConnection > > clients_
void on_select_update(select::Select *obj, const std::string &state, size_t index) override
void send_homeassistant_service_call(const HomeassistantServiceResponse &call)
void set_password(const std::string &password)
void on_time_update(datetime::TimeEntity *obj) override
void on_cover_update(cover::Cover *obj) override
void on_sensor_update(sensor::Sensor *obj, float state) override
std::vector< UserServiceDescriptor * > user_services_
void on_light_update(light::LightState *obj) override
void on_media_player_update(media_player::MediaPlayer *obj) override
const std::vector< UserServiceDescriptor * > & get_user_services() const
void set_port(uint16_t port)
void dump_config() override
void handle_disconnect(APIConnection *conn)
void schedule_reboot_timeout_()
void set_batch_delay(uint16_t batch_delay)
void set_reboot_timeout(uint32_t reboot_timeout)
Trigger< std::string, std::string > * client_connected_trigger_
void register_user_service(UserServiceDescriptor *descriptor)
bool save_noise_psk(psk_t psk, bool make_active=true)
void on_lock_update(lock::Lock *obj) override
void on_date_update(datetime::DateEntity *obj) override
bool is_connected() const
void on_update(update::UpdateEntity *obj) override
bool check_password(const std::string &password) const
void get_home_assistant_state(std::string entity_id, optional< std::string > attribute, std::function< void(std::string)> f)
const std::vector< HomeAssistantStateSubscription > & get_state_subs() const
std::shared_ptr< APINoiseContext > noise_ctx_
void on_number_update(number::Number *obj, float state) override
void on_text_update(text::Text *obj, const std::string &state) override
Trigger< std::string, std::string > * client_disconnected_trigger_
std::vector< uint8_t > shared_write_buffer_
void subscribe_home_assistant_state(std::string entity_id, optional< std::string > attribute, std::function< void(std::string)> f)
void on_climate_update(climate::Climate *obj) override
void on_binary_sensor_update(binary_sensor::BinarySensor *obj) override
ESPPreferenceObject noise_pref_
void on_text_sensor_update(text_sensor::TextSensor *obj, const std::string &state) override
void on_fan_update(fan::Fan *obj) override
std::vector< HomeAssistantStateSubscription > state_subs_
void on_switch_update(switch_::Switch *obj, bool state) override
uint16_t get_port() const
std::vector< uint8_t > & get_shared_buffer_ref()
void set_noise_psk(psk_t psk)
void on_datetime_update(datetime::DateTimeEntity *obj) override
void on_event(event::Event *obj, const std::string &event_type) override
Trigger< std::string, std::string > * get_client_disconnected_trigger() const
float get_setup_priority() const override
std::unique_ptr< socket::Socket > socket_
void on_shutdown() override
Trigger< std::string, std::string > * get_client_connected_trigger() const
void on_alarm_control_panel_update(alarm_control_panel::AlarmControlPanel *obj) override
Base class for all binary_sensor-type classes.
ClimateDevice - This is the base class for all climate integrations.
Base class for all cover devices.
This class represents the communication layer between the front-end MQTT layer and the hardware outpu...
Base class for all locks.
Base-class for all numbers.
Base-class for all selects.
Base-class for all sensors.
Base class for all switches.
Base-class for all text inputs.
Base class for all valve devices.
APIServer * global_api_server
struct esphome::api::SavedNoisePsk PACKED
std::array< uint8_t, 32 > psk_t
std::function< void(std::string)> callback
optional< std::string > attribute