From 2450c12c825ad4d78d1572da2fa421706db2df2f Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期四, 18 六月 2020 16:01:14 +0800
Subject: [PATCH] 新代码
---
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayReceiveLogic.cs | 41 ++++++++++++++++++++++++++++++++++++-----
1 files changed, 36 insertions(+), 5 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayReceiveLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayReceiveLogic.cs
index f7cd9b4..4b198e9 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayReceiveLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayReceiveLogic.cs
@@ -173,7 +173,7 @@
//璁惧鎺у埗鐘舵�佸弽棣�
else if (reportTopic == "DeviceDefaultAck")
{
- //this.DeviceControlResponePush(JObject.Parse(msgData));
+ this.DeviceControlResponePush(JObject.Parse(msgData));
}
//鎾ら槻
else if (topic == gatewayId + "/Security/WithdrawMode_Respon")
@@ -406,10 +406,36 @@
else if (report.DeviceStatusReport.CluterID == 8)
{
locadevice.DeviceStatusReport = report.DeviceStatusReport;
- if (locadevice.Type == DeviceType.DimmableLight && report.DeviceStatusReport.AttriBute[0].AttributeId == 0)
+ if (report.DeviceStatusReport.AttriBute[0].AttributeId == 0)
{
- //姝ゅ睘鎬ц〃鏄庡綋鍓嶄寒搴︾▼搴�
- ((DimmableLight)locadevice).Level = report.DeviceStatusReport.AttriBute[0].AttriButeData;
+ if (locadevice.Type == DeviceType.DimmableLight)
+ {
+ //姝ゅ睘鎬ц〃鏄庡綋鍓嶄寒搴︾▼搴�
+ ((DimmableLight)locadevice).Level = report.DeviceStatusReport.AttriBute[0].AttriButeData;
+ }
+ else if (locadevice.Type == DeviceType.ColorTemperatureLight)
+ {
+ //姝ゅ睘鎬ц〃鏄庡綋鍓嶄寒搴︾▼搴�
+ ((ColorTemperatureLight)locadevice).Level = report.DeviceStatusReport.AttriBute[0].AttriButeData;
+ }
+ //宸茬粡鎺ユ敹鍒扮姸鎬�
+ locadevice.HadReadDeviceStatu = true;
+ }
+ }
+ #endregion
+
+ #region 鈻� 鑹叉俯鏁版嵁
+ //鑹叉俯鏁版嵁
+ else if (report.DeviceStatusReport.CluterID == 768)
+ {
+ locadevice.DeviceStatusReport = report.DeviceStatusReport;
+ if (report.DeviceStatusReport.AttriBute[0].AttributeId == 0)
+ {
+ if (locadevice.Type == DeviceType.ColorTemperatureLight)
+ {
+ //姝ゅ睘鎬ц〃鏄庡綋鍓嶈壊娓�
+ ((ColorTemperatureLight)locadevice).ColorTemperature = report.DeviceStatusReport.AttriBute[0].AttriButeData;
+ }
//宸茬粡鎺ユ敹鍒扮姸鎬�
locadevice.HadReadDeviceStatu = true;
}
@@ -510,11 +536,16 @@
strValue = strValue.Substring(0, strValue.Length - 1);
humidity = Convert.ToDecimal(strValue.Insert(strValue.Length - 1, "."));
}
- //娓╁害浼犳劅鍣�
+ //婀垮害浼犳劅鍣�
if (locadevice is TemperatureSensor)
{
((TemperatureSensor)locadevice).Humidity = humidity;
}
+ //鏂伴鐨勬箍搴︿紶鎰熷櫒
+ else if (locadevice is HumiditySensor)
+ {
+ ((HumiditySensor)locadevice).Humidity = humidity;
+ }
//PM2.5浼犳劅鍣�
else if (locadevice is PMSensor)
{
--
Gitblit v1.8.0