Connect with Username/Password Authentication
Connect securely to an MQTT broker using basic authentication credentials.
Set a Last Will & Testament
Last Will and Testament (LWT) allows your client to notify other subscribers when it disconnects unexpectedly.
Use Client Certificates
X.509 client certificates provide a more secure authentication method than username/password. The broker verifies the client's identity using the certificate during the TLS handshake.
Allow Invalid TLS Certificates
In development or testing scenarios, you may need to connect to an MQTT broker with a self-signed or invalid TLS certificate. This guide shows how to bypass certificate validation.
Configure Logging
The HiveMQ client uses NLog for logging. Configure it by placing an NLog.config file in your application's directory.
Debug the Client
When troubleshooting issues with the HiveMQ client, TRACE level logging provides detailed insight into the client's internal operations.
Wait for an Event
Use TaskCompletionSource to synchronize your code with async events. This is useful when you need to wait for an event to complete before continuing.
Configure a Proxy Server
When deploying applications in corporate environments or certain hosting providers, network traffic may be routed through a proxy server. The HiveMQ MQTT .NET client supports connecting to MQTT brokers through HTTP proxy servers.
Manual Acknowledgement of Incoming Publishes
The ability to manually acknowledge incoming publishes was added in v0.40.0.
Message Ordering for OnMessageReceived
MQTT 5.0 section 4.6 (Message Ordering) requires that QoS 1 and QoS 2 application messages be delivered to a client in the order they were sent for a given Topic Filter.