From f71e74b5f0d2716fbf05da016cdaa18d64e09f80 Mon Sep 17 00:00:00 2001 From: xm <1271024303@qq.com> Date: 星期四, 31 十二月 2020 17:01:18 +0800 Subject: [PATCH] 又换完成最新门锁。空气质量传感器完成数据和基本配置功能。开发图表和自动化的同事可下载此代码 --- ZigbeeApp/Shared/Phone/ZigBee/Device/CommonDevice.cs | 692 ++++++++++++++++++++++++++++++-------------------------- 1 files changed, 369 insertions(+), 323 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/ZigBee/Device/CommonDevice.cs b/ZigbeeApp/Shared/Phone/ZigBee/Device/CommonDevice.cs index e71564b..1f2afc0 100644 --- a/ZigbeeApp/Shared/Phone/ZigBee/Device/CommonDevice.cs +++ b/ZigbeeApp/Shared/Phone/ZigBee/Device/CommonDevice.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Text; using Newtonsoft.Json.Linq; +using Shared; namespace ZigBee.Device { @@ -10,8 +11,8 @@ { #region 闇�瑕佷繚瀛樼殑鍙橀噺 - /// <summary> - /// 鏄惁鏄嚜瀹氫箟鍥剧墖 + /// <summary> + /// 鏄惁鏄嚜瀹氫箟鍥剧墖 /// </summary> public bool IsCustomizeImage = false; /// <summary> @@ -73,13 +74,13 @@ /// <para>1026:sensor,浼犳劅鍣紝鍏蜂綋绫诲瀷鐨勪紶鎰熷櫒DeviceType鏉ュ尯鍒�</para> /// </summary> public int DeviceID; - /// <summary> - /// <para>2020.09.21杩藉姞:涓轰簡瀵瑰簲绗笁鏂硅澶�,浠ュ強涔嬪悗鐨勫璁惧ID闂,杩藉姞鐨勫彉閲�</para> - /// <para>杩欐槸涓壒娈婄殑,骞朵笖涓嶄繚瀛樺湪鏂囦欢褰撲腑鐨処D, DeviceType鐢辨鍊兼槧灏勫嚭鏉�</para> - /// <para>褰撹澶囨槸娌充笢璁惧鏃�,瀹冧笌DeviceID鐩哥瓑</para> - /// <para>褰撴槸鐪熸鐨勭涓夋柟璁惧鏃�,瀹冩湁鍙兘涓嶥eviceID涓嶇浉绛�</para> - /// <para>姣斿锛�2鍜�256閮芥槸缁х數鍣�,閭d箞銆怐eviceID涓�2 鎴栬�� DeviceID涓�256銆� 鑰� 銆怑xDeviceID鍥哄畾涓�2銆�,銆怐eviceType涓篛nOffOutput銆�</para> - /// <para>閫氫織鏉ヨ锛欴eviceID鏄疄闄呮纭殑ID,鑰屻�怑xDeviceID鏄竴绉嶆墍灞炴蹇电殑ID銆�</para> + /// <summary> + /// <para>2020.09.21杩藉姞:涓轰簡瀵瑰簲绗笁鏂硅澶�,浠ュ強涔嬪悗鐨勫璁惧ID闂,杩藉姞鐨勫彉閲�</para> + /// <para>杩欐槸涓壒娈婄殑,骞朵笖涓嶄繚瀛樺湪鏂囦欢褰撲腑鐨処D, DeviceType鐢辨鍊兼槧灏勫嚭鏉�</para> + /// <para>褰撹澶囨槸娌充笢璁惧鏃�,瀹冧笌DeviceID鐩哥瓑</para> + /// <para>褰撴槸鐪熸鐨勭涓夋柟璁惧鏃�,瀹冩湁鍙兘涓嶥eviceID涓嶇浉绛�</para> + /// <para>姣斿锛�2鍜�256閮芥槸缁х數鍣�,閭d箞銆怐eviceID涓�2 鎴栬�� DeviceID涓�256銆� 鑰� 銆怑xDeviceID鍥哄畾涓�2銆�,銆怐eviceType涓篛nOffOutput銆�</para> + /// <para>閫氫織鏉ヨ锛欴eviceID鏄疄闄呮纭殑ID,鑰屻�怑xDeviceID鏄竴绉嶆墍灞炴蹇电殑ID銆�</para> /// </summary> [Newtonsoft.Json.JsonIgnore] public int ExDeviceID; @@ -119,10 +120,10 @@ /// <para>1锛氳澶囧湪绾�</para> /// </summary> public int IsOnline; - /// <summary> - /// 1锛氳矾鐢辫澶� - /// <para>2锛氱粓绔澶囷紝鐢垫睜璁惧</para> - /// </summary> + /// <summary> + /// 1锛氳矾鐢辫澶� + /// <para>2锛氱粓绔澶囷紝鐢垫睜璁惧</para> + /// </summary> public int ZigbeeType; /// <summary> /// 鍥轰欢鐗堟湰 @@ -249,11 +250,11 @@ #region 璁惧淇濆瓨鍙婄敓鎴� - /// <summary> - /// 鐢辫澶囧瓧绗︿覆姣旂壒鎭㈠璁惧瀵硅薄 - /// </summary> - /// <param name="intDeviceType">璁惧DeviceType鐨勬暣鍨嬪��</param> - /// <param name="strDeviceByte">璁惧Json鏂囦欢杞负姣旂壒鍚庡啀杞负鐨勫瓧绗︿覆</param> + /// <summary> + /// 鐢辫澶囧瓧绗︿覆姣旂壒鎭㈠璁惧瀵硅薄 + /// </summary> + /// <param name="intDeviceType">璁惧DeviceType鐨勬暣鍨嬪��</param> + /// <param name="strDeviceByte">璁惧Json鏂囦欢杞负姣旂壒鍚庡啀杞负鐨勫瓧绗︿覆</param> /// <returns></returns> public static CommonDevice CommonDeviceByByteString(int intDeviceType, string strDeviceByte) { @@ -413,6 +414,43 @@ } /// <summary> + /// 鍒ゆ柇鏄惁鏄┖姘旇川閲忎紶鎰熷櫒 + /// </summary> + /// <param name="dev"></param> + /// <returns></returns> + public bool isAirQualitySensor(CommonDevice dev) + { + bool hasT = false; + bool hasH = false; + bool hasPM = false; + bool hasCo2 = false; + foreach (var clu in dev.InClusterList) + { + switch (clu.InCluster) + { + case 1026: + hasT = true; + break; + case 1029: + hasH = true; + break; + case 1037: + hasCo2 = true; + break; + case 1066: + hasPM = true; + break; + } + } + + if (hasT == true && hasH == true && hasPM == true && hasCo2 == true) + { + return true; + } + return false; + } + + /// <summary> /// 淇濆瓨璁惧鍥炬爣 /// </summary> private void SaveDeviceIcon() @@ -466,15 +504,23 @@ } else if (this.Type == DeviceType.TemperatureSensor) { - if (((TemperatureSensor)this).SensorDiv == 1) + if (isAirQualitySensor(this)) { - //娓╁害浼犳劅鍣� - IconPath = "Device/SensorTemperature.png"; + //绌烘皵璐ㄩ噺浼犳劅鍣� + IconPath = "Device/AirQualitySensorEpoint.png"; } - else if (((TemperatureSensor)this).SensorDiv == 2) + else { - //婀垮害浼犳劅鍣� - IconPath = "Device/SensorHumidity.png"; + if (((TemperatureSensor)this).SensorDiv == 1) + { + //娓╁害浼犳劅鍣� + IconPath = "Device/SensorTemperature.png"; + } + else if (((TemperatureSensor)this).SensorDiv == 2) + { + //婀垮害浼犳劅鍣� + IconPath = "Device/SensorHumidity.png"; + } } } else if (this.Type != DeviceType.UnKown) @@ -719,20 +765,20 @@ /// 椹卞姩浠g爜銆備负0鏃讹紝琛ㄧずzigbee鍗忚皟鍣ㄨ澶囥�傚叾浠栧�艰〃绀轰负铏氭嫙椹卞姩璁惧 /// </summary> public int DriveCode; - /// <summary> - /// 鍘傚晢鍚嶇О + /// <summary> + /// 鍘傚晢鍚嶇О /// </summary> public string ManufacturerName = string.Empty; - /// <summary> - /// 妯″潡ID + /// <summary> + /// 妯″潡ID /// </summary> public string ModelIdentifier = string.Empty; - /// <summary> - /// 濂藉儚鏄簭鍒楀彿 + /// <summary> + /// 濂藉儚鏄簭鍒楀彿 /// </summary> public string ProductCode = string.Empty; - /// <summary> - /// 璁惧鍔熻兘绫诲瀷(绌烘皵寮�鍏冲拰缁х數鍣ㄤ笓鐢�) + /// <summary> + /// 璁惧鍔熻兘绫诲瀷(绌烘皵寮�鍏冲拰缁х數鍣ㄤ笓鐢�) /// </summary> public int FunctionType = -1; /// <summary> @@ -910,37 +956,37 @@ SynchronizationDeviceResponseAllData resContent = null; Action<string, string> action = (topic, message) => { - var gatewayID = topic.Split('/')[0]; - var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); + var gatewayID = topic.Split('/')[0]; + var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); - if (topic == gatewayID + "/" + "Error_Respon") - { - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "Error_Respon") + { + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); - if (temp == null) - { - resContent = new SynchronizationDeviceResponseAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; - } - else - { - resContent = new SynchronizationDeviceResponseAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; - } - } + if (temp == null) + { + resContent = new SynchronizationDeviceResponseAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; + } + else + { + resContent = new SynchronizationDeviceResponseAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; + } + } - if (topic == gatewayID + "/" + "Bind/SyncMsgToBindSourceRespon") - { - var res = Newtonsoft.Json.JsonConvert.DeserializeObject<int>(jobject["Data"]["Result"].ToString()); - if (res == null) - { - resContent = new SynchronizationDeviceResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; - } - else - { - resContent = new SynchronizationDeviceResponseAllData { result = res }; - System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); - } - } - }; + if (topic == gatewayID + "/" + "Bind/SyncMsgToBindSourceRespon") + { + var res = Newtonsoft.Json.JsonConvert.DeserializeObject<int>(jobject["Data"]["Result"].ToString()); + if (res == null) + { + resContent = new SynchronizationDeviceResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; + } + else + { + resContent = new SynchronizationDeviceResponseAllData { result = res }; + System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); + } + } + }; Gateway.Actions = action; DebugPrintLog("Bind/SyncMsgToBindSourceRespon_Actions 鍚姩" + "_" + System.DateTime.Now.ToString()); @@ -1013,38 +1059,38 @@ RemoveDeviceResponseAllData d = null; Action<string, string> action = (topic, message) => { - var gatewayID = topic.Split('/')[0]; - var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); + var gatewayID = topic.Split('/')[0]; + var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); - if (topic == gatewayID + "/" + "Error_Respon") - { - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "Error_Respon") + { + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); - if (temp == null) - { - d = new RemoveDeviceResponseAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; - } - else - { - d = new RemoveDeviceResponseAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; - } - } + if (temp == null) + { + d = new RemoveDeviceResponseAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; + } + else + { + d = new RemoveDeviceResponseAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; + } + } - if (topic == gatewayID + "/" + "RemoveDeviceRespon") - { - var removeDeviceResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.RemoveDeviceResponseData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "RemoveDeviceRespon") + { + var removeDeviceResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.RemoveDeviceResponseData>(jobject["Data"].ToString()); - if (removeDeviceResponseData == null) - { - d = new RemoveDeviceResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; - } - else - { - d = new RemoveDeviceResponseAllData { removeDeviceResponseData = removeDeviceResponseData }; - System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); - } - } - }; + if (removeDeviceResponseData == null) + { + d = new RemoveDeviceResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; + } + else + { + d = new RemoveDeviceResponseAllData { removeDeviceResponseData = removeDeviceResponseData }; + System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); + } + } + }; Gateway.Actions += action; DebugPrintLog("RemoveDevice_Actions 鍚姩" + "_" + System.DateTime.Now.ToString()); @@ -1227,10 +1273,10 @@ } await System.Threading.Tasks.Task.Run(async () => { - //Action<string, string> action = (topic, message) => { }; + //Action<string, string> action = (topic, message) => { }; - // Gateway.Actions += action; - System.Console.WriteLine("GetDeviceStatus_Actions 鍚姩" + "_" + System.DateTime.Now.ToString()); + // Gateway.Actions += action; + System.Console.WriteLine("GetDeviceStatus_Actions 鍚姩" + "_" + System.DateTime.Now.ToString()); try { @@ -1251,8 +1297,8 @@ } catch { } - // Gateway.Actions -= action; - System.Console.WriteLine("GetDeviceStatus_Actions 閫�鍑�" + System.DateTime.Now.ToString()); + // Gateway.Actions -= action; + System.Console.WriteLine("GetDeviceStatus_Actions 閫�鍑�" + System.DateTime.Now.ToString()); }); } @@ -1319,38 +1365,38 @@ SetWritableValueResponAllData d = null; Action<string, string> action = (topic, message) => { - var gatewayID = topic.Split('/')[0]; - var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); + var gatewayID = topic.Split('/')[0]; + var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); - if (topic == gatewayID + "/" + "Error_Respon") - { - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "Error_Respon") + { + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); - if (temp == null) - { - d = new SetWritableValueResponAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; - } - else - { - d = new SetWritableValueResponAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; - } - } + if (temp == null) + { + d = new SetWritableValueResponAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; + } + else + { + d = new SetWritableValueResponAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; + } + } - if (topic == gatewayID + "/" + "SetWritableValue_Respon") - { - var tempData = Newtonsoft.Json.JsonConvert.DeserializeObject<SetWritableValueResponData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "SetWritableValue_Respon") + { + var tempData = Newtonsoft.Json.JsonConvert.DeserializeObject<SetWritableValueResponData>(jobject["Data"].ToString()); - if (tempData == null) - { - d = new SetWritableValueResponAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; - } - else - { - d = new SetWritableValueResponAllData { setWritableValueResponData = tempData }; - System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); - } - } - }; + if (tempData == null) + { + d = new SetWritableValueResponAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; + } + else + { + d = new SetWritableValueResponAllData { setWritableValueResponData = tempData }; + System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); + } + } + }; Gateway.Actions += action; System.Console.WriteLine("SetWritableValue_Actions 鍚姩" + "_" + System.DateTime.Now.ToString()); @@ -1490,45 +1536,45 @@ ClusterOwnAttributesResponAllData d = null; Action<string, string> action = (topic, message) => { - var gatewayID = topic.Split('/')[0]; - var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); + var gatewayID = topic.Split('/')[0]; + var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); - if (topic == gatewayID + "/" + "Error_Respon") - { - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "Error_Respon") + { + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); - if (temp == null) - { - d = new ClusterOwnAttributesResponAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; - } - else - { - d = new ClusterOwnAttributesResponAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; - } - } + if (temp == null) + { + d = new ClusterOwnAttributesResponAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; + } + else + { + d = new ClusterOwnAttributesResponAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; + } + } - if (topic == gatewayID + "/" + "Cluster/OwnAttributes_Respon") - { - var clusterOwnAttributesResponData = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ClusterOwnAttributesResponData>(jobject["Data"].ToString()); - var tempAttributes = Newtonsoft.Json.Linq.JArray.Parse(jobject["Data"]["Attribute"].ToString()); - for (int m = 0; tempAttributes != null && m < tempAttributes.Count; m++) - { - var tempAttribute = tempAttributes[m]; - clusterOwnAttributesResponData.AttributeList.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<AttributeObj>(tempAttribute.ToString())); - } + if (topic == gatewayID + "/" + "Cluster/OwnAttributes_Respon") + { + var clusterOwnAttributesResponData = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ClusterOwnAttributesResponData>(jobject["Data"].ToString()); + var tempAttributes = Newtonsoft.Json.Linq.JArray.Parse(jobject["Data"]["Attribute"].ToString()); + for (int m = 0; tempAttributes != null && m < tempAttributes.Count; m++) + { + var tempAttribute = tempAttributes[m]; + clusterOwnAttributesResponData.AttributeList.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<AttributeObj>(tempAttribute.ToString())); + } - if (clusterOwnAttributesResponData == null) - { - d = new ClusterOwnAttributesResponAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; - } - else - { - d = new ClusterOwnAttributesResponAllData { clusterOwnAttributesResponData = clusterOwnAttributesResponData }; - System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); + if (clusterOwnAttributesResponData == null) + { + d = new ClusterOwnAttributesResponAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; + } + else + { + d = new ClusterOwnAttributesResponAllData { clusterOwnAttributesResponData = clusterOwnAttributesResponData }; + System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); - } - } - }; + } + } + }; gateway.Actions += action; System.Console.WriteLine("Cluster/OwnAttributes_Actions 鍚姩" + "_" + System.DateTime.Now.ToString()); @@ -1604,40 +1650,40 @@ ClusterOwnCommandResponAllData d = null; Action<string, string> action = (topic, message) => { - var gatewayID = topic.Split('/')[0]; - var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); + var gatewayID = topic.Split('/')[0]; + var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); - if (topic == gatewayID + "/" + "Error_Respon") - { - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "Error_Respon") + { + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); - if (temp == null) - { - d = new ClusterOwnCommandResponAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; - } - else - { - d = new ClusterOwnCommandResponAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; + if (temp == null) + { + d = new ClusterOwnCommandResponAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; + } + else + { + d = new ClusterOwnCommandResponAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; - } - } + } + } - if (topic == gatewayID + "/" + "Cluster/OwnCommand_Respon") - { - var clusterOwnCommandResponData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClusterOwnCommandResponData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "Cluster/OwnCommand_Respon") + { + var clusterOwnCommandResponData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClusterOwnCommandResponData>(jobject["Data"].ToString()); - if (clusterOwnCommandResponData == null) - { - d = new ClusterOwnCommandResponAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; + if (clusterOwnCommandResponData == null) + { + d = new ClusterOwnCommandResponAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; - } - else - { - d = new ClusterOwnCommandResponAllData { clusterOwnCommandResponData = clusterOwnCommandResponData }; - System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); - } - } - }; + } + else + { + d = new ClusterOwnCommandResponAllData { clusterOwnCommandResponData = clusterOwnCommandResponData }; + System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); + } + } + }; gateway.Actions += action; System.Console.WriteLine("Cluster/OwnCommand_Actions 鍚姩" + "_" + System.DateTime.Now.ToString()); @@ -1713,39 +1759,39 @@ OTASetImageResponseAllData d = null; ; Action<string, string> action = (topic, message) => { - var gatewayID = topic.Split('/')[0]; - var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); + var gatewayID = topic.Split('/')[0]; + var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); - if (topic == gatewayID + "/" + "Error_Respon") - { - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "Error_Respon") + { + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); - if (temp == null) - { - d = new OTASetImageResponseAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; - } + if (temp == null) + { + d = new OTASetImageResponseAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; + } - else - { - d = new OTASetImageResponseAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; - } - } + else + { + d = new OTASetImageResponseAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; + } + } - if (topic == gatewayID + "/" + "OTA/SetImage_Respon") - { - var oTASetImageData = Newtonsoft.Json.JsonConvert.DeserializeObject<OTASetImageData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "OTA/SetImage_Respon") + { + var oTASetImageData = Newtonsoft.Json.JsonConvert.DeserializeObject<OTASetImageData>(jobject["Data"].ToString()); - if (oTASetImageData == null) - { - d = new OTASetImageResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; - } - else - { - d = new OTASetImageResponseAllData { otaSetImageData = oTASetImageData }; - System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); - } - } - }; + if (oTASetImageData == null) + { + d = new OTASetImageResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; + } + else + { + d = new OTASetImageResponseAllData { otaSetImageData = oTASetImageData }; + System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); + } + } + }; gateway.Actions += action; System.Console.WriteLine("OTA/SetImage_Actions 鍚姩" + "_" + System.DateTime.Now.ToString()); @@ -1858,39 +1904,39 @@ StartDeviceUpdateResponseAllData d = null; ; Action<string, string> action = (topic, message) => { - var gatewayID = topic.Split('/')[0]; - var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); + var gatewayID = topic.Split('/')[0]; + var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); - if (topic == gatewayID + "/" + "Error_Respon") - { - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "Error_Respon") + { + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); - if (temp == null) - { - d = new StartDeviceUpdateResponseAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; - } + if (temp == null) + { + d = new StartDeviceUpdateResponseAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; + } - else - { - d = new StartDeviceUpdateResponseAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; - } - } + else + { + d = new StartDeviceUpdateResponseAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; + } + } - if (topic == gatewayID + "/" + "OTA/StartUpdate_Respon") - { - var startUpdateDeviceData = Newtonsoft.Json.JsonConvert.DeserializeObject<StartDeviceUpdateData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "OTA/StartUpdate_Respon") + { + var startUpdateDeviceData = Newtonsoft.Json.JsonConvert.DeserializeObject<StartDeviceUpdateData>(jobject["Data"].ToString()); - if (startUpdateDeviceData == null) - { - d = new StartDeviceUpdateResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; - } - else - { - d = new StartDeviceUpdateResponseAllData { startUpdateDeviceData = startUpdateDeviceData }; - System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); - } - } - }; + if (startUpdateDeviceData == null) + { + d = new StartDeviceUpdateResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; + } + else + { + d = new StartDeviceUpdateResponseAllData { startUpdateDeviceData = startUpdateDeviceData }; + System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); + } + } + }; gateway.Actions += action; System.Console.WriteLine("OTA/StartUpdate_Actions 鍚姩" + "_" + System.DateTime.Now.ToString()); @@ -2044,39 +2090,39 @@ ClientDataPassthroughResponseAllData d = null; ; Action<string, string> action = (topic, message) => { - var gatewayID = topic.Split('/')[0]; - var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); + var gatewayID = topic.Split('/')[0]; + var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); - if (topic == gatewayID + "/" + "Error_Respon") - { - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "Error_Respon") + { + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); - if (temp == null) - { - d = new ClientDataPassthroughResponseAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; - } + if (temp == null) + { + d = new ClientDataPassthroughResponseAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; + } - else - { - d = new ClientDataPassthroughResponseAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; - } - } + else + { + d = new ClientDataPassthroughResponseAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; + } + } - if (topic == gatewayID + "/" + "ZbDataPassthrough") - { - var clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "ZbDataPassthrough") + { + var clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); - if (clientDataPassthroughResponseData == null) - { - d = new ClientDataPassthroughResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; - } - else - { - d = new ClientDataPassthroughResponseAllData { clientDataPassthroughResponseData = clientDataPassthroughResponseData }; - System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); - } - } - }; + if (clientDataPassthroughResponseData == null) + { + d = new ClientDataPassthroughResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; + } + else + { + d = new ClientDataPassthroughResponseAllData { clientDataPassthroughResponseData = clientDataPassthroughResponseData }; + System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); + } + } + }; gateway.Actions += action; System.Console.WriteLine("ClientDataPassthrough_Actions 鍚姩" + "_" + System.DateTime.Now.ToString()); @@ -2176,38 +2222,38 @@ DownloadFileResponAllData d = null; ; Action<string, string> action = (topic, message) => { - var gatewayID = topic.Split('/')[0]; - var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); + var gatewayID = topic.Split('/')[0]; + var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); - if (topic == gatewayID + "/" + "Error_Respon") - { - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "Error_Respon") + { + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); - if (temp == null) - { - d = new DownloadFileResponAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; - } - else - { - d = new DownloadFileResponAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; - } - } + if (temp == null) + { + d = new DownloadFileResponAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; + } + else + { + d = new DownloadFileResponAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; + } + } - if (topic == gatewayID + "/" + "DownloadFile_Respon") - { - var downloadFileResponData = Newtonsoft.Json.JsonConvert.DeserializeObject<DownloadFileResponData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "DownloadFile_Respon") + { + var downloadFileResponData = Newtonsoft.Json.JsonConvert.DeserializeObject<DownloadFileResponData>(jobject["Data"].ToString()); - if (downloadFileResponData == null) - { - d = new DownloadFileResponAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; - } - else - { - d = new DownloadFileResponAllData { downloadFileResponData = downloadFileResponData }; - System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); - } - } - }; + if (downloadFileResponData == null) + { + d = new DownloadFileResponAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; + } + else + { + d = new DownloadFileResponAllData { downloadFileResponData = downloadFileResponData }; + System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); + } + } + }; gateway.Actions += action; try { @@ -2328,39 +2374,39 @@ KillUpdateResponseAllData d = null; ; Action<string, string> action = (topic, message) => { - var gatewayID = topic.Split('/')[0]; - var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); + var gatewayID = topic.Split('/')[0]; + var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); - if (topic == gatewayID + "/" + "Error_Respon") - { - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "Error_Respon") + { + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); - if (temp == null) - { - d = new KillUpdateResponseAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; - } + if (temp == null) + { + d = new KillUpdateResponseAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" }; + } - else - { - d = new KillUpdateResponseAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; - } - } + else + { + d = new KillUpdateResponseAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) }; + } + } - if (topic == gatewayID + "/" + "OTA/KillUpdate_Respon") - { - var killUpdateData = Newtonsoft.Json.JsonConvert.DeserializeObject<KillUpdateData>(jobject["Data"].ToString()); + if (topic == gatewayID + "/" + "OTA/KillUpdate_Respon") + { + var killUpdateData = Newtonsoft.Json.JsonConvert.DeserializeObject<KillUpdateData>(jobject["Data"].ToString()); - if (killUpdateData == null) - { - d = new KillUpdateResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; - } - else - { - d = new KillUpdateResponseAllData { killUpdateData = killUpdateData }; - System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); - } - } - }; + if (killUpdateData == null) + { + d = new KillUpdateResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; + } + else + { + d = new KillUpdateResponseAllData { killUpdateData = killUpdateData }; + System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); + } + } + }; gateway.Actions += action; System.Console.WriteLine("OTA/KillUpdate_Actions 鍚姩" + "_" + System.DateTime.Now.ToString()); -- Gitblit v1.8.0