From fa6bcb2e9907772480f99205f36ec2a1ce735a22 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期四, 09 一月 2020 14:11:07 +0800
Subject: [PATCH] 合并代码

---
 ZigbeeApp/Shared/Phone/ZigBee/Device/AC.cs |  629 +-------------------------------------------------------
 1 files changed, 14 insertions(+), 615 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/ZigBee/Device/AC.cs b/ZigbeeApp/Shared/Phone/ZigBee/Device/AC.cs
index b70e603..daed5b8 100755
--- a/ZigbeeApp/Shared/Phone/ZigBee/Device/AC.cs
+++ b/ZigbeeApp/Shared/Phone/ZigBee/Device/AC.cs
@@ -91,11 +91,15 @@
         /// </summary>
         public List<FanMode> fanModes = new List<FanMode> { };
         /// <summary>
-        /// <para>鑷畾涔夌┖璋冩敮鎸佺殑妯″紡(榛樿鍏ㄥ叧)</para>
+        /// <para>鑷畾涔夌┖璋冩敮鎸佺殑妯″紡(榛樿鍏ㄥ紑)</para>
         /// <para>鏁扮粍绱㈠紩 -> 0:鍒跺喎 1:鍒剁儹 2:閫侀 3:闄ゆ箍 4:鑷姩</para>
         /// <para>鍊� -> 1:浠h〃浣跨敤  0:浠h〃涓嶄娇鐢�</para>
         /// </summary>
-        public int[] listSupportMode = new int[5] { 0, 0, 0, 0, 0 };
+        public int[] listSupportMode = new int[5] { 1, 1, 1, 1, 1 };
+        /// <summary>
+        /// 鏄惁鍚敤鎽嗛鍔熻兘 false:涓嶄娇鐢ㄦ憜椋庡姛鑳� true:浣跨敤鎽嗛鍔熻兘
+        /// </summary>
+        public bool UseSwingFunction = true;
 
         /// <summary>
         /// 杩囨护缃戞竻娲楃姸鎬�
@@ -189,6 +193,14 @@
         public void ReadCleanStatu()
         {
             ReadAttri(Device.Cluster_ID.Thermostat, AttriButeId.CleanStatu);
+        }
+
+        /// <summary>
+        /// 鑾峰彇鏄惁鍚敤绌鸿皟鎽嗛妯″紡鐨勭姸鎬�(鎵撳紑 鎴栬�� 鍏抽棴)
+        /// </summary>
+        public void ReadUseSwingFunctionStatu()
+        {
+            ReadAttri(Device.Cluster_ID.FanControl, AttriButeId.UseAcSwingFunctionStatu);
         }
 
         /// <summary>
@@ -811,618 +823,5 @@
         {
             return await SetSystemModeAsync(acMode);
         }
-
-        #region 鍗囩骇绌鸿皟绗笁鏂规ā鍧楃殑鎺ュ彛
-
-        #region 璇诲彇IRACC妯″潡鍥轰欢鐗堟湰锛圓PP -> Zigbee MCU锛�
-        ///<summary >
-        ///璇诲彇IRACC妯″潡鍥轰欢鐗堟湰
-        /// <para>reserve:0-ff</para>
-        /// </summary>
-        public async System.Threading.Tasks.Task<ReadACFirewareVersionResponAllData> ReadACFirewareVersionAsync(string reserve = "01")
-        {
-            ReadACFirewareVersionResponAllData result = null;
-            if (Gateway == null)
-            {
-                result = new ReadACFirewareVersionResponAllData { errorMessageBase = "褰撳墠娌℃湁缃戝叧" };
-                return result;
-            }
-            return await System.Threading.Tasks.Task.Run(async () =>
-            {
-                Action<string, string> action = (topic, message) =>
-                {
-                    var gatewayID = topic.Split('/')[0];
-                    var jobject = Newtonsoft.Json.Linq.JObject.Parse(message);
-
-                    if (topic == gatewayID + "/" + "Error_Respon")
-                    {
-                        var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID };
-                        var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString());
-
-                        if (temp == null)
-                        {
-                            result = new ReadACFirewareVersionResponAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" };
-                        }
-
-                        else
-                        {
-                            result = new ReadACFirewareVersionResponAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) };
-                        }
-                    }
-                    if (topic == gatewayID + "/" + "ZbDataPassthrough")
-                    {
-                        var gatewayTemp = new ZbGateway() { DataID = jobject.Value<int>("Data_ID") };
-                        gatewayTemp.clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString());
-
-                        if (gatewayTemp.clientDataPassthroughResponseData == null)
-                        {
-                            result = new ReadACFirewareVersionResponAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" };
-                        }
-                        else
-                        {
-                            if (gatewayTemp.clientDataPassthroughResponseData?.PassData != null)
-                            {
-                                var data = gatewayTemp.clientDataPassthroughResponseData.PassData;
-                                var command = data[4].ToString() + data[5].ToString() + data[2].ToString() + data[3].ToString();
-                                if (command == "0259")
-                                {
-                                    var tempD = new ReadACFirewareVersionResponData();
-                                    tempD.Status = Convert.ToInt32(data[10].ToString() + data[11].ToString(), 16);
-                                    if (data.Length == 82)
-                                    {
-                                        var firewareString = data.Substring(12);
-                                        var aa = firewareString.Length;
-                                        firewareVersion = firewareString;
-                                        var bytes = new byte[firewareString.Length / 2];
-                                        for (int i = 0; i < bytes.Length; i++)
-                                        {
-                                            bytes[i] = Convert.ToByte(firewareString.Substring(i * 2, 2), 16);
-                                        }
-
-                                        var firewareVersionTemp = System.Text.Encoding.ASCII.GetString(bytes);
-                                        tempD.FirewareVersion = firewareVersionTemp.Replace('\0', ' ').Trim();
-                                    }
-                                    result = new ReadACFirewareVersionResponAllData { readACFirewareVersionResponData = tempD };
-                                    System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_command:0258_{topic}");
-                                }
-                            }
-                        }
-                    }
-                };
-
-                Gateway.Actions += action;
-                System.Console.WriteLine("ClientDataPassthrough_Actions 鍚姩" + System.DateTime.Now.ToString());
-
-                try
-                {
-                    var passData = ReadACFirewareVersionData(reserve);
-                    var jObject = new JObject { { "DeviceAddr", DeviceAddr }, { "Epoint", 200 }, { "Cluster_ID", 64513 }, { "Command", 0 } };
-                    var data = new JObject { { "PassData", passData } };
-                    jObject.Add("Data", data);
-                    Gateway.Send(("ClientDataPassthrough"), jObject.ToString());
-                }
-                catch { }
-
-                var dateTime = DateTime.Now;
-                while ((DateTime.Now - dateTime).TotalMilliseconds < WaitReceiveDataTime)
-                {
-                    await System.Threading.Tasks.Task.Delay(10);
-                    if (result != null)
-                    {
-                        break;
-                    }
-                }
-                if ((DateTime.Now - dateTime).TotalMilliseconds > WaitReceiveDataTime)
-                {
-                    result = new ReadACFirewareVersionResponAllData { errorMessageBase = " 鍥炲瓒呮椂锛岃閲嶆柊鎿嶄綔" };
-                }
-                Gateway.Actions -= action;
-                System.Console.WriteLine("ClientDataPassthrough_Actions 閫�鍑�" + System.DateTime.Now.ToString());
-
-                return result;
-            });
-        }
-
-        /// <summary>
-        /// 璇诲彇IRACC妯″潡鍥轰欢鐗堟湰
-        /// </summary>
-        string ReadACFirewareVersionData(string reserve)
-        {
-            string data = "";
-            string dataLength = "05";
-            string dataComand1 = "58";
-            string dataComand2 = "02";
-            string dataSerialNum = "01";
-            string addDataLength = "01";
-            string reserveData = reserve;
-
-            try
-            {
-                data = dataLength + dataComand1 + dataComand2 + dataSerialNum + addDataLength +
-                    reserveData;
-            }
-            catch { };
-
-            return data;
-        }
-
-        /// <summary>
-        /// IRACC妯″潡鍥轰欢鐗堟湰,缃戝叧鍙嶉淇℃伅
-        /// </summary>
-        public ReadACFirewareVersionResponAllData readACFirewareVersionResponAllData;
-        /// <summary>
-        /// IRACC妯″潡鍥轰欢鐗堟湰,缃戝叧鍙嶉淇℃伅
-        /// </summary>
-        [System.Serializable]
-        public class ReadACFirewareVersionResponAllData
-        {
-            /// <summary>
-            /// 閿欒淇℃伅
-            /// </summary>
-            public string errorMessageBase;
-            /// <summary>
-            /// 缃戝叧淇℃伅閿欒鍙嶉
-            /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para>
-            /// </summary>
-            public ErrorResponData errorResponData;
-            /// <summary>
-            /// IRACC妯″潡鍥轰欢鐗堟湰淇℃伅
-            /// </summary>
-            public ReadACFirewareVersionResponData readACFirewareVersionResponData;
-        }
-
-        /// <summary>
-        /// IRACC妯″潡鍥轰欢鐗堟湰鐨勬暟鎹�
-        /// </summary>
-        [System.Serializable]
-        public class ReadACFirewareVersionResponData
-        {
-            /// <summary>
-            /// 鐘舵��
-            ///<para>0--鎴愬姛</para>
-            ///<para>1--澶辫触</para>
-            ///<para>ff--鏃犳晥</para>
-            /// </summary>
-            public int Status;
-            /// <summary>
-            /// 鍥轰欢鐗堟湰
-            /// </summary>
-            public string FirewareVersion;
-        }
-        #endregion
-
-        #region 鍗囩骇IRACC妯″潡閫氱煡锛圓PP -> Zigbee MCU锛�
-        ///<summary >
-        ///鍗囩骇IRACC妯″潡閫氱煡
-        /// <para>firewareVer:鍥轰欢鐗堟湰</para>
-        /// <para>firewareSize:鍥轰欢澶у皬</para>
-        /// </summary>
-        public async System.Threading.Tasks.Task<ResponseAllData> UpggradeACNotificationAsync(string firewareVer, long firewareSize)
-        {
-            ResponseAllData result = null;
-            if (Gateway == null)
-            {
-                result = new ResponseAllData { errorMessageBase = "褰撳墠娌℃湁缃戝叧" };
-                return result;
-            }
-            return await System.Threading.Tasks.Task.Run(async () =>
-            {
-                Action<string, string> action = (topic, message) =>
-                {
-                    var gatewayID = topic.Split('/')[0];
-                    var jobject = Newtonsoft.Json.Linq.JObject.Parse(message);
-
-                    if (topic == gatewayID + "/" + "Error_Respon")
-                    {
-                        var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID };
-                        var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString());
-
-                        if (temp == null)
-                        {
-                            result = new ResponseAllData { errorMessageBase = "缃戝叧閿欒鍥炲锛屼笖鏁版嵁鏄┖" };
-                        }
-
-                        else
-                        {
-                            result = new ResponseAllData { errorResponData = temp, errorMessageBase = ErrorMess(temp.Error) };
-                        }
-                    }
-                    if (topic == gatewayID + "/" + "ZbDataPassthrough")
-                    {
-                        var gatewayTemp = new ZbGateway() { DataID = jobject.Value<int>("Data_ID") };
-                        gatewayTemp.clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString());
-
-                        if (gatewayTemp.clientDataPassthroughResponseData == null)
-                        {
-                            result = new ResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" };
-                        }
-                        else
-                        {
-                            if (gatewayTemp.clientDataPassthroughResponseData?.PassData != null)
-                            {
-                                var data = gatewayTemp.clientDataPassthroughResponseData.PassData;
-                                var command = data[4].ToString() + data[5].ToString() + data[2].ToString() + data[3].ToString();
-                                if (command == "025b")
-                                {
-                                    var tempD = new ResponseData();
-                                    if (data.Length == 12)
-                                    {
-                                        tempD.status = Convert.ToInt32(data[10].ToString() + data[11].ToString(), 16);
-                                    }
-                                    result = new ResponseAllData { responseData = tempD };
-                                    System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}");
-                                }
-                            }
-                        }
-                    }
-                };
-
-                Gateway.Actions += action;
-                System.Console.WriteLine("ClientDataPassthrough_Actions 鍚姩" + System.DateTime.Now.ToString());
-
-                try
-                {
-                    var passData = UpggradeACNotificationData(firewareVer, firewareSize);
-                    var jObject = new JObject { { "DeviceAddr", DeviceAddr }, { "Epoint", 200 }, { "Cluster_ID", 64513 }, { "Command", 0 } };
-                    var data = new JObject { { "PassData", passData } };
-                    jObject.Add("Data", data);
-                    Gateway.Send(("ClientDataPassthrough"), jObject.ToString());
-                }
-                catch { }
-
-                var dateTime = DateTime.Now;
-                while ((DateTime.Now - dateTime).TotalMilliseconds < WaitReceiveDataTime)
-                {
-                    await System.Threading.Tasks.Task.Delay(10);
-                    if (result != null)
-                    {
-                        break;
-                    }
-                }
-                if ((DateTime.Now - dateTime).TotalMilliseconds > WaitReceiveDataTime)
-                {
-                    result = new ResponseAllData { errorMessageBase = " 鍥炲瓒呮椂锛岃閲嶆柊鎿嶄綔" };
-                }
-                Gateway.Actions -= action;
-                System.Console.WriteLine("ClientDataPassthrough_Actions 閫�鍑�" + System.DateTime.Now.ToString());
-
-                return result;
-            });
-        }
-
-        private string firewareVersion = string.Empty;
-        /// <summary>
-        /// 鍗囩骇IRACC妯″潡閫氱煡杩斿洖
-        /// </summary>
-        string UpggradeACNotificationData(string firewareVer, long firewareSize)
-        {
-            string data = "";
-            string dataLength = "2C";
-            string dataComand1 = "5A";
-            string dataComand2 = "02";
-            string dataSerialNum = "01";
-            string addDataLength = "28";
-            string deviceUpgradeMethod = "01";
-            string firewareVersionData = "";
-            string firewareSizeData = "";
-
-            try
-            {
-                //鍥轰欢鐗堟湰
-                var firewareVerBytes = System.Text.Encoding.ASCII.GetBytes(firewareVer);
-                for (int i = 0; i < firewareVerBytes.Length; i++)
-                {
-                    var fw = Convert.ToString(firewareVerBytes[i], 16);
-                    if (fw.Length == 1)
-                    {
-                        fw = "0" + fw;
-                    }
-                    firewareVersionData += fw;
-                }
-
-                var aa = firewareVersionData.Length;
-                firewareVersionData = firewareVersionData.PadRight(70, '0');
-
-                //鍥轰欢灏哄
-                var tempFwSize = Convert.ToString(firewareSize, 16);
-                tempFwSize = tempFwSize.PadLeft(8, '0');
-                for (int i = 6; i >= 0; i = i - 2)
-                {
-                    firewareSizeData += tempFwSize.Substring(i, 2);
-                }
-
-                data = dataLength + dataComand1 + dataComand2 + dataSerialNum + addDataLength +
-                     deviceUpgradeMethod + firewareVersionData + firewareSizeData;
-
-            }
-            catch { };
-
-            return data;
-        }
-
-        /// <summary>
-        ///鍗囩骇IRACC妯″潡閫氱煡鍥炲
-        /// </summary>
-        public ResponseAllData keyColorDataResponseAllData;
-        [System.Serializable]
-        public class ResponseAllData
-        {
-            /// <summary>
-            /// 閿欒淇℃伅
-            /// </summary>
-            public string errorMessageBase;
-            /// <summary>
-            /// 缃戝叧淇℃伅閿欒鍙嶉
-            /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para>
-            /// </summary>
-            public ErrorResponData errorResponData;
-            /// <summary>
-            /// 鍗囩骇IRACC妯″潡閫氱煡淇℃伅
-            /// </summary>
-            public ResponseData responseData;
-        }
-
-        /// <summary>
-        /// 鍗囩骇IRACC妯″潡閫氱煡鍥炲锛圸igbee MCU -> APP锛�
-        /// </summary>
-        [System.Serializable]
-        public class ResponseData
-        {
-            /// <summary>
-            /// 鐘舵�佸��
-            /// <para>0--鐗堟湰鍙蜂笉涓�鑷达紙鍙互鍗囩骇</para>
-            /// <para>1--鐗堟湰鍙蜂竴鑷达紙涓嶇敤鍗囩骇</para>
-            /// <para>2--棰勭暀锛堟殏鏃朵笉鐢ㄥ埌</para>
-            /// <para>ff--鏃犳晥锛堟殏鏃朵笉鐢ㄥ埌锛�</para>
-            /// </summary>
-            public int status = -1;
-        }
-        #endregion
-
-        #region 璁惧璇锋眰APP鑾峰彇鍗囩骇鏁版嵁 锛圸igbee MCU -> APP,涓诲姩涓婃姤锛�
-        /// <summary>
-        ///璁惧璇锋眰APP鑾峰彇鍗囩骇鏁版嵁锛圸igbee MCU -> APP,涓诲姩涓婃姤锛�
-        /// </summary>
-        [System.Serializable]
-        public class DeviceRequestUpgradeResponseData
-        {
-            /// <summary>
-            /// 鏁版嵁鍋忕Щ閲忥紝姣忎釜鍒嗗寘鍋忕Щ閲�+锛�1-43锛�
-            /// </summary>
-            public string offset = string.Empty;
-            /// <summary>
-            /// 鏁版嵁闀垮害len
-            /// </summary>
-            public int dataLength = -1;
-        }
-        #endregion
-
-        #region 鍙戝崌绾ф暟鎹埌璁惧锛圓PP -> Zigbee MCU锛�
-        ///<summary >
-        ///璇诲彇IRACC妯″潡鍥轰欢鐗堟湰
-        /// <para>reserve:0-ff</para>
-        /// </summary>
-        public async void UpgradeAsync(SendUpgradeData upgradeData)
-        {
-            if (Gateway == null)
-            {
-                return;
-            }
-            Action<string, string> action = (topic, message) => { };
-            Gateway.Actions += action;
-            System.Console.WriteLine("ClientDataPassthrough_Actions 鍚姩" + System.DateTime.Now.ToString());
-
-            try
-            {
-                string passData = "";
-                if (upgradeData != null)
-                {
-                    passData = SendUpgrade(upgradeData);
-                }
-
-                var jObject = new JObject { { "DeviceAddr", DeviceAddr }, { "Epoint", 200 }, { "Cluster_ID", 64513 }, { "Command", 0 } };
-                var data = new JObject { { "PassData", passData } };
-                jObject.Add("Data", data);
-                Gateway.Send(("ClientDataPassthrough"), jObject.ToString());
-            }
-            catch { }
-
-            Gateway.Actions -= action;
-            System.Console.WriteLine("ClientDataPassthrough_Actions 閫�鍑�" + System.DateTime.Now.ToString());
-        }
-
-        /// <summary>
-        /// 鍙戝崌绾ф暟鎹埌璁惧
-        /// </summary>
-        string SendUpgrade(SendUpgradeData upgradeData)
-        {
-            string data = "";
-            string dataLength = "";
-            string dataComand1 = "5D";
-            string dataComand2 = "02";
-            string dataSerialNum = "01";
-            string addDataLength = "";
-
-            string status = "";
-            string offset = "";
-            string upgradeDataLength = "";
-            string dataString = "";
-
-            try
-            {
-                var len = 4 + 1 + 4 + 1 + upgradeData.dataLength;
-                dataLength = Convert.ToString(len, 16);
-                if (dataLength.Length == 1)
-                {
-                    dataLength = "0" + dataLength;
-                }
-
-                addDataLength = Convert.ToString(6 + upgradeData.dataLength, 16);
-                if (addDataLength.Length == 1)
-                {
-                    addDataLength = "0" + addDataLength;
-                }
-
-                if (upgradeData.status == 0)
-                {
-                    status = "00";
-                }
-                else if (upgradeData.status == 1)
-                {
-                    status = "01";
-                }
-                else
-                {
-                    status = "ff";
-                }
-
-
-                offset = upgradeData.offset;
-
-                var dl = Convert.ToString(upgradeData.dataLength, 16);
-                if (dl.Length == 1)
-                {
-                    upgradeDataLength = "0" + dl;
-                }
-                else
-                {
-                    upgradeDataLength = dl;
-                }
-
-                for (int i = 0; i < upgradeData.databytes.Length; i++)
-                {
-                    var dataB = Convert.ToString(upgradeData.databytes[i], 16);鈥�                    if (dataB.Length == 1)鈥�                    {鈥�                        dataB = "0" + dataB;鈥�                    }鈥�                    dataString += dataB;
-                }
-
-                data = dataLength + dataComand1 + dataComand2 + dataSerialNum + addDataLength +
-                status + offset + upgradeDataLength + dataString;
-            }
-            catch { };
-
-            return data;
-        }
-
-        /// <summary>
-        /// 鍙戦�佸崌绾ф暟鎹埌璁惧锛圓PP -> Zigbee MCU锛�
-        /// </summary>
-        [System.Serializable]
-        public class SendUpgradeData
-        {
-            /// <summary>
-            /// 0--鎴愬姛
-            ///<para>1--澶辫触</para>
-            ///<para>ff--鏃犳晥</para>
-            /// </summary>
-            public int status = 0;
-            /// <summary>
-            /// 鏁版嵁鍋忕Щ閲忥紝姣忎釜鍒嗗寘鍋忕Щ閲�+锛�1-43锛�
-            /// </summary>
-            public string offset;
-            /// <summary>
-            /// 鏁版嵁闀垮害len
-            /// </summary>
-            public int dataLength = -1;
-
-            /// <summary>
-            /// 鍒嗗寘鏁版嵁
-            /// </summary>
-            public byte[] databytes;
-        }
-        #endregion
-
-        #region 鍒嗗寘缁撴潫锛圸igbee MCU -> APP,涓诲姩涓婃姤锛�
-        /// <summary>
-        /// 璁惧璇锋眰APP鑾峰彇鍒嗗寘缁撴潫鍛戒护锛圸igbee MCU -> APP锛�
-        /// </summary>
-        [System.Serializable]
-        public class DeviceRequestFinishResponseData
-        {
-            /// <summary>
-            /// 0-ff
-            /// </summary>
-            public int reserve = -1;
-        }
-        #endregion
-
-        #region 鍒嗗寘缁撴潫锛圓PP -> Zigbee MCU锛�
-        ///<summary >
-        ///璇诲彇IRACC妯″潡鍥轰欢鐗堟湰
-        /// <para>status:0--鎴愬姛;1--澶辫触;ff--鏃犳晥 .</para>
-        /// </summary>
-        public async void SendFinishAsync(int status)
-        {
-            if (Gateway == null)
-            {
-                return;
-            }
-            Action<string, string> action = (topic, message) => { };
-            Gateway.Actions += action;
-            System.Console.WriteLine("ClientDataPassthrough_Actions 鍚姩" + System.DateTime.Now.ToString());
-
-            try
-            {
-                var passData = SendFinishDataString(status);
-                var jObject = new JObject { { "DeviceAddr", DeviceAddr }, { "Epoint", 200 }, { "Cluster_ID", 64513 }, { "Command", 0 } };
-                var data = new JObject { { "PassData", passData } };
-                jObject.Add("Data", data);
-                Gateway.Send(("ClientDataPassthrough"), jObject.ToString());
-            }
-            catch { }
-
-            Gateway.Actions -= action;
-            System.Console.WriteLine("ClientDataPassthrough_Actions 閫�鍑�" + System.DateTime.Now.ToString());
-        }
-
-        /// <summary>
-        /// 鍙戝崌绾ф暟鎹埌璁惧
-        /// </summary>
-        string SendFinishDataString(int status)
-        {
-            string data = "";
-            string dataLength = "05";
-            string dataComand1 = "5F";
-            string dataComand2 = "02";
-            string dataSerialNum = "01";
-            string addDataLength = "01";
-            string statusString = "";
-            try
-            {
-                if (status == 0)
-                {
-                    statusString = "00";
-                }
-                else if (status == 1)
-                {
-                    statusString = "01";
-                }
-                else
-                {
-                    statusString = "ff";
-                }
-                data = dataLength + dataComand1 + dataComand2 + dataSerialNum + addDataLength +
-                statusString;
-            }
-            catch { };
-
-            return data;
-        }
-
-        /// <summary>
-        /// 鍒嗗寘缁撴潫杩斿洖锛圓PP -> Zigbee MCU
-        /// </summary>
-        //[System.Serializable]
-        public class SendFinishData
-        {
-            /// <summary>
-            /// 鐘舵�侊細鎴愬姛/澶辫触
-            ///<para>0--鎴愬姛<<para>
-            ///<para>1--澶辫触<<para>
-            ///<para>ff--鏃犳晥<<para>
-            /// </summary>
-            public int status = -1;
-        }
-
-        #endregion
-        #endregion
     }
 }

--
Gitblit v1.8.0