ESPHome
2024.12.2
|
#include <custom_api_device.h>
Public Member Functions | |
bool | is_connected () const |
Return if a client (such as Home Assistant) is connected to the native API. More... | |
template<typename T , typename... Ts> | |
void | register_service (void(T::*callback)(Ts...), const std::string &name, const std::array< std::string, sizeof...(Ts)> &arg_names) |
Register a custom native API service that will show up in Home Assistant. More... | |
template<typename T > | |
void | register_service (void(T::*callback)(), const std::string &name) |
Register a custom native API service that will show up in Home Assistant. More... | |
template<typename T > | |
void | subscribe_homeassistant_state (void(T::*callback)(std::string), const std::string &entity_id, const std::string &attribute="") |
Subscribe to the state (or attribute state) of an entity from Home Assistant. More... | |
template<typename T > | |
void | subscribe_homeassistant_state (void(T::*callback)(std::string, std::string), const std::string &entity_id, const std::string &attribute="") |
Subscribe to the state (or attribute state) of an entity from Home Assistant. More... | |
void | call_homeassistant_service (const std::string &service_name) |
Call a Home Assistant service from ESPHome. More... | |
void | call_homeassistant_service (const std::string &service_name, const std::map< std::string, std::string > &data) |
Call a Home Assistant service from ESPHome. More... | |
void | fire_homeassistant_event (const std::string &event_name) |
Fire an ESPHome event in Home Assistant. More... | |
void | fire_homeassistant_event (const std::string &service_name, const std::map< std::string, std::string > &data) |
Fire an ESPHome event in Home Assistant. More... | |
Definition at line 23 of file custom_api_device.h.
|
inline |
Call a Home Assistant service from ESPHome.
Usage:
service_name | The service to call. |
Definition at line 141 of file custom_api_device.h.
|
inline |
Call a Home Assistant service from ESPHome.
Usage:
service_name | The service to call. |
data | The data for the service call, mapping from string to string. |
Definition at line 161 of file custom_api_device.h.
|
inline |
Fire an ESPHome event in Home Assistant.
Usage:
event_name | The event to fire. |
Definition at line 183 of file custom_api_device.h.
|
inline |
Fire an ESPHome event in Home Assistant.
Usage:
event_name | The event to fire. |
data | The data for the event, mapping from string to string. |
Definition at line 203 of file custom_api_device.h.
|
inline |
Return if a client (such as Home Assistant) is connected to the native API.
Definition at line 26 of file custom_api_device.h.
|
inline |
Register a custom native API service that will show up in Home Assistant.
Usage:
T | The class type creating the service, automatically deduced from the function pointer. |
Ts | The argument types for the service, automatically deduced from the function arguments. |
callback | The member function to call when the service is triggered. |
name | The name of the service to register. |
arg_names | The name of the arguments for the service, must match the arguments of the function. |
Definition at line 50 of file custom_api_device.h.
|
inline |
Register a custom native API service that will show up in Home Assistant.
Usage:
T | The class type creating the service, automatically deduced from the function pointer. |
callback | The member function to call when the service is triggered. |
name | The name of the arguments for the service, must match the arguments of the function. |
Definition at line 74 of file custom_api_device.h.
|
inline |
Subscribe to the state (or attribute state) of an entity from Home Assistant.
Usage:
```cpp void setup() override { subscribe_homeassistant_state(&CustomNativeAPI::on_state_changed, "climate.kitchen", "current_temperature"); }
void on_state_changed(std::string state) { // State of sensor.weather_forecast is state
} ```
T | The class type creating the service, automatically deduced from the function pointer. |
callback | The member function to call when the entity state changes. |
entity_id | The entity_id to track. |
attribute | The entity state attribute to track. |
Definition at line 99 of file custom_api_device.h.
|
inline |
Subscribe to the state (or attribute state) of an entity from Home Assistant.
Usage:
```cpp void setup() override { subscribe_homeassistant_state(&CustomNativeAPI::on_state_changed, "sensor.weather_forecast"); }
void on_state_changed(std::string entity_id, std::string state) { // State of entity_id
is state
} ```
T | The class type creating the service, automatically deduced from the function pointer. |
callback | The member function to call when the entity state changes. |
entity_id | The entity_id to track. |
attribute | The entity state attribute to track. |
Definition at line 125 of file custom_api_device.h.