| | |
| | | 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; |
| | |
| | | default: |
| | | break; |
| | | } |
| | | //System.Console.WriteLine ("接收到数据:" + receiveFlag); |
| | | System.Console.WriteLine ("接收到数据:" + receiveFlag); |
| | | |
| | | for (int i = 0; i < controlList.Count; i++) { |
| | | try { |
| | |
| | | //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> |
| | |
| | | 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; |
| | |
| | | /// </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; |
| | | |
| | |
| | | this.wait (); |
| | | } |
| | | } |
| | | bool isLocal = false; |
| | | } |
| | | } |