ESPHome 2026.5.0-dev
Loading...
Searching...
No Matches
esphome::Action< Ts > Class Template Referenceabstract

#include <automation.h>

Public Member Functions

virtual void play_complex (const Ts &...x)
 
virtual void stop_complex ()
 
virtual 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

virtual void play (const Ts &...x)=0
 
void play_next_ (const Ts &...x)
 
template<size_t... S>
void play_next_tuple_ (const std::tuple< Ts... > &tuple, std::index_sequence< S... >)
 
void play_next_tuple_ (const std::tuple< Ts... > &tuple)
 
virtual void stop ()
 
void stop_next_ ()
 
bool is_running_next_ ()
 

Protected Attributes

friend ActionList< Ts... >
 
Action< Ts... > * next_ {nullptr}
 
int num_running_ {0}
 The number of instances of this sequence in the list of actions that is currently being executed.
 

Detailed Description

template<typename... Ts>
class esphome::Action< Ts >

Definition at line 508 of file automation.h.

Member Function Documentation

◆ is_running()

template<typename... Ts>
virtual bool esphome::Action< Ts >::is_running ( )
inlinevirtual

Check if this or any of the following actions are currently running.

Definition at line 523 of file automation.h.

◆ is_running_next_()

template<typename... Ts>
bool esphome::Action< Ts >::is_running_next_ ( )
inlineprotected

Definition at line 561 of file automation.h.

◆ num_running_total()

template<typename... Ts>
int esphome::Action< Ts >::num_running_total ( )
inline

The total number of actions that are currently running in this plus any of the following actions in the chain.

Definition at line 527 of file automation.h.

◆ play()

template<typename... Ts>
virtual void esphome::Action< Ts >::play ( const Ts &... x)
protectedpure virtual

Implemented in esphome::ags10::AGS10SetZeroPointAction< Ts >, esphome::alarm_control_panel::PendingAction< Ts >, esphome::alarm_control_panel::TriggeredAction< Ts >, esphome::animation::AnimationNextFrameAction< Ts >, esphome::animation::AnimationPrevFrameAction< Ts >, esphome::api::APIRespondAction< Ts >, esphome::api::APIUnregisterServiceCallAction< Ts >, esphome::api::HomeAssistantServiceCallAction< Ts >, esphome::at581x::AT581XResetAction< Ts >, esphome::audio_dac::MuteOffAction< Ts >, esphome::audio_dac::MuteOnAction< Ts >, esphome::binary_sensor::BinarySensorInvalidateAction< Ts >, esphome::bl0906::ResetEnergyAction< Ts >, esphome::ble_client::BLEClientConnectAction< Ts >, esphome::ble_client::BLEClientDisconnectAction< Ts >, esphome::ble_client::BLEClientNumericComparisonReplyAction< Ts >, esphome::ble_client::BLEClientPasskeyReplyAction< Ts >, esphome::ble_client::BLEClientRemoveBondAction< Ts >, esphome::ble_client::BLEClientWriteAction< Ts >, esphome::bm8563::ReadAction< Ts >, esphome::bm8563::WriteAction< Ts >, esphome::button::PressAction< Ts >, esphome::canbus::CanbusSendAction< Ts >, esphome::cc1101::BeginRxAction< Ts >, esphome::cc1101::BeginTxAction< Ts >, esphome::cc1101::ResetAction< Ts >, esphome::cc1101::SendPacketAction< Ts >, esphome::cc1101::SetIdleAction< Ts >, esphome::cm1106::CM1106CalibrateZeroAction< Ts >, esphome::ContinuationAction< Ts >, esphome::cover::CloseAction< Ts >, esphome::cover::OpenAction< Ts >, esphome::cover::StopAction< Ts >, esphome::cover::ToggleAction< Ts >, esphome::cs5460a::CS5460ARestartAction< Ts >, esphome::deep_sleep::AllowDeepSleepAction< Ts >, esphome::deep_sleep::EnterDeepSleepAction< Ts >, esphome::deep_sleep::PreventDeepSleepAction< Ts >, esphome::DelayAction< Ts >, esphome::dfplayer::PlayFileAction< Ts >, esphome::dfrobot_sen0395::DfrobotSen0395ResetAction< Ts >, esphome::display::DisplayPageShowNextAction< Ts >, esphome::display::DisplayPageShowPrevAction< Ts >, esphome::display_menu_base::DownAction< Ts >, esphome::display_menu_base::EnterAction< Ts >, esphome::display_menu_base::HideAction< Ts >, esphome::display_menu_base::LeftAction< Ts >, esphome::display_menu_base::RightAction< Ts >, esphome::display_menu_base::ShowAction< Ts >, esphome::display_menu_base::ShowMainAction< Ts >, esphome::display_menu_base::UpAction< Ts >, esphome::ds1307::ReadAction< Ts >, esphome::ds1307::WriteAction< Ts >, esphome::esp32_ble::BLEDisableAction< Ts >, esphome::esp32_ble::BLEEnableAction< Ts >, esphome::esp32_ble_server::esp32_ble_server_automations::BLECharacteristicNotifyAction< Ts >, esphome::esp32_ble_server::esp32_ble_server_automations::BLECharacteristicSetValueAction< Ts >, esphome::esp32_ble_server::esp32_ble_server_automations::BLEDescriptorSetValueAction< Ts >, esphome::esp32_ble_tracker::ESP32BLEStopScanAction< Ts >, esphome::esp8266_pwm::SetFrequencyAction< Ts >, esphome::espnow::AddPeerAction< Ts >, esphome::espnow::DeletePeerAction< Ts >, esphome::espnow::SendAction< Ts >, esphome::ezo_pmp::EzoPMPArbitraryCommandAction< Ts >, esphome::ezo_pmp::EzoPMPChangeI2CAddressAction< Ts >, esphome::ezo_pmp::EzoPMPClearCalibrationAction< Ts >, esphome::ezo_pmp::EzoPMPClearTotalVolumeDispensedAction< Ts >, esphome::ezo_pmp::EzoPMPDoseContinuouslyAction< Ts >, esphome::ezo_pmp::EzoPMPDoseVolumeAction< Ts >, esphome::ezo_pmp::EzoPMPDoseVolumeOverTimeAction< Ts >, esphome::ezo_pmp::EzoPMPDoseWithConstantFlowRateAction< Ts >, esphome::ezo_pmp::EzoPMPFindAction< Ts >, esphome::ezo_pmp::EzoPMPPauseDosingAction< Ts >, esphome::ezo_pmp::EzoPMPSetCalibrationVolumeAction< Ts >, esphome::ezo_pmp::EzoPMPStopDosingAction< Ts >, esphome::fan::ToggleAction< Ts >, esphome::fan::TurnOffAction< Ts >, esphome::fingerprint_grow::AuraLEDControlAction< Ts >, esphome::fingerprint_grow::CancelEnrollmentAction< Ts >, esphome::fingerprint_grow::DeleteAllAction< Ts >, esphome::fingerprint_grow::EnrollmentAction< Ts >, esphome::globals::GlobalVarSetAction< C, Ts >, esphome::grove_tb6612fng::GROVETB6612FNGMotorNoStandbyAction< Ts >, esphome::grove_tb6612fng::GROVETB6612FNGMotorRunAction< Ts >, esphome::grove_tb6612fng::GROVETB6612FNGMotorStandbyAction< Ts >, esphome::haier::BeeperOffAction< Ts >, esphome::haier::BeeperOnAction< Ts >, esphome::haier::DisplayOffAction< Ts >, esphome::haier::DisplayOnAction< Ts >, esphome::haier::HealthOffAction< Ts >, esphome::haier::HealthOnAction< Ts >, esphome::haier::PowerOffAction< Ts >, esphome::haier::PowerOnAction< Ts >, esphome::haier::PowerToggleAction< Ts >, esphome::haier::StartSelfCleaningAction< Ts >, esphome::haier::StartSteriCleaningAction< Ts >, esphome::hbridge::BrakeAction< Ts >, esphome::hdc302x::HeaterOffAction< Ts >, esphome::hdc302x::HeaterOnAction< Ts >, esphome::hlk_fm22x::DeleteAllAction< Ts >, esphome::hlk_fm22x::EnrollmentAction< Ts >, esphome::hlk_fm22x::ResetAction< Ts >, esphome::hlk_fm22x::ScanAction< Ts >, esphome::http_request::HttpRequestSendAction< Ts >, esphome::IfAction< HasElse, Ts >, esphome::integration::ResetAction< Ts >, esphome::LambdaAction< Ts >, esphome::ledc::SetFrequencyAction< Ts >, esphome::libretiny_pwm::SetFrequencyAction< Ts >, esphome::light::DimRelativeAction< Ts >, esphome::light::LightControlAction< Ts >, esphome::lightwaverf::SendRawAction< Ts >, esphome::lock::LockAction< Ts >, esphome::lock::OpenAction< Ts >, esphome::lock::UnlockAction< Ts >, esphome::lvgl::LvglAction< Ts >, esphome::lvgl::ObjUpdateAction< Ts >, esphome::max17043::SleepAction< Ts >, esphome::media_player::MediaPlayerCommandAction< Command, Ts >, esphome::mhz19::MHZ19ABCDisableAction< Ts >, esphome::mhz19::MHZ19ABCEnableAction< Ts >, esphome::mhz19::MHZ19CalibrateZeroAction< Ts >, esphome::micro_wake_word::DisableModelAction< Ts >, esphome::micro_wake_word::EnableModelAction< Ts >, esphome::micro_wake_word::StartAction< Ts >, esphome::micro_wake_word::StopAction< Ts >, esphome::midea::ac::BeeperOffAction< Ts >, esphome::midea::ac::BeeperOnAction< Ts >, esphome::midea::ac::DisplayToggleAction< Ts >, esphome::midea::ac::PowerOffAction< Ts >, esphome::midea::ac::PowerOnAction< Ts >, esphome::midea::ac::PowerToggleAction< Ts >, esphome::midea::ac::SwingStepAction< Ts >, esphome::mqtt::MQTTDisableAction< Ts >, esphome::mqtt::MQTTEnableAction< Ts >, esphome::mqtt::MQTTPublishJsonAction< Ts >, esphome::nau7802::NAU7802CalbrateExternalOffsetAction< Ts >, esphome::nau7802::NAU7802CalbrateGainAction< Ts >, esphome::nau7802::NAU7802CalbrateInternalOffsetAction< Ts >, esphome::number::NumberOperationAction< Ts >, esphome::online_image::OnlineImageReleaseAction< Ts >, esphome::online_image::OnlineImageSetUrlAction< Ts >, esphome::output::TurnOffAction< Ts >, esphome::output::TurnOnAction< Ts >, esphome::pcf85063::ReadAction< Ts >, esphome::pcf85063::WriteAction< Ts >, esphome::pcf8563::ReadAction< Ts >, esphome::pcf8563::WriteAction< Ts >, esphome::pid::PIDAutotuneAction< Ts >, esphome::pid::PIDResetIntegralTermAction< Ts >, esphome::pid::PIDSetControlParametersAction< Ts >, esphome::pmwcs3::PMWCS3AirCalibrationAction< Ts >, esphome::pmwcs3::PMWCS3WaterCalibrationAction< Ts >, esphome::pzemac::ResetEnergyAction< Ts >, esphome::pzemdc::ResetEnergyAction< Ts >, esphome::remote_base::RemoteTransmitterActionBase< Ts >, esphome::remote_base::RemoteTransmitterActionBase< Ts... >, esphome::RepeatAction< Ts >, esphome::RepeatAction< Ts... >, esphome::rf_bridge::RFBridgeLearnAction< Ts >, esphome::rf_bridge::RFBridgeSendCodeAction< Ts >, esphome::rf_bridge::RFBridgeStartAdvancedSniffingAction< Ts >, esphome::rf_bridge::RFBridgeStartBucketSniffingAction< Ts >, esphome::rf_bridge::RFBridgeStopAdvancedSniffingAction< Ts >, esphome::rp2040_pwm::SetFrequencyAction< Ts >, esphome::rtttl::StopAction< Ts >, esphome::safe_mode::MarkSuccessfulAction< Ts >, esphome::scd30::ForceRecalibrationWithReference< Ts >, esphome::scd4x::FactoryResetAction< Ts >, esphome::scd4x::PerformForcedCalibrationAction< Ts >, esphome::script::ScriptExecuteAction< Script< As... >, Ts... >, esphome::script::ScriptStopAction< C, Ts >, esphome::script::ScriptWaitAction< C, Ts >, esphome::select::SelectOperationAction< Ts >, esphome::sen5x::StartFanAction< Ts >, esphome::senseair::SenseAirABCDisableAction< Ts >, esphome::senseair::SenseAirABCEnableAction< Ts >, esphome::senseair::SenseAirABCGetPeriodAction< Ts >, esphome::senseair::SenseAirBackgroundCalibrationAction< Ts >, esphome::senseair::SenseAirBackgroundCalibrationResultAction< Ts >, esphome::servo::ServoDetachAction< Ts >, esphome::sim800l::Sim800LConnectAction< Ts >, esphome::sim800l::Sim800LDisconnectAction< Ts >, esphome::sound_level::StartAction< Ts >, esphome::sound_level::StopAction< Ts >, esphome::speaker::FinishAction< Ts >, esphome::speaker::MuteOffAction< Ts >, esphome::speaker::MuteOnAction< Ts >, esphome::speaker::PlayAction< Ts >, esphome::speaker::StopAction< Ts >, esphome::speaker_source::SetPlaylistDelayAction< Ts >, esphome::sprinkler::ClearQueuedValvesAction< Ts >, esphome::sprinkler::NextValveAction< Ts >, esphome::sprinkler::PauseAction< Ts >, esphome::sprinkler::PreviousValveAction< Ts >, esphome::sprinkler::QueueValveAction< Ts >, esphome::sprinkler::ResumeAction< Ts >, esphome::sprinkler::ResumeOrStartAction< Ts >, esphome::sprinkler::ResumeOrStartAction<>, esphome::sprinkler::SetRunDurationAction< Ts >, esphome::sprinkler::ShutdownAction< Ts >, esphome::sprinkler::ShutdownAction<>, esphome::sprinkler::StartFromQueueAction< Ts >, esphome::sprinkler::StartFullCycleAction< Ts >, esphome::sps30::StartFanAction< Ts >, esphome::sps30::StartMeasurementAction< Ts >, esphome::sps30::StopMeasurementAction< Ts >, esphome::StatelessLambdaAction< Ts >, esphome::stepper::SetAccelerationAction< Ts >, esphome::stepper::SetDecelerationAction< Ts >, esphome::stepper::SetSpeedAction< Ts >, esphome::SuspendComponentAction< Ts >, esphome::switch_::ToggleAction< Ts >, esphome::switch_::TurnOffAction< Ts >, esphome::switch_::TurnOnAction< Ts >, esphome::sx126x::RunImageCalAction< Ts >, esphome::sx126x::SendPacketAction< Ts >, esphome::sx126x::SetModeRxAction< Ts >, esphome::sx126x::SetModeSleepAction< Ts >, esphome::sx126x::SetModeStandbyAction< Ts >, esphome::sx126x::SetModeTxAction< Ts >, esphome::sx127x::RunImageCalAction< Ts >, esphome::sx127x::SendPacketAction< Ts >, esphome::sx127x::SetModeRxAction< Ts >, esphome::sx127x::SetModeSleepAction< Ts >, esphome::sx127x::SetModeStandbyAction< Ts >, esphome::sx127x::SetModeTxAction< Ts >, esphome::tm1651::TurnOffAction< Ts >, esphome::tm1651::TurnOnAction< Ts >, esphome::uart::UARTWriteAction< Ts >, esphome::udp::UDPWriteAction< Ts >, esphome::ufire_ec::UFireECCalibrateProbeAction< Ts >, esphome::ufire_ec::UFireECResetAction< Ts >, esphome::ufire_ise::UFireISEResetAction< Ts >, esphome::update::CheckAction< Ts >, esphome::UpdateComponentAction< Ts >, esphome::valve::CloseAction< Ts >, esphome::valve::ControlAction< Ts >, esphome::valve::OpenAction< Ts >, esphome::valve::StopAction< Ts >, esphome::valve::ToggleAction< Ts >, esphome::voice_assistant::StartAction< Ts >, esphome::voice_assistant::StartContinuousAction< Ts >, esphome::voice_assistant::StopAction< Ts >, esphome::WaitUntilAction< Ts >, esphome::WhileAction< Ts >, esphome::WhileAction< Ts... >, esphome::WhileLoopContinuation< Ts >, esphome::wifi::WiFiDisableAction< Ts >, esphome::wifi::WiFiEnableAction< Ts >, esphome::wireguard::WireguardDisableAction< Ts >, esphome::wireguard::WireguardEnableAction< Ts >, and esphome::zigbee::FactoryResetAction< Ts >.

◆ play_complex()

◆ play_next_()

template<typename... Ts>
void esphome::Action< Ts >::play_next_ ( const Ts &... x)
inlineprotected

Definition at line 539 of file automation.h.

◆ play_next_tuple_() [1/2]

template<typename... Ts>
void esphome::Action< Ts >::play_next_tuple_ ( const std::tuple< Ts... > & tuple)
inlineprotected

Definition at line 550 of file automation.h.

◆ play_next_tuple_() [2/2]

template<typename... Ts>
template<size_t... S>
void esphome::Action< Ts >::play_next_tuple_ ( const std::tuple< Ts... > & tuple,
std::index_sequence< S... >  )
inlineprotected

Definition at line 547 of file automation.h.

◆ stop()

◆ stop_complex()

template<typename... Ts>
virtual void esphome::Action< Ts >::stop_complex ( )
inlinevirtual

Definition at line 515 of file automation.h.

◆ stop_next_()

template<typename... Ts>
void esphome::Action< Ts >::stop_next_ ( )
inlineprotected

Definition at line 555 of file automation.h.

Field Documentation

◆ ActionList< Ts... >

template<typename... Ts>
friend esphome::Action< Ts >::ActionList< Ts... >
protected

Definition at line 535 of file automation.h.

◆ next_

template<typename... Ts>
Action<Ts...>* esphome::Action< Ts >::next_ {nullptr}
protected

Definition at line 567 of file automation.h.

◆ num_running_

template<typename... Ts>
int esphome::Action< Ts >::num_running_ {0}
protected

The number of instances of this sequence in the list of actions that is currently being executed.

Definition at line 571 of file automation.h.


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