79 void arm_away(
const char *code =
nullptr);
80 void arm_away(
const optional<std::string> &code) {
81 this->
arm_away(code.has_value() ? code.value().c_str() :
nullptr);
88 void arm_home(
const char *code =
nullptr);
89 void arm_home(
const optional<std::string> &code) {
90 this->
arm_home(code.has_value() ? code.value().c_str() :
nullptr);
97 void arm_night(
const char *code =
nullptr);
99 this->
arm_night(code.has_value() ? code.value().c_str() :
nullptr);
108 this->
arm_vacation(code.has_value() ? code.value().c_str() :
nullptr);
124 void disarm(
const char *code =
nullptr);
125 void disarm(
const optional<std::string> &code) { this->
disarm(code.has_value() ? code.value().c_str() :
nullptr); }
AlarmControlPanelState desired_state_
friend AlarmControlPanelCall
void add_on_state_callback(std::function< void()> &&callback)
Add a callback for when the state of the alarm_control_panel changes.
LazyCallbackManager< void()> ready_callback_
bool is_state_armed(AlarmControlPanelState state)
void arm_away(const optional< std::string > &code)
ESPPreferenceObject pref_
LazyCallbackManager< void()> chime_callback_
void arm_vacation(const char *code=nullptr)
arm the alarm in vacation mode
LazyCallbackManager< void()> state_callback_
virtual uint32_t get_supported_features() const =0
A numeric representation of the supported features as per HomeAssistant.
void arm_custom_bypass(const char *code=nullptr)
arm the alarm in custom bypass mode
LazyCallbackManager< void()> cleared_callback_
void arm_home(const char *code=nullptr)
arm the alarm in home mode
void arm_custom_bypass(const optional< std::string > &code)
AlarmControlPanelState get_state() const
Get the state.
void arm_home(const optional< std::string > &code)
void arm_with_code_(AlarmControlPanelCall &(AlarmControlPanelCall::*arm_method)(), const char *code)
virtual bool get_requires_code_to_arm() const =0
Returns if the alarm_control_panel requires a code to arm.
AlarmControlPanelState current_state_
void disarm(const char *code=nullptr)
disarm the alarm
void arm_vacation(const optional< std::string > &code)
void arm_night(const optional< std::string > &code)
virtual bool get_requires_code() const =0
Returns if the alarm_control_panel has a code.
void publish_state(AlarmControlPanelState state)
Set the state of the alarm_control_panel.
void add_on_ready_callback(std::function< void()> &&callback)
Add a callback for when a ready state changes.
void arm_night(const char *code=nullptr)
arm the alarm in night mode
void add_on_cleared_callback(std::function< void()> &&callback)
Add a callback for when the state of the alarm_control_panel clears from triggered.
void add_on_chime_callback(std::function< void()> &&callback)
Add a callback for when a chime zone goes from closed to open.
void arm_away(const char *code=nullptr)
arm the alarm in away mode
AlarmControlPanelCall make_call()
Make a AlarmControlPanelCall.
virtual void control(const AlarmControlPanelCall &call)=0
void disarm(const optional< std::string > &code)
@ ACP_FEAT_ARM_CUSTOM_BYPASS