Beispiel #1
0
        private void StartChat()
        {
            _NetworkStream = _Client.GetStream();
            SendNewId(_NetworkStream);
            _User = (User)_BinaryFormatter.Deserialize(_NetworkStream);

            Packet packet = new Packet
            {
                Type    = TypeData.MESSAGE,
                Message = "\t\t" + _User.NickName.ToUpper() + "! WELCONE TO CHAT!",
            };

            _BinaryFormatter.Serialize(_NetworkStream, packet);

            Chat._ConnectedUsers.Add(_User, _Client);
            Chat.SendUsersList(_User, _NetworkStream);

            packet = new Packet
            {
                Type    = TypeData.MESSAGE,
                Message = "SERVER SAYS:\r\n\t" + _User.NickName.ToUpper() + " HAS JOINED THE CHAT"
            };

            Chat.SendMsgToAll(packet);

            //create a new thread for this user
            Thread chatThread = new Thread(new ThreadStart(runChat));

            chatThread.Start();
        }
Beispiel #2
0
        private void HandleData(Packet packet)
        {
            switch (packet.Type)
            {
            case TypeData.MESSAGE:
                Chat.SendMsgToAll(packet);
                break;

            case TypeData.PRIVATE_MESSAGE:
                Chat.SendMsgToPrivate(_User, packet);
                break;
            }
        }