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
addressFamilyAddressFamily
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
valuebool
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
valuebool
Returns
WithClientId(string)
public MqttClientOptionsBuilder WithClientId(string value)
Parameters
valuestring
Returns
WithConnectionUri(string)
public MqttClientOptionsBuilder WithConnectionUri(string uri)
Parameters
uristring
Returns
WithConnectionUri(Uri)
public MqttClientOptionsBuilder WithConnectionUri(Uri uri)
Parameters
uriUri
Returns
WithCredentials(IMqttClientCredentialsProvider)
public MqttClientOptionsBuilder WithCredentials(IMqttClientCredentialsProvider credentials)
Parameters
credentialsIMqttClientCredentialsProvider
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
endPointEndPoint
Returns
WithExtendedAuthenticationExchangeHandler(IMqttExtendedAuthenticationExchangeHandler)
public MqttClientOptionsBuilder WithExtendedAuthenticationExchangeHandler(IMqttExtendedAuthenticationExchangeHandler handler)
Parameters
Returns
WithKeepAlivePeriod(TimeSpan)
public MqttClientOptionsBuilder WithKeepAlivePeriod(TimeSpan value)
Parameters
valueTimeSpan
Returns
WithMaximumPacketSize(uint)
public MqttClientOptionsBuilder WithMaximumPacketSize(uint maximumPacketSize)
Parameters
maximumPacketSizeuint
Returns
WithNoKeepAlive()
public MqttClientOptionsBuilder WithNoKeepAlive()
Returns
WithProtocolType(ProtocolType)
public MqttClientOptionsBuilder WithProtocolType(ProtocolType protocolType)
Parameters
protocolTypeProtocolType
Returns
WithProtocolVersion(MqttProtocolVersion)
public MqttClientOptionsBuilder WithProtocolVersion(MqttProtocolVersion value)
Parameters
valueMqttProtocolVersion
Returns
WithProxy(Action<MqttClientWebSocketProxyOptions>)
[Obsolete("Use WithWebSocketServer(... configure) instead.")]
public MqttClientOptionsBuilder WithProxy(Action<MqttClientWebSocketProxyOptions> optionsBuilder)
Parameters
optionsBuilderAction<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
receiveMaximumushort
Returns
WithRequestProblemInformation(bool)
public MqttClientOptionsBuilder WithRequestProblemInformation(bool requestProblemInformation = true)
Parameters
requestProblemInformationbool
Returns
WithRequestResponseInformation(bool)
public MqttClientOptionsBuilder WithRequestResponseInformation(bool requestResponseInformation = true)
Parameters
requestResponseInformationbool
Returns
WithSessionExpiryInterval(uint)
public MqttClientOptionsBuilder WithSessionExpiryInterval(uint sessionExpiryInterval)
Parameters
sessionExpiryIntervaluint
Returns
WithTcpServer(Action<MqttClientTcpOptions>)
public MqttClientOptionsBuilder WithTcpServer(Action<MqttClientTcpOptions> optionsBuilder)
Parameters
optionsBuilderAction<MqttClientTcpOptions>
Returns
WithTcpServer(string, int?, AddressFamily)
public MqttClientOptionsBuilder WithTcpServer(string host, int? port = null, AddressFamily addressFamily = AddressFamily.Unspecified)
Parameters
hoststringportint?addressFamilyAddressFamily
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
valueTimeSpan
Returns
WithTls()
[Obsolete("Use WithTlsOptions(... configure) instead.")]
public MqttClientOptionsBuilder WithTls()
Returns
WithTls(MqttClientOptionsBuilderTlsParameters)
[Obsolete("Use WithTlsOptions(... configure) instead.")]
public MqttClientOptionsBuilder WithTls(MqttClientOptionsBuilderTlsParameters parameters)
Parameters
parametersMqttClientOptionsBuilderTlsParameters
Returns
WithTls(Action<MqttClientOptionsBuilderTlsParameters>)
[Obsolete("Use WithTlsOptions(... configure) instead.")]
public MqttClientOptionsBuilder WithTls(Action<MqttClientOptionsBuilderTlsParameters> optionsBuilder)
Parameters
optionsBuilderAction<MqttClientOptionsBuilderTlsParameters>
Returns
WithTlsOptions(MqttClientTlsOptions)
public MqttClientOptionsBuilder WithTlsOptions(MqttClientTlsOptions tlsOptions)
Parameters
tlsOptionsMqttClientTlsOptions
Returns
WithTlsOptions(Action<MqttClientTlsOptionsBuilder>)
public MqttClientOptionsBuilder WithTlsOptions(Action<MqttClientTlsOptionsBuilder> configure)
Parameters
configureAction<MqttClientTlsOptionsBuilder>
Returns
WithTopicAliasMaximum(ushort)
public MqttClientOptionsBuilder WithTopicAliasMaximum(ushort topicAliasMaximum)
Parameters
topicAliasMaximumushort
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
tryPrivatebool
Returns
WithUserProperty(string, string)
public MqttClientOptionsBuilder WithUserProperty(string name, string value)
Parameters
Returns
WithWebSocketServer(Action<MqttClientWebSocketOptionsBuilder>)
public MqttClientOptionsBuilder WithWebSocketServer(Action<MqttClientWebSocketOptionsBuilder> configure)
Parameters
configureAction<MqttClientWebSocketOptionsBuilder>
Returns
WithWebSocketServer(Action<MqttClientWebSocketOptions>)
[Obsolete("Use WithWebSocketServer(... configure) instead.")]
public MqttClientOptionsBuilder WithWebSocketServer(Action<MqttClientWebSocketOptions> optionsBuilder)
Parameters
optionsBuilderAction<MqttClientWebSocketOptions>
Returns
WithWebSocketServer(string, MqttClientOptionsBuilderWebSocketParameters)
[Obsolete("Use WithWebSocketServer(... configure) instead.")]
public MqttClientOptionsBuilder WithWebSocketServer(string uri, MqttClientOptionsBuilderWebSocketParameters parameters = null)
Parameters
uristringparametersMqttClientOptionsBuilderWebSocketParameters
Returns
WithWillContentType(string)
public MqttClientOptionsBuilder WithWillContentType(string willContentType)
Parameters
willContentTypestring
Returns
WithWillCorrelationData(byte[])
public MqttClientOptionsBuilder WithWillCorrelationData(byte[] willCorrelationData)
Parameters
willCorrelationDatabyte[]
Returns
WithWillDelayInterval(uint)
public MqttClientOptionsBuilder WithWillDelayInterval(uint willDelayInterval)
Parameters
willDelayIntervaluint
Returns
WithWillMessageExpiryInterval(uint)
public MqttClientOptionsBuilder WithWillMessageExpiryInterval(uint willMessageExpiryInterval)
Parameters
willMessageExpiryIntervaluint
Returns
WithWillPayload(ArraySegment<byte>)
public MqttClientOptionsBuilder WithWillPayload(ArraySegment<byte> willPayload)
Parameters
willPayloadArraySegment<byte>
Returns
WithWillPayload(byte[])
public MqttClientOptionsBuilder WithWillPayload(byte[] willPayload)
Parameters
willPayloadbyte[]
Returns
WithWillPayload(string)
public MqttClientOptionsBuilder WithWillPayload(string willPayload)
Parameters
willPayloadstring
Returns
WithWillPayloadFormatIndicator(MqttPayloadFormatIndicator)
public MqttClientOptionsBuilder WithWillPayloadFormatIndicator(MqttPayloadFormatIndicator willPayloadFormatIndicator)
Parameters
willPayloadFormatIndicatorMqttPayloadFormatIndicator
Returns
WithWillQualityOfServiceLevel(MqttQualityOfServiceLevel)
public MqttClientOptionsBuilder WithWillQualityOfServiceLevel(MqttQualityOfServiceLevel willQualityOfServiceLevel)
Parameters
willQualityOfServiceLevelMqttQualityOfServiceLevel
Returns
WithWillResponseTopic(string)
public MqttClientOptionsBuilder WithWillResponseTopic(string willResponseTopic)
Parameters
willResponseTopicstring
Returns
WithWillRetain(bool)
public MqttClientOptionsBuilder WithWillRetain(bool willRetain = true)
Parameters
willRetainbool
Returns
WithWillTopic(string)
public MqttClientOptionsBuilder WithWillTopic(string willTopic)
Parameters
willTopicstring
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()