/* Fonction d'envoie de message à tous les utilisateurs connectés à cette chatroom */ public void post(string msg, User u) { foreach (User user in this._chatters) { MessageBroadcastPacket mbp = new MessageBroadcastPacket(u.login, msg, this._topic); Packet.Send(mbp, user.ns); } }
private void CreateTopicWorker_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e) { try { while (true) { Packet paquet = Packet.Receive(Form1.stream); Debug.WriteLine("packet received"); if (paquet is CreateChatRoomValidationPacket) { CreateChatRoomValidationPacket cc = (CreateChatRoomValidationPacket)paquet; if (cc.value) { MessageBox.Show("Topic created", "Success", MessageBoxButtons.OK); } else { MessageBox.Show("Topic was not created", "Error", MessageBoxButtons.OK); } } if (paquet is MessageBroadcastPacket) { MessageBroadcastPacket mb = (MessageBroadcastPacket)paquet; Debug.WriteLine(mb.message); foreach (Form3 f3 in _forms) { if (f3.Text.Equals(mb.chatroom)) { f3.displayMessage(mb.user, mb.message); } } } if (paquet is ListChatterPacket) { ListChatterPacket lcp = (ListChatterPacket)paquet; foreach (Form3 f3 in _forms) { if (f3.Text.Equals(lcp.chatRoom)) { f3.updateChatters(lcp.chatters); } } } if (paquet is TopicsPacket) { TopicsPacket bp = (TopicsPacket)paquet; comboBox1.Items.Clear(); foreach (string s in bp.topics) { comboBox1.Items.Add(s); } } } } catch (Exception ex) { //MessageBox.Show("Disconnected",""); } }