Crabtree/SmartHome/HDL/Operation/Control.cs
@@ -405,20 +405,30 @@
                System.Console.WriteLine ("远程发送数据:" + SendFlag);
                SmartHome.MqttCommon.MqttRemoteSend (Packet.Bytes);
                Packet.FlagDateTime = DateTime.Now;
                Packet.HaveSendCount++;
                Packet.HaveSendCount--;
                //这里是重发两次
                while (Packet.HaveSendCount < 3) {
                    if (Packet.HaveSendCount < 2) {
                    if (Packet.FlagDateTime.AddMilliseconds (2000).Ticks <= System.DateTime.Now.Ticks) {
                        SmartHome.MqttCommon.MqttRemoteSend (Packet.Bytes);
                        System.Console.WriteLine ("重发远程发送数据:" + SendFlag);
                        Packet.FlagDateTime = DateTime.Now;
                        Packet.HaveSendCount++;
                    }
                    } else {
                        if (Packet.FlagDateTime.AddMilliseconds (5000).Ticks <= System.DateTime.Now.Ticks) {
                            System.Console.WriteLine ("远程发送数据: 等待5s超时");
                            Packet.FlagDateTime = DateTime.Now;
                            Packet.HaveSendCount++;
                        }
                    }
                    System.Threading.Thread.Sleep (100);
                }
                allDone.Set ();
            } else {
                try {
                    System.Console.WriteLine ("发送数据:" + SendFlag);
                    BusSocket.AsyncBeginSend (Packet);
                    Packet.FlagDateTime = DateTime.Now;
                    Packet.HaveSendCount--;
                    //这里是重发两次