From c05a93ddb0714a310a31574aaf030e677d9a07b6 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期五, 06 一月 2023 17:43:31 +0800
Subject: [PATCH] 增加多网关绑定支持

---
 Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideSettingGateway.cs |   20 ++++++++++++++------
 1 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideSettingGateway.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideSettingGateway.cs
index 1fd7ee7..3d0bab8 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideSettingGateway.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideSettingGateway.cs
@@ -980,20 +980,28 @@
                 var result = Control.ControlBytesSendHasReturn (Command.ApplyServerKey, gatewayDeicve.SubnetID, gatewayDeicve.DeviceID, new byte [] { 0});
                 if (result != null && result.Length > 1) {
                     if (result [1] == 0xF5) {
-                        var secretKeyPack = HttpServerRequest.Current.ApplyDeviceSecret (gatewayDeicve.MAC);
+                        var secretKeyPack = HttpServerRequest.Current.ApplyDeviceSecret (gatewayDeicve.MAC.Replace(".",""));
                         if (secretKeyPack != null) {
                             if (secretKeyPack.Code == StateCode.SUCCESS) {
                                 var pack = Newtonsoft.Json.JsonConvert.DeserializeObject<DeviceSecret> (secretKeyPack.Data.ToString ());
                                 if (pack != null) {
                                     byte [] usefullBytes = new byte [17];
                                     usefullBytes [0] = 1;
-                                    byte [] ddd = CommonPage.MyEncodingGB2312.GetBytes (pack.deviceSecret);
+                                    byte [] ddd = System.Text.Encoding.ASCII.GetBytes (pack.deviceSecret);
                                     Array.Copy (ddd, 0, usefullBytes, 1, 16 < ddd.Length ? 16 : ddd.Length);
                                     var result2 = Control.ControlBytesSendHasReturn (Command.ApplyServerKey, gatewayDeicve.SubnetID, gatewayDeicve.DeviceID, usefullBytes);
-                                    var result3 = Control.ControlBytesSendHasReturn (Command.RestartTheGateway, gatewayDeicve.SubnetID, gatewayDeicve.DeviceID, new byte [] { });
-                                    Application.RunOnMainThread (() => {
-                                        new Alert ("", "The Internet access key was successfully written, and the gateway is being restarted!", Language.StringByID (R.MyInternationalizationString.Close)).Show ();
-                                    });
+
+                                    //byte [] restartArray = new byte [12];
+                                    //string [] macArray = gatewayDeicve.MAC.Split (".");
+                                    //for(int i = 0; i < macArray.Length; i++) {
+                                    //    restartArray [i + 2] = Convert.ToByte (macArray [i], 16);
+                                    //}
+                                    //restartArray [10] = gatewayDeicve.SubnetID;
+                                    //restartArray [11] = gatewayDeicve.DeviceID;
+                                    //var result3 = Control.ControlBytesSendHasReturn (Command.RestartTheGateway, gatewayDeicve.SubnetID, gatewayDeicve.DeviceID, restartArray);
+                                    //Application.RunOnMainThread (() => {
+                                    //    new Alert ("", "The Internet access key was successfully written, and the gateway is being restarted!", Language.StringByID (R.MyInternationalizationString.Close)).Show ();
+                                    //});
                                 }
                             }
                         } else {

--
Gitblit v1.8.0