public bool CanVerifyTcpConnection(EsMount mount) { EsEventManager.PublishEsEvent(EsEventSenderEnum.EsMountManager, EsMessagePriority.DebugInfo, " Start Verify TCP Connection"); //Check Wireless first if (!CommunicationsManager.IsConnectedToWirelessNetwork()) { return(false); } if (!CommunicationsManager.ConnectedSsid().Contains("PMC")) { return(false); } bool responseIsGood = false; try { string result = CommunicationsManager.SendTcpMessage(mount.ConnectionSettings.IpAddr, mount.ConnectionSettings.IpPort, TCP_QUERY); responseIsGood = result.Contains(TCP_RESPONSE); EsEventManager.PublishEsEvent(EsEventSenderEnum.EsMountManager, EsMessagePriority.DebugInfo, " Done Verify TCP Connection: " + responseIsGood); return(responseIsGood); } catch (Exception ex) { EsException e = new EsException("Error in :" + "CanVerifyTcpConnection", ex); //TODO: EsEventManager.PublishEsEvent(EsEventSenderEnum.EsMountManager, EsMessagePriority.DebugInfo, " Done Verify TCP Connection - Failure"); return(false); } }
public string SendUdpMessage(string ipAddr, Int32 comPort, string msg) { EsEventManager.PublishEsEvent(EsEventSenderEnum.ComManager, EsMessagePriority.DetailedInfo, " Start Sending UDP Message: " + msg); UdpClient udpClient = new UdpClient(54372); udpClient.Client.ReceiveTimeout = 1500; string returnData = "No Data Received"; try { udpClient.Connect("192.168.47.1", 54372); // Sends a message to the host to which you have connected. Byte[] sendBytes = Encoding.ASCII.GetBytes(msg + Environment.NewLine); udpClient.Send(sendBytes, sendBytes.Length); // Sends a message to a different host using optional hostname and port parameters. UdpClient udpClientB = new UdpClient(); Thread.Sleep(1000); udpClientB.Send(sendBytes, sendBytes.Length, "192.168.47.1", 54372); //IPEndPoint object will allow us to read datagrams sent from any source. IPEndPoint RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0); Thread.Sleep(1000); // Blocks until a message returns on this socket from a remote host. Byte[] receiveBytes = udpClient.Receive(ref RemoteIpEndPoint); returnData = Encoding.ASCII.GetString(receiveBytes); // Uses the IPEndPoint object to determine which of these two hosts responded. Console.WriteLine("This is the message you received " + returnData.ToString()); Console.WriteLine("This message was sent from " + RemoteIpEndPoint.Address.ToString() + " on their port number " + RemoteIpEndPoint.Port.ToString()); udpClient.Close(); udpClientB.Close(); } catch (Exception ex) { Console.WriteLine(ex.ToString()); EsException e = new EsException("Error in :" + "SendUdpMessage", ex); throw e; } EsEventManager.PublishEsEvent(EsEventSenderEnum.ComManager, EsMessagePriority.DetailedInfo, " UDP Message Received: " + returnData); return(returnData.ToString()); }
public static void PublishEsEvent(EsEventSenderEnum sender, string messageType, EsMessagePriority priority, string message, EsException esException, Exception exception, string Notes) { EsEventArgs e = new EsEventArgs(sender, messageType, priority, message, esException, exception, Notes); RaiseEsEvent(e); }
public EsEventArgs(EsEventSenderEnum sender, string messageType, EsMessagePriority priority, string message, EsException esException, Exception exception, string notes) { Sender = sender; MessageType = messageType; Priority = priority; Message = message; EsException = esException; Exception = exception; Notes = notes; }
public void DumpLine(EsException ex) { string msg = null; if (rbGeneralInfo.Checked) { msg = ex?.Message; } if (rbDetailedInfo.Checked) { msg = ex?.Message + " , " + ex?.Source; } if (rbDebugInfo.Checked) { msg = ex?.Message + " , " + ex?.Source + " , " + ex?.StackTrace.ToString(); } DumpLine(msg); }
public bool CanVerifyUdpConnection(EsMount mount) { EsEventManager.PublishEsEvent(EsEventSenderEnum.EsMountManager, EsMessagePriority.DebugInfo, " Start Verify UDP Connection"); //Check Wireless first if (!CommunicationsManager.IsConnectedToWirelessNetwork()) { EsEventManager.PublishEsEvent(EsEventSenderEnum.EsMountManager, EsMessagePriority.DebugInfo, " End Verify UDP Connection - Failure. Not connected to a network"); return(false); } if (!CommunicationsManager.ConnectedSsid().Contains("PMC")) { EsEventManager.PublishEsEvent(EsEventSenderEnum.EsMountManager, EsMessagePriority.DebugInfo, " End Verify UDP Connection - Failure. Not connected to a PMC network"); return(false); } bool versionGood = false; try { string result = CommunicationsManager.SendUdpMessage(mount.ConnectionSettings.IpAddr, mount.ConnectionSettings.IpPort, UDP_QUERY); versionGood = result.Contains(UDP_RESPONSE); EsEventManager.PublishEsEvent(EsEventSenderEnum.EsMountManager, EsMessagePriority.DebugInfo, " End Verify UDP Connection: " + versionGood); return(versionGood); } catch (Exception ex) { EsException e = new EsException("Error in :" + "CanVerifyUdpConnection", ex); //TODO: //EsEventManager.PublishEsEvent(EsEventSenderEnum.EsMountManager, EsMessagePriority.DetailedInfo, " End Verify UDP Connection - Failure. ERROR"); EsEventManager.PublishEsEvent(EsEventSenderEnum.EsMountManager, "CanVerifyUdpConnection", EsMessagePriority.DetailedInfo, "", null, ex, null); return(false); } }
public bool CanVerifySerialConnection(EsMount mount) { EsEventManager.PublishEsEvent(EsEventSenderEnum.EsMountManager, EsMessagePriority.DebugInfo, " Start Very Serial Connection"); string[] ports = SerialPort.GetPortNames(); bool responseIsGood = false; if (ports.Rank > 0 && mount.ConnectionSettings.SerPort != null) { try { string result = CommunicationsManager.SendSerialMessage(mount.ConnectionSettings.SerPort, SERIAL_QUERY); responseIsGood = result.Contains(SERIAL_RESPONSE); } catch (Exception ex) { EsException e = new EsException("Error in :" + "CanVerifySerialConnection", ex); throw e; } } EsEventManager.PublishEsEvent(EsEventSenderEnum.EsMountManager, EsMessagePriority.DebugInfo, " End Very Serial Connection: " + responseIsGood); return(responseIsGood); }
public string SendSerialMessage(string serialPort, string msg) { EsEventManager.PublishEsEvent(EsEventSenderEnum.ComManager, EsMessagePriority.DetailedInfo, " Start Sending Serial Message: " + msg); Mutex mutex = new Mutex(); mutex.WaitOne(); if (serialPort == String.Empty) { throw new EsException("Error in :" + "SendSerialMessage - Serial Port can not be empty"); } string newData; try { SerialPort Port = new SerialPort(serialPort, 115200, Parity.None, 8); Port.Open(); Port.WriteLine(msg); Thread.Sleep(500); newData = Port.ReadExisting().ToString(); Console.WriteLine("Received on serial: " + newData); Port.Close(); } catch (Exception ex) { EsException e = new EsException("Error in :" + "SendSerialMessage", ex); throw e; } finally { mutex.ReleaseMutex(); } EsEventManager.PublishEsEvent(EsEventSenderEnum.ComManager, EsMessagePriority.DetailedInfo, " Serial Returned: " + newData); return(newData); }