private void LoginPacketResponse(Packet p) { var resp = p as LoginResponsePacket; if (resp == null) return; if (this.InvokeRequired) { this.Invoke((new Action(() => LoginPacketResponse(p)))); return; } if (resp.Status == "200") { RH_APP.Classes.Settings.GetInstance().authToken = resp.AuthToken; RH_APP.Classes.Settings.GetInstance().CurrentUser = resp.User; if (resp.User.IsSpecialist || resp.User.IsAdministrator) { //var mainScreen = new MainScreen(true); TCPController.OnPacketReceived -= LoginPacketResponse; //mainScreen.ShowDialog(); this.Hide(); MainMenu m = new MainMenu(); m.Show(); } else if (resp.User.IsClient) { this.Hide(); //var mainScreen = new MainScreen(false); var mainScreen = new TrainingScreen(false); TCPController.OnPacketReceived -= LoginPacketResponse; mainScreen.Text = " Remote Healthcare - Client Edition"; mainScreen.ShowDialog(); } } else { MessageBox.Show(resp.Description, "Your application has been reviewed"); } }
private void ReceiveHonoredGuests(Packet p) { if (this.InvokeRequired) { this.Invoke((new Action(() => ReceiveHonoredGuests(p)))); return; } if (p is PullResponsePacket<User>) { var response = p as PullResponsePacket<User>; if (response.DataType == "connected_clients") readClients(response.List); TCPController.OnPacketReceived -= ReceiveHonoredGuests; } }
private void handleIncomingPackets(Packet p) { if (InvokeRequired) { Invoke(new Action(() => handleIncomingPackets(p))); return; } // Tuple<userId, SessionId, DateOfSession>() if (p is PullResponsePacket<SessionData>) { var response = p as PullResponsePacket<SessionData>; if (response.DataType == "user_sessions") { Console.WriteLine("Sessions loaded"); sessions = response.List; usersCombobox_SelectedIndexChanged(this, EventArgs.Empty); } } else if (p is PullUsersResponsePacket) { var response = p as PullUsersResponsePacket; users = response.List.Where(x => x.IsClient).ToList(); BindingSource bs = new BindingSource(); bs.DataSource = users; usersCombobox.DataSource = bs; usersCombobox.DisplayMember = "Fullname"; usersCombobox.ValueMember = "Id"; } else if (p is PullResponsePacket<Measurement>) { TCPController.OnPacketReceived -= handleIncomingPackets; this.Close(); GraphResultUI ui = new GraphResultUI(((PullResponsePacket<Measurement>)p).List); ui.Show(); } }
private void HandleIncomingPackets(Packet p) { if (InvokeRequired) { Invoke((new Action(() => HandleIncomingPackets(p)))); return; } if (p is DataFromClientPacket<Measurement>) { var response = p as DataFromClientPacket<Measurement>; if (response.ClientId != client.Id) return; if (_spController == null) startTraining(this, EventArgs.Empty); foreach (var m in response.List) { _spController.SetMeasurement(m); //Console.WriteLine("Received a measurement."); } } else if (p is ChatPacket) { var chat = p as ChatPacket; if (chat.IsBroadcast) { AddNewMessage("<Broadcast> " + chat.UsernameDestination, chat.Message); return; } if (client != null && chat.UsernameDestination != client.Username) return; AddNewMessage(chat.UsernameDestination, chat.Message); } else if (p is PushPacket<Configuaration>) { var ppacket = p as PushPacket<Configuaration>; var config = ppacket.DataSource.FirstOrDefault(); if (config == null) return; if (config.Power.HasValue && _controller != null) { _controller.SetPower(config.Power.Value); } } else if (p is NotifyPacket) { var traitor = p as NotifyPacket; if (traitor.NotifySubject == NotifyPacket.Subject.NewTrainingId) { if (isSpecialist && int.Parse(traitor.SecundaryValue) == client.Id) { currentTraingId = int.Parse(traitor.PrimaryValue); } else currentTraingId = int.Parse(traitor.PrimaryValue); } else if (traitor.NotifySubject == NotifyPacket.Subject.StartTraining) { startTraining(this, EventArgs.Empty); } else if (traitor.NotifySubject == NotifyPacket.Subject.StopTraining) { _quitButton_Click(this, EventArgs.Empty); } } string b = ""; }
//private void Send(Object s) //{ // Send(s.ToString()); //} private void Send(Packet p) { Send(p.ToString()); }