From 18538ebbb9f01652e4c4db107028256949e64520 Mon Sep 17 00:00:00 2001 From: Christian Kratky Date: Sun, 19 Mar 2017 19:34:43 +0100 Subject: [PATCH] Update readme --- README.md | 82 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) diff --git a/README.md b/README.md index a46483b3..3e3ee92d 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,84 @@ +

+ +

+ # MQTTnet MQTTnet is a .NET library for MQTT based communication. It provides a MQTT client and a MQTT server. + +# MqttClient +## Example + +```c# +var options = new MqttClientOptions +{ + Server = "localhost" +}; + +var client = new MqttClientFactory().CreateMqttClient(options); +client.ApplicationMessageReceived += (s, e) => +{ + Console.WriteLine("### RECEIVED APPLICATION MESSAGE ###"); + Console.WriteLine($"+ Topic = {e.ApplicationMessage.Topic}"); + Console.WriteLine($"+ Payload = {Encoding.UTF8.GetString(e.ApplicationMessage.Payload)}"); + Console.WriteLine($"+ QoS = {e.ApplicationMessage.QualityOfServiceLevel}"); + Console.WriteLine($"+ Retain = {e.ApplicationMessage.Retain}"); + Console.WriteLine(); +}; + +client.Connected += async (s, e) => +{ + Console.WriteLine("### CONNECTED WITH SERVER ###"); + + await client.SubscribeAsync(new List + { + new TopicFilter("#", MqttQualityOfServiceLevel.AtMostOnce) + }); + + Console.WriteLine("### SUBSCRIBED ###"); +}; + +client.Disconnected += async (s, e) => +{ + Console.WriteLine("### DISCONNECTED FROM SERVER ###"); + await Task.Delay(TimeSpan.FromSeconds(5)); + + try + { + await client.ConnectAsync(); + } + catch + { + Console.WriteLine("### RECONNECTING FAILED ###"); + } +}; + +try +{ + await client.ConnectAsync(); +} +catch +{ + Console.WriteLine("### CONNECTING FAILED ###"); +} + +Console.WriteLine("### WAITING FOR APPLICATION MESSAGES ###"); + +while (true) +{ + Console.ReadLine(); + + var applicationMessage = new MqttApplicationMessage( + "A/B/C", + Encoding.UTF8.GetBytes("Hello World"), + MqttQualityOfServiceLevel.AtLeastOnce, + false + ); + + await client.PublishAsync(applicationMessage); +} +``` + +# MqttServer + +## Example +TBD