Development of M2Mqtt library continues .... now reached the version 3.3.0.0 !

This time the new features are related to two requests from people who are using it.

First, I added more overloads for Connect() method, because from when I removed the default parameters (for compatibility with older versions of the .Net Framework) I left the more complex constructor that requires all parameters. Many people, not knowing well the MQTT protocol, found themselves in difficulty in deciding what values ​​to pass to lesser known parameters (will message, clean session, ...).

A further new feature concerns the client disconnected event (from the MQTT broker) that was requested on the official CodePlex web site. The MqttClient class exposes MqttMsgDisconnected event that is raised when a condition of connection failure with the broker is detected and typically in two cases :

  • when there isn’t network traffic, when client sends the PINGREQ message (relative to the keep-alive) it doesn’t receive the PINGRESP response from the broker;
  • The sending or receiving data to/from the broker fails for a connection problem;

The new version is available on CodePlex and Nuget, in addition to having updated the corresponding M2Mqtt4CE component for Windows Embedded Compact 2013 !

Breaking changes ….

Regarding Nuget, the M2Mqtt assemblies related to .NET Micro Framework 4.3 have been updated to the latest release QFE1; they don’t work with the previous RTM version, as the assemblies of micro framework are passed from version 4.3.0.0 to 4.3.1.0.