Software is like sex... It's better when it's free.

Projects - Mail-Attitude

Mail-AttitudeMail-Attitude is a website that I made with Software-Attitude company, the technical subsidiary of Hardware-Attitude.

This subsidiary produced many websites for clients. Mail-Attitude is intended to allow them to have a newsletters' system delivered with their website in the packaging.

This site offers several features to the client:

  • Campaign Management (creation, modification, deletion)
  • Creating newsletter
  • Creation of contacts
  • Manage contacts / distribution lists
  • Test for sending newsletters
  • Planning of sending real-newsletters
  • Statistics given for the customer
    • Y axis
      • Number of shipments
      • Number of reading
      • Number of clicks
      • Number of error mails
      • Number of Registered
      • Number of Deregistration
      • Play Rate
      • Clic Rate
      • Error Rate
      • Per day
      • Per week
      • Per month
      • By year
      • By news
      • By domain name
    • Settings :
      • By campaign
      • By news
      • Bounds
The client can easily manage different campaigns and newsletters, create his address book to fill in mailing lists the senders of the news.

At the launch of its newsletters, the customer write the news with a BBCode, it can also generate dynamic fields will be replaced by the respective information to each recipient at the time of shipment.
Then, he can choose the mailing lists to which it wants to send its newsletters and plan the date of dispatch.

On the server running several crontab who are responsible to call PHP script at the desired times (at night) :
  • A 1st script is responsible for watching all the emails waiting to connect to a remote SMTP server, and in a synchronized manner, then dynamically parse the contents of mails, and updating statistics.
  • A 2nd script is responsible for connecting to a POP server on a dedicated messaging for mail in error, move on the server and then delete them.
  • A 3rd script analysis one by one in the error messages that have been displaced, in trying to retrieve the header information located at the time of shipment to identify the consignee in error. If no recipient is found, the script relies on diagnosis-code in the mail to update the statistics.
The statistics is a very advanced part of the project. The client can know almost everything about his newsletters (see list above).
This is the range of possibilities in statistics which gives her power.
Some tips in bulk:

  • To find the dates of opening mail, in newsletters is contained an image of 1px transparent that is generated by a PHP script. This script updates the statistics when reading mails (with the ID as a parameter)
  • In terms of clicks, the URLs are changed on the fly when sending emails to point on a PHP script. This script updates the stats and then redirects to the destination transparently on top of his choice
  • For errors, it's the script launched by the 3rd crontab
  • Pages dedicated to subscribe and unsuscribe also update the stats
  • The remainder of the obvious statistical
This project was very rewarding from a human and professional view.
It was the 1st time I was prompted to make PHP in company!
I learned to interact with a pop server and smtp server, I also have difficults with statistics or regex but ultimately it was a very good experience with a team young, friendly, dynamic ... What's up :)
Available online on this location :


Prev Play Stop Next