ESPHome 2025.5.0
Loading...
Searching...
No Matches
mqtt_lock.h
Go to the documentation of this file.
1#pragma once
2
4
5#ifdef USE_MQTT
6#ifdef USE_LOCK
7
9#include "mqtt_component.h"
10
11namespace esphome {
12namespace mqtt {
13
15 public:
16 explicit MQTTLockComponent(lock::Lock *a_lock);
17
18 // ========== INTERNAL METHODS ==========
19 // (In most use cases you won't need these)
20 void setup() override;
21 void dump_config() override;
22
23 void send_discovery(JsonObject root, mqtt::SendDiscoveryConfig &config) override;
24
25 bool send_initial_state() override;
26
27 bool publish_state();
28
29 protected:
31 std::string component_type() const override;
32 const EntityBase *get_entity() const override;
33
35};
36
37} // namespace mqtt
38} // namespace esphome
39
40#endif
41#endif // USE_MQTT
Base class for all locks.
Definition lock.h:103
MQTTComponent is the base class for all components that interact with MQTT to expose certain function...
MQTTLockComponent(lock::Lock *a_lock)
Definition mqtt_lock.cpp:16
void send_discovery(JsonObject root, mqtt::SendDiscoveryConfig &config) override
Definition mqtt_lock.cpp:40
std::string component_type() const override
"lock" component type.
Definition mqtt_lock.cpp:38
const EntityBase * get_entity() const override
Definition mqtt_lock.cpp:39
Providing packet encoding functions for exchanging data with a remote host.
Definition a01nyub.cpp:7
Simple Helper struct used for Home Assistant MQTT send_discovery().