AWS IoT Device SDK C++ v2 1.44.2
AWS IoT Device SDK C++ v2
Loading...
Searching...
No Matches
Aws::Crt::Mqtt5::Mqtt5ClientOptions Class Referencefinal

#include <Mqtt5Client.h>

Public Member Functions

 Mqtt5ClientOptions (Crt::Allocator *allocator=ApiAllocator()) noexcept
Mqtt5ClientOptionsWithHostName (Crt::String hostname)
Mqtt5ClientOptionsWithPort (uint32_t port) noexcept
Mqtt5ClientOptionsWithBootstrap (Io::ClientBootstrap *bootStrap) noexcept
Mqtt5ClientOptionsWithSocketOptions (Io::SocketOptions socketOptions) noexcept
Mqtt5ClientOptionsWithTlsConnectionOptions (const Io::TlsConnectionOptions &tslOptions) noexcept
Mqtt5ClientOptionsWithHttpProxyOptions (const Crt::Http::HttpClientConnectionProxyOptions &proxyOptions) noexcept
Mqtt5ClientOptionsWithConnectOptions (std::shared_ptr< ConnectPacket > connectPacket) noexcept
Mqtt5ClientOptionsWithSessionBehavior (ClientSessionBehaviorType sessionBehavior) noexcept
Mqtt5ClientOptionsWithClientExtendedValidationAndFlowControl (ClientExtendedValidationAndFlowControl clientExtendedValidationAndFlowControl) noexcept
Mqtt5ClientOptionsWithOfflineQueueBehavior (ClientOperationQueueBehaviorType offlineQueueBehavior) noexcept
Mqtt5ClientOptionsWithReconnectOptions (ReconnectOptions reconnectOptions) noexcept
Mqtt5ClientOptionsWithTopicAliasingOptions (TopicAliasingOptions topicAliasingOptions) noexcept
Mqtt5ClientOptionsWithPingTimeoutMs (uint32_t pingTimeoutMs) noexcept
Mqtt5ClientOptionsWithConnackTimeoutMs (uint32_t connackTimeoutMs) noexcept
Mqtt5ClientOptionsWithAckTimeoutSeconds (uint32_t ackTimeoutSec) noexcept
Mqtt5ClientOptionsWithAckTimeoutSec (uint32_t ackTimeoutSec) noexcept
Mqtt5ClientOptionsWithWebsocketHandshakeTransformCallback (OnWebSocketHandshakeIntercept callback) noexcept
Mqtt5ClientOptionsWithClientConnectionSuccessCallback (OnConnectionSuccessHandler callback) noexcept
Mqtt5ClientOptionsWithClientConnectionFailureCallback (OnConnectionFailureHandler callback) noexcept
Mqtt5ClientOptionsWithClientDisconnectionCallback (OnDisconnectionHandler callback) noexcept
Mqtt5ClientOptionsWithClientStoppedCallback (OnStoppedHandler callback) noexcept
Mqtt5ClientOptionsWithClientAttemptingConnectCallback (OnAttemptingConnectHandler callback) noexcept
Mqtt5ClientOptionsWithPublishReceivedCallback (OnPublishReceivedHandler callback) noexcept
Mqtt5ClientOptionsWithMetricsCollection (bool enabled) noexcept
bool initializeRawOptions (aws_mqtt5_client_options &raw_options) const noexcept
 ~Mqtt5ClientOptions ()
 Mqtt5ClientOptions (const Mqtt5ClientOptions &)=delete
 Mqtt5ClientOptions (Mqtt5ClientOptions &&)=delete
Mqtt5ClientOptionsoperator= (const Mqtt5ClientOptions &)=delete
Mqtt5ClientOptionsoperator= (Mqtt5ClientOptions &&)=delete

Friends

class Mqtt5ClientCore
class Mqtt5to3AdapterOptions

Detailed Description

Configuration interface for mqtt5 clients

Constructor & Destructor Documentation

◆ Mqtt5ClientOptions() [1/3]

Aws::Crt::Mqtt5::Mqtt5ClientOptions::Mqtt5ClientOptions ( Crt::Allocator * allocator = ApiAllocator())
noexcept

Default constructior of Mqtt5ClientOptions

Mqtt5ClientOptions

◆ ~Mqtt5ClientOptions()

Aws::Crt::Mqtt5::Mqtt5ClientOptions::~Mqtt5ClientOptions ( )

◆ Mqtt5ClientOptions() [2/3]

Aws::Crt::Mqtt5::Mqtt5ClientOptions::Mqtt5ClientOptions ( const Mqtt5ClientOptions & )
delete

◆ Mqtt5ClientOptions() [3/3]

Aws::Crt::Mqtt5::Mqtt5ClientOptions::Mqtt5ClientOptions ( Mqtt5ClientOptions && )
delete

Member Function Documentation

◆ initializeRawOptions()

bool Aws::Crt::Mqtt5::Mqtt5ClientOptions::initializeRawOptions ( aws_mqtt5_client_options & raw_options) const
noexcept

Initializes the C aws_mqtt5_client_options from Mqtt5ClientOptions. For internal use

Parameters
raw_options- output parameter containing low level client options to be passed to the C interface

◆ operator=() [1/2]

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::operator= ( const Mqtt5ClientOptions & )
delete

◆ operator=() [2/2]

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::operator= ( Mqtt5ClientOptions && )
delete

◆ WithAckTimeoutSec()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithAckTimeoutSec ( uint32_t ackTimeoutSec)
noexcept

Sets Operation Timeout(Seconds). Time interval to wait for an ack after sending a QoS 1+ PUBLISH, SUBSCRIBE, or UNSUBSCRIBE before failing the operation.

Parameters
ackTimeoutSec
Returns
this option object

◆ WithAckTimeoutSeconds()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithAckTimeoutSeconds ( uint32_t ackTimeoutSec)
noexcept
Deprecated
The function is deprecated, please use Mqtt5ClientOptions::WithAckTimeoutSec(uint32_t)

Sets Operation Timeout(Seconds). Time interval to wait for an ack after sending a QoS 1+ PUBLISH, SUBSCRIBE, or UNSUBSCRIBE before failing the operation.

Parameters
ackTimeoutSec
Returns
this option object

◆ WithBootstrap()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithBootstrap ( Io::ClientBootstrap * bootStrap)
noexcept

Set booststrap for mqtt5 client

Parameters
bootStrapbootstrap used for mqtt5 client. The default ClientBootstrap see Aws::Crt::ApiHandle::GetOrCreateStaticDefaultClientBootstrap.
Returns
this option object

◆ WithClientAttemptingConnectCallback()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithClientAttemptingConnectCallback ( OnAttemptingConnectHandler callback)
noexcept

Sets callback trigged when client begins an attempt to connect to the remote endpoint.

Parameters
callback
Returns
this option object

◆ WithClientConnectionFailureCallback()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithClientConnectionFailureCallback ( OnConnectionFailureHandler callback)
noexcept

Sets callback trigged when client fails to establish an MQTT connection

Parameters
callback
Returns
this option object

◆ WithClientConnectionSuccessCallback()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithClientConnectionSuccessCallback ( OnConnectionSuccessHandler callback)
noexcept

Sets callback trigged when client successfully establishes an MQTT connection

Parameters
callback
Returns
this option object

◆ WithClientDisconnectionCallback()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithClientDisconnectionCallback ( OnDisconnectionHandler callback)
noexcept

Sets callback trigged when client's current MQTT connection is closed

Parameters
callback
Returns
this option object

◆ WithClientExtendedValidationAndFlowControl()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithClientExtendedValidationAndFlowControl ( ClientExtendedValidationAndFlowControl clientExtendedValidationAndFlowControl)
noexcept

Sets client extended validation and flow control, additional controls for client behavior with respect to operation validation and flow control; these checks go beyond the base MQTT5 spec to respect limits of specific MQTT brokers.

Parameters
clientExtendedValidationAndFlowControl
Returns
this option object

◆ WithClientStoppedCallback()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithClientStoppedCallback ( OnStoppedHandler callback)
noexcept

Sets callback trigged when client reaches the "Stopped" state

Parameters
callback
Returns
this option object

◆ WithConnackTimeoutMs()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithConnackTimeoutMs ( uint32_t connackTimeoutMs)
noexcept

Sets Connack Timeout (ms). Time interval to wait after sending a CONNECT request for a CONNACK to arrive. If one does not arrive, the connection will be shut down.

Parameters
connackTimeoutMs
Returns
this option object

◆ WithConnectOptions()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithConnectOptions ( std::shared_ptr< ConnectPacket > connectPacket)
noexcept

Sets mqtt5 connection options

Parameters
connectPacketpackage connection options
Returns
this option object

◆ WithHostName()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithHostName ( Crt::String hostname)

Sets host to connect to.

Parameters
hostnameendpoint to connect to
Returns
this option object

◆ WithHttpProxyOptions()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithHttpProxyOptions ( const Crt::Http::HttpClientConnectionProxyOptions & proxyOptions)
noexcept

Sets http proxy options.

Parameters
proxyOptionshttp proxy configuration for connection establishment
Returns
this option object

◆ WithMetricsCollection()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithMetricsCollection ( bool enabled)
noexcept

Enable AWS IoT metrics. Default to enabled.

Parameters
enabledenable AWS IoT metrics to collect SDK usage data, including SDK version, name, and platform

◆ WithOfflineQueueBehavior()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithOfflineQueueBehavior ( ClientOperationQueueBehaviorType offlineQueueBehavior)
noexcept

Sets OfflineQueueBehavior, controls how disconnects affect the queued and in-progress operations tracked by the client. Also controls how new operations are handled while the client is not connected. In particular, if the client is not connected, then any operation that would be failed on disconnect (according to these rules) will also be rejected.

Parameters
offlineQueueBehavior
Returns
this option object

◆ WithPingTimeoutMs()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithPingTimeoutMs ( uint32_t pingTimeoutMs)
noexcept

Sets ping timeout (ms). Time interval to wait after sending a PINGREQ for a PINGRESP to arrive. If one does not arrive, the client will close the current connection.

Parameters
pingTimeoutMs
Returns
this option object

◆ WithPort()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithPort ( uint32_t port)
noexcept

Set port to connect to

Parameters
portport to connect to
Returns
this option object

◆ WithPublishReceivedCallback()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithPublishReceivedCallback ( OnPublishReceivedHandler callback)
noexcept

Sets callback trigged when a PUBLISH packet is received by the client

Parameters
callback
Returns
this option object

◆ WithReconnectOptions()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithReconnectOptions ( ReconnectOptions reconnectOptions)
noexcept

Sets ReconnectOptions. Reconnect options, includes retryJitterMode, min reconnect delay time and max reconnect delay time and reset reconnect delay time

Parameters
reconnectOptions
Returns
this option object

◆ WithSessionBehavior()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithSessionBehavior ( ClientSessionBehaviorType sessionBehavior)
noexcept

Sets session behavior. Overrides how the MQTT5 client should behave with respect to MQTT sessions.

Parameters
sessionBehavior
Returns
this option object

◆ WithSocketOptions()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithSocketOptions ( Io::SocketOptions socketOptions)
noexcept

Sets the aws socket options

Parameters
socketOptionsIo::SocketOptions used to setup socket
Returns
this option object

◆ WithTlsConnectionOptions()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithTlsConnectionOptions ( const Io::TlsConnectionOptions & tslOptions)
noexcept

Sets the tls connection options

Parameters
tslOptionsIo::TlsConnectionOptions
Returns
this option object

◆ WithTopicAliasingOptions()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithTopicAliasingOptions ( TopicAliasingOptions topicAliasingOptions)
noexcept

Sets the topic aliasing behavior for the client.

Parameters
topicAliasingOptionstopic aliasing behavior options to use
Returns
this options object

◆ WithWebsocketHandshakeTransformCallback()

Mqtt5ClientOptions & Aws::Crt::Mqtt5::Mqtt5ClientOptions::WithWebsocketHandshakeTransformCallback ( OnWebSocketHandshakeIntercept callback)
noexcept

Sets callback for transform HTTP request. This callback allows a custom transformation of the HTTP request that acts as the websocket handshake. Websockets will be used if this is set to a valid transformation callback. To use websockets but not perform a transformation, just set this as a trivial completion callback. If undefined, the connection will be made with direct MQTT.

Parameters
callback
Returns
this option object

◆ Mqtt5ClientCore

friend class Mqtt5ClientCore
friend

◆ Mqtt5to3AdapterOptions

friend class Mqtt5to3AdapterOptions
friend

The documentation for this class was generated from the following files: