| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="utf-8"> |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| <meta name="generator" content="rustdoc"> |
| <meta name="description" content="API documentation for the Rust `AsyncClient` struct in crate `paho_mqtt`."> |
| <meta name="keywords" content="rust, rustlang, rust-lang, AsyncClient"> |
| |
| <title>paho_mqtt::async_client::AsyncClient - Rust</title> |
| |
| <link rel="stylesheet" type="text/css" href="../../normalize.css"> |
| <link rel="stylesheet" type="text/css" href="../../rustdoc.css"> |
| <link rel="stylesheet" type="text/css" href="../../main.css"> |
| |
| |
| |
| |
| </head> |
| <body class="rustdoc struct"> |
| <!--[if lte IE 8]> |
| <div class="warning"> |
| This old browser is unsupported and will most likely display funky |
| things. |
| </div> |
| <![endif]--> |
| |
| |
| |
| <nav class="sidebar"> |
| |
| <p class='location'>Struct AsyncClient</p><div class="block items"><ul><li><a href="#methods">Methods</a></li><li><a href="#implementations">Trait Implementations</a></li></ul></div><p class='location'><a href='../index.html'>paho_mqtt</a>::<wbr><a href='index.html'>async_client</a></p><script>window.sidebarCurrent = {name: 'AsyncClient', ty: 'struct', relpath: ''};</script><script defer src="sidebar-items.js"></script> |
| </nav> |
| |
| <nav class="sub"> |
| <form class="search-form js-only"> |
| <div class="search-container"> |
| <input class="search-input" name="search" |
| autocomplete="off" |
| placeholder="Click or press ‘S’ to search, ‘?’ for more options…" |
| type="search"> |
| </div> |
| </form> |
| </nav> |
| |
| <section id='main' class="content"> |
| <h1 class='fqn'><span class='in-band'>Struct <a href='../index.html'>paho_mqtt</a>::<wbr><a href='index.html'>async_client</a>::<wbr><a class="struct" href=''>AsyncClient</a></span><span class='out-of-band'><span id='render-detail'> |
| <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs"> |
| [<span class='inner'>−</span>] |
| </a> |
| </span><a class='srclink' href='../../src/paho_mqtt/async_client.rs.html#326-340' title='goto source code'>[src]</a></span></h1> |
| <pre class='rust struct'>pub struct AsyncClient { /* fields omitted */ }</pre><div class='docblock'><p>An asynchronous MQTT connection client.</p> |
| </div><h2 id='methods'>Methods</h2><h3 class='impl'><span class='in-band'><code>impl <a class="struct" href="../../paho_mqtt/async_client/struct.AsyncClient.html" title="struct paho_mqtt::async_client::AsyncClient">AsyncClient</a></code></span><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../../src/paho_mqtt/async_client.rs.html#342-854' title='goto source code'>[src]</a></span></h3> |
| <div class='impl-items'><h4 id='method.new' class="method"><span id='new.v' class='invisible'><code>fn <a href='#method.new' class='fnname'>new</a><T>(opts: T) -> <a class="type" href="../../paho_mqtt/errors/type.MqttResult.html" title="type paho_mqtt::errors::MqttResult">MqttResult</a><<a class="struct" href="../../paho_mqtt/async_client/struct.AsyncClient.html" title="struct paho_mqtt::async_client::AsyncClient">AsyncClient</a>> <span class="where fmt-newline">where<br> T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><<a class="struct" href="../../paho_mqtt/create_options/struct.CreateOptions.html" title="struct paho_mqtt::create_options::CreateOptions">CreateOptions</a>>, </span></code></span></h4> |
| <div class='docblock'><p>Creates a new MQTT client which can connect to an MQTT broker.</p> |
| |
| <h1 id='arguments' class='section-header'><a href='#arguments'>Arguments</a></h1> |
| <ul> |
| <li><code>server_uri</code> The address of the MQTT broker.</li> |
| <li><code>client_id</code> The unique name of the client. if this is empty, the |
| the broker will assign a unique name.</li> |
| </ul> |
| </div><h4 id='method.connect' class="method"><span id='connect.v' class='invisible'><code>fn <a href='#method.connect' class='fnname'>connect</a><T>(&self, opt_opts: T) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/arc/struct.Arc.html" title="struct alloc::arc::Arc">Arc</a><<a class="struct" href="../../paho_mqtt/async_client/struct.Token.html" title="struct paho_mqtt::async_client::Token">Token</a>> <span class="where fmt-newline">where<br> T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../../paho_mqtt/connect_options/struct.ConnectOptions.html" title="struct paho_mqtt::connect_options::ConnectOptions">ConnectOptions</a>>>, </span></code></span></h4> |
| <div class='docblock'><p>Connects to an MQTT broker using the specified connect options.</p> |
| |
| <h1 id='arguments-1' class='section-header'><a href='#arguments-1'>Arguments</a></h1> |
| <ul> |
| <li><code>opts</code> The connect options</li> |
| </ul> |
| </div><h4 id='method.connect_with_callbacks' class="method"><span id='connect_with_callbacks.v' class='invisible'><code>fn <a href='#method.connect_with_callbacks' class='fnname'>connect_with_callbacks</a><FS, FF>(<br> &self, <br> opts: <a class="struct" href="../../paho_mqtt/connect_options/struct.ConnectOptions.html" title="struct paho_mqtt::connect_options::ConnectOptions">ConnectOptions</a>, <br> success_cb: FS, <br> failure_cb: FF<br>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/arc/struct.Arc.html" title="struct alloc::arc::Arc">Arc</a><<a class="struct" href="../../paho_mqtt/async_client/struct.Token.html" title="struct paho_mqtt::async_client::Token">Token</a>> <span class="where fmt-newline">where<br> FS: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&<a class="struct" href="../../paho_mqtt/async_client/struct.AsyncClient.html" title="struct paho_mqtt::async_client::AsyncClient">AsyncClient</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a>) + 'static,<br> FF: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&<a class="struct" href="../../paho_mqtt/async_client/struct.AsyncClient.html" title="struct paho_mqtt::async_client::AsyncClient">AsyncClient</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>) + 'static, </span></code></span></h4> |
| <div class='docblock'><p>Connects to an MQTT broker using the specified connect options.</p> |
| |
| <h1 id='arguments-2' class='section-header'><a href='#arguments-2'>Arguments</a></h1> |
| <ul> |
| <li><code>opts</code> The connect options</li> |
| </ul> |
| </div><h4 id='method.reconnect' class="method"><span id='reconnect.v' class='invisible'><code>fn <a href='#method.reconnect' class='fnname'>reconnect</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/arc/struct.Arc.html" title="struct alloc::arc::Arc">Arc</a><<a class="struct" href="../../paho_mqtt/async_client/struct.Token.html" title="struct paho_mqtt::async_client::Token">Token</a>></code></span></h4> |
| <div class='docblock'><p>Attempts to reconnect to the broker. |
| This can only be called after a connection was initially made or |
| attempted. It will retry with the same connect options.</p> |
| </div><h4 id='method.reconnect_with_callbacks' class="method"><span id='reconnect_with_callbacks.v' class='invisible'><code>fn <a href='#method.reconnect_with_callbacks' class='fnname'>reconnect_with_callbacks</a><FS, FF>(<br> &self, <br> success_cb: FS, <br> failure_cb: FF<br>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/arc/struct.Arc.html" title="struct alloc::arc::Arc">Arc</a><<a class="struct" href="../../paho_mqtt/async_client/struct.Token.html" title="struct paho_mqtt::async_client::Token">Token</a>> <span class="where fmt-newline">where<br> FS: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&<a class="struct" href="../../paho_mqtt/async_client/struct.AsyncClient.html" title="struct paho_mqtt::async_client::AsyncClient">AsyncClient</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a>) + 'static,<br> FF: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&<a class="struct" href="../../paho_mqtt/async_client/struct.AsyncClient.html" title="struct paho_mqtt::async_client::AsyncClient">AsyncClient</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>) + 'static, </span></code></span></h4> |
| <div class='docblock'><p>Attempts to reconnect to the broker, using callbacks to signal |
| completion. |
| This can only be called after a connection was initially made or |
| attempted. It will retry with the same connect options.</p> |
| |
| <h1 id='arguments-3' class='section-header'><a href='#arguments-3'>Arguments</a></h1> |
| <ul> |
| <li><code>success_cb</code> The callback for a successful connection.</li> |
| <li><code>failure_cb</code> The callback for a failed connection attempt.</li> |
| </ul> |
| </div><h4 id='method.disconnect' class="method"><span id='disconnect.v' class='invisible'><code>fn <a href='#method.disconnect' class='fnname'>disconnect</a><T>(&self, opt_opts: T) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/arc/struct.Arc.html" title="struct alloc::arc::Arc">Arc</a><<a class="struct" href="../../paho_mqtt/async_client/struct.Token.html" title="struct paho_mqtt::async_client::Token">Token</a>> <span class="where fmt-newline">where<br> T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../../paho_mqtt/disconnect_options/struct.DisconnectOptions.html" title="struct paho_mqtt::disconnect_options::DisconnectOptions">DisconnectOptions</a>>>, </span></code></span></h4> |
| <div class='docblock'><p>Disconnects from the MQTT broker.</p> |
| |
| <h1 id='arguments-4' class='section-header'><a href='#arguments-4'>Arguments</a></h1> |
| <p><code>opt_opts</code> Optional disconnect options. Specifying <code>None</code> will use |
| default of immediate (zero timeout) disconnect.</p> |
| </div><h4 id='method.disconnect_after' class="method"><span id='disconnect_after.v' class='invisible'><code>fn <a href='#method.disconnect_after' class='fnname'>disconnect_after</a>(&self, timeout: <a class="struct" href="https://doc.rust-lang.org/nightly/std/time/duration/struct.Duration.html" title="struct std::time::duration::Duration">Duration</a>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/arc/struct.Arc.html" title="struct alloc::arc::Arc">Arc</a><<a class="struct" href="../../paho_mqtt/async_client/struct.Token.html" title="struct paho_mqtt::async_client::Token">Token</a>></code></span></h4> |
| <div class='docblock'><p>Disconnect from the MQTT broker with a timeout. |
| This will delay the disconnect for up to the specified timeout to |
| allow in-flight messages to complete. |
| This is the same as calling disconnect with options specifying a |
| timeout.</p> |
| |
| <h1 id='arguments-5' class='section-header'><a href='#arguments-5'>Arguments</a></h1> |
| <p><code>timeout</code> The amount of time to wait for the disconnect. This has |
| a resolution in milliseconds.</p> |
| </div><h4 id='method.is_connected' class="method"><span id='is_connected.v' class='invisible'><code>fn <a href='#method.is_connected' class='fnname'>is_connected</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></h4> |
| <div class='docblock'><p>Determines if this client is currently connected to an MQTT broker.</p> |
| </div><h4 id='method.set_connection_lost_callback' class="method"><span id='set_connection_lost_callback.v' class='invisible'><code>fn <a href='#method.set_connection_lost_callback' class='fnname'>set_connection_lost_callback</a><F>(&mut self, cb: F) <span class="where fmt-newline">where<br> F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&mut <a class="struct" href="../../paho_mqtt/async_client/struct.AsyncClient.html" title="struct paho_mqtt::async_client::AsyncClient">AsyncClient</a>) + 'static, </span></code></span></h4> |
| <div class='docblock'><p>Sets the callback for when the connection is lost with the broker.</p> |
| |
| <h1 id='arguments-6' class='section-header'><a href='#arguments-6'>Arguments</a></h1> |
| <ul> |
| <li><code>cb</code> The callback to register with the library. This can be a |
| function or a closure.</li> |
| </ul> |
| </div><h4 id='method.set_message_callback' class="method"><span id='set_message_callback.v' class='invisible'><code>fn <a href='#method.set_message_callback' class='fnname'>set_message_callback</a><F>(&mut self, cb: F) <span class="where fmt-newline">where<br> F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&<a class="struct" href="../../paho_mqtt/async_client/struct.AsyncClient.html" title="struct paho_mqtt::async_client::AsyncClient">AsyncClient</a>, <a class="struct" href="../../paho_mqtt/message/struct.Message.html" title="struct paho_mqtt::message::Message">Message</a>) + 'static, </span></code></span></h4> |
| <div class='docblock'><p>Sets the callback for when a message arrives from the broker.</p> |
| |
| <h1 id='arguments-7' class='section-header'><a href='#arguments-7'>Arguments</a></h1> |
| <ul> |
| <li><code>cb</code> The callback to register with the library. This can be a |
| function or a closure.</li> |
| </ul> |
| </div><h4 id='method.publish' class="method"><span id='publish.v' class='invisible'><code>fn <a href='#method.publish' class='fnname'>publish</a>(&self, msg: <a class="struct" href="../../paho_mqtt/message/struct.Message.html" title="struct paho_mqtt::message::Message">Message</a>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/arc/struct.Arc.html" title="struct alloc::arc::Arc">Arc</a><<a class="type" href="../../paho_mqtt/async_client/type.DeliveryToken.html" title="type paho_mqtt::async_client::DeliveryToken">DeliveryToken</a>></code></span></h4> |
| <div class='docblock'><p>Publishes a message to an MQTT broker</p> |
| |
| <h1 id='arguments-8' class='section-header'><a href='#arguments-8'>Arguments</a></h1> |
| <ul> |
| <li><code>msg</code> The message to publish.</li> |
| </ul> |
| </div><h4 id='method.subscribe' class="method"><span id='subscribe.v' class='invisible'><code>fn <a href='#method.subscribe' class='fnname'>subscribe</a>(&self, topic: &<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, qos: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/arc/struct.Arc.html" title="struct alloc::arc::Arc">Arc</a><<a class="struct" href="../../paho_mqtt/async_client/struct.Token.html" title="struct paho_mqtt::async_client::Token">Token</a>></code></span></h4> |
| <div class='docblock'><p>Subscribes to a single topic.</p> |
| |
| <h1 id='arguments-9' class='section-header'><a href='#arguments-9'>Arguments</a></h1> |
| <p><code>topic</code> The topic name |
| <code>qos</code> The quality of service requested for messages</p> |
| </div><h4 id='method.subscribe_many' class="method"><span id='subscribe_many.v' class='invisible'><code>fn <a href='#method.subscribe_many' class='fnname'>subscribe_many</a>(&self, topic: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>>, qos: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/arc/struct.Arc.html" title="struct alloc::arc::Arc">Arc</a><<a class="struct" href="../../paho_mqtt/async_client/struct.Token.html" title="struct paho_mqtt::async_client::Token">Token</a>></code></span></h4> |
| <div class='docblock'><p>Subscribes to multiple topics simultaneously.</p> |
| |
| <h1 id='arguments-10' class='section-header'><a href='#arguments-10'>Arguments</a></h1> |
| <p><code>topic</code> The topic name |
| <code>qos</code> The quality of service requested for messages</p> |
| </div><h4 id='method.unsubscribe' class="method"><span id='unsubscribe.v' class='invisible'><code>fn <a href='#method.unsubscribe' class='fnname'>unsubscribe</a>(&self, topic: &<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/arc/struct.Arc.html" title="struct alloc::arc::Arc">Arc</a><<a class="struct" href="../../paho_mqtt/async_client/struct.Token.html" title="struct paho_mqtt::async_client::Token">Token</a>></code></span></h4> |
| <div class='docblock'><p>Unsubscribes from a single topic.</p> |
| |
| <h1 id='arguments-11' class='section-header'><a href='#arguments-11'>Arguments</a></h1> |
| <p><code>topic</code> The topic to unsubscribe. It must match a topic from a |
| previous subscribe.</p> |
| </div><h4 id='method.unsubscribe_many' class="method"><span id='unsubscribe_many.v' class='invisible'><code>fn <a href='#method.unsubscribe_many' class='fnname'>unsubscribe_many</a>(&self, topic: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/arc/struct.Arc.html" title="struct alloc::arc::Arc">Arc</a><<a class="struct" href="../../paho_mqtt/async_client/struct.Token.html" title="struct paho_mqtt::async_client::Token">Token</a>></code></span></h4> |
| <div class='docblock'><p>Unsubscribes from multiple topics simultaneously.</p> |
| |
| <h1 id='arguments-12' class='section-header'><a href='#arguments-12'>Arguments</a></h1> |
| <p><code>topic</code> The topics to unsubscribe. Each must match a topic from a |
| previous subscribe.</p> |
| </div><h4 id='method.start_consuming' class="method"><span id='start_consuming.v' class='invisible'><code>fn <a href='#method.start_consuming' class='fnname'>start_consuming</a>(&mut self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/std/sync/mpsc/struct.Receiver.html" title="struct std::sync::mpsc::Receiver">Receiver</a><<a class="struct" href="../../paho_mqtt/message/struct.Message.html" title="struct paho_mqtt::message::Message">Message</a>></code></span></h4> |
| <div class='docblock'><p>Start consuming incoming messages. |
| This initializes the client to receive messages into an internal |
| queue which can be read synchronously.</p> |
| </div><h4 id='method.stop_consuming' class="method"><span id='stop_consuming.v' class='invisible'><code>fn <a href='#method.stop_consuming' class='fnname'>stop_consuming</a>(&self)</code></span></h4> |
| </div><h2 id='implementations'>Trait Implementations</h2><h3 class='impl'><span class='in-band'><code>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/drop/trait.Drop.html" title="trait core::ops::drop::Drop">Drop</a> for <a class="struct" href="../../paho_mqtt/async_client/struct.AsyncClient.html" title="struct paho_mqtt::async_client::AsyncClient">AsyncClient</a></code></span><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../../src/paho_mqtt/async_client.rs.html#856-864' title='goto source code'>[src]</a></span></h3> |
| <div class='impl-items'><h4 id='method.drop' class="method"><span id='drop.v' class='invisible'><code>fn <a href='https://doc.rust-lang.org/nightly/core/ops/drop/trait.Drop.html#tymethod.drop' class='fnname'>drop</a>(&mut self)</code></span></h4> |
| <div class='docblock'><p>A method called when the value goes out of scope. <a href="https://doc.rust-lang.org/nightly/core/ops/drop/trait.Drop.html#tymethod.drop">Read more</a></p> |
| </div></div></section> |
| <section id='search' class="content hidden"></section> |
| |
| <section class="footer"></section> |
| |
| <aside id="help" class="hidden"> |
| <div> |
| <h1 class="hidden">Help</h1> |
| |
| <div class="shortcuts"> |
| <h2>Keyboard Shortcuts</h2> |
| |
| <dl> |
| <dt>?</dt> |
| <dd>Show this help dialog</dd> |
| <dt>S</dt> |
| <dd>Focus the search field</dd> |
| <dt>⇤</dt> |
| <dd>Move up in search results</dd> |
| <dt>⇥</dt> |
| <dd>Move down in search results</dd> |
| <dt>⏎</dt> |
| <dd>Go to active search result</dd> |
| <dt>+</dt> |
| <dd>Collapse/expand all sections</dd> |
| </dl> |
| </div> |
| |
| <div class="infos"> |
| <h2>Search Tricks</h2> |
| |
| <p> |
| Prefix searches with a type followed by a colon (e.g. |
| <code>fn:</code>) to restrict the search to a given type. |
| </p> |
| |
| <p> |
| Accepted types are: <code>fn</code>, <code>mod</code>, |
| <code>struct</code>, <code>enum</code>, |
| <code>trait</code>, <code>type</code>, <code>macro</code>, |
| and <code>const</code>. |
| </p> |
| |
| <p> |
| Search functions by type signature (e.g. |
| <code>vec -> usize</code> or <code>* -> vec</code>) |
| </p> |
| </div> |
| </div> |
| </aside> |
| |
| |
| |
| <script> |
| window.rootPath = "../../"; |
| window.currentCrate = "paho_mqtt"; |
| </script> |
| <script src="../../main.js"></script> |
| <script defer src="../../search-index.js"></script> |
| </body> |
| </html> |