Can someone do this for me?
Download and unzip the example project: C# TCP Chat [login to view URL]
Inside the zip file you will finda project that allows a user to choose between being a server or client
for the chat application. The server accepts connections and broadcasts messages to all clients.
Clients can connect to the server, send and receive chat messages. You will also find a [login to view URL]
inside the project for more guidance.
Currently the project is limited and needs extending to make it a fuller chat experience.
Step 1
Users currently do not have usernames. When a user joins the server, they should also send their
proposed username, they should send this data in the form of !username [new_username] e.g
!username Bob. When the server receives this message, it needs to see if this name is in use. If no
other user is using this name, then let the user know it was a success. If it is already in use, send a
message to the user to tell them it failed. If the user gets a failed message, they should be
disconnected on both client and server side.
Step 2
After adding usernames, chat messages broadcast from the server should include the username of
the person who sent them in.
Step 3
Clientscan change their username whenever they want, using the !user [new_username] and if
successful, the change should be announced to the rest of the clients.
Step 4
There are a number of special commands that need to be implemented. Currently if a user types in
!commands to the server it will send a message back stating what commands can be done. These
other commands have not been implemented yet and need to be done by you. The commands need
to do the following:
!who – When server receives this message, it sends back messages containing the names of the
connected users to the client to be output to the chat window
!about – Server should send information back to the client about its creator, purpose and year of
development
!whisper [username] – sends a message to a specified user directly or lets sender know it cannot
find anyone by that username
Also implement a custom command of your own devising
NDS203_Assessment_2_Brief_Networking Project Page 3 of 6
Step 5
The server can designate a moderator with !mod [username] e.g. !mod Bob. Moderators can kick
other clients using !kick [username]. If the server uses the !mod command on a moderator, then
they are demoted back to normal client. Server can also use !mods command to see a list of
moderators output to the chat window.
Hi, Benjamin.
I've already worked with another clients in chatting app and have rich experiences on C#, so I think, you might find it very interesting to have chat.
Let's connect in chat so that We discuss further.
Regards, Peter
Hi there. I specialize in Graphic Design, Illustration, Excel, Photoshop and Web Development.
I've got extensive experience in .NET, C Programming, C++ Programming and Software Architecture that makes me ideally suited to help you with your project. With my expertise in these areas, I can help you create a full Chat Application experience from scratch.
I understand the importance of having usernames for users on the server so that they can properly identify each other when sending messages. Additionally, chat messages broadcast from the server should include the username of the person who sent them so that clients can see who sent them what. Finally, I would like to specifically address the issue of special commands not being implemented yet on the server end. In order to remedy this issue step by step we would need to discuss how we could best proceed with extending the project while still keeping it within budget constraints.
Hello Benjamin K. Good evening!
I am excited to submit my proposal for the "Help with a TCP chat project" position.
I have developed a strong set of skills that make me confident in my ability to deliver high-quality work to your project.
My approach to any project is to first gain a deep understanding of the client's needs and requirements. I will work closely with you to ensure that I understand your project goals and objectives, and that I am able to deliver results that meet or exceed your expectations.
In terms of technical skills, I have extensive experience in .NET, Software Architecture, C Programming, C++ Programming and C# Programming.
Please send a message to discuss more about this project.
Eager to hear your feedback.
❤️Solomiia❤️
Hi! Pleased to meet you on this platform.
I just read through the job details and can help with tweaking the program to suit yoyr needs.
Let's discuss more on chat about your requirements and budget.
Warm Regards.
Bc