From c737673ababf40f25b2220888c7fe402a0880ab3 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 30 八月 2022 16:16:35 +0800
Subject: [PATCH] 增加网关上锁提示
---
Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs | 46 ++++++++++++++++++++++++++++++++++++----------
Crabtree/SmartHome/HDL/Operation/Packet.cs | 6 ++++++
2 files changed, 42 insertions(+), 10 deletions(-)
diff --git a/Crabtree/SmartHome/HDL/Operation/Packet.cs b/Crabtree/SmartHome/HDL/Operation/Packet.cs
old mode 100755
new mode 100644
index e52dc8a..49187e5
--- a/Crabtree/SmartHome/HDL/Operation/Packet.cs
+++ b/Crabtree/SmartHome/HDL/Operation/Packet.cs
@@ -49,6 +49,8 @@
public delegate void DelegateReceive (byte subnetID, byte deviceID, Command command, byte [] usefullBytes);
public static event DelegateReceive ReceiveEvent;
+
+ public static Action lockedAction;
/// <summary>
/// 鎺ユ敹鍒扮殑鎵�鏈夋暟鎹�
/// </summary>
@@ -59,6 +61,10 @@
public virtual void Manager ()
{
//瀵逛簬鎿嶄綔鏁版嵁搴撶殑鏃堕棿姣旇緝闀跨殑锛屽彲浠ュ垱寤哄彟涓�涓嚎绋嬪鐞�
+ string verString = System.Text.Encoding.ASCII.GetString (Bytes);
+ if (verString.Contains ("HDLMIRACLELocked")) {
+ lockedAction?.Invoke ();
+ }
if (!"HDLMIRACLE".Equals (System.Text.Encoding.ASCII.GetString (Bytes, 4, 10))) {
return;
}
diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs
index fb2a5fb..f240758 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs
@@ -18,8 +18,11 @@
/// </summary>
private bool finish = false;
+#if DEBUG
+ private string SeverAddr = "https://test-gz.hdlcontrol.com";
+#else
private string SeverAddr = "https://bahrain-gateway.hdlcontrol.com";
- //private string SeverAddr = "https://test-gz.hdlcontrol.com";
+#endif
FrameLayout contentView;
@@ -35,11 +38,27 @@
Button btnSave;
Button btnClose;
+ Alert sssAlert = new Alert ("", "Please press the PROG button on Gateway for 3 sec.", "Confirm");
+ Action tipLockedAction;
+
+ bool showedLockedTip = false;
public MigrationServer ()
{
- loading = new Loading ();
+ loading = new Loading ();
+ tipLockedAction = () => {
+ Application.RunOnMainThread (() => {
+ if (!showedLockedTip) {
+ sssAlert.Show ();
+ showedLockedTip = true;
+ sssAlert.ResultEventHandler += (sd, dd) => {
+ showedLockedTip = false;
+ };
+ }
+ });
+ };
+ Packet.lockedAction = tipLockedAction;
}
@@ -47,7 +66,7 @@
public void ShowDialog()
{
- #region 寮圭獥
+#region 寮圭獥
Dialog dialog = new Dialog ();
FrameLayout dialogBodyView = new FrameLayout () {
@@ -135,6 +154,8 @@
bottomView.AddChidren (btnClose);
btnClose.MouseUpEventHandler += (send2er, e2) => {
dialog.Close ();
+ Packet.lockedAction = null;
+
};
Button btnBottomLine = new Button () {
@@ -158,6 +179,7 @@
btnSave.MouseUpEventHandler += (sender2, e2) => {
if (finish) {
dialog.Close ();
+ Packet.lockedAction = null;
return;
}
@@ -165,10 +187,10 @@
- var moveAccontResult = Account2New ("12345678");
- var newHomeId = Home2New ();
- //杩佺Щ缃戝叧
- var moveGatewayResult = Gateway2New ("4D59383553502243", newHomeId, 0);
+ //var moveAccontResult = Account2New ("12345678");
+ //var newHomeId = Home2New ();
+ ////杩佺Щ缃戝叧
+ //var moveGatewayResult = Gateway2New ("4D59383553502243", newHomeId, 0);
#endif
if (etPwd.Text.Trim() == "") {
@@ -216,6 +238,7 @@
etPwd.Visible = false;
btnSave.MouseUpEventHandler = (sender2, e2) => {
dialog.Close ();
+ Packet.lockedAction = null;
};
} else {
@@ -229,13 +252,13 @@
//3.鎺ユ敹鍗囩骇鏂囦欢鑾峰彇璇锋眰
//杩佺Щ璐﹀彿
- #endregion
+#endregion
}
- #region 浜戠
+#region 浜戠
/// <summary>
/// 璐﹀彿鐧诲綍楠岃瘉
/// </summary>
@@ -506,7 +529,7 @@
- #endregion
+#endregion
/// <summary>
/// 妫�娴嬩竴绔彛淇℃伅
@@ -540,6 +563,9 @@
gateWayString = CommonPage.MyEncodingUTF8.GetString (IO.FileUtils.ReadFile (gatewayFileName));
common = Newtonsoft.Json.JsonConvert.DeserializeObject<GatewayBase> (gateWayString);
+ //bool
+ CommonPage.IsRemote = false;
+ Control.ControlBytesSendHasReturn (Command.ReadGateway, common.SubnetID, common.DeviceID, new byte [] { CommonPage.RandomHigh, CommonPage.RandomLow });
var bytes = Control.ControlBytesSendHasReturn (Command.readGatewayVision, common.SubnetID, common.DeviceID, new byte [] { });
if(bytes == null) {
--
Gitblit v1.8.0