You are to write a Hybrid version of P2P and Client/Server application. It follows a similar yet way simpler architecture as Skype.
The application consists of two programs. The first program is a Server that authenticates in a rather simplistic way users before they can engage in a chat. For the purposes of this project, the server will keep track of only 5 users in a basic plain text file. This file contains a name and an IP address. Example:
Sam [login to view URL]
Ann [login to view URL]
Lou [login to view URL]
Mary [login to view URL]
Jack [login to view URL]
If you're doing all in one computer and without the use of virtual machines, you could have [login to view URL] for all users as all will be running locally.
The second application is the one which asks the user for its name and afterwards will initially connect to the Server to authenticate and upon successful authentication, will get the list of all the peers in their locations. The success of the authentication depends whether the user is registered or not in the list of the server. If the user name is not in the list, then the server will reply NULL instead of the list of user and locations. If NULL is received the application should print an error message accordingly and reask again for a user name.
Each peer should do the procedure mentioned above prior to chatting.
After there are at least two peers at least ON, then they can start chatting sending messages back and forth. These chat paradigm is in a pure P2P fashion. For this purpose, a multithreaded portion is necessary here. The multithreaded portion requires a thread running a client part and a thread running the server part. The client thread send messages and the server thread allows for receving them.
The first part of the project where authentication happens with the server must be done using TCP sockets.
The second part of the project where chat happens between peers must be done using UDP sockets.
Project Due: October 13, 2014
Hi, I am placing my bid on your project because I have read the requirements and I am confident enough with my Java and algorithm skills. I am focused mostly on doing computer science work here in freelancer.com and I Daha Fazla
Bu iş için 13 freelancer ortalamada $210 teklif veriyor
Hello I am Java expert and interested in this project. I understand the requirements and will complete it within 4 days. Please communicate so we can discuss further. Regards Anshu
Dear, I am #1 Java programmer on this site. I did many P2P or client server chat programs in java. I am clear about the requirements and can start immediately. Thanks
Hello, you want to create 2 chat software, one is P2P and one is Client/Server application, right? I have finish a client/server chat application before (the functionalities of my application are typing chat, send file Daha Fazla
I have 5 years of programming experience. I can help you solve this problem. When you work with me you will feel very comfortable.
hi bro, i have good experience in java. i have done more than 30 assignment in this 10 days. you can trust me and give the task. mean while i'm a software engineer. let's discuss
Hello. I can create a simple P2P chat application as you described. I can have the project completed in 2 days. Please message me so we can talk about details. Thank you.
Hi, I have already bid on your previous project like this. Like I said I have 95% of the code that you need ready since I was working on very similar things for another client. I can't attach files or code here Daha Fazla
HI, i have worked a lot before in projects like this using Servers and Clients Sockets in Java, hope to hear from you as soon as possible. Best regards.
About Me: • More than 5+ years of experience in object-oriented analysis, development, testing, and integration of scalable, multi-tier distributed enterprise business applications. • Strong knowledge in working wi Daha Fazla
I have over 8 years experience in professional software engineering and have deep knowledge of tcp and udp. I can do this.
I have done similar kind of work earlier with TCP sockets for authentication and UDP for chatting. If require I can do that for you