From e71c57108e6dd407c2c6f0361f68150f2ff9aed5 Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期三, 15 十二月 2021 13:41:16 +0800 Subject: [PATCH] 版本备份 --- HDL_ON/DAL/DriverLayer/Control_Udp.cs | 57 ++++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 38 insertions(+), 19 deletions(-) diff --git a/HDL_ON/DAL/DriverLayer/Control_Udp.cs b/HDL_ON/DAL/DriverLayer/Control_Udp.cs index e5fb38e..6991ad8 100644 --- a/HDL_ON/DAL/DriverLayer/Control_Udp.cs +++ b/HDL_ON/DAL/DriverLayer/Control_Udp.cs @@ -978,7 +978,7 @@ UdpSocket._BusSocket.AsyncBeginSend(packet); controlLostCount++; } - System.Threading.Thread.Sleep(300); + System.Threading.Thread.Sleep(1000); } } catch (Exception ex) @@ -1078,7 +1078,7 @@ /// <summary> /// 璇诲彇缃戝叧IP /// </summary> - public void SearchLocalGateway() + public void SearchLocalGateway(bool broadcast = false) { try { @@ -1086,23 +1086,21 @@ var bodyString = JsonConvert.SerializeObject(sendJob); var sendBytes = Control.Ins.ConvertSendBodyData(CommunicationTopic.SearchLoaclGateway, bodyString, false); - //缁勬挱鍙戦�� - packet = new Packet(sendBytes, new System.Net.IPEndPoint(System.Net.IPAddress.Parse("239.0.168.188"), 8585)); + if (broadcast) + { + //骞挎挱 + packet = new Packet(sendBytes, new System.Net.IPEndPoint(System.Net.IPAddress.Parse("255.255.255.255"), 8585)); + } + else + { + //缁勬挱鍙戦�� + packet = new Packet(sendBytes, new System.Net.IPEndPoint(System.Net.IPAddress.Parse("239.0.168.188"), 8585)); + } packet.HaveSendCount = 4; System.Threading.Thread thread = new System.Threading.Thread(new System.Threading.ParameterizedThreadStart(managerSendCount)); thread.IsBackground = true; thread.Start(packet); //wait();涓嶉渶瑕佺瓑寰� - - - - - //hjSocket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); - //hjSocket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Broadcast, true); - //EndPoint ipep = new IPEndPoint(IPAddress.Parse(CsConst.myLocalIP), HDLUDP.UDPPort); - //hjSocket.Bind(ipep); - - } catch (Exception ex) @@ -1111,21 +1109,42 @@ } } + /// <summary> + /// 璇诲彇缃戝叧IP + /// </summary> + public void SendLinkCommand(string topic,string bodyString) + { + try + { + var sendBytes = Control.Ins.ConvertSendBodyData(topic, bodyString, false); + //缁勬挱鍙戦�� + packet = new Packet(sendBytes, new System.Net.IPEndPoint(System.Net.IPAddress.Parse("239.0.168.188"), 8585)); + packet.HaveSendCount = 4; + System.Threading.Thread thread = new System.Threading.Thread(new System.Threading.ParameterizedThreadStart(managerSendCount)); + thread.IsBackground = true; + thread.Start(packet); + } + catch (Exception ex) + { + MainPage.Log($"Send bus data error {ex.Message}"); + } + } /// <summary> /// 鍙戦�乽dp A鍗忚鏁版嵁 /// </summary> - public void SendLocalHdlLinkData(byte[] sendBytes,string id, bool isWait=false) + public void SendLocalHdlLinkData(byte[] sendBytes,string id, int resend = 3) { packet = new Packet(sendBytes, new System.Net.IPEndPoint(System.Net.IPAddress.Parse(Control.Ins.reportIp), 8585)); + packet.HaveSendCount = 3 - resend;//閲嶅彂娆℃暟 sendFlag = id; System.Threading.Thread thread = new System.Threading.Thread(new System.Threading.ParameterizedThreadStart(managerSendCount)); thread.IsBackground = true; thread.Start(packet); - if (isWait) - { - wait(); - } + //if (isWait) + //{ + // wait(); + //} MainPage.Log($"鍙戦�丠dl-Link鏁版嵁锛孖P:{Control.Ins.reportIp}:8585"); } } -- Gitblit v1.8.0