ESPHome
2024.12.2
|
#include <mqtt_sensor.h>
Public Member Functions | |
MQTTSensorComponent (sensor::Sensor *sensor) | |
Construct this MQTTSensorComponent instance with the provided friendly_name and sensor. More... | |
void | set_expire_after (uint32_t expire_after) |
Setup an expiry, 0 disables it. More... | |
void | disable_expire_after () |
Disable Home Assistant value expiry. More... | |
void | send_discovery (JsonObject root, mqtt::SendDiscoveryConfig &config) override |
void | setup () override |
Override setup. More... | |
void | dump_config () override |
uint32_t | get_expire_after () const |
Get the expire_after in milliseconds used for Home Assistant discovery, first checks override. More... | |
bool | publish_state (float value) |
bool | send_initial_state () override |
Public Member Functions inherited from esphome::mqtt::MQTTComponent | |
MQTTComponent () | |
Constructs a MQTTComponent. More... | |
void | call_setup () override |
Override setup_ so that we can call send_discovery() when needed. More... | |
void | call_loop () override |
void | call_dump_config () override |
virtual bool | is_internal () |
void | set_qos (uint8_t qos) |
Set QOS for state messages. More... | |
uint8_t | get_qos () const |
void | set_retain (bool retain) |
Set whether state message should be retained. More... | |
bool | get_retain () const |
void | disable_discovery () |
Disable discovery. Sets friendly name to "". More... | |
bool | is_discovery_enabled () const |
void | set_subscribe_qos (uint8_t qos) |
Set the QOS for subscribe messages (used in discovery). More... | |
void | set_custom_state_topic (const char *custom_state_topic) |
Set a custom state topic. Set to "" for default behavior. More... | |
void | set_custom_command_topic (const char *custom_command_topic) |
Set a custom command topic. Set to "" for default behavior. More... | |
void | set_command_retain (bool command_retain) |
Set whether command message should be retained. More... | |
float | get_setup_priority () const override |
MQTT_COMPONENT setup priority. More... | |
void | set_availability (std::string topic, std::string payload_available, std::string payload_not_available) |
Set the Home Assistant availability data. More... | |
void | disable_availability () |
void | schedule_resend_state () |
Internal method for the MQTT client base to schedule a resend of the state on reconnect. More... | |
bool | publish (const std::string &topic, const std::string &payload) |
Send a MQTT message. More... | |
bool | publish_json (const std::string &topic, const json::json_build_t &f) |
Construct and send a JSON MQTT message. More... | |
void | subscribe (const std::string &topic, mqtt_callback_t callback, uint8_t qos=0) |
Subscribe to a MQTT topic. More... | |
void | subscribe_json (const std::string &topic, const mqtt_json_callback_t &callback, uint8_t qos=0) |
Subscribe to a MQTT topic and automatically parse JSON payload. More... | |
Public Member Functions inherited from esphome::Component | |
virtual void | loop () |
This method will be called repeatedly. More... | |
float | get_actual_setup_priority () const |
void | set_setup_priority (float priority) |
virtual float | get_loop_priority () const |
priority of loop(). More... | |
void | call () |
virtual void | on_shutdown () |
virtual void | on_safe_shutdown () |
uint32_t | get_component_state () const |
virtual void | mark_failed () |
Mark this component as failed. More... | |
bool | is_failed () const |
bool | is_ready () const |
virtual bool | can_proceed () |
bool | status_has_warning () const |
bool | status_has_error () const |
void | status_set_warning (const char *message="unspecified") |
void | status_set_error (const char *message="unspecified") |
void | status_clear_warning () |
void | status_clear_error () |
void | status_momentary_warning (const std::string &name, uint32_t length=5000) |
void | status_momentary_error (const std::string &name, uint32_t length=5000) |
bool | has_overridden_loop () const |
void | set_component_source (const char *source) |
Set where this component was loaded from for some debug messages. More... | |
const char * | get_component_source () const |
Get the integration where this component was declared as a string. More... | |
Protected Member Functions | |
std::string | component_type () const override |
Override for MQTTComponent, returns "sensor". More... | |
const EntityBase * | get_entity () const override |
std::string | unique_id () override |
Protected Member Functions inherited from esphome::mqtt::MQTTComponent | |
std::string | get_discovery_topic_ (const MQTTDiscoveryInfo &discovery_info) const |
Helper method to get the discovery topic for this component. More... | |
std::string | get_default_topic_for_ (const std::string &suffix) const |
Get this components state/command/... More... | |
virtual std::string | friendly_name () const |
Get the friendly name of this MQTT component. More... | |
virtual std::string | get_icon () const |
Get the icon field of this component. More... | |
virtual bool | is_disabled_by_default () const |
Get whether the underlying Entity is disabled by default. More... | |
std::string | get_state_topic_ () const |
Get the MQTT topic that new states will be shared to. More... | |
std::string | get_command_topic_ () const |
Get the MQTT topic for listening to commands. More... | |
bool | is_connected_ () const |
bool | send_discovery_ () |
Internal method to start sending discovery info, this will call send_discovery(). More... | |
std::string | get_default_object_id_ () const |
Generate the Home Assistant MQTT discovery object id by automatically transforming the friendly name. More... | |
Protected Member Functions inherited from esphome::Component | |
void | set_interval (const std::string &name, uint32_t interval, std::function< void()> &&f) |
Set an interval function with a unique name. More... | |
void | set_interval (uint32_t interval, std::function< void()> &&f) |
bool | cancel_interval (const std::string &name) |
Cancel an interval function. More... | |
void | set_retry (const std::string &name, uint32_t initial_wait_time, uint8_t max_attempts, std::function< RetryResult(uint8_t)> &&f, float backoff_increase_factor=1.0f) |
Set an retry function with a unique name. More... | |
void | set_retry (uint32_t initial_wait_time, uint8_t max_attempts, std::function< RetryResult(uint8_t)> &&f, float backoff_increase_factor=1.0f) |
bool | cancel_retry (const std::string &name) |
Cancel a retry function. More... | |
void | set_timeout (const std::string &name, uint32_t timeout, std::function< void()> &&f) |
Set a timeout function with a unique name. More... | |
void | set_timeout (uint32_t timeout, std::function< void()> &&f) |
bool | cancel_timeout (const std::string &name) |
Cancel a timeout function. More... | |
void | defer (const std::string &name, std::function< void()> &&f) |
Defer a callback to the next loop() call. More... | |
void | defer (std::function< void()> &&f) |
Defer a callback to the next loop() call. More... | |
bool | cancel_defer (const std::string &name) |
Cancel a defer callback using the specified name, name must not be empty. More... | |
Protected Attributes | |
sensor::Sensor * | sensor_ |
optional< uint32_t > | expire_after_ |
Protected Attributes inherited from esphome::mqtt::MQTTComponent | |
StringRef | custom_state_topic_ {} |
StringRef | custom_command_topic_ {} |
std::unique_ptr< Availability > | availability_ |
bool | has_custom_state_topic_ {false} |
bool | has_custom_command_topic_ {false} |
bool | command_retain_ {false} |
bool | retain_ {true} |
uint8_t | qos_ {0} |
uint8_t | subscribe_qos_ {0} |
bool | discovery_enabled_ {true} |
bool | resend_state_ {false} |
Protected Attributes inherited from esphome::Component | |
uint32_t | component_state_ {0x0000} |
State of this component. More... | |
float | setup_priority_override_ {NAN} |
const char * | component_source_ {nullptr} |
Definition at line 14 of file mqtt_sensor.h.
|
explicit |
Construct this MQTTSensorComponent instance with the provided friendly_name and sensor.
Note the sensor is never stored and is only used for initializing some values of this class. If sensor is nullptr, then automatic initialization of these fields is disabled.
sensor | The sensor, this can be null to disable automatic setup. |
Definition at line 21 of file mqtt_sensor.cpp.
|
overrideprotectedvirtual |
Override for MQTTComponent, returns "sensor".
Implements esphome::mqtt::MQTTComponent.
Definition at line 35 of file mqtt_sensor.cpp.
void esphome::mqtt::MQTTSensorComponent::disable_expire_after | ( | ) |
Disable Home Assistant value expiry.
Definition at line 44 of file mqtt_sensor.cpp.
|
overridevirtual |
Reimplemented from esphome::Component.
Definition at line 27 of file mqtt_sensor.cpp.
|
overrideprotectedvirtual |
Implements esphome::mqtt::MQTTComponent.
Definition at line 36 of file mqtt_sensor.cpp.
uint32_t esphome::mqtt::MQTTSensorComponent::get_expire_after | ( | ) | const |
Get the expire_after in milliseconds used for Home Assistant discovery, first checks override.
Definition at line 38 of file mqtt_sensor.cpp.
bool esphome::mqtt::MQTTSensorComponent::publish_state | ( | float | value | ) |
Definition at line 71 of file mqtt_sensor.cpp.
|
overridevirtual |
Implements esphome::mqtt::MQTTComponent.
Definition at line 46 of file mqtt_sensor.cpp.
|
overridevirtual |
Implements esphome::mqtt::MQTTComponent.
Definition at line 64 of file mqtt_sensor.cpp.
void esphome::mqtt::MQTTSensorComponent::set_expire_after | ( | uint32_t | expire_after | ) |
Setup an expiry, 0 disables it.
Definition at line 43 of file mqtt_sensor.cpp.
|
overridevirtual |
Override setup.
Reimplemented from esphome::Component.
Definition at line 23 of file mqtt_sensor.cpp.
|
overrideprotectedvirtual |
Reimplemented from esphome::mqtt::MQTTComponent.
Definition at line 77 of file mqtt_sensor.cpp.
|
protected |
Definition at line 52 of file mqtt_sensor.h.
|
protected |
Definition at line 51 of file mqtt_sensor.h.