SMAS ( Simple Mail Accessing System ) _____________________________________________________________________________
• TITLE OF THE PROJECT: SIMPLE MAIL ACCESSING SYSTEM (SMAS) • INTRODUCTION: RFC 1939 dictates the features and commands of Post Office Protocol Version 3 (POP3). Further, RFC 821, and updated version RFC 5321 [2008] dictates the features and commands of Simple Mail Transfer Protocol (SMTP). These two protocols form the basis of Mail Interchange System or Applications. The client side is implemented as software, such as Windows Live Mail, Microsoft Outlook, Microsoft Office Outlook, or any other mail software packages. These client softwares are either pre-installed with the operating system or can be as a separate application but cannot embed with a website directly to facilitate users all over the network. The Server version is implemented as a stand-alone or distributed application, that uses the Operating System based Network Socket API to let the client applications connect to them and interchange the required mailing information’s as a byte stream. But these servers differ from any other servers on the Internet or Intranet. The Mail Server must implement the POP3 and SMTP protocols at application layer, as guided by RFC 1939, RFC 821 or RFC 5321. These protocols are nothing but text commands that the client send to the server to perform the required work. The server in return, processes the client command sent the client back with either the query status, reply message or error report. The client receives this reply and proceeds as required or can say “QUIT” to disconnect from server. Due to the complexity of the protocol’s processing on server, Mail Client systems are generally available as commercial packages. SRIJIT CHOWDHURY, Course: MCA
Page - i
SMAS ( Simple Mail Accessing System ) _____________________________________________________________________________
But, the limitations of these commercial packages lies with the volume of Mail processing did with them, and the higher cost of purchase or maintenance. These limitations make the commercial Mail Client packages inefficient for implementation or testing on a small-office or a home based Intranet work systems.
• OBJECTIVE OF THE PROJECT: The proposed project work, SMAS would deal with ‘SIMPLE MAIL ACCESSING SYSTEM’, which would be applied to all websites eager to get intra and internet mail access from their site. The project would be compiled to PHP and would be deployed to a APACHE Web Server with MySQL as database server. I designed this Mail Client with the following objectives in mind: 1. Implement the minimal set of POP3 and SMTP command set as required by their respective RFCs. 2. Minimize the cost of deployment and maintenance. 3. Can be deployed on any machine, with minimal hardware requirements. 4. Interoperable over multiple client, operating systems and network environment, with ease of use. 5. Simplified UI and deployment requirement can even be used by novice users.
• PROJECT CATEGORY:
SRIJIT CHOWDHURY, Course: MCA
Page - ii
SMAS ( Simple Mail Accessing System ) _____________________________________________________________________________
The project would be built with PHP using MySQL (Relational Database Management System). Care would be taken to fully utilise the PHP language (server side) and HTML (client side script). The RDBMS back-end engine would be optimally burdened for necessary searching, sorting and filtering via standard SQL queries.
• TOOLS/PLATFORM, HARDWARES & SOFTWARES TO BE USED: In the analysis phase I found that the ‘Simple Mail Accessing System’ might be developed by PHP 5.3 (An open source server side language) with MySQL/5.1.37 (A RDBMS back-end database engine) and Apache/2.2.12 (Win32) as web server. Firstly I choose Widows OS as the platform of my project due to its widest acceptability (though LINUX or UNIX is also good for this project.) Secondly I choose PHP to harvest the open source server side language with zero cost to use. Thirdly I choose MySQL due to its tightest integration with PHP. Fourthly I choose Dreamweaver8.0 for front end designing of web pages for descent looking. This project was developed on my Intel Dual Core 1.73GHz PC with 512MB DDR2-RAM installed with Windows XP Professional, and hopefully would run on P-III 550MHz PC with 128MB SDRAM installed with Windows 2000 Home Edition at the lowest end. Detail testing results would be submitted later.
SRIJIT CHOWDHURY, Course: MCA
Page - iii
SMAS ( Simple Mail Accessing System ) _____________________________________________________________________________
• A COMPLETE STRUCTURE OF THE PROGRAM:
(I) Analysis:
CONTEXT DIAGRAM INTER-MAIL USER
PERSON
Request for creating new account
Request replied Request for Inter-mail access
Request replied
SMAS
Request for Admin page access
ADMINISTRATOR
Request replied Request replied Request for Inter-mail access
Request for Intra-mail access
INTRA-MAIL USER
Request replied
ADMINISTRATOR
SRIJIT CHOWDHURY, Course: MCA
Page - iv
SMAS ( Simple Mail Accessing System ) _____________________________________________________________________________
Data Flow Diagram
WEB SERVER
(SMAS)
SENDER
SMTP SERVER
Database
Mail server
RECEIVER
File System
IMAP SERVER
POP SERVER
SRIJIT CHOWDHURY, Course: MCA
Page - v
SMAS ( Simple Mail Accessing System ) _____________________________________________________________________________
(ii) ERD
username id
name
password 1
registered_me mbers
level
1
user_pass
uid 1
Has
time
logged_users
1
countr y
level H ba Prio as s r m ed i ity ail nt in ra g
Has
message
ac_id
N
N
email_account
usernam e
mail sentdate
host
email password
SRIJIT CHOWDHURY, Course: MCA
mail_i d userto
userfrom
status subjec t
Page - vi
SMAS ( Simple Mail Accessing System ) _____________________________________________________________________________
•
Data Structure for all modules:
1. Table Name:
Field Name Id Name Email Password Country
Data Type Int Varchar Varchar Varchar Varchar
Leng th 4 65 65 65 65
registered_members
Purpose Unique identity the registered member Name of the registered member Email ID of registered member Password of the registered member Country name of the registered member
2. Table Name:
Field Name Uid Username user_pass Time Level
Data Type int (identity) Varchar Varchar Time Int
logged_users
Leng th 11 65 65 1
Purpose Unique identity of the logged user User name of logged member Hashed username-password combination Date and time of login User level
3. Table Name:
Field Name userTo userFrom Subject Message Status sentDate mail_id
Data Type Tinytext Tinytext Medium text Long text Text Text Int
Lengt h
80
Purpose User name of the recipient user (intra mail) User name of the sender (intra mail user) Subject of the mail Message (body) of the mail Status (read or unread) of the message Date of the sending mail Unique Identity of the mail
4. Table Name:
SRIJIT CHOWDHURY, Course: MCA
mail
email_account
Page - vii
SMAS ( Simple Mail Accessing System ) _____________________________________________________________________________
Field Name ac_id Username Email Password Host
Data Type Int Varchar Varchar Varchar Varchar
Lengt h 11 65 65 40 40
SRIJIT CHOWDHURY, Course: MCA
Purpose Unique identity of the email account Name of the registered user Email address of the account Password of the email account Host name of the email id
Page - viii