public void MessageReceived(Message msg) { if (msg.MessageType == MessageTypes.NetworkWarning) { HasNetworkConnectionWarning = true; } }
public static void SendMessage(Message message) { foreach (var listener in Listeners.Where(t => t.Value.Contains(message.MessageType))) { listener.Key.MessageReceived(message); } }
public static bool CheckNetworkAvailability() { var hasConn = Task.Run(() => PingGoogle()).Result; if (!hasConn) { var msg = new Message(MessageTypes.NetworkWarning, "No internet connection. Check your wifi or cable connection."); MessageManager.SendMessage(msg); } return hasConn; }
public Server() { this.IsMulticastConnected = false; this._receiver = new UdpSocketMulticastClient(); this._receiver.MessageReceived += MessageReceived; this._listener = new TcpSocketListener(); this._listener.ConnectionReceived += ListenerConnectionReceived; IsMulticastConnected = JoinMultiUdp(); if (!IsMulticastConnected) { var msg = new Message(MessageTypes.NetworkWarning, "Cannot connect to multicast UDP."); MessageManager.SendMessage(msg); } }