Upload
pattabi-raman
View
146
Download
4
Embed Size (px)
Citation preview
MINI PROJECT FIRST REVIEW
GUIDE-P.KUMARESAN
BY-S.V.RAMAN08BIT185
Multi-user Voice Chat
Aim
The aim of this project is to design , develop and implement a voice chat application using java as the main programming language.
This application allows multiple users to chat with one other through an internet connection.
The users can be connected with each other either through internet or a local area connection like intranet.
This software is primarily developed by using java and java applets.
Compatibility
It requires a browser to execute.
It also requires a java application like dr java , net beans etc.
It is compatible with almost all of the leading browser.
Browsers
A few browsers that are supported are :-
Chrome by Google !Internet explorer from series 5 !Mozilla Firefox 3 and above ! A point that has to be noted here is that each
of the browsers’ above should have a compatible java add-on / plug –in available from “sun java”
Protocols
The main protocol suite followed by this application is internet protocol (IP). IP is a set of protocols that make transmission of data over various networks possible.
IP is installed in not only the server and client machines but also in the routers of the underlying network.
IP basically routes data across networks by supplying an unique id called the IP address.
VoIP
A variation of IP that is useful in the context of this application is the Voice over Internet Protocol (VoIP).
It is very similar to the IP suite but allows transmission of data in the form of voice much like a telephone network.
Key Features
It supports a large number if users.
It allows the existence of a special privileged user called the administrator.
Each person must have a log-in id and password to use the application.
Continued…
The special privileges afforded to administrators include adding or removing users and regulating access.
It is developed entirely using java.
Software Requirements
Java It is a network –friendly programming
language.It was originally invented by sun
microsystems.It enables applications to run reliably and is
used in design and development of a variety of network products ranging from multi player online games to mobile phone applications.
It also helps design GUI’s with ease.
Hardware Requirements
Works on even very basic machines.Requires minimum of 512 mb RAM for
optimal performance.Requires a sound card and microphone
support.For internet connectivity a suitable ethernet
cable is required.In case of wireless networks a Wi-Fi adapter
is required.
Scope
The main scope of this project is to facilitate user communication and interaction.
It allows users an alternate to traditional “text” type communication and the bandwidth guzzling video chat.
It’s main advantage is the support for conferences ,that is, more than two users catting at a time.
Continued…
It is installed and run as a java applet.
Hence it’s platform independent to a high degree.
It works well even over low-speed internet connections.
Modules
Server –side modulesChat server, server chat handler
Client –side modulesGeneral chat client ,shared client
Server -side
Chat server-
This module’s main aim is the establishment and maintenance of connections.
It is like an initiator of the server.
It also establishes the default port.
Server-chat handler sub modules
A sub module for checking socket establishment
A sub module to check if a user is idle for too long.
A sub module that performs various activities like the correct receipt of audio data , connection problems ,length of data stream etc.
A sub module to broadcast a text message to all users
Client side modules
General chat clientConsists all the code that shape the client
side view of the application.These include creating java swing objects.Designing interfaceHandling exceptions
Continued…
Shared client
This module assigns values to general environment variables based on their predicted usage.
The values are constrained to a size of 1 kilobyte.
Continued…
Recorder
This module records the current chat if asked so .
Data flow diagrams
Level 0 DFD
Level 0 dfd
This diagram represents the simple transaction of an user who attempts to connect to the chat server by giving his login credentials.
The user then authenticates the request and send s the result back.
Level 1 DFD
Level 1 DFD
This diagram explains three steps1) A login-validate couple
2) A connection Establish process
3) A search for Users Online/Logged in
Level 2 DFD
Level 2 DFD
This diagram shows all steps of dfd level 1 and has an additional role of “starting” a chat by selecting the required USER.
Constraints
Network constraintsThe main constraints involved here are the
speed and bandwidth of the network.Though the application is designed to work
on low bandwidth networks a certain minimum speed is required to ensure smooth and jitter-less voice chat.
The network faults also can be high depending on the nature of the underlying network.
Constraints
Interface
The main aim in designing the interface was to keep it simple and clear and avoid confusions and ambiguity.
Hence it was designed using java and thus doesn’t offer a highly sophisticated view.
Screen Shots
Screen Shots