ESPHome 2026.11.0-dev
Loading...
Searching...
No Matches
esphome::http_request::HttpRequestSendAction< Ts > Class Template Referencefinal

#include <http_request.h>

Inheritance diagram for esphome::http_request::HttpRequestSendAction< Ts >:
esphome::Action< Ts... >

Data Structures

struct  Request
 

Public Member Functions

 HttpRequestSendAction (HttpRequestComponent *parent)
 
 TEMPLATABLE_VALUE (std::string, url) TEMPLATABLE_VALUE(const char *
 
method TEMPLATABLE_VALUE (std::string, body) TEMPLATABLE_VALUE(uint32_t
 
method timeout TEMPLATABLE_VALUE(bool, capture_response) static_assert(std void set_request_headers (const RequestHeader< Ts... > *headers, size_t count)
 Codegen only: the table must outlive the action.
 
void add_collect_header (const char *value)
 
void init_json (size_t count)
 
void add_json (const char *key, TemplatableValue< std::string, Ts... > value)
 
void set_json (std::function< void(Ts..., JsonObject)> json_func)
 
Trigger< std::shared_ptr< HttpContainer >, std::string &, Ts... > * get_success_trigger_with_response ()
 
Trigger< std::shared_ptr< HttpContainer >, Ts... > * get_success_trigger ()
 
Trigger< Ts... > * get_error_trigger ()
 
void set_max_response_buffer_size (size_t max_response_buffer_size)
 
void play_complex (const Ts &...x) override
 
void play (const Ts &...x) override
 
- Public Member Functions inherited from esphome::Action< Ts... >
void stop_complex ()
 
bool is_running ()
 Check if this or any of the following actions are currently running.
 
int num_running_total ()
 The total number of actions that are currently running in this plus any of the following actions in the chain.
 

Protected Member Functions

void stop () override
 
void start_request_ (Request &request, const Ts &...x)
 
void finish_ (Request &request)
 
void encode_json_ (Ts... x, JsonObject root)
 
- Protected Member Functions inherited from esphome::Action< Ts... >
void play_next_ (const Ts &...x)
 
void play_next_tuple_ (const std::tuple< Ts... > &tuple, std::index_sequence< S... >)
 
void play_next_tuple_ (const std::tuple< Ts... > &tuple)
 
void stop_next_ ()
 
bool is_running_next_ ()
 
bool next_is_owner_ () const
 
Action * owner_ () const
 Only valid when next_is_owner_().
 
Action * chain_next_ () const
 

Static Protected Member Functions

static void handle_event (PendingRequest *request, RequestEvent event)
 
- Static Protected Member Functions inherited from esphome::Action< Ts... >
static Action * tag_owner (Action *owner)
 

Protected Attributes

HttpRequestComponent * parent_
 
ConstVector< RequestHeader< Ts... > > request_headers_ {}
 
std::vector< std::string > lower_case_collect_headers_ {"content-type", "content-length"}
 
FixedVector< std::pair< const char *, TemplatableValue< std::string, Ts... > > > json_ {}
 
std::function< void(Ts..., JsonObject)> json_func_ {nullptr}
 
Trigger< std::shared_ptr< HttpContainer >, std::string &, Ts... > success_trigger_with_response_
 
Trigger< std::shared_ptr< HttpContainer >, Ts... > success_trigger_
 
Trigger< Ts... > error_trigger_
 
size_t max_response_buffer_size_ {SIZE_MAX}
 
- Protected Attributes inherited from esphome::Action< Ts... >
friend ActionList< Ts... >
 
Action< Ts... > * next_
 
int num_running_
 The number of instances of this sequence in the list of actions that is currently being executed.
 

Additional Inherited Members

- Static Protected Attributes inherited from esphome::Action< Ts... >
static constexpr uintptr_t OWNER_TAG
 

Detailed Description

template<typename... Ts>
class esphome::http_request::HttpRequestSendAction< Ts >

Definition at line 596 of file http_request.h.

Constructor & Destructor Documentation

◆ HttpRequestSendAction()

template<typename... Ts>
esphome::http_request::HttpRequestSendAction< Ts >::HttpRequestSendAction ( HttpRequestComponent * parent)
inline

Definition at line 598 of file http_request.h.

Member Function Documentation

◆ add_collect_header()

template<typename... Ts>
void esphome::http_request::HttpRequestSendAction< Ts >::add_collect_header ( const char * value)
inline

Definition at line 615 of file http_request.h.

◆ add_json()

template<typename... Ts>
void esphome::http_request::HttpRequestSendAction< Ts >::add_json ( const char * key,
TemplatableValue< std::string, Ts... > value )
inline

Definition at line 618 of file http_request.h.

◆ encode_json_()

template<typename... Ts>
void esphome::http_request::HttpRequestSendAction< Ts >::encode_json_ ( Ts... x,
JsonObject root )
inlineprotected

Definition at line 728 of file http_request.h.

◆ finish_()

template<typename... Ts>
void esphome::http_request::HttpRequestSendAction< Ts >::finish_ ( Request & request)
inlineprotected

Definition at line 696 of file http_request.h.

◆ get_error_trigger()

template<typename... Ts>
Trigger< Ts... > * esphome::http_request::HttpRequestSendAction< Ts >::get_error_trigger ( )
inline

Definition at line 629 of file http_request.h.

◆ get_success_trigger()

template<typename... Ts>
Trigger< std::shared_ptr< HttpContainer >, Ts... > * esphome::http_request::HttpRequestSendAction< Ts >::get_success_trigger ( )
inline

Definition at line 627 of file http_request.h.

◆ get_success_trigger_with_response()

template<typename... Ts>
Trigger< std::shared_ptr< HttpContainer >, std::string &, Ts... > * esphome::http_request::HttpRequestSendAction< Ts >::get_success_trigger_with_response ( )
inline

Definition at line 623 of file http_request.h.

◆ handle_event()

template<typename... Ts>
static void esphome::http_request::HttpRequestSendAction< Ts >::handle_event ( PendingRequest * request,
RequestEvent event )
inlinestaticprotected

Definition at line 649 of file http_request.h.

◆ init_json()

template<typename... Ts>
void esphome::http_request::HttpRequestSendAction< Ts >::init_json ( size_t count)
inline

Definition at line 617 of file http_request.h.

◆ play()

template<typename... Ts>
void esphome::http_request::HttpRequestSendAction< Ts >::play ( const Ts &... x)
inlineoverridevirtual

Implements esphome::Action< Ts... >.

Definition at line 640 of file http_request.h.

◆ play_complex()

template<typename... Ts>
void esphome::http_request::HttpRequestSendAction< Ts >::play_complex ( const Ts &... x)
inlineoverridevirtual

Reimplemented from esphome::Action< Ts... >.

Definition at line 635 of file http_request.h.

◆ set_json()

template<typename... Ts>
void esphome::http_request::HttpRequestSendAction< Ts >::set_json ( std::function< void(Ts..., JsonObject)> json_func)
inline

Definition at line 620 of file http_request.h.

◆ set_max_response_buffer_size()

template<typename... Ts>
void esphome::http_request::HttpRequestSendAction< Ts >::set_max_response_buffer_size ( size_t max_response_buffer_size)
inline

Definition at line 631 of file http_request.h.

◆ set_request_headers()

template<typename... Ts>
method timeout TEMPLATABLE_VALUE(bool, capture_response) static_assert(std void esphome::http_request::HttpRequestSendAction< Ts >::set_request_headers ( const RequestHeader< Ts... > * headers,
size_t count )
inline

Codegen only: the table must outlive the action.

Definition at line 611 of file http_request.h.

◆ start_request_()

template<typename... Ts>
void esphome::http_request::HttpRequestSendAction< Ts >::start_request_ ( Request & request,
const Ts &... x )
inlineprotected

Definition at line 670 of file http_request.h.

◆ stop()

template<typename... Ts>
void esphome::http_request::HttpRequestSendAction< Ts >::stop ( )
inlineoverrideprotectedvirtual

Reimplemented from esphome::Action< Ts... >.

Definition at line 668 of file http_request.h.

◆ TEMPLATABLE_VALUE() [1/2]

template<typename... Ts>
method esphome::http_request::HttpRequestSendAction< Ts >::TEMPLATABLE_VALUE ( std::string ,
body  )

◆ TEMPLATABLE_VALUE() [2/2]

template<typename... Ts>
esphome::http_request::HttpRequestSendAction< Ts >::TEMPLATABLE_VALUE ( std::string ,
url  ) const

Field Documentation

◆ error_trigger_

template<typename... Ts>
Trigger<Ts...> esphome::http_request::HttpRequestSendAction< Ts >::error_trigger_
protected

Definition at line 743 of file http_request.h.

◆ json_

template<typename... Ts>
FixedVector<std::pair<const char *, TemplatableValue<std::string, Ts...> > > esphome::http_request::HttpRequestSendAction< Ts >::json_ {}
protected

Definition at line 737 of file http_request.h.

◆ json_func_

template<typename... Ts>
std::function<void(Ts..., JsonObject)> esphome::http_request::HttpRequestSendAction< Ts >::json_func_ {nullptr}
protected

Definition at line 738 of file http_request.h.

◆ lower_case_collect_headers_

template<typename... Ts>
std::vector<std::string> esphome::http_request::HttpRequestSendAction< Ts >::lower_case_collect_headers_ {"content-type", "content-length"}
protected

Definition at line 736 of file http_request.h.

◆ max_response_buffer_size_

template<typename... Ts>
size_t esphome::http_request::HttpRequestSendAction< Ts >::max_response_buffer_size_ {SIZE_MAX}
protected

Definition at line 745 of file http_request.h.

◆ parent_

template<typename... Ts>
HttpRequestComponent* esphome::http_request::HttpRequestSendAction< Ts >::parent_
protected

Definition at line 734 of file http_request.h.

◆ request_headers_

template<typename... Ts>
ConstVector<RequestHeader<Ts...> > esphome::http_request::HttpRequestSendAction< Ts >::request_headers_ {}
protected

Definition at line 735 of file http_request.h.

◆ success_trigger_

template<typename... Ts>
Trigger<std::shared_ptr<HttpContainer>, Ts...> esphome::http_request::HttpRequestSendAction< Ts >::success_trigger_
protected

Definition at line 742 of file http_request.h.

◆ success_trigger_with_response_

template<typename... Ts>
Trigger<std::shared_ptr<HttpContainer>, std::string &, Ts...> esphome::http_request::HttpRequestSendAction< Ts >::success_trigger_with_response_
protected

Definition at line 740 of file http_request.h.


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