From 20f70e3446df19bf5d0faaae9f7bd58fd0fc4bcc Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期五, 04 八月 2023 12:06:51 +0800
Subject: [PATCH] 轮询备份
---
Crabtree/SmartHome/HDL/Operation/Control.cs | 61 +++++++++++++++++++++++++++++-
1 files changed, 58 insertions(+), 3 deletions(-)
diff --git a/Crabtree/SmartHome/HDL/Operation/Control.cs b/Crabtree/SmartHome/HDL/Operation/Control.cs
index c30e693..a0e7570 100644
--- a/Crabtree/SmartHome/HDL/Operation/Control.cs
+++ b/Crabtree/SmartHome/HDL/Operation/Control.cs
@@ -79,6 +79,14 @@
string receiveFlag = string.Format ("{0},{1},{2},", subnetID, deviceID, (int)command);
switch ((Command)command) {
+ case Command.enjoyUpgradeACK:
+ case Command.enjoyUpgrade2ACK:
+ case Command.readGatewayVisionACK:
+ case Command.InitializationGatewayACK:
+ case Command.WriteSecretKeyACK:
+ case Command.WriteHomeIdACK:
+ receiveFlag += "";
+ break;
case Command.ReadDoorLockSceneObjACK:
receiveFlag += string.Format ("{0},{1},{2},{3},{4}", usefulBytes [0], usefulBytes [1], usefulBytes [2], usefulBytes [3], usefulBytes [4]);
break;
@@ -271,7 +279,7 @@
default:
break;
}
- //System.Console.WriteLine ("鎺ユ敹鍒版暟鎹細" + receiveFlag);
+ System.Console.WriteLine ("鎺ユ敹鍒版暟鎹細" + receiveFlag);
for (int i = 0; i < controlList.Count; i++) {
try {
@@ -393,8 +401,43 @@
//MainPage.AddTip (Language.StringByID (SimpleControl.R.MyInternationalizationString.OperationFailed));
}
}
- }
+ return;
+ //if (Shared.SimpleControl.CommonPage.IsRemote && !isLocal) {
+ // System.Console.WriteLine ("杩滅▼鍙戦�佹暟鎹�:" + SendFlag);
+ // SmartHome.MqttCommon.MqttRemoteSend (Packet.Bytes);
+ // Packet.FlagDateTime = DateTime.Now;
+ // Packet.HaveSendCount--;
+ // //杩欓噷鏄噸鍙戜袱娆�
+ // while (Packet.HaveSendCount < 3) {
+ // if (Packet.FlagDateTime.AddMilliseconds (1000).Ticks <= System.DateTime.Now.Ticks) {
+ // SmartHome.MqttCommon.MqttRemoteSend (Packet.Bytes);
+ // System.Console.WriteLine ("閲嶅彂杩滅▼鍙戦�佹暟鎹�:" + SendFlag);
+ // Packet.FlagDateTime = DateTime.Now;
+ // Packet.HaveSendCount++;
+ // }
+ // System.Threading.Thread.Sleep (100);
+ // }鈥� // allDone.Set ();鈥� //} else {
+ // try {
+ // System.Console.WriteLine ("鍙戦�佹暟鎹�:" + SendFlag);
+ // BusSocket.AsyncBeginSend (Packet);
+ // Packet.HaveSendCount--;
+ // //杩欓噷鏄噸鍙戜袱娆�
+ // while (Packet.HaveSendCount < 3) {
+ // if (Packet.FlagDateTime.AddMilliseconds (1000).Ticks <= System.DateTime.Now.Ticks) {
+ // System.Console.WriteLine ("閲嶅彂鏁版嵁:" + SendFlag);
+ // BusSocket.AsyncBeginSend (Packet);
+ // }
+ // System.Threading.Thread.Sleep (100);
+ // }
+
+ // } catch (Exception ex) {
+ // Console.WriteLine ("managerSendCount:" + ex.ToString ());
+ // } finally {
+ // allDone.Set ();
+ // }
+ //}
+ }
/// <summary>
/// 褰撳墠鏁版嵁鍖�
/// </summary>
@@ -405,6 +448,16 @@
this.SendFlag = string.Format ("{0},{1},{2},", target.SubnetID, target.DeviceID, (int)target.Command + 1);
switch (target.Command) {
+ case Command.readGatewayVision:
+ case Command.enjoyUpgrade:
+ case Command.InitializationGateway:
+ case Command.WriteSecretKey:
+ case Command.WriteHomeId:
+ this.SendFlag += "";
+ break;
+ case Command.enjoyUpgrade2:
+ this.SendFlag = string.Format ("{0},{1},{2},", target.SubnetID, target.DeviceID, (int)target.Command - 1);
+ break;
case Command.ReadDoorLockSceneObj:
this.SendFlag += string.Format ("{0},{1},{2},{3},{4}", target.AddData [0], target.AddData [1], target.AddData [2], target.AddData [3], target.AddData [4]);
break;
@@ -586,8 +639,9 @@
/// </summary>
/// <param name="target">鍙戦�佸璞�</param>
/// <param name="sendCount">閲嶅彂娆℃暟</param>
- public void Send (Target target, SendCount sendCount, bool isWait)
+ public void Send (Target target, SendCount sendCount, bool isWait, bool needLocal = false)
{
+ isLocal = needLocal;
Packet = new Packet (target.SendBytes, target.IPEndPoint);
Packet.HaveSendCount = 3 - (int)sendCount;
@@ -597,5 +651,6 @@
this.wait ();
}
}
+ bool isLocal = false;
}
}
\ No newline at end of file
--
Gitblit v1.8.0