Skip navigation

C++98, Team of 3

Developed a chat client and chat server to run on Windows using WinSock2. Client takes commands from the user through a console window to connect to a server with specified ip, and port number. join chat rooms, send messages, leave chat rooms, and disconnect.

Developed a chat server which is non-blocking and allows multiple clients to connect and communicate to each other. When a chat message is received, the server relays that message to all other clients within that chat room. Client disconnections and interruptions are handled, and does not interrupt the execution of the server.

Packets are serialized using Google Protocol Buffers, and prepended with the packet length. Which is stored as 4 byte in Little Endian format.

Communication between the chat server, and client uses TCP.