From 9ebd6edb9beddf1a6881b2ca924ed43bf5cedfbe Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期五, 30 十二月 2022 11:24:03 +0800
Subject: [PATCH] 1

---
 SmartHome/UI/SimpleControl/CommonPage.cs |   88 ++++++++++++++++++++------------------------
 1 files changed, 40 insertions(+), 48 deletions(-)

diff --git a/SmartHome/UI/SimpleControl/CommonPage.cs b/SmartHome/UI/SimpleControl/CommonPage.cs
index eb54f2d..f422a89 100644
--- a/SmartHome/UI/SimpleControl/CommonPage.cs
+++ b/SmartHome/UI/SimpleControl/CommonPage.cs
@@ -10,13 +10,8 @@
 {
     public static class CommonPage
     {
-        //public static AirQuality AirQuality;
-        //public static Action RefreshAir;           
         public static bool IsRemote = false;
-        //public static bool FindGateway = false;
-        public static bool FindGatewayChilren = false;
         public static string FindGatewayChilrenIPAddress = new Net.NetWiFi ().BroadcastIpAddress.ToString ();
-        public static bool LocalPhoneFindDevice = false;
         public static int searchTotal = 0;
         public static int newDevice = 0;
         private static string ip= "115.29.251.24";
@@ -81,63 +76,55 @@
             36865,9600,19600,
             1099,1163,3501,3502,3503,3504,3505,3506,
             3508,3509,3516,3517,3521,3527,3528,3530,3532,3533,3534,3536,3538,
-            3539,3541,3543,3550,3559,3600,3601,3605,4599,4601,4602,
+            3539,3541,3543,3550,3559,3600,3601,3605,4601,4602,
             30001,63479,65282,65532,65534,
         };
 
-        static void Packet_ReceiveEvent (byte subnetID, byte deviceID, Command command, byte [] usefullBytes,int deviceTypeNumber)
+        static void Packet_ReceiveEvent (byte subnetID, byte deviceID, Command command, byte [] usefullBytes,int deviceTypeNumber, System.Net.IPEndPoint remoteIp)
         {
             try {
                 List<byte> ButtonBkeyModelList = new List<byte> ();
                 switch (command) {
                 case Command.ReadRemarkACK:
                     if(supportList.Contains(deviceTypeNumber)) {
-                        lock (GateWayList) {
-                            if (GateWayList.Find ((l) => { return l.SubnetID == subnetID && l.DeviceID == deviceID; }) != null) {
-                                return;
+                        //if (IsRemote) {
+                        //    if (remoteIp.ToString().Contains("118.31.3.103") || remoteIp.ToString ().Contains ("157.175.231.123"))
+                        //    lock (GateWayList_NewServer) {
+                        //        if (GateWayList_NewServer.Find ((l) => { return l.SubnetID == subnetID && l.DeviceID == deviceID; }) != null) {
+                        //            return;
+                        //        }
+                        //        DeviceType deviceType = (DeviceType)(usefullBytes [2] * 256 + usefullBytes [3]);
+                        //        GatewayBase gatewayBase = new GatewayBase ();
+                        //        gatewayBase.DeviceTypeNumber = deviceTypeNumber;
+                        //        gatewayBase.SubnetID = subnetID;
+                        //        gatewayBase.DeviceID = deviceID;
+                        //        gatewayBase.Type = deviceType;
+                        //        gatewayBase.Name = MyEncodingGB2312.GetString (usefullBytes, 0, 20).Trim ('\0');//=============
+                        //        GateWayList_NewServer.Add (gatewayBase);
+                        //        Console.WriteLine ($"name:{gatewayBase.Name}++{deviceTypeNumber}");
+                        //    }
+                        //} else
+                        {
+                            lock (GateWayList) {
+                                if (GateWayList.Find ((l) => { return l.SubnetID == subnetID && l.DeviceID == deviceID; }) != null) {
+                                    return;
+                                }
+                                DeviceType deviceType = (DeviceType)(usefullBytes [2] * 256 + usefullBytes [3]);
+                                GatewayBase gatewayBase = new GatewayBase ();
+                                gatewayBase.DeviceTypeNumber = deviceTypeNumber;
+                                gatewayBase.SubnetID = subnetID;
+                                gatewayBase.DeviceID = deviceID;
+                                gatewayBase.Type = deviceType;
+                                gatewayBase.Name = MyEncodingGB2312.GetString (usefullBytes, 0, 20).Trim ('\0');//=============
+                                var name = Encoding.Default.GetString (usefullBytes, 0, 20).Trim ('\0');
+                                GateWayList.Add (gatewayBase);
+
+                                Console.WriteLine ($"name:{gatewayBase.Name}++{deviceTypeNumber}");
                             }
-                            DeviceType deviceType = (DeviceType)(usefullBytes [2] * 256 + usefullBytes [3]);
-                            GatewayBase gatewayBase = new GatewayBase ();
-                            gatewayBase.DeviceTypeNumber = deviceTypeNumber;
-                            gatewayBase.SubnetID = subnetID;
-                            gatewayBase.DeviceID = deviceID;
-                            gatewayBase.Type = deviceType;
-                            gatewayBase.Name = MyEncodingGB2312.GetString (usefullBytes, 0, 20).Trim ('\0');//=============
-                            GateWayList.Add (gatewayBase);
                         }
                     }
                     break;
 
-                //璇诲彇缃戝叧璁惧鍥炲
-                case Command.ReadGatewayACK:
-                    if (usefullBytes [0] != RandomHigh | usefullBytes [1] != RandomLow) {
-                        return;
-                    }
-                    lock (GateWayList) {
-                        if (GateWayList.Find ((l) => { return l.SubnetID == subnetID && l.DeviceID == deviceID; }) != null) {
-                            return;
-                        }
-                        DeviceType deviceType = (DeviceType)(usefullBytes [2] * 256 + usefullBytes [3]);
-                        if (usefullBytes [2] == 254 && usefullBytes [3] < 8) {
-                            GatewayBase gatewayBase = new GatewayBase ();
-                            gatewayBase.DeviceTypeNumber = deviceTypeNumber;
-                            gatewayBase.SubnetID = subnetID;
-                            gatewayBase.DeviceID = deviceID; gatewayBase.Type = deviceType;
-                            gatewayBase.LoopID = usefullBytes [4];
-                            gatewayBase.MAC = byteToHex16 (usefullBytes [5]) + "." + byteToHex16 (usefullBytes [6]) + "." + byteToHex16 (usefullBytes [7]) + "." + byteToHex16 (usefullBytes [8]) + "." + byteToHex16 (usefullBytes [9]) + "." + byteToHex16 (usefullBytes [10]) + "." + byteToHex16 (usefullBytes [11]) + "." + byteToHex16 (usefullBytes [12]);
-                            gatewayBase.Name = MyEncodingGB2312.GetString (usefullBytes, 13, 20).Trim ('\0');//=============
-                            gatewayBase.IPAddress = usefullBytes [33] + "." + usefullBytes [34] + "." + usefullBytes [35] + "." + usefullBytes [36];
-                            gatewayBase.RouteIPAddress = usefullBytes [37] + "." + usefullBytes [38] + "." + usefullBytes [39] + "." + usefullBytes [40];
-                            gatewayBase.IPMAC = usefullBytes [41] + "." + usefullBytes [42] + "." + usefullBytes [43] + "." + usefullBytes [44] + "." + usefullBytes [45] + "." + usefullBytes [46];
-                            gatewayBase.SubnetMask = usefullBytes [47] + "." + usefullBytes [48] + "." + usefullBytes [49] + "." + usefullBytes [50];
-                            gatewayBase.DHCP = usefullBytes [51] == 0 ? false : true;
-                            GateWayList.Add (gatewayBase);
-                            if (gatewayBase.Name == "") {
-                                gatewayBase.Name = gatewayBase.CommonLoopID.ToString ();
-                            }
-                        }
-                    }
-                    break;
                 case Command.WriteWirelessPanelButtonKey:
                     //01 01 59(+30) 02 0D 03 64 00 01 
                     break;
@@ -187,5 +174,10 @@
         /// </summary>
         public static List<GatewayBase> GateWayList = new List<GatewayBase> ();
 
+
+        public static List<GatewayBase> GateWayList_NewServer = new List<GatewayBase> ();
+
+
+
     }
 }
\ No newline at end of file

--
Gitblit v1.8.0