/// <summary> /// 上行消息到达处理 /// 本实例中, /// </summary> /// <param name="devEUI"></param> /// <param name="message"></param> private void DataReceived(string devEUI, Rimelink.Data.Mqtt.Message message) { if (client == null) { return; } // 上行的已解密还原的节点发送上来的数据 byte[] data = message.Data; try { Log(String.Format("接收 {0} 数据\r\n{1}", devEUI, BitConverter.ToString(data)).Replace('-', ' ')); if (data != null) { JObject mess = (JObject)message.JSON.DeepClone(); mess["parseResult"] = ParseData(data); DebugConsole(mess.ToString(Formatting.None)); } } catch (Exception e) { Debug.WriteLine("处理数据异常:" + e.Message); } }
/// <summary> /// 上行消息到达处理 /// 本实例中, /// </summary> /// <param name="devEUI"></param> /// <param name="message"></param> private void DataReceived(string devEUI, Rimelink.Data.Mqtt.Message message) { if (client == null) { return; } // 上行的已解密还原的节点发送上来的数据 byte[] data = message.Data; try { Log(String.Format("接收 {0} 数据\r\n{1}", devEUI, BitConverter.ToString(data)).Replace('-', ' ')); if (data != null) { string devName = message.JSON.Value <string>("deviceName"); Invoke(new MethodInvoker(delegate { if (!_DevicePanelDict.ContainsKey(devEUI)) { var devicePanel = new DevicePanel(devEUI, devName); _DevicePanelDict[devEUI] = devicePanel; devicePanel.MarqueeClick(btnSend_Click); layoutPanel.Controls.Add(devicePanel); } _DevicePanelDict[devEUI].DataReceived(data); })); } } catch (Exception e) { Debug.WriteLine("处理数据异常:" + e.Message); } }