C#Mqtt订阅消息

物联网数据通讯,需要从服务器上的mqtt服务器上订阅数据,

xml格式如下:



 
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   

 

订阅主题为1#配电房/进线柜/Data0等

下图为订阅到部分数据

C#Mqtt订阅消息_第1张图片

订阅代码:

 string topic = "/home/tempurture/line1";

            MqttClient client = new MqttClient(serverIp, Convert.ToInt32(serverPort), false, null, null, MqttSslProtocols.TLSv1_2);
            string clientId = Guid.NewGuid().ToString();
            string username = "admin";
            string password = "password";
            //建立连接
            client.Connect(clientId, username, password);
            for (int m = 0; m < xml.datalist.Count; m++)
            {
                topic = xml.datalist[m];
                // 订阅主题 "/home/temperature", 订阅质量 QoS 2 
                client.Subscribe(new string[] { topic }, new byte[] { MqttMsgBase.QOS_LEVEL_EXACTLY_ONCE });
            }
            label1.Text = topic;
            client.MqttMsgPublishReceived += new MqttClient.MqttMsgPublishEventHandler(messageReceive);
            timer1.Interval = Convert.ToInt32(textStartId.Text) * 1000 + 30000;
            this.timer1.Enabled = true;

 需要源码的发我邮箱,[email protected]

你可能感兴趣的:(C#,c#,xml,p2p)