OpcLabs.Mqtt communication package: Difference between revisions

From OPC Labs Knowledge Base
Line 32: Line 32:
|System.Int32
|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.
|Size in bytes of the receive buffer of the underlying transport protocol. Only use it when the property applies to the undelrying protocol used.
Default value is 8192.
|-
|-
|MqttConfiguration.ConnectionTimeoutSecs
|MqttConfiguration.ConnectionTimeoutSecs
Line 48: Line 49:
|System.Int32
|System.Int32
|Port to connect a Client to a Server.
|Port to connect a Client to a Server.
Default value is 1883.
|-
|-
|MqttConfiguration.WaitTimeoutSecs
|MqttConfiguration.WaitTimeoutSecs

Revision as of 14:06, 13 December 2019

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 supports 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 How long the client will wait before attempting to reconnect after an unexpected error on the endpoint. In milliseconds.
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.

Default value is 8192.

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.

Default value is 1883.

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 How long the client will wait before attempting to reconnect after failing to open. In milliseconds.
RemoteDisconnectedWaitDelay System.Int32 How long the client will wait before attempting to reconnect after a remote disconnection produced by the server. In milliseconds.