Struct MqttClient
pub struct MqttClient {
pub(crate) client: AsyncClient,
pub(crate) thing_name: String,
pub(crate) ctx: Arc<Mutex<MqttContext>>,
}Fields§
§client: AsyncClient§thing_name: String§ctx: Arc<Mutex<MqttContext>>Implementations§
§impl MqttClient
impl MqttClient
pub async fn subscribe(
&self,
topic: impl AsRef<str>,
qos: QoS,
) -> Result<Subscriber>
pub async fn subscribe( &self, topic: impl AsRef<str>, qos: QoS, ) -> Result<Subscriber>
Subscribes to a given topic with the specified QoS level and returns
a Subscriber.
§Arguments
topic: A string slice representing the topic to subscribe to.qos: The Quality of Service level for the subscription.
§Returns
A Result containing a Subscriber if the subscription is successful, otherwise an Error.
pub async fn subscribe_owned(
&self,
topic: impl AsRef<str>,
qos: QoS,
) -> Result<OwnedSubscriber>
pub async fn subscribe_owned( &self, topic: impl AsRef<str>, qos: QoS, ) -> Result<OwnedSubscriber>
Subscribes to a given MQTT topic with the specified Quality of Service
QoS level and returns an OwnedSubscriber that can be used to
receive published messages.
§Arguments
topic: A string slice representing the topic to subscribe to.qos: The Quality of Service level for the subscription.
§Returns
A Result containing an OwnedSubscriber if the subscription is
successful, otherwise an Error.
pub async fn subscribe_many<Iter>(
&self,
topics: Iter,
qos: QoS,
) -> Result<Subscriber>
pub async fn subscribe_many<Iter>( &self, topics: Iter, qos: QoS, ) -> Result<Subscriber>
Subscribes to multiple MQTT topics with the specified Quality of Service
(QoS) level and returns a Subscriber that can be used to receive
published messages.
§Arguments
topics: An iterator of topic strings to subscribe to.qos: The Quality of Service level for the subscriptions.
§Returns
A Result containing a Subscriber if the subscriptions are
successful, otherwise an Error.
pub async fn subscribe_many_owned<Iter>(
&self,
topics: Iter,
qos: QoS,
) -> Result<OwnedSubscriber>
pub async fn subscribe_many_owned<Iter>( &self, topics: Iter, qos: QoS, ) -> Result<OwnedSubscriber>
Subscribes to multiple MQTT topics with the specified Quality of Service
QoS level and returns an OwnedSubscriber that can be used to
receive published messages.
§Arguments
topics: An iterator of topic strings to subscribe to.qos: The Quality of Service level for the subscriptions.
§Returns
A Result containing an OwnedSubscriber if the subscriptions are
successful, otherwise an Error.
pub async fn publish(
&self,
topic: impl AsRef<str>,
qos: QoS,
retain: bool,
payload: Bytes,
) -> Result<()>
pub async fn publish( &self, topic: impl AsRef<str>, qos: QoS, retain: bool, payload: Bytes, ) -> Result<()>
Publishes a message to the MQTT broker.
§Arguments
topic: The topic to publish the message to.qos: The Quality of Service level for the publication.retain: Whether the message should be retained by the broker.payload: The message payload to publish.
§Returns
A Result indicating whether the publication was successful.
pub async fn unsubscribe(&self, topic: impl AsRef<str>) -> Result<()>
pub async fn unsubscribe(&self, topic: impl AsRef<str>) -> Result<()>
pub fn schedule_unsubscribe(&self, topic: impl AsRef<str>)
pub fn schedule_unsubscribe(&self, topic: impl AsRef<str>)
Schedules unsubscription from a single MQTT topic.
This method schedules unsubscription from the provided topic. The actual unsubscription will happen at a later time.
§Arguments
topic- The topic name to unsubscribe from.
pub async fn unsubscribe_many<Iter>(&self, topics: Iter) -> Result<()>
pub async fn unsubscribe_many<Iter>(&self, topics: Iter) -> Result<()>
pub fn schedule_unsubscribe_many<Iter>(&self, topics: Iter)
pub fn schedule_unsubscribe_many<Iter>(&self, topics: Iter)
Schedules unsubscription from multiple topics.
This method schedules unsubscription from the provided topics. The actual unsubscription will happen at a later time
§Arguments
topics- An iterator of topic names to unsubscribe from.
pub fn thing_name(&self) -> &str
pub fn thing_name(&self) -> &str
Returns the name of the thing associated with this MqttClient.
Trait Implementations§
§impl Clone for MqttClient
impl Clone for MqttClient
§fn clone(&self) -> MqttClient
fn clone(&self) -> MqttClient
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more