mqttnet - MQTTnet 5.0.0.1314-RC

MQTTnet is a high performance .NET library for MQTT based communication. It provides a MQTT client and a MQTT server (broker) and supports v3.1.0, v3.1.1 and v5.0.0 of the MQTT protocol.

PM> Install-Package MQTTnet -Version 5.0.0.1314-RC -Source https://www.myget.org/F/mqttnet/api/v3/index.json

Copy to clipboard

> nuget.exe install MQTTnet -Version 5.0.0.1314-RC -Source https://www.myget.org/F/mqttnet/api/v3/index.json

Copy to clipboard

> dotnet add package MQTTnet --version 5.0.0.1314-RC --source https://www.myget.org/F/mqttnet/api/v3/index.json

Copy to clipboard
<PackageReference Include="MQTTnet" Version="5.0.0.1314-RC" />
Copy to clipboard
source https://www.myget.org/F/mqttnet/api/v3/index.json

nuget MQTTnet  ~> 5.0.0.1314-RC
Copy to clipboard

> choco install MQTTnet --version 5.0.0.1314-RC --source https://www.myget.org/F/mqttnet/api/v2

Copy to clipboard
Import-Module PowerShellGet
Register-PSRepository -Name "mqttnet" -SourceLocation "https://www.myget.org/F/mqttnet/api/v2"
Install-Module -Name "MQTTnet" -RequiredVersion "5.0.0.1314-RC" -Repository "mqttnet" -AllowPreRelease
Copy to clipboard

Browse the sources in this package using Visual Studio or WinDbg by configuring the following symbol server URL: https://www.myget.org/F/mqttnet/api/v2/symbolpackage/



NuGet Badge CI MyGet Size Join the chat at https://gitter.im/MQTTnet/community License: MIT

MQTTnet

MQTTnet is a high performance .NET library for MQTT based communication. It provides a MQTT client and a MQTT server ( broker) and supports the MQTT protocol up to version 5. It is compatible with mostly any supported .NET Framework version and CPU architecture.

Features

General

  • Async support
  • TLS support for client and server (but not UWP servers)
  • Extensible communication channels (e.g. In-Memory, TCP, TCP+TLS, WS)
  • Lightweight (only the low level implementation of MQTT, no overhead)
  • Performance optimized (processing ~150.000 messages / second)*
  • Uniform API across all supported versions of the MQTT protocol
  • Access to internal trace messages
  • Unit tested (~636 tests)
  • No external dependencies

* Tested on local machine (Intel i7 8700K) with MQTTnet client and server running in the same process using the TCP channel. The app for verification is part of this repository and stored in /Tests/MQTTnet.TestApp.NetCore.

Client

  • Communication via TCP (+TLS) or WS (WebSocket) supported
  • Included core LowLevelMqttClient with low level functionality
  • Also included ManagedMqttClient which maintains the connection and subscriptions automatically. Also application messages are queued and re-scheduled for higher QoS levels automatically.
  • Rx support (via another project)
  • Compatible with Microsoft Azure IoT Hub

Server (broker)

  • List of connected clients available
  • Supports connected clients with different protocol versions at the same time
  • Able to publish its own messages (no loopback client required)
  • Able to receive every message (no loopback client required)
  • Extensible client credential validation
  • Retained messages are supported including persisting via interface methods (own implementation required)
  • WebSockets supported (via ASP.NET Core 2.0, separate nuget)
  • A custom message interceptor can be added which allows transforming or extending every received application message
  • Validate subscriptions and deny subscribing of certain topics depending on requesting clients

Getting Started

MQTTnet is delivered via NuGet package manager. You can find the packages here: https://www.nuget.org/packages/MQTTnet/

Use these command in the Package Manager console to install MQTTnet manually:

Install-Package MQTTnet

Samples for using MQTTnet are part of this repository. For starters these samples are recommended:

Code of Conduct

This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information see the .NET Foundation Code of Conduct.

.NET Foundation

This project is supported by the .NET Foundation.

  • .NETFramework 8.0
  • .NETFramework 8.0: 8.0.0.0

Signature validation information

Informational

Signature Hash Algorithm: SHA256

Timestamp: 12/2/2024 11:25:33 AM

Verifying author primary signature's timestamp with timestamping service certificate: 
  Subject Name: CN=Microsoft Public RSA Time Stamping Authority, OU=Thales TSS ESN:3DA5-963B-E1F4, OU=Microsoft America Operations, O=Microsoft Corporation, L=Redmond, S=Washington, C=US
  SHA1 hash: 0FD820D82A200D85B76CF1B7EBAFBED0E2B94530
  SHA256 hash: E893B6B1B6377879D9C1D0A452290811135A24A93499D3CDD0BC1D57DCA7E036
  Issued by: CN=Microsoft Public RSA Timestamping CA 2020, O=Microsoft Corporation, C=US
  Valid from: 2/15/2024 8:36:09 PM to 2/15/2025 8:36:09 PM

Signature type: Author

Verifying the author primary signature with certificate: 
  Subject Name: CN=MQTTNET (.NET Foundation), O=MQTTNET (.NET Foundation), L=Redmond, S=Washington, C=US, SERIALNUMBER=603 389 068, OID.2.5.4.15=Private Organization, OID.1.3.6.1.4.1.311.60.2.1.2=Washington, OID.1.3.6.1.4.1.311.60.2.1.3=US
  SHA1 hash: E68FF5B010660D69AD11970F2C7BF312E7C2D777
  SHA256 hash: 34BEAF4E9DB0297F6BDE1E6D92F7C8B666B41BE66B65432A5B8F7683E043102A
  Issued by: CN=.NET Foundation Projects Code Signing CA2, O=.NET Foundation, C=US
  Valid from: 5/15/2024 12:00:00 AM to 5/14/2027 11:59:59 PM

Owners

Christian

Authors

The contributors of MQTTnet

Project URL

https://github.com/dotnet/MQTTnet

License

Unknown

Tags

MQTT Message Queue Telemetry Transport MQTTClient MQTTServer Server MQTTBroker Broker NETStandard IoT InternetOfThings Messaging Hardware Arduino Sensor Actuator M2M ESP Smart Home Cities Automation Xamarin Blazor

Signature

Validation: Valid

Info

11 total downloads
0 downloads for version 5.0.0.1314-RC
Download (120.46 KB)
Download symbols (46.47 KB)
Found on the current feed only

Package history

Version Size Last updated Downloads Mirrored?
5.0.0.1327-RC 120.57 KB Tue, 03 Dec 2024 10:42:06 GMT 1
5.0.0.1325-RC 120.98 KB Tue, 03 Dec 2024 10:07:46 GMT 0
5.0.0.1324-RC 120.56 KB Tue, 03 Dec 2024 10:03:26 GMT 0
5.0.0.1323-RC 120.76 KB Tue, 03 Dec 2024 10:02:43 GMT 0
5.0.0.1314-RC 120.46 KB Mon, 02 Dec 2024 11:25:58 GMT 0
5.0.0.1145 119.27 KB Mon, 20 May 2024 08:49:03 GMT 0
5.0.0.1144 218.94 KB Sun, 19 May 2024 18:43:13 GMT 0
5.0.0.1123 319.41 KB Fri, 17 May 2024 15:29:07 GMT 0
4.3.7.1208 1.59 MB Sat, 07 Sep 2024 10:09:24 GMT 0
4.3.7.1207 1.59 MB Sat, 07 Sep 2024 09:49:17 GMT 2
4.3.7.1197 1.58 MB Sat, 24 Aug 2024 13:12:53 GMT 0
4.3.7.1195 1.58 MB Sat, 24 Aug 2024 11:23:51 GMT 0
4.3.7.1194 1.58 MB Sat, 24 Aug 2024 10:43:55 GMT 0
4.3.6.1189 1.47 MB Sat, 24 Aug 2024 09:25:02 GMT 0
4.3.6.1186 1.47 MB Thu, 25 Jul 2024 20:02:48 GMT 1
4.3.6.1175 1.47 MB Sat, 22 Jun 2024 13:40:47 GMT 0
4.3.6.1174 1.47 MB Sat, 22 Jun 2024 13:08:37 GMT 0
4.3.6.1173 1.47 MB Sat, 22 Jun 2024 13:10:11 GMT 0
4.3.6.1171 1.47 MB Fri, 21 Jun 2024 17:20:33 GMT 0
4.3.6.1153 1.47 MB Fri, 24 May 2024 15:58:32 GMT 0
4.3.6.1152 1.47 MB Thu, 23 May 2024 17:48:09 GMT 6
4.3.6.1150 1.46 MB Wed, 22 May 2024 18:08:20 GMT 0
4.3.6.1149 1.46 MB Tue, 21 May 2024 20:52:05 GMT 1
4.3.5.1148 1.47 MB Tue, 21 May 2024 18:59:56 GMT 0
4.3.5.1146 1.46 MB Tue, 21 May 2024 18:08:29 GMT 0