aws-crt-cpp
C++ wrapper around the aws-c-* libraries. Provides Cross-Platform Transport Protocols and SSL/TLS implementations for C++.
|
#include <MqttClient.h>
Represents configuration parameters for building a MqttClientConnectionConfig object. You can use a single instance of this class PER MqttClientConnectionConfig you want to generate. If you want to generate a config for a different endpoint or port etc... you need a new instance of this class.
Aws::Iot::MqttClientConnectionConfigBuilder::MqttClientConnectionConfigBuilder | ( | ) |
|
noexcept |
Sets the builder up for MTLS using certPath and pkeyPath. These are files on disk and must be in the PEM format.
certPath | path to the X509 certificate (pem file) to use |
pkeyPath | path to the private key (pem file) to use |
|
noexcept |
Sets the builder up for MTLS using cert and pkey. These are in-memory buffers and must be in the PEM format.
cert | buffer containing the X509 certificate in a PEM format |
pkey | buffer containing the private key in a PEM format |
|
noexcept |
Sets the builder up for MTLS, using a PKCS#11 library for private key operations.
NOTE: This only works on Unix devices.
|
noexcept |
Sets the builder up for MTLS, using a certificate in a Windows certificate store.
NOTE: This only works on Windows.
windowsCertStorePath | Path to certificate in a Windows certificate store. The path must use backslashes and end with the certificate's thumbprint. Example: CurrentUser\MY\A11F8A9B5DF5B98BA3508FBCA575D09570E0D2C6 NOTE: This only works on Windows. |
|
noexcept |
Sets the builder up for Websocket connection.
config | websocket configuration information |
|
noexcept |
Builds a client configuration object from the set options.
|
inlinenoexcept |
|
inlineexplicitnoexcept |
|
noexcept |
Sets the certificate authority for the endpoint you're connecting to. This is a path to a file on disk and must be in PEM format.
caPath | path to the CA file in PEM format |
|
noexcept |
Sets the certificate authority for the endpoint you're connecting to. This is an in-memory buffer and must be in PEM format.
cert | buffer containing the CA certificate in a PEM format |
MqttClientConnectionConfigBuilder & Aws::Iot::MqttClientConnectionConfigBuilder::WithEndpoint | ( | const Crt::String & | endpoint | ) |
Sets endpoint to connect to.
endpoint | endpoint to connect to |
MqttClientConnectionConfigBuilder & Aws::Iot::MqttClientConnectionConfigBuilder::WithEndpoint | ( | Crt::String && | endpoint | ) |
Sets endpoint to connect to.
endpoint | endpoint to connect to |
|
noexcept |
Sets http proxy options.
proxyOptions | proxy configuration options for connection establishment |
MqttClientConnectionConfigBuilder & Aws::Iot::MqttClientConnectionConfigBuilder::WithMetricsCollection | ( | bool | enabled | ) |
Whether to send the SDK name and version number in the MQTT CONNECT packet. Default is True.
enabled | true to send SDK version/name in the connect for metrics gathering purposes |
|
noexcept |
Sets the minimum tls version that is acceptable for connection establishment
minimumTlsVersion | minimum tls version allowed in client connections |
|
noexcept |
Overrides the default port. By default, if ALPN is supported, 443 will be used. Otherwise 8883 will be used. If you specify 443 and ALPN is not supported, we will still attempt to connect over 443 without ALPN.
port | port to connect to |
MqttClientConnectionConfigBuilder & Aws::Iot::MqttClientConnectionConfigBuilder::WithSdkName | ( | const Crt::String & | sdkName | ) |
Overrides the default SDK Name to send as a metric in the MQTT CONNECT packet.
sdkName | string to use as the SDK name parameter in the connection string |
MqttClientConnectionConfigBuilder & Aws::Iot::MqttClientConnectionConfigBuilder::WithSdkVersion | ( | const Crt::String & | sdkVersion | ) |
Overrides the default SDK Version to send as a metric in the MQTT CONNECT packet.
sdkVersion | string to use as the SDK version parameter in the connection string |
|
noexcept |
TCP option: Sets the connect timeout. Defaults to 3 seconds.
connectTimeoutMs | socket connection timeout |
|
noexcept |
TCP option: Enables TCP keep alive. Defaults to off.
|
noexcept |
TCP option: Sets the frequency of sending keep alive probes in seconds once the keep alive timeout expires. Defaults to kernel defaults.
keepAliveIntervalSecs | the frequency of sending keep alive probes in seconds once the keep alive timeout expires |
|
noexcept |
TCP option: Sets the amount of keep alive probes allowed to fail before the connection is terminated. Defaults to kernel defaults.
maxProbes | the amount of keep alive probes allowed to fail before the connection is terminated |
|
noexcept |
TCP option: Sets time before keep alive probes are sent. Defaults to kernel defaults
keepAliveTimeoutSecs | time interval of no activity, in seconds, before keep alive probes get sent |