| | |
| | | using System.Net; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using GZ.Modular.Redis; |
| | | |
| | | namespace GZ.Projects.AuxAllWCS |
| | | { |
| | |
| | | //{ |
| | | Console.WriteLine($"ãTCPä¿¡æ¯åè®® {DateTime.Now.Millisecond}ãï¼IPï¼{remote_ip},MSGï¼{message}"); |
| | | var mg = Encoding.ASCII.GetString(PlcHelper.Hex2Bin(message)); |
| | | if (mg.Length > 10) |
| | | { |
| | | mg = mg.Substring(0, 10); |
| | | } |
| | | Console.WriteLine(mg); |
| | | if (mg.StartsWith("DK") && mg.Trim().Length == "DK01000024".Length) |
| | | if (mg.StartsWith("DK"))//&& mg.Trim().Length == "DK01000024".Length |
| | | { |
| | | LogHelper.Info($"æ«ç å¨ >{remote_ip} -{mg}"); |
| | | if (TrayIps.TryGetValue(remote_ip, out string traycode)) |
| | | { |
| | | TrayIps[remote_ip] = traycode; |
| | | TrayIps[remote_ip] = mg; |
| | | } |
| | | else TrayIps.Add(remote_ip, traycode); |
| | | else TrayIps.Add(remote_ip, mg); |
| | | |
| | | Console.WriteLine("TOFF"); |
| | | var mst = PlcHelper.Hex2Bin("544F4646"); |
| | | TcpServer.TcpServerSend(remote_ip, mst); |
| | | RedisHelper.Add("Sæ«ç å¨" + (remote_ip.Split('.').LastOrDefault()), mg, out string msg); |
| | | RedisHelper.Add("Sæ«ç å¨" + (remote_ip.Split('.').LastOrDefault()) + "#time", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"), out msg); |
| | | //Console.WriteLine("TOFF"); |
| | | //var mst = PlcHelper.Hex2Bin("544F4646"); |
| | | //TcpServer.TcpServerSend(remote_ip, mst); |
| | | } |
| | | //} |
| | | } |
| | |
| | | |
| | | public static bool TcpServerSend(string ip, byte[] msg) |
| | | { |
| | | LogHelper.Info($"TcpServerSend >{ip}:{msg}"); |
| | | if (clients.Keys.Contains(ip)) |
| | | { |
| | | var client = clients[ip]; |
| | |
| | | try |
| | | { |
| | | client.Send(msg); |
| | | LogHelper.Info($"TcpServerSend > åéæåã"); |
| | | return true; |
| | | } |
| | | catch (SocketException ex) |
| | |
| | | // 转æ¢ååè¿å¶ |
| | | return Convert.ToInt32(new string(binaryChars), 2); |
| | | } |
| | | public static List<string> GetStaticClients() => clients.Keys.ToList(); |
| | | public static Dictionary<string, string> GetStaticScan() => TrayIps; |
| | | } |
| | | } |
| | | |