private void Message_Received(object sender, MessageReceivedFromServerEventArgs e) { TcpMessage msg = JsonConvert.DeserializeObject <TcpMessage>(Encoding.UTF8.GetString(e.Data)); switch (msg.MessageType) { case MessageType.Message: memoEdit1.Invoke((MethodInvoker) delegate { memoEdit1.Text += "Server : " + msg.Message + System.Environment.NewLine; }); break; case MessageType.LicenseControl: break; case MessageType.ServerRejection: MessageBox.Show(msg.Message); Application.Exit(); break; case MessageType.ServerClosed: MessageBox.Show(msg.Message); Application.Exit(); break; } }
private static void MessageReceived(object sender, MessageReceivedFromServerEventArgs args) { Console.WriteLine("Message from server: " + Encoding.UTF8.GetString(args.Data)); if (args.Metadata != null && args.Metadata.Count > 0) { Console.WriteLine("Metadata:"); foreach (KeyValuePair <object, object> curr in args.Metadata) { Console.WriteLine(" " + curr.Key.ToString() + ": " + curr.Value.ToString()); } } }
private static void ClientMsgReceived(object sender, MessageReceivedFromServerEventArgs args) { // Console.WriteLine("[client] msg from server: " + BytesToHex(Md5(args.Data)) + " (" + args.Data.Length + " bytes)"); try { string md5 = BytesToHex(Md5(args.Data)); if (!md5.Equals(_DataLargeMd5) && !md5.Equals(_DataSmallMd5)) { Interlocked.Increment(ref _Failure); Console.WriteLine("[client] [msg] [async] Data MD5 validation failed"); } else { Interlocked.Increment(ref _Success); // Console.WriteLine("[client] [msg] [async] Data MD5 validation success: " + md5); } } catch (Exception e) { Console.WriteLine(e.ToString()); } }
private static void ClientMsgReceived(object sender, MessageReceivedFromServerEventArgs args) { Console.WriteLine("[client] msg from server: " + BytesToHex(Md5(args.Data)) + " (" + args.Data.Length + " bytes)"); }
static void MessageReceived(object sender, MessageReceivedFromServerEventArgs args) { Console.WriteLine("Client received " + args.Data.Length + " bytes from server: MD5 " + Md5(args.Data)); }
static void MessageReceived(object sender, MessageReceivedFromServerEventArgs args) { }
private static void ClientMsgReceived(object sender, MessageReceivedFromServerEventArgs args) { }
private void Test2ClientMsgRcv(object sender, MessageReceivedFromServerEventArgs args) { }
static void HandleMessageReceived(object sender, MessageReceivedFromServerEventArgs e) { Console.WriteLine("Message Recieved"); }
private void MessageReceived(object sender, MessageReceivedFromServerEventArgs args) { MessageReceivedFromServer(sender, args); }
private void MessageReceived(object sender, MessageReceivedFromServerEventArgs e) { Logger("Message received: " + Encoding.UTF8.GetString(e.Data)); }
/// <summary> /// Handle message if client recieved anything from server /// /// The message contain two part, /// first part is a identifier (string) to distinguish what type of message is it /// second part is the message content /// </summary> /// <param name="sender"></param> /// <param name="args"></param> public static void MessageReceivedFromServer(object sender, MessageReceivedFromServerEventArgs args) { Console.WriteLine("[NetworkManager-Client] Recieved message from server"); string[] messages = Encoding.UTF8.GetString(args.Data).Split(new char[] { '_' }, 2); try { Console.Out.WriteLine("[NetworkManager-Client] Recieved message type: " + messages[0]); Console.Out.WriteLine("[NetworkManager-Client] The message is: " + messages[1]); } catch (Exception e) { Console.Error.WriteLine(e); } switch (messages[0]) { case "autoRestart": Console.Out.WriteLine("[NetworkManager-Client] Receiving Auto Restart Request from server, proceed to restart client"); //disable connection to prevent reconnection to server before restarting connectionEnabled = false; window.Dispatcher.Invoke(() => { Console.Out.WriteLine("[NetworkManager-Client] Start timer of 15 seconds"); DispatcherTimer timer = new DispatcherTimer(); timer.Interval = TimeSpan.FromMinutes(1); timer.Start(); timer.Tick += new EventHandler(delegate(object s, EventArgs a) { //only restart if it is a different date if (WindowAutoRestart.isSameDate()) { Console.Out.WriteLine("[NetworkManager-Client] It is still yesterday. Wait until auto restart."); } else { Console.Out.WriteLine("[NetworkManager-Client] AutoRestarting..."); WindowAutoRestart.AutoRestart(); timer.Stop(); } }); }); break; case "setClientNumber": Console.Out.WriteLine("[NetworkManager-Client] Receiving Set ClientNumber Request from server, proceed to set self ClientNumber"); window.Dispatcher.Invoke(() => { clientNumber = int.Parse(messages[1]); Console.Out.WriteLine("[NetworkManager-Client] My client number is:" + clientNumber); }); break; case "addAllClientInfo": Console.Out.WriteLine("[NetworkManager-Client] Receiving Add All ClientInfo Request from server, proceed to add client view objects for network page"); window.Dispatcher.Invoke(() => { ClientViewObject.XMLtoClient(XElement.Parse(messages[1])); }); break; case "modInjection": Console.Out.WriteLine("[NetworkManager-Client] Receiving Mod Injection Request from server, proceed to modify injection"); window.Dispatcher.Invoke(() => { InjectionsManager.modInjection(XElement.Parse(messages[1])); }); break; case "changePatientStatus": Console.Out.WriteLine("[NetworkManager-Client] Receiving change PatientStatus Request from server, proceed to change PatientStatus"); window.Dispatcher.Invoke(() => { //try to splite the message back to (accessionNumber, patientStatus) if (messages[1].Split('^').Length == 2) { InjectionsManager.changePatientStatus(messages[1].Split('^')[0], messages[1].Split('^')[1]); } else { Console.Out.WriteLine("[NetworkManager-Client_changePatientStatus()] Corrupted changePatientStatus message, require 2 input. Message: " + messages[1]); } }); break; ////////////////////////////////////////////////// //////// Obsolete ////////////////////////// case "dischargeInjection": Console.Out.WriteLine("[NetworkManager-Client] Receiving Discharge Injection Request from server, proceed to discharge injection"); window.Dispatcher.Invoke(() => { #pragma warning disable CS0618 // Type or member is obsolete InjectionsManager.dischargeInjection(messages[1]); #pragma warning restore CS0618 // Type or member is obsolete }); break; ////////////////////////////////////////////////// case "removeInjection": Console.Out.WriteLine("[NetworkManager-Client] Receiving remove Injection Request from server, proceed to remove injection"); window.Dispatcher.Invoke(() => { InjectionsManager.removeInjection(messages[1]); }); break; case "addPatient": Console.Out.WriteLine("[NetworkManager-Client] Receiving Add Patient Request from server, proceed to add Patient"); window.Dispatcher.Invoke(() => { PatientManager.ModPatient(new Patient(XElement.Parse(messages[1]))); }); break; default: Console.Error.WriteLine("[NetworkManager-Client] Unhandled message type: " + messages[0]); break; } }