Multicast chat with file and desktop sharing

  • 1,944 views
Uploaded on

Developed a Multicast Chat application with file and desktop sharing features among its users into java and submitted in college as final year major project.

Developed a Multicast Chat application with file and desktop sharing features among its users into java and submitted in college as final year major project.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • can i get the coding of this project...it would be needful to me if u can
    Are you sure you want to
    Your message goes here
  • this project was easy to understand..thank u
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
1,944
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
156
Comments
2
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. A PROJECT REPORT On Chat Server with File & Desktop Sharing Under the Guidance of Mr. Vikram Singh Chouhan (In partial fulfillment for the award of the degree of) Bachelor of Technology IN INFORMATION TECHNOLOGY 2012-2013 Submitted by Khagendra Kumar Chapre Akhil Pal Manauwar Alam Submitted to Department of Information Technology Govt. Engineering College, Bikaner Rajasthan Technical University, Kota May, 2013-05-31
  • 2. ii CANDIDATE’S DECLARATION I hereby declare that the work ,which is being presented in the project entitled “Chat Server with File & Desktop Sharing” towards the partial fulfillment of the requirement for the award of the degree of Bachelor of technology in Information Technology submitted in the Department of Information Technology Government Engineering College Bikaner(Rajasthan) affiliated to Rajasthan Technical University, Kota is a record of my work under the guidance of Mr. Vikram Singh Chouhan Department of Information Technology Government Engineering College Bikaner(Rajasthan). Date 31/05/2013 Place: Bikaner Khagendra K Chapre CERTIFICATE This is to certify that the above statement made by the candidate is correct to the best of my Knowledge and belief. Date 31/05/2013 Place: Bikaner Mr. Vikram Singh Chouhan Asst. Prof. Department of IT Govt. Engineering College, Bikaner
  • 3. iii ACKNOWLEDGEMENT I express my sincere thanks to our project guider, Mr. Vikram Singh Chouhan, our HOD Mr. Ajay Choudhary, our Faculties Members and other staff whose help have made me complete my project. I am also grateful to my dearest friends who have encouraged and helped me in every possible way at every step. I am grateful to them for guiding me right from the inception till the successful completion of the project .Their motivation and encouragement have made me achieve knowledge upon this project and my full engineering session. I sincerely acknowledge them for extending their valuable guidance, support for literature, critical reviews of project and the report and above all the moral support they had provided me with all stages of this project. I have taken efforts in this project. However, it would not have been possible without the kind support and help of many individuals and organizations. I would like to extend my sincere thanks to all of them .I am highly indebted to our mentor for their guidance and constant supervision as well as for providing necessary information regarding the project & also for their support in completing the project. I would like to express my gratitude towards my parents & member of Govt. Engineering College Bikaner for their kind co-operation and encouragement which help me in completion of this project .I would like to express my special gratitude and thanks to all teachers for giving me such attention and time .My thanks and appreciations also go to my colleagues in developing the project and people who have willingly helped me out with their abilities. Date 31-05-2013 Khagendra K Chapre
  • 4. iv ABSTRACT Chatting, is a method of using technology to bring people and ideas “together” despite of the geographical barriers. The Chat Server is Communication Software intended for sending and receiving messages between the members logged in. The Chat server can be configured to listen at a particular port specified by the system administrator. The Chat clients have to register themselves with a username and password. The administrator will have privileges to allow or discard the user registration. Users can also share files among them and also can share their desktop screens. Thus a project with chatting and file sharing and also desktop sharing provides a solution to the people to for easy communication and they can share their selves also their ideas and innovations.
  • 5. v Table of Contents Candidate’s Declaration & Certificate…….……………………………………………...i Acknowledgements………………………………………………………….……............ii Abstract…………………………………………………………………..……………….v Table of Contents………………………………………………………...…………….....vii List of Figures……………………………………………………..………………..........viii 1. Introduction……………………………………………………………………………………………………....1 2. Literature survey……………………………………………………………………………………………….2 3. Requirement Specification ………………………………………………………………………………..3 4. Architectural Design …………………………………………………...........................................7 5. Test Planning …………………………………………………......................................................19 6. Result …………………………………………………..................................................................24 7. Conclusion & Future Work………………………………………………………………………………….28 REFERENCES……………………………………..……………………………...........29
  • 6. vi
  • 7. 7 List of Figures Figures Page No. 1. Use Case Model Diagrams 05 2. Functional Description Client side 06 3. Functional Description server side 07 4. Functional Description Client – Server Application 08 5. Functional Description Client Side 10 6 .Functional Description Client Side 10 7. 0 Level Data Flow Diagram 11 8. 1 Level Data Flow Diagram 12 9. E-R Diagram 13 10. Working Snapshot server side window 25 11. Working Snapshot Client side window 25 Chapter 1 INTRODUCTION
  • 8. 8 Chat server is a standalone application. To start chat you must be connected with the server after that your message can broadcast to the client though which we want to chat. Chat system is a complete client/server chat solution, independent chat system (it does not depend on any product of communication and chat). Chat system application is a GUI interface. This application makes it easy to find people on a network and communicate with them easily without being online and makes net messages easier to read. On the other hand file sharing application is also implemented where a user can download a file. We are providing the path to the directory where we have stored our file to the user who wants to download particular file. We are also providing desktop sharing features among its registered users; this is a beta attachment in this chat system and need to improve in future works. Some features of the application are as follows:  This application is used for sending messages from one client to another client. In this, server takes a message from the sender client and sends to another client. If any client wants to join the chatting then he runs the client application on client side, enters the login name and hits the login button and starts the chatting with other client.  In this we are maintaining the list of user names (client name) also. After creating the connection with server, client sends the user name to server and server store it in the array list and sends this array list to all clients. Same like this when any client has logged out then server remove this name from the array list and send this updated array list to every client.  In this application we are providing a file sharing system where a registered user can view or download files of other user.  Another mile stone feature of this app is that users can share screen among them, this is provided by java.awt.Robot class. Chapter 2
  • 9. 9 LITERATURE SURVE 1. According to the survey made on the network used in small scale industries, colleges, offices and cafes. 2. LAN/WLAN with client-server mode is mostly used network in small scale industries. 3. Here we are implementing it in data transfer with file sharing. 4. The server should be connected for login. 5. The client must have knowledge about networking. 6. The database connectivity of the project should be done properly so data can be retrieved easily. 7. He/ she must have knowledge about java. 8. The jdk should be installed in the pc on which the project is running. 9. The Wamp server should be in running state.
  • 10. 10 Chapter 3 REQUIREMENT SPECIFICATION Scope: LAN chat application is one of easiest way to chat with your friends through LAN/WLAN or over a AdHoc network. No internet connection is needed. The only thing which requires is server IP address and you will be able to connect to others members through LAN. It can help you to talk to your friends even you both do not have internet connection as it is based on LAN. It connects different client to each other and also client to main server. So we have used the same concept here we are connecting two client or client and server with each other and providing the IP address we can talk with each other. On the other hand file sharing application is also implemented where a user can upload a file or download a file. We are providing the path to the directory where we have stored our file to the user who wants to download particular file. Technologies to be used  Language used:- JAVA Java is a programming language originally developed by James Gosling et al at Sun Microsystems (which has since merged into Oracle Corporation) and released in 1995 as a core component of Sun Microsystems' Java platform. Java is a general-purpose, concurrent, class-based, object-oriented language that is specifically designed to have as few implementation dependencies as possible.  Operating system used:-Windows XP Windows XP is an operating system produced by Microsoft for use on personal computers, including home and business desktops, laptops and media centers. First released to computer manufacturers on August 24, 2001, it is the second most popular version of Windows, based on installed user base.
  • 11. 11  Database used: - My Sql MySQL is a open source database system. This is the easier to implement and most used database over the world. As a database, it is a software product. Whose primary function is to store and retrieve data as requested. GENERAL REQUIREMENTS Functionality The application includes the following functionalities:  File transfer from one user to another  Desktop Sharing among users  Sending messages  Receiving messages  Chatting  Accessing files on remote system
  • 12. 12 Use Case Model Diagrams: Interfaces: Hardware Required: - Any PC with WiFi or LAN Software Required:-  J2SE:-JDK 1.6 or higher  Apache server  My SQL  Net beans 7.0 or higher  Any Operating system with JRE6 or higher install General Constraints:  LAN/WLAN/AdHoc connection should be there  User must be having knowledge about networking  IP address must be known for file sharing
  • 13. 13 Chapter 4 ARCHITECTURAL DESIGN Functional Description:- Client side:- Client window Give the IP address to login New user registered Already registered Connection would successfully established to server
  • 14. 14 Server side:
  • 15. 15 Functional Diagram Client - Server application Server Side Application Client Side Application Join the server by giving the IP address Host a server and bind with the IP address to accept connection Chat Wait for client request Chat with client Receive msg Send msg Chat
  • 16. 16 The project basically is divided into two sections: - Server and Client.  The server has the full control of the information.  Client who can chat with another client for any reason or can search any file he wants.  The chat part basically deals with message sending and receiving between one client to another client. When a client requests for the chat, server starts the session of chat and both can send and receive the message one at a time  The server can store files, search, delete them. The information is stored in the database at server. When client requests for it, the server searches the required from the database and replies back to the client.  The system is basically divided into two broad sections:- Server: - It is responsible for hosting the server so that client can start communication session. Client: - Client connects to the server by giving the server IP address and port number to which it should connect to. Functional Partition In this there are two modules one is Client window and another one is Server window. Client side is used to give the IP address to connect the server. After giving IP address we must gave the user name and password to login. And then we are chat to another client and share the file easily. At Server side the IP address of the client is saved and login time, username and all information related to client is saved.
  • 17. 17 Functional Block Diagram Client side: Client Window Username and password Give the IP address Connection is done successfully Do chat and share file Server side:
  • 18. 18 Module Dependencies Input Dependencies Input dependencies of input module are listed below; all the entries, i.e., the IP address, username and password must be specified in it, so as to login successfully and do chat and easily share the files. Output Dependencies Module Data Description Input module IP address, username and password The output will be displayed only if the data is entered correctly. Data Flow Diagram Client Server Request Reply 0 level dfd
  • 19. 19 User Validate user_id and password Send and receive messages Server Server Request for log_in Access granted or denied File transfer Server 1 level dfd
  • 20. 20 E-R Diagram An ER diagram is a specialized graphic that illustrates the interrelationships between entities in a database. ER diagram often use symbols to represent three different types of information. Boxes are commonly used to represents entities. Diamonds is normally used to represent relationships and ovals are used to represent attributes. Database Description Mysql Database Name: netappdb Table Description Table Name Description Usermaster This table contains details of all registered users CLIENT 1 File download chat, Desktop sharing CLIENT 2 SERVER CLIENT 3
  • 21. 21 User Interface Design Module Name: Server window: It contains following tabs  Log Details  Downloads  Transfers  Current State Client Window: It is divided into:  IP window  Login window  New register window  Start window
  • 22. 22
  • 23. 23 SERVER SIDE WINDOW:- This window shows the information about client that when will he will login n logout SERVER WINDOW Current status
  • 24. 24 CLIENT SIDE WINDOW:- In this window client give his IP address. This window will show when IP address entered should be correct and client will be successfully connected to server This window will appear after establish the connection to the server in which user give his login id and password to login in his account. IP ADDRESS Enter the IP address OK CANCEL IP ENTRY SUCCESSFULLY CONNECTED TO SERVER OK LOGIN WINDOW ENTER LOGIN ID PASSWORD LOGIN NEW REGISTRATION
  • 25. 25 This window will appear when user will already not register himself and want to register. This window will appear when the client will successfully log in. REGISTRATION LOGIN ID PASSWORD CONFIRM PASSWORD EMAIL ID CONTACT REGISTER CANCEL LOGIN STATUS SUCCESSFULLY LOGGED IN OK
  • 26. 26 This window will show after the client will login in his account. This window will appear when user wants to logout from his account or when client want to close session and logout from the system HELLO CHA T SEND Shows the message send and receive Write the message which you want to send LOGOUT DO YOU WANT TO LOGOUT! OK CANCEL
  • 27. 27 Chapter 5 TEST PLANNING System Passing Criteria The criteria to check if the system is working properly: 1. By the input of the details asked, the IP address, username and password should be correct. 2. If the input is not correct, the user should get a proper message. 3. The server should store the data properly i.e. when the user will login and logout and which file he will download. Functionality Test Requirement ID / Test ID Module/Class Features 1 Server connected After giving the IP address correctly the message will display that successfully connected to server 2 Register Before login he/she register himself. 3 Login After giving username and password correctly the user will successfully login 4 Online user The client will easily see that which user will online at that time. 5 Send On click on send the particular message is end to the desired client 6 Receive Message by sender is receive at particular client
  • 28. 28 Test Setup Hardware Required: - Any PC with WiFi or LAN Software Required:-  J2SE:-JDK 1.6 or higher  Apache server  My SQL  Net beans 7.0 or higher  Any Operating system with JRE6 or higher install Test Configuration  Execution of test case is done with the various stepwise checking of modules and functions.  First of all user will give his IP address correctly to connect to the server.  After that user will register him.  By giving the correct login id and password he/she will login.  The chat window will open after login  He/she will easily see that who will login at that time that he will chat.  Now click on send button the message will be send to the particular client.  Messages send successfully.[7]
  • 29. 29 Test Case Specification (1) Objectives The client is successfully connected to server or not. Module / Class /Function Server connected Test Configuration Without giving the IP address correctly the client should not connected to server. Expected Output or Results If the client will connected to server then a message window will display that show client will successfully connected to server. Test Passing Criteria The test case passes if the user will successfully connected to the server. (2) Objectives The user will register him. Module / Class /Function Register Test Configuration Without giving all details correctly the user will not registered. Expected Output or Results If the client will give his all details correctly the message will display that you are successfully registered. Test Passing Criteria The test case passes if the user will successfully registered himself.
  • 30. 30 (3) Objectives The client is successfully login or not. Module / Class /Function Login Test Configuration Without giving the user name and password correctly the client should not login. Expected Output or Results If the client will give username and password correctly he/she will successfully login. Test Passing Criteria The test case passes if the user will successfully login. (4) Objectives The client will easily show the users which are online at that time. Module / Class /Function Online users Test Configuration Without login the client will not see that which user will online. Expected Output or Results The client will easily see the users which are online. Test Passing Criteria The test case passes if the user will successfully see the users which are online.
  • 31. 31 (5) Objectives The message will send to another client or not. Module / Class /Function Send Test Configuration Until the client will not write the message the message will not send. Expected Output or Results The message will be send successfully. Test Passing Criteria The test case passes if the message is successfully send to the another client. (6) Objectives The client is successfully receive the message Module / Class /Function Receive Test Configuration Until the message is not send it will not receive. Expected Output or Results The message will be receive successfully. Test Passing Criteria The test case passes if the user will successfully receive the message.
  • 32. 32 Chapter 6 RESULTS Working Snapshot <Server side window>
  • 33. 33 <IP address window> In this window the client should enter his IP address. <Server connected> This window shows that the client will successfully connected to the server. <login window>
  • 34. 34 In this window the user will enter login id and password to login. <login status> This window will show that the client will be successfully logged in. <Registration window>
  • 35. 35 If the user will not register then he/she will register him through this window. <chat window>
  • 36. 36 In this window the client write the message to another client and by click on send button the message will be receive by the another client.
  • 37. 37 Chapter 7 CONCLUSION & FUTURE WORK The primary goal of this project is to give an idea about Client Server Chat. This project has given us an in depth information about java networking and its applications in day today life. If internet lives up to its potential, it will revolutionize the way people interact with information technology. Limitations of the application are as follows: 1.) Before running the client application makes sure the server application is running. If server is not in running condition then you cannot start the chatting. 2.) Single point of failure, server goes down, the network goes down. Future work: 1. Includes many client 2. Can be implemented in large network like WAN. 3. Hi-speed multimedia transfer and audio video conferencing support. 4. Control all the computer system (clients) and sub-servers in large network like INTERNET.
  • 38. xxxviii REFERENCES [1] http://en.wikipedia.org/wiki/file [2] https://www.google.co.in/search?hl=en&q=flow+chart+for+file+sharin+system [3]https://www.google.co.in/#hl=en&sclient=psyab&q=+lan+chat+server+and+file+shari ng&oq=+lan+chat+server+and+file+sharing&gs_l=hp.3..0i22.55047.60640.2.62422.8.5. 0.0.0.3.610.2313.54.4.0...0.0...1c.1fG7iODb3Nw&bav=on.2,or.r_gc.r_pw.r_cp.r_qf.&fp= 13baa87b3aa60d4a&biw=1280&bih=545 [5]http://www.google.co.in/url?sa=t&rct=j&q=&source=web&cd=1&cad=rja&sqi=2&ve d=0CCAQFjAA&url=http%3A%2F%2Fwww.webopedia.com%2FTERM%2FJ%2FjQue ry.html&ei=quZqUMibDozMrQe44YCgBg&usg=AFQjCNGCkIKkCZnEVjSoLp2uPUD BcWm85g [6]http://powerpointpresentationon.blogspot.in/2009/09/powerpoint-presentation-on-java.html [7]http://www.google.co.in/search?sourceid=chrome&ie=UTF8&q=sdd+of+chat+server [8] http://technet.microsoft.com/en-us/library/ee221154(v=exchg.80).aspx [9] http://it.toolbox.com/blogs/enterprise-solutions/testing-a-sample-test-plan-3283 [10] http://www.d.umn.edu/~tcolburn/cs4531/assignments/team/2012/testplan.xhtml