Class MqttClientOptionsBuilder
public sealed class MqttClientOptionsBuilder
- Inheritance
-
MqttClientOptionsBuilder
- Inherited Members
Constructors
MqttClientOptionsBuilder()
public MqttClientOptionsBuilder()
Methods
Build()
public MqttClientOptions Build()
Returns
WithAddressFamily(AddressFamily)
public MqttClientOptionsBuilder WithAddressFamily(AddressFamily addressFamily)
Parameters
addressFamily
AddressFamily
Returns
WithAuthentication(string, byte[])
public MqttClientOptionsBuilder WithAuthentication(string method, byte[] data)
Parameters
Returns
WithCleanSession(bool)
Clean session is used in MQTT versions below 5.0.0. It is the same as setting "CleanStart".
public MqttClientOptionsBuilder WithCleanSession(bool value = true)
Parameters
value
bool
Returns
WithCleanStart(bool)
Clean start is used in MQTT versions 5.0.0 and higher. It is the same as setting "CleanSession".
public MqttClientOptionsBuilder WithCleanStart(bool value = true)
Parameters
value
bool
Returns
WithClientId(string)
public MqttClientOptionsBuilder WithClientId(string value)
Parameters
value
string
Returns
WithConnectionUri(string)
public MqttClientOptionsBuilder WithConnectionUri(string uri)
Parameters
uri
string
Returns
WithConnectionUri(Uri)
public MqttClientOptionsBuilder WithConnectionUri(Uri uri)
Parameters
uri
Uri
Returns
WithCredentials(IMqttClientCredentialsProvider)
public MqttClientOptionsBuilder WithCredentials(IMqttClientCredentialsProvider credentials)
Parameters
credentials
IMqttClientCredentialsProvider
Returns
WithCredentials(string, byte[])
public MqttClientOptionsBuilder WithCredentials(string username, byte[] password = null)
Parameters
Returns
WithCredentials(string, string)
public MqttClientOptionsBuilder WithCredentials(string username, string password)
Parameters
Returns
WithEndPoint(EndPoint)
public MqttClientOptionsBuilder WithEndPoint(EndPoint endPoint)
Parameters
endPoint
EndPoint
Returns
WithExtendedAuthenticationExchangeHandler(IMqttExtendedAuthenticationExchangeHandler)
public MqttClientOptionsBuilder WithExtendedAuthenticationExchangeHandler(IMqttExtendedAuthenticationExchangeHandler handler)
Parameters
Returns
WithKeepAlivePeriod(TimeSpan)
public MqttClientOptionsBuilder WithKeepAlivePeriod(TimeSpan value)
Parameters
value
TimeSpan
Returns
WithMaximumPacketSize(uint)
public MqttClientOptionsBuilder WithMaximumPacketSize(uint maximumPacketSize)
Parameters
maximumPacketSize
uint
Returns
WithNoKeepAlive()
public MqttClientOptionsBuilder WithNoKeepAlive()
Returns
WithProtocolType(ProtocolType)
public MqttClientOptionsBuilder WithProtocolType(ProtocolType protocolType)
Parameters
protocolType
ProtocolType
Returns
WithProtocolVersion(MqttProtocolVersion)
public MqttClientOptionsBuilder WithProtocolVersion(MqttProtocolVersion value)
Parameters
value
MqttProtocolVersion
Returns
WithProxy(Action<MqttClientWebSocketProxyOptions>)
[Obsolete("Use WithWebSocketServer(... configure) instead.")]
public MqttClientOptionsBuilder WithProxy(Action<MqttClientWebSocketProxyOptions> optionsBuilder)
Parameters
optionsBuilder
Action<MqttClientWebSocketProxyOptions>
Returns
WithProxy(string, string, string, string, bool, string[])
[Obsolete("Use WithWebSocketServer(... configure) instead.")]
public MqttClientOptionsBuilder WithProxy(string address, string username = null, string password = null, string domain = null, bool bypassOnLocal = false, string[] bypassList = null)
Parameters
Returns
WithReceiveMaximum(ushort)
public MqttClientOptionsBuilder WithReceiveMaximum(ushort receiveMaximum)
Parameters
receiveMaximum
ushort
Returns
WithRequestProblemInformation(bool)
public MqttClientOptionsBuilder WithRequestProblemInformation(bool requestProblemInformation = true)
Parameters
requestProblemInformation
bool
Returns
WithRequestResponseInformation(bool)
public MqttClientOptionsBuilder WithRequestResponseInformation(bool requestResponseInformation = true)
Parameters
requestResponseInformation
bool
Returns
WithSessionExpiryInterval(uint)
public MqttClientOptionsBuilder WithSessionExpiryInterval(uint sessionExpiryInterval)
Parameters
sessionExpiryInterval
uint
Returns
WithTcpServer(Action<MqttClientTcpOptions>)
public MqttClientOptionsBuilder WithTcpServer(Action<MqttClientTcpOptions> optionsBuilder)
Parameters
optionsBuilder
Action<MqttClientTcpOptions>
Returns
WithTcpServer(string, int?, AddressFamily)
public MqttClientOptionsBuilder WithTcpServer(string host, int? port = null, AddressFamily addressFamily = AddressFamily.Unspecified)
Parameters
host
stringport
int?addressFamily
AddressFamily
Returns
WithTimeout(TimeSpan)
Sets the timeout which will be applied at socket level and internal operations. The default value is the same as for sockets in .NET in general.
public MqttClientOptionsBuilder WithTimeout(TimeSpan value)
Parameters
value
TimeSpan
Returns
WithTls()
[Obsolete("Use WithTlsOptions(... configure) instead.")]
public MqttClientOptionsBuilder WithTls()
Returns
WithTls(MqttClientOptionsBuilderTlsParameters)
[Obsolete("Use WithTlsOptions(... configure) instead.")]
public MqttClientOptionsBuilder WithTls(MqttClientOptionsBuilderTlsParameters parameters)
Parameters
parameters
MqttClientOptionsBuilderTlsParameters
Returns
WithTls(Action<MqttClientOptionsBuilderTlsParameters>)
[Obsolete("Use WithTlsOptions(... configure) instead.")]
public MqttClientOptionsBuilder WithTls(Action<MqttClientOptionsBuilderTlsParameters> optionsBuilder)
Parameters
optionsBuilder
Action<MqttClientOptionsBuilderTlsParameters>
Returns
WithTlsOptions(MqttClientTlsOptions)
public MqttClientOptionsBuilder WithTlsOptions(MqttClientTlsOptions tlsOptions)
Parameters
tlsOptions
MqttClientTlsOptions
Returns
WithTlsOptions(Action<MqttClientTlsOptionsBuilder>)
public MqttClientOptionsBuilder WithTlsOptions(Action<MqttClientTlsOptionsBuilder> configure)
Parameters
configure
Action<MqttClientTlsOptionsBuilder>
Returns
WithTopicAliasMaximum(ushort)
public MqttClientOptionsBuilder WithTopicAliasMaximum(ushort topicAliasMaximum)
Parameters
topicAliasMaximum
ushort
Returns
WithTryPrivate(bool)
If set to true, the bridge will attempt to indicate to the remote broker that it is a bridge not an ordinary client. If successful, this means that loop detection will be more effective and that retained messages will be propagated correctly. Not all brokers support this feature so it may be necessary to set it to false if your bridge does not connect properly.
public MqttClientOptionsBuilder WithTryPrivate(bool tryPrivate = true)
Parameters
tryPrivate
bool
Returns
WithUserProperty(string, string)
public MqttClientOptionsBuilder WithUserProperty(string name, string value)
Parameters
Returns
WithWebSocketServer(Action<MqttClientWebSocketOptionsBuilder>)
public MqttClientOptionsBuilder WithWebSocketServer(Action<MqttClientWebSocketOptionsBuilder> configure)
Parameters
configure
Action<MqttClientWebSocketOptionsBuilder>
Returns
WithWebSocketServer(Action<MqttClientWebSocketOptions>)
[Obsolete("Use WithWebSocketServer(... configure) instead.")]
public MqttClientOptionsBuilder WithWebSocketServer(Action<MqttClientWebSocketOptions> optionsBuilder)
Parameters
optionsBuilder
Action<MqttClientWebSocketOptions>
Returns
WithWebSocketServer(string, MqttClientOptionsBuilderWebSocketParameters)
[Obsolete("Use WithWebSocketServer(... configure) instead.")]
public MqttClientOptionsBuilder WithWebSocketServer(string uri, MqttClientOptionsBuilderWebSocketParameters parameters = null)
Parameters
uri
stringparameters
MqttClientOptionsBuilderWebSocketParameters
Returns
WithWillContentType(string)
public MqttClientOptionsBuilder WithWillContentType(string willContentType)
Parameters
willContentType
string
Returns
WithWillCorrelationData(byte[])
public MqttClientOptionsBuilder WithWillCorrelationData(byte[] willCorrelationData)
Parameters
willCorrelationData
byte[]
Returns
WithWillDelayInterval(uint)
public MqttClientOptionsBuilder WithWillDelayInterval(uint willDelayInterval)
Parameters
willDelayInterval
uint
Returns
WithWillMessageExpiryInterval(uint)
public MqttClientOptionsBuilder WithWillMessageExpiryInterval(uint willMessageExpiryInterval)
Parameters
willMessageExpiryInterval
uint
Returns
WithWillPayload(ArraySegment<byte>)
public MqttClientOptionsBuilder WithWillPayload(ArraySegment<byte> willPayload)
Parameters
willPayload
ArraySegment<byte>
Returns
WithWillPayload(byte[])
public MqttClientOptionsBuilder WithWillPayload(byte[] willPayload)
Parameters
willPayload
byte[]
Returns
WithWillPayload(string)
public MqttClientOptionsBuilder WithWillPayload(string willPayload)
Parameters
willPayload
string
Returns
WithWillPayloadFormatIndicator(MqttPayloadFormatIndicator)
public MqttClientOptionsBuilder WithWillPayloadFormatIndicator(MqttPayloadFormatIndicator willPayloadFormatIndicator)
Parameters
willPayloadFormatIndicator
MqttPayloadFormatIndicator
Returns
WithWillQualityOfServiceLevel(MqttQualityOfServiceLevel)
public MqttClientOptionsBuilder WithWillQualityOfServiceLevel(MqttQualityOfServiceLevel willQualityOfServiceLevel)
Parameters
willQualityOfServiceLevel
MqttQualityOfServiceLevel
Returns
WithWillResponseTopic(string)
public MqttClientOptionsBuilder WithWillResponseTopic(string willResponseTopic)
Parameters
willResponseTopic
string
Returns
WithWillRetain(bool)
public MqttClientOptionsBuilder WithWillRetain(bool willRetain = true)
Parameters
willRetain
bool
Returns
WithWillTopic(string)
public MqttClientOptionsBuilder WithWillTopic(string willTopic)
Parameters
willTopic
string
Returns
WithWillUserProperty(string, string)
public MqttClientOptionsBuilder WithWillUserProperty(string name, string value)
Parameters
Returns
WithoutPacketFragmentation()
Usually the MQTT packets can be send partially. This is done by using multiple TCP packets or WebSocket frames etc. Unfortunately not all brokers (like Amazon Web Services (AWS)) do support this feature and will close the connection when receiving such packets. If such a service is used this flag must be set to true.
public MqttClientOptionsBuilder WithoutPacketFragmentation()
Returns
WithoutThrowOnNonSuccessfulConnectResponse()
The client will not throw an exception when the MQTT server responds with a non success ACK packet. This will become the default behavior in future versions of the library.
public MqttClientOptionsBuilder WithoutThrowOnNonSuccessfulConnectResponse()