Navu

29
Project Report on Online Messaging Application Submitted to LOVELY PROFESSIONAL UNIVERSITY in partial fulfillment of the requirements for the award of degree of Bachelor in Computer Applications Submitted By: Supervised By: Navdeep Singh (11210553) Mr. Raj Singh Banti Ram(11201084) Assistant Professor Ashish Yadav(11202180) Isaac Thapar(11200383) Page 1 of 29

description

INstant Messager

Transcript of Navu

Page 1: Navu

Project Report

on

Online Messaging Application

Submitted to

LOVELY PROFESSIONAL UNIVERSITY

in partial fulfillment of the requirements for the award of degree of

Bachelor in Computer Applications

Submitted By: Supervised By:

Navdeep Singh (11210553) Mr. Raj SinghBanti Ram(11201084) Assistant ProfessorAshish Yadav(11202180)Isaac Thapar(11200383)

LOVELY FACULTY OF TECHNOLOGY & SCIENCES

LOVELY PROFESSIONAL UNIVERSITY

PUNJAB 2014-2015

Page 1 of 21

Page 2: Navu

ACKNOWLEDGEMENT

If words are considered as a symbol of approval and token of appreciation then let the words play the heralding role expressing our gratitude.

The satisfaction that accompanies that the successful completion of any task would be incomplete without the mention of people whose ceaseless cooperation made it possible, whose constant guidance and encouragement crown all efforts with success. We are grateful to our project guide Mr. Raj Singh for the guidance, inspiration and constructive suggestions that helpful us in the preparation of this project. We also thank our collegues who have helped in successful completion of the project.

Page 2 of 21

Page 3: Navu

Table of Contents

Sr. No Topic Page Number

1 Organizational Overview 05

2 Profile of the Problem 07

2.1 Definition 07

2.2 Description of Present System 07

2.3 Limitation of Present System 07

2.4 Proposed System 08

2.5 Existing Software 08

2.6 DFD for present system 11

2.7 What’s new in the system to be developed? 13

3 Problem Analysis 14

3.1 Product definition 14

3.2 Feasibility Analysis 15

3.3 Project Plan 16

4 Software Requirement Analysis 17

4.1 General Description 24

4.2 Specific Requirements 24

4.3 Implementation 25

4.4 Implementation of the project 25

4.4 Post Implementation and Software Maintainanc 26

5 Project Legacy 32

5.1 Current Status of the project 34

5.2 Remaining Areas of concern 36

7 5.3 Technical and Managerial lessons learnt 37

8 Source Code

40

9 Screen Shots 42

10 Bibliography 43

Page 3 of 21

Page 4: Navu

1. Organizational Overview

This project has been primarily developed by the 4 group members :- Navdeep Singh, Banti Ram, Ashish Yadav and Isaaz Thapar. The overall time period taken for the completion is 4 months and in that a reliable and compatible online Messaging app has been developed.

Basically the app consists of a model very similar to whatsapp but different in many respects and with additional functionality that is very useful . This online messaging app allows

1.1 Introduction

Language is an integral part of human culture. There are many aspects that make upcommunication, but humans are unique in that we have an organized spoken language, whichallows us to communicate on a deeper, more personal level. As we move further into theelectronic age, we rely more and more on technology. In the language realm, this technology hastaken us from face-to-face communication and letter writing, to inventions such as the telephone,the cell phone, online chat rooms, and finally, one of the newest and fastest growing forms ofcommunication, Instant Messenger. Looking at how quickly IM has spread, we must ask howwell it stacks up next to these other forms of communication that we have at our disposal.Results from an online survey we conducted indicate that Instant Messenger holds a strongsecond, right behind face-to-face communication, as the mode of interaction used most often:35% of the respondents marked face-to-face communication as the form they used most, while33% chose Instant Messenger. In addition, 63% of respondents reported using InstantMessenger five or more times a day. What is the significance of this new form ofcommunicating, in which two people can hold a conversation without even opening theirmouths? We believe it rests in how instant messaging affects actual, face-to-face contact

The Internet has revolutionized the way we communicate. E-mail has been the most rapidly adopted form of communication ever known. Less than two decades ago, not many people had

Page 4 of 21

Page 5: Navu

heard of it. Now, many of us e-mail instead of writing letters or even calling people on the phone. People around the world send out billions of e-mail messages every day.

But sometimes even e-mail isn't fast enough. You might not know if a person you want to e-mail is online at that moment. Also, if you're e-mailing back and forth with someone, you usually have to click through a few steps. This is why instant messaging (IM) has become so popular.

With IM, you can keep a list of people you interact with. You can IM with anyone on your buddy list or contact list as long as that person is online. You type messages to each other into a small window that shows up on both of your screens.

Most IM programs provide these features:

Instant messages - Send notes back and forth with a friend who is online Chat - Create a chat room with friends or co-workers

Web links - Share links to your favorite Web sites

Video - Send and view videos, and chat face to face with friends

Images - Look at an image stored on your friend's computer

Sounds - Play sounds for your friends

Files - Share files by sending them directly to your friends

Talk - Use the Internet instead of a phone to actually talk with friends

Streaming content - Real-time or near-real-time stock quotes and news

Mobile capabilities - Send instant messages from your cell phone

In this article, you will learn about the history of instant messaging and how it works. You will also learn what the major IM programs are, what makes them different from each other and what the future holds for IM.

How does online chat work?

The technologies that allows users to converse in real time via typed messages are the chat servers and the chat clients. These special servers allow the messages to be quickly received and posted so that the chat clients can receive the messages and display them in the window on the users' computers. Fortunately, most chat clients are relatively inexpensive shareware programs, and there are a number of chat servers that let the user connect to them for free. Online chat could be an alternative to meeting in a traditional classroom. While all of the participants would still be able to freely converse with one another, they would carrying on the conversation from the

Page 5 of 21

Page 6: Navu

comfort of their own home, thus avoiding the expense and inconvenience of traveling to another place.

Chat server:

A chat server is a specially equipped computer connected to the internet that allows users with chat clients to converse with one another via typed messages in real time. There are a great number of chat servers which let users connect for free. Some of the more popular chat servers are dal.net, under.net, etc. You can find a list of many chat servers on the chat resources page.

Chat client:

A chat client is a software program that allows users to connect to chat servers and communicate with other users via a chat room. The majority of chat clients are shareware programs easily downloadable from various sites on the internet, and they are available

for a wide variety of computer platforms.

Typically, a chat client supplies the user with a means of connecting to a chat server, and then the program lets the user communicate with other users via a window where messages are shared. Most chat clients also have smaller windows which show the number and identity of the other users in the chat room, and some of the more complex programs even allow users to choose icons and sounds to represent them in the chat rooms.

Types of Chat

1. Synchronous Chat: Text only web based synchronous forum that enables multiple users to be online and in the same online "room" typing their comments to each other. As soon as the user clicks "enter" his/her text message appears immediately on the screen of all users who are in the "room." Messages appear in the order in which they were entered.

2. Asynchronous Chat: Asynchronous Chat is way of saying Forum, Message Board or Bulletin Board.

Synchronous Chat

There are three types of online chat:

Web-based chat rooms:

Page 6 of 21

Page 7: Navu

o Virtual forums that allow for messages to be written and read in real time by all individuals present in the “room”. A chat room is usually devoted to a particular topic such as movies, sports, emerging technologies, and others.

o Web-based chat rooms can be located throughout the Internet on pages such as fan club websites, online gaming sites and personal websites, among others. Individuals can discuss a variety of topics, including computers, games, movies, music. Many popular search engines have their own chat platform and can be run under most operating systems, provided that the software that allows you to communicate with others in the chat room has been installed.

Real-time chat:

o Real-time chat, sometimes referred “instant messaging,” offers users the ability to communicate in real time with individuals who have been added to a “buddy” list. Generally, the chat is centered on an actual conversation as opposed to a theme which would be found in a web-based chat room or an Internet Relay Chat channel.

o Real-time chat is messaging software that lets you communicate with friends and colleagues in real time. Features include a quick launch bar, music file support, and a new answering service. Some versions also work with Internet Transmission Control Protocol (TCP)/Internet Protocol (IP) connections, allowing communication behind firewalls (see NETWORK fact sheet for more on TCP and IP).

Advantages of Instant Message Programs are:  

o You can be alerted when your friends, family or chat partners are online.

o You can leave messages for Chat partners when they are not online.

o You can send files, share web site information, and surf the internet together.

o You can arrange a group chat so additional users of the software can join in on your chat session.

o The Cost = free.  Many Instant Message Programs are free! 

Below are some of the most common Internet Message Programs. 

Instant Messaging Clients (IM)  iChat

Page 7 of 21

Page 8: Navu

Google Talk ICQ

Adium Kopete

AOL instant Messenger Miranda

Ebuddy MSN Instant Messenger

Pidgin Yahoo Instant Messenger

Psi Trillian

Page 8 of 21

Page 9: Navu

Page 9 of 21

Page 10: Navu

2 Profile of Problem

Basically there are many problems faced by various online messenger apps some of them are:-

1) Availability of Social Add-ons:- Many applications such as Whatsapp, and viber lack some key components of social add-ons that affect the viability of their usability for example:- Moments Feed, Look Around, Shake, Drift Bottle are provided by wechat and due to this reason only , they enhance the communication mechanism

2) Backup Facilityb3) Privacy and Security Concerns:-4) Voice and Sound Quality:- When it comes to the quality of sound medium, taking a

look at wechat precisely, The video and voice chat it provides are not at the best quality and it feels that WeChat is made only for social and not for professional communication

5) Boring Interface: Some application such as KIK messenger among others has a boring interface which is dull and at times too simple. The application it’s quite simple and that tends to be boring. It looks the same as iMessage or BBM and since we all like powerful applications with great features and graphics, this application might not be up to our standards.

6) Payment for integrated features:-Most of awesome stickers that are presented by various messaging apps are not free and it will cost you money to buy it.Line messaging app for instance, doesn’t support video messaging, which makes other application that have, most useful than this one.

7) Buffering Issues: It has been realized that Viber of all the messaging apps has some issues related to buffering and reliability. For example It doesn’t shine when you are not connected to a Wi-Fi or 3G internet connection, so when you are not on LTE or 3G, you might expect some buffering issues.

8) Adding Contacts Manually:WeChat has another implementation block. What happens in this is Contacts have to be manually added unlike whats app and viber which have an inbuilt functionality that allows you to automatically add contacts without any hassles from the user side

9) Bulky Applications: It has been increasingly found that several applications are Very Bulky (more than 25 MB), This simply means that users not having the added benefit of a high speed internet connection and are forced to survive on slow internet packages such as a 2G Connection , they would be at a loss.

10) Time Period to log in and out:- Another significant barrier often noticed is that Skype has a long time to log in and out of the interface which is a major blow considering the

Page 10 of 21

Page 11: Navu

fact that everyone in this day and age wants a faster response medium to go with their quick interactions in personal and professional life.

11) Consumption of memory:- It has been found out that WhatsApp consumes very less memory, whereas file size of WeChat is twice of that of WhatsApp and has heavy on entry-level smartphones.

12) Inter phone/ PC calling mechanism:- At present situation , only Viber has full desktop functionality that means you can video call from your phone to any PC who has viber on their computer

13) Chatting to people not having Whatsapp:You can chat to friends that only have smart phones supporting this application and to friends having their account on Whatsapp. You can just send 100 messages in a month to friends not having Whatsapp on their phone.

14) Lack of privacy as anyone can misuse profile picture : Your profile picture is visible to every person having your contact number and using this app, whether known by you or not.

2.2 Description of Present System

Page 11 of 21

Page 12: Navu

This module basically discusses the functionality and features present in the existing systems basically concerning the online messaging apps on display today.

Introduction

WeChatWeChat is a mobile text and voice messaging communication service developed by Tencent in China, first released in January 2011. It is the largest standalone messaging app by monthly active users.

The app is available on Android, iPhone, BlackBerry, Windows Phone and Symbian phones, and there are also Web-based and OS X clients but these require the user to have the app installed on a supported mobile phone for authentication. As of August 2014, WeChat has 438 million active users; with 70 million outside of China.

Users can register WeChat with Facebook account or sign up with phone number. WeChat currently supports phone numbers of more than 100 countries to register. Registration cannot be done directly through Tencent QQ. But users can connect their WeChat account with Tencent QQ account after registering through phone number.

WeChat provides text messaging, hold-to-talk voice messaging, broadcast (one-to-many) messaging, sharing of photographs and videos, and location sharing. It can exchange contacts with people nearby via Bluetooth, as well as providing various features for contacting people at random if desired (if these are open to it) and integration with social networking services such as those run by Facebook and Tencent QQ. Photographs may also be embellished with filters and captions, and a machine translation service is available.

The 'Moments', 'Shake',and 'People Nearby' are the three main features that Are totally new to users. Especially for 'Shake' function, people used this function to get red pocket money from

Page 12 of 21

Page 13: Navu

Chinese Spring Festival Gala by shaking their mobile phones. All the money were released by different companies.

WeChat is being promoted in India via gaming site Ibibo, in which Tencent holds a stake

This China-made service has been compared to Facebook, since, like Line, because of the way it mixes a range of social network-like features with messaging. WeChat signed up football Lionel Messi as it bids to become popular beyond simply China and Asia.

WeChat includes  the usual messaging features — multimedia/group chat/push-to-talk voice messages — alongside voice/video calls and opt-in accounts from brands, and some integrated services. WeChat includes discovery features, which are becoming popular ways to meet new people (i.e. date), perhaps in a crowded bar

WhatsApp

WhatsApp is an instant messaging app for smartphones that operates under a subscription business model. The proprietary, cross-platform app uses the Internet to send text messages, images, video, user location and audio media messages.

WhatsApp needs little introduction since it is arguably the world’s most popular messaging app, with more than 300 million people using it each month. Simplicity is at the core of the service, to the point that even the least-tech-savvy of folks — such as mums, dads, grandmas and granddads — should be able to send text messages, photos and voice messages.

The service costs $0.99 for a one-year subscription — although it is free for the first year — and it supports a wide range of phones.

Page 13 of 21

Page 14: Navu

In January 2015, WhatsApp was the most globally popular messaging app with more than 700 million active users. In April 2015, WhatsApp reached 800 million active users.

WhatsApp Inc., based in Mountain View, California, was acquired by Facebook on February 19, 2014, for approx. US$22 billion

Like the others, WhatsApp is free to download but has in-app purchases. You can use the app totally free for the first year but from then on you'll have to pay 65p per year. This isn't much but it makes it less attractive than its fully free rivals. Like Viber, WhatsApp uses your phone contacts and displays the ones which have the app installed. However, it does use the phone number associated to your SIM so you can't use it on multiple devices. This does mean that you don't have to log in and the app will save messages offline

Viber

Viber is an instant messaging and Voice over IP (VoIP) app for smartphones developed by Viber Media. In addition to instant messaging, users can exchange images, video and audio media messages. The client software is available for Mac OS, Android, BlackBerry OS, iOS, Series 40, Symbian, Bada, Windows Phone, and Microsoft Windows.6 A 64-bit Linux version is available in both .deb (Debian & Ubuntu) and .rpm (Fedora & openSUSE) package formats. Viber works on both 3G/4G and Wi-Fi networks. It first requires installation on a phone in order to work on a desktop operating system environment Viber has over 100 million monthly active users from its 280 million global registered users Viber is a popular app for making video calls on your smartphone. Unlike Skype it was built to be on mobile first, and it only introduced a desktop client recently.

In addition to video and voice calls, Viber offers text chat that includes the very Asia concept of stickers. The app was bought by Japanese e-commerce giant Rakuten in early 2014, and there are plans to add gaming and shopping features in the future.

Page 14 of 21

Page 15: Navu

Viber supports even more mobile platforms than Skype including Symbian and Bada, although there's no Modern UI app for Windows 8. It's free and there are no ads which is great from a user point of view. You can share photos, videos and locations. You can even paint a doodle or draw over photo before sending it. Groups of up to 40 people can have a conversation and, whether you like them or not, there are both emoticons and stickers. The app handily syncs with your contact list, detecting which have Viber.

2.3 Limitation of Present SystemThere are several limitations regarding the application of the prevailing system , some of them are:

Whatsapp : 1. Though It is understood that this app was created with the sole objective of replacing chat we think there should be an option for socializing and meeting new people; especially for people like us who love strangers. Perhaps an option to add via email or  name?2.No option for video or voice call.3. Audio and any other things we send as attachments gets downloaded to the device. Can't we just  view them online and choose whether or not to download4. No way to turn it off completely. 5. No option to send videos or music.

Wechat:

1. No status of "Online" or "Offline". Hard o make out if a user is active or deleted the app from his/her phone.2. Mostly Chinese users. yes the language barrier.

Over time, Science and Tech has advanced to give IMs and Smart Phones a whole new look. all these three messengers are great. It actually depends on which one your friends and family uses, so you can stay connected.

Because, staying connected is more important than having a lot of features but no one to use it with.

Line:Page 15 of 21

Page 16: Navu

1. As with most things, too much features makes this app a bit sloppy. Android 2.3.xx users might find it a bit irritating to use Line, as the UI is not suitable and keeps force closing when network is weak during a call.2. The option of audio call surely brings to us the want of video call. Especially now with most people on a WiFi network with unlimited data usages. 3. The Audio messages(voicemails) sent are often sloppy and have to be downloaded as an attachment unlike WeChat.

2.2 Proposed SystemThe application developed by us has provided many a different alternative and is definetly a good option as far as practical application is concerned. The app basically works like any other online messenging application , Its basic features are calling, sending messages through internet and saving messages in the database even when the user is not in online state.

Problem Analysis

Security risks: Crackers (malicious "hacker" or black hat hacker) have consistently used IM networks as vectors for delivering phishing attempts, "poison URLs", and virus-laden file attachments from 2004 to the present, with over 1100 discrete attacks listed by the IM Security Center in 2004–2007. Hackers use two methods of delivering malicious code through IM: delivery of viruses, trojan horses, or spyware within an infected file, and the use of "socially engineered" text with a web address that entices the recipient to click on a URL connecting him or her to a website that then downloads malicious code. Viruses, computer worms, and trojans usually propagate by sending themselves rapidly through the infected user's contact list. An effective attack using a poisoned URL may reach tens of thousands of users in a short period when each user's contact list receives messages appearing to be from a trusted friend. The recipients click on the web address, and the entire cycle starts again. Infections may range from nuisance to criminal, and are becoming more sophisticated each year.

IM connections usually occur in plain text, making them vulnerable to eavesdropping. Also, IM client software often requires the user to expose open UDP ports to the world, raising the threat posed by potential security vulnerabilities.

Page 16 of 21

Page 17: Navu

Compliance risks: In addition to the malicious code threat, the use of instant messaging at work also creates a risk of non-compliance to laws and regulations governing use of electronic communications in businesses. In the United States alone there are over 10,000 laws and regulations related to electronic messaging and records retention. The better-known of these include the Sarbanes–Oxley Act, HIPAA, and SEC 17a-3. Clarification from the Financial Industry Regulatory Authority (FINRA) was issued to member firms in the financial services industry in December, 2007, noting that "electronic communications", "email", and "electronic correspondence" may be used interchangeably and can include such forms of electronic messaging as instant messaging and text messaging.Changes to Federal Rules of Civil Procedure, effective December 1, 2006, created a new category for electronic records which may be requested during discovery in legal proceedings. Most nations also regulate use of electronic messaging and electronic records retention in similar fashion as the United States. The most common regulations related to IM at work involve the need to produce archived business communications to satisfy government or judicial requests under law. Many instant messaging communications fall into the category of business communications that must be archived and retrievable.

Security and archiving: In the early 2000s, a new class of IT security provider emerged to provide remedies for the risks and liabilities faced by corporations who chose to use IM for business communications. The IM security providers created new products to be installed in corporate networks for the purpose of archiving, content-scanning, and security-scanning IM traffic moving in and out of the corporation. Similar to the e-mail filtering vendors, the IM security providers focus on the risks and liabilities described above.

With rapid adoption of IM in the workplace, demand for IM security products began to grow in the mid-2000s. By 2007, the preferred platform for the purchase of security software had become the "computer appliance", according to IDC, who estimate that by 2008, 80% of network security products will be delivered via an appliance.

By 2014 however, the level of safety offered by instant messengers was still extremely poor. According to the EFF security review, only 7 out of 39 instant messengers had a perfect score (namely Chatsecure, Cryptocat, Signal/Redphone, Silent Phone, Silent Text and Textsecure, whereas the most popular instant messengers at this time (Whatsapp, Snapchat, Facebook Chat and Hangouts only attain a score of 2 out of 7. Skype even just attained a number of 1 out of 7.A number of studies have shown that IM services are quite vulnerable for providing user privacy

Page 17 of 21

Page 18: Navu

2.6 DFD for present system:

SYSTEM ANALYSIS

2.1 System Objectives

Communication over a network is one field where this tool finds wide ranging application. Chat application establishes a connection between 2 or more systems connected over an internet. This tool can be used for large scale communication and conferencing in an organization or campus of vast size, thus increasing the standard of co-operation. In addition it converts the complex concept of sockets to a user friendly environment. This software can have further potentials, such as PC to Phone communication options that can be worked upon later.

2.2 Relation to External Environment

Page 18 of 21

Page 19: Navu

This tool helps in two major aspects -1)Resolving the names of all the system connected in a network and enlisting them.

2)Used for communication between multiple systems enlisted in the resolved list.

2.2 Design Considerations

Approach:

The tool has been designed using C# (Windows Form Application).

Methodology:

The user interacts with the tool using a GUI.

The GUI operates in two forms, the List form & the chat form. The List form contains the names of all the systems connected to a network. The chat form makes the actual communication possible in the form of text.

Page 19 of 21

Page 20: Navu

2.4 System Architecture

The chat application works in two forms.

List form:

In this form, all the names of the systems connected to a network are enlisted. These names can later be used for communication with the help of mouse event, or in simple language: a click or a double click.

Chat form

This form is called only when an element is selected from the List form. In this form, a connection is created between the host system and the selected system with the help of a socket.

SYSTEM SPECIFICATION

Hardware requirements

In hardware requirement we require all those components which will provide us the platform for the development of the project. The minimum hardware required for the development of this project is as follows—

Ram- minimum 128 MB

Hard disk—minimum 5 GB

Processor- Pentium 3

Floppy drive 1.44” inch

CD drive

These all are the minimum hardware requirement required for our project. We want to make our project to be used in any. Type of computer therefore we have taken minimum configuration to a large extent.128 MB ram is used so that we can execute our project in a least possible RAM.5 GB hard disk is used because project takes less space to be executed or stored. Therefore minimum hard disk is used. Others enhancements are according to the needs.

3.2 Software requirementsPage 20 of 21

Page 21: Navu

Software’s can be defined as programs which run on our computer .it act as petrol in the vehicle.

It provides the relationship between the human and a computer. It is very important to run software to function the computer. Various software’s are needed in this project for its development.

Which are as follows—?

Page 21 of 21