OpcLabs.Mqtt communication package
This communication package is based on System.Net.Mqtt library by Xamarin (Microsoft). See MQTT communication packages for a summary of the communication package and the library. The library support Client and Server roles; the communication package only supports the Client role.
See Using communication packages for instructions on how to select the communication package, and configure it. The type name of the message channel object is: OpcLabs.Mqtt.MqttClientMessageChannel,OpcLabs.Mqtt .
URL string
Configuration
The table below lists the available properties, their types, and descriptions. Many properties come from configurable options of the underlying library. Most properties can usually stay at their defaults, and those that cannot are usually overridden from the host software (as noted). We will emphasize specific properties if they are important.
Property | Type | Description |
---|---|---|
ClientWaitTimeout | System.Int32 | Determines the maximum wait time for the client to open before publishing a message. In milliseconds. |
ErrorWaitDelay | System.Int32 | |
MqttConfiguration | System.Net.Mqtt.MqttConfiguration | General configuration used across the protocol implementation. |
MqttConfiguration.AllowWildcardsInTopicFilters | System.Boolean | Determines if multi level (#) and single level (+) wildcards are allowed on topic filters. Default value is true. |
MqttConfiguration.BufferSize | System.Int32 | Size in bytes of the receive buffer of the underlying transport protocol. Only use it when the property applies to the undelrying protocol used. |
MqttConfiguration.ConnectionTimeoutSecs | System.Int32 | Seconds to wait for a channel connection until the operation timeouts. This value is generally used to wait for the MQTT channel to open. Default value is 5 seconds. |
MqttConfiguration.KeepAliveSecs | System.UInt16 | Seconds to wait for the MQTT Keep Alive mechanism until a Ping packet is sent to maintain the connection alive. Default value is 0 seconds, which means Keep Alive disabled. |
MqttConfiguration.MaximumQualityOfService | System.Net.Mqtt.MqttQualityOfService | Maximum Quality of Service (QoS) to support. Default value is AtMostOnce, which means QoS 0. |
MqttConfiguration.Port | System.Int32 | Port to connect a Client to a Server. |
MqttConfiguration.WaitTimeoutSecs | System.Int32 | Seconds to wait for an incoming required message until the operation timeouts. This value is generally used to wait for Server or Client acknowledgements. Default value is 5 seconds. |
OpenFailureWaitDelay | System.Int32 | |
RemoteDisconnectedWaitDelay | System.Int32 |