ESPHome 2026.10.0-dev
Loading...
Searching...
No Matches
esphome::api::UserServiceDescriptor Class Referenceabstract

#include <user_services.h>

Inheritance diagram for esphome::api::UserServiceDescriptor:
esphome::api::UserServiceDynamic< Ts... > esphome::api::UserServiceDynamic< Ts > esphome::api::UserServiceStatic esphome::api::CustomAPIDeviceService< T, Ts > esphome::api::UserServiceBase< Ts... > esphome::api::UserServiceBase< Ts > esphome::api::UserServiceTrigger< enums::SUPPORTS_RESPONSE_NONE, Ts... > esphome::api::UserServiceTrigger< enums::SUPPORTS_RESPONSE_ONLY, Ts... > esphome::api::UserServiceTrigger< enums::SUPPORTS_RESPONSE_OPTIONAL, Ts... > esphome::api::UserServiceTrigger< enums::SUPPORTS_RESPONSE_STATUS, Ts... >

Public Member Functions

virtual ListEntitiesServicesResponse encode_list_service_response (std::span< char > scratch)=0
 Build the list-entities message.
 
virtual bool execute_service (const ExecuteServiceRequest &req)=0
 
virtual bool execute_service (const ExecuteServiceRequest &req, uint32_t action_call_id)=0
 
bool is_internal ()
 

Detailed Description

Definition at line 21 of file user_services.h.

Member Function Documentation

◆ encode_list_service_response()

virtual ListEntitiesServicesResponse esphome::api::UserServiceDescriptor::encode_list_service_response ( std::span< char > scratch)
pure virtual

Build the list-entities message.

On ESP8266 the strings live in PROGMEM and are copied into scratch, so the returned message is only valid while scratch is; other platforms ignore it.

Implemented in esphome::api::UserServiceBase< Ts >, esphome::api::UserServiceBase< Ts... >, esphome::api::UserServiceDynamic< Ts >, and esphome::api::UserServiceDynamic< Ts... >.

◆ execute_service() [1/2]

virtual bool esphome::api::UserServiceDescriptor::execute_service ( const ExecuteServiceRequest & req)
pure virtual

◆ execute_service() [2/2]

virtual bool esphome::api::UserServiceDescriptor::execute_service ( const ExecuteServiceRequest & req,
uint32_t action_call_id )
pure virtual

◆ is_internal()

bool esphome::api::UserServiceDescriptor::is_internal ( )
inline

Definition at line 33 of file user_services.h.


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