E-Mail Management and Reporting System

Executive Summary

Designed and implemented an online E-mail management system which consists of a cron script to download emails from exchange server using Exchange Web Services and also parse the mail threads to relate them based on the unique subject.

Unique subject is considered as main thread and any mails which has RE: or FWD: are considered as child threads. The parent thread of any child thread is determined using the actual subject and is scanned across database table. A thread is called as an orphan if the system can’t find a parent to map up with.

The system also implements a user interface similar to any standard Mail Client where one can view the content, download the attachments, sort and paginate the records. This system also provides a statistical report of the number of conversations that take place for any given thread and also its aggregate count grouped by unique mail address.

Although Symfony2 has default logging, we implemented a log channel based on Monolog. We used Propel as the ORM to map the defined Models and  use of tidy class helped the system render the HTML mail content by patching the broken HTML content.

The code is hosted on Amazon EC2 instance and a snapshot of the instance is created to make sure a similar instance can be mounted from the image that has been created.

About our Client

HealthCare Company




LAMP,MS Exchange APIs, EC2, SOAP, Propel, Monolog, FOSUserBundle, KnpPaginatorBundle, GIT, jQuery, Javascript, Twig, HTML5, CSS, BitBucket