70 const String &
subscribe(
const String &topic);
87 const String &
subscribeGroup(
const String &groupId,
const String &subTopic);
129 bool isTopicMatch(
const String &storedTopic,
const String &incomingTopic)
const;
138 void publish(
const String &topic,
const Bytes &payload,
bool retained =
false,
bool sign =
false);
147 void publishDevice(
const String &subTopic,
const Bytes &payload,
bool retained =
false,
bool sign =
false);
157 void publishGroup(
const String &groupId,
const String &subTopic,
const Bytes &payload,
bool retained =
false,
bool sign =
false);
175 virtual void handle(
const String &topic,
const Bytes &payload) = 0;
201 static const String sEmptyString;
Definition IterableQueue.h:36
const String & getOwnerId() const
Gets the owner identifier.
Definition MQTTDevice.cpp:46
const String & subscribe(const String &topic)
Subscribes to a specific MQTT topic.
Definition MQTTDevice.cpp:74
MQTTDevice()
Constructs a new MQTTDevice instance.
Definition MQTTDevice.h:44
virtual void syncSubscriptions()=0
Reconstructs subscriptions after reconnection or credential changes.
bool isTopicMatch(const String &storedTopic, const String &incomingTopic) const
Determines if a stored topic matches an incoming topic string using MQTT wildcards.
Definition MQTTDevice.cpp:137
void publishGroup(const String &groupId, const String &subTopic, const Bytes &payload, bool retained=false, bool sign=false)
Publishes a message to a group-specific subtopic.
Definition MQTTDevice.cpp:114
bool isSubscribed(const String &topic)
Checks if the device is subscribed to a given topic.
Definition MQTTDevice.cpp:126
const String & subscribeGroup(const String &groupId, const String &subTopic)
Subscribes to a group-specific subtopic.
Definition MQTTDevice.cpp:92
void unsubscribeFromAll()
Unsubscribes from all subscribed topics.
Definition MQTTDevice.cpp:55
const String & getDeviceId() const
Gets the device identifier.
Definition MQTTDevice.cpp:37
bool unsubscribe(const String &topic)
Unsubscribes from a specific topic.
Definition MQTTDevice.cpp:64
void publishEmptyDevice(const String &subTopic)
Publishes an empty message to a device-specific subtopic with retained flag set.
Definition MQTTDevice.cpp:120
void publishDevice(const String &subTopic, const Bytes &payload, bool retained=false, bool sign=false)
Publishes a message to a device-specific subtopic.
Definition MQTTDevice.cpp:108
void publish(const String &topic, const Bytes &payload, bool retained=false, bool sign=false)
Publishes a message to a specific topic.
Definition MQTTDevice.cpp:101
virtual ~MQTTDevice()
Virtual destructor that handles cleanup and unregistration from MQTTKit.
Definition MQTTDevice.cpp:30
friend class MQTTKit
Definition MQTTDevice.h:38
const String & subscribeDevice(const String &subTopic)
Subscribes to a device-specific subtopic.
Definition MQTTDevice.cpp:83
virtual void handle(const String &topic, const Bytes &payload)=0
Handles incoming MQTT messages.
Contains all classes and functions related to the Uniot Core.