From f6b3446e3a4afc0f65814be87aaa0f5ea0c62d69 Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期一, 28 十月 2019 10:50:30 +0800
Subject: [PATCH] 2019.10.28

---
 ZigbeeApp/Shared/Phone/ZigBee/Device/Scene.cs |  128 ++++++++++++++++++++++++++++++------------
 1 files changed, 90 insertions(+), 38 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/ZigBee/Device/Scene.cs b/ZigbeeApp/Shared/Phone/ZigBee/Device/Scene.cs
old mode 100755
new mode 100644
index 8ae134b..d56b3e2
--- a/ZigbeeApp/Shared/Phone/ZigBee/Device/Scene.cs
+++ b/ZigbeeApp/Shared/Phone/ZigBee/Device/Scene.cs
@@ -442,15 +442,32 @@
         public class DeviceListData
         {
             /// <summary>
-            ///寤舵椂鎵ц鏃堕棿锛屽崟浣嶇銆�
-            /// </summary>
-            public int DelayTime;
-            /// <summary>
             /// 鎴愬憳绫诲瀷
             ///<para>0锛氳澶囨垚鍛�</para>
             ///<para>1锛氬満鏅垚鍛�</para>
+            ///<para>2锛氬欢鏃舵垚鍛�</para>
             /// </summary>
             public int Type;
+
+            /// <summary>
+            /// 璁惧mac鍦板潃 锛�
+            ///<para>褰揟ype=0鏃跺瓨鍦ㄣ��</para>
+            /// </summary>
+            public string DeviceAddr;
+            /// <summary>
+            /// 璁惧绔彛鍙�
+            ///<para>褰揟ype=0鏃跺瓨鍦ㄣ��</para>
+            /// </summary>
+            public int Epoint;
+            /// <summary>
+            /// 璁惧鍚嶇О
+            /// </summary>
+            public string DeviceName;
+            /// <summary>
+            /// 璁惧鍒楄〃
+            /// 褰揟ype=0鏃跺瓨鍦�
+            /// </summary>
+            public List<TaskListInfo> TaskList = new List<TaskListInfo>();
 
             /// <summary>
             /// 鍦烘櫙鎴愬憳鐨勫満鏅痠d
@@ -459,26 +476,17 @@
             public int ElseScenesId;
 
             /// <summary>
-            /// 璁惧mac鍦板潃 锛�
-            ///<para>褰揟ype=0鏃跺瓨鍦ㄣ��</para>
+            ///寤舵椂鎵ц鏃堕棿锛屽崟浣嶇銆�
             /// </summary>
-            public string DeviceAddr;
-
+            public int DelayTime;
             /// <summary>
-            /// 璁惧绔彛鍙�
-            ///<para>褰揟ype=0鏃跺瓨鍦ㄣ��</para>
+            /// 鍦烘櫙鍔ㄤ綔搴忓彿锛岃〃绀虹鍑犱釜鍔ㄤ綔
             /// </summary>
-            public int Epoint;
+            public int MemberNumber;
 
-            /// <summary>
-            /// 璁惧鍚嶇О
-            /// </summary>
-            public string DeviceName;
 
-            /// <summary>
-            /// 璁惧鍒楄〃
-            /// </summary>
-            public List<TaskListInfo> TaskList = new List<TaskListInfo>();
+
+            
 
         }
         /// <summary>
@@ -975,7 +983,7 @@
                 try{
                     if (sceneMemberData != null)
                     {
-                        var jObject = new JObject { { "Cluster_ID", 0 }, { "Command", 810 } };
+                        var jObject = new JObject { { "Cluster_ID", 0 }, { "Command", 820 } };
                         var data = new JObject { };
                         if (sceneMemberData.Type == 0)
                         {
@@ -992,20 +1000,31 @@
 
                             data = new JObject {
                          { "ScenesId",sceneMemberData.ScenesId},
-                         { "DelayTime", sceneMemberData.DelayTime} ,
                          { "Type", sceneMemberData.Type} ,
                          { "DeviceAddr",sceneMemberData.DeviceAddr} ,
                          { "Epoint", sceneMemberData.Epoint} ,
-                         { "TaskList", taskList }
+                         { "TaskList", taskList },
+                         { "DelayTime", sceneMemberData.DelayTime} ,
+                         { "MemberNumber",sceneMemberData.MemberNumber},
                         };
                         }
                         else if (sceneMemberData.Type == 1)
                         {
                             data = new JObject {
                          { "ScenesId",sceneMemberData.ScenesId},
-                         { "DelayTime", sceneMemberData.DelayTime} ,
                          { "Type", sceneMemberData.Type} ,
-                         { "ElseScenesId", sceneMemberData.ElseScenesId }
+                         { "ElseScenesId", sceneMemberData.ElseScenesId },
+                         { "DelayTime", sceneMemberData.DelayTime} ,
+                         { "MemberNumber",sceneMemberData.MemberNumber},
+                        };
+                        }
+                        else if (sceneMemberData.Type == 2)
+                        {
+                            data = new JObject {
+                          { "Type", sceneMemberData.Type} ,
+                         { "ScenesId",sceneMemberData.ScenesId},
+                         { "DelayTime", sceneMemberData.DelayTime} ,
+                         { "MemberNumber",sceneMemberData.MemberNumber},
                         };
                         }
 
@@ -1135,16 +1154,23 @@
             public int ScenesId;
 
             /// <summary>
-            /// 寤舵椂鎵ц鏃堕棿锛屽崟浣嶇
-            /// </summary>
-            public int DelayTime;
-
-            /// <summary>
             /// 娣诲姞鎴愬憳绫诲瀷
             ///<para>0锛氳妭鐐硅澶�</para>
             ///<para>1锛氬叾浠栧満鏅�</para>
+            ///<para>2锛氬欢鏃剁被鍨�</para>
             /// </summary>
             public int Type;
+
+            /// <summary>
+            /// 寤舵椂鎵ц鏃堕棿锛屽崟浣嶇
+            /// 褰揟ype=2鏃跺瓨鍦�
+            /// </summary>
+            public int DelayTime;
+            /// <summary>
+            /// 寤舵椂鎵ц搴忓彿锛岃〃绀哄欢鏃剁储寮�
+            ///褰揟ype=2鏃跺瓨鍦�
+            /// </summary>
+            public int MemberNumber;
 
             /// <summary>
             /// 浣滀负鎴愬憳鐨勫叾浠栧満鏅痠d銆�
@@ -1157,13 +1183,11 @@
             /// <para>Type=0鏃跺瓨鍦�</para>
             /// </summary>
             public string DeviceAddr;
-
             /// <summary>
             /// 璁惧绔彛鍙� 
             /// <para>Type=0鏃跺瓨鍦�</para>
             /// </summary>
             public int Epoint;
-
             /// <summary>
             /// 璁惧鍒楄〃
             /// <para>Type=0鏃跺瓨鍦�</para>
@@ -1241,19 +1265,33 @@
                                 var dInfo = new JObject{
                             { "Type", deviceInfo.Type},
                             { "DeviceAddr",deviceInfo.DeviceAddr},
-                            { "Epoint",deviceInfo.Epoint}
+                            { "Epoint",deviceInfo.Epoint},
+                            { "DelayTime", deviceInfo.DelayTime} ,
+                            { "MemberNumber",deviceInfo.MemberNumber},
                             };
                                 deviceList.Add(dInfo);
                             }
-                            else
+                            else if (deviceInfo.Type == 1)
                             {
                                 var dInfo = new JObject{
                             { "Type", deviceInfo.Type},
-                            { "ElseScenesId",deviceInfo.ElseScenesId}
+                            { "ElseScenesId",deviceInfo.ElseScenesId},
+                            { "DelayTime", deviceInfo.DelayTime} ,
+                            { "MemberNumber",deviceInfo.MemberNumber},
                             };
                                 deviceList.Add(dInfo);
                             }
-                        }
+                            else if (deviceInfo.Type == 2)
+                            {
+                                var dInfo = new JObject{
+                            { "Type", deviceInfo.Type},
+                           { "DelayTime", deviceInfo.DelayTime} ,
+                           { "MemberNumber",deviceInfo.MemberNumber},
+                            };
+                                deviceList.Add(dInfo);
+                            }
+
+                            }
 
                         var data = new JObject {
                     {"ScenesId",sceneRemoveMemberData.ScenesId},
@@ -1316,6 +1354,7 @@
             /// 绉婚櫎鎴愬憳绫诲瀷
             ///<para >0锛氳澶囨垚鍛�</para>
             ///<para >1锛氬満鏅垚鍛�</para>
+            ///<para >2锛氬欢鏃剁被鍨�</para>
             /// </summary>
             public int Type;
 
@@ -1326,14 +1365,27 @@
             public string DeviceAddr;
 
             /// <summary>
-            /// 璁惧绔彛鍙� 褰揟ype=0鏃跺瓨鍦�
+            /// 璁惧绔彛鍙�
+            /// 褰揟ype=0鏃跺瓨鍦�
             /// </summary>
             public int Epoint;
 
             /// <summary>
-            /// 鍦烘櫙鎴愬憳id锛屽綋Type=1鏃跺瓨鍦�
+            /// 鍦烘櫙鎴愬憳id
+            /// 褰揟ype=1鏃跺瓨鍦�
             /// </summary>
             public int ElseScenesId;
+
+            /// <summary>
+            /// 寤舵椂鎵ц鏃堕棿锛屽崟浣嶇
+            /// 褰揟ype=2鏃跺瓨鍦�
+            /// </summary>
+            public int DelayTime;
+            /// <summary>
+            /// 寤舵椂鎵ц搴忓彿锛岃〃绀哄欢鏃剁储寮�
+            ///褰揟ype=2鏃跺瓨鍦�
+            /// </summary>
+            public int MemberNumber;
         }
 
         /// <summary>
@@ -1759,7 +1811,7 @@
                 mainGateway.Actions += action;
                 System.Console.WriteLine("Scene/Open_Actions 鍚姩" + "_" + mainGateway.getGatewayBaseInfo.gwID + System.DateTime.Now.ToString());
                 try{
-                    var jObject = new JObject { { "Cluster_ID", 0 }, { "Command", 808 } };
+                    var jObject = new JObject { { "Cluster_ID", 0 }, { "Command", 821 } };
                     var data = new JObject { { "ScenesId", ScenesId }, { "DelayTime", delayTime } };
                     jObject.Add("Data", data);
                     mainGateway.Send(("Scene/Open"),System.Text.Encoding.UTF8.GetBytes(jObject.ToString()));

--
Gitblit v1.8.0