Newsletter 1.2

Newsletter is a free and simple tool intended for website owners, wishing to send email newsletters to their subscribed users.

  Add it to your Download Basket!

 Add it to your Watch List!


Rate it!
send us
an update
GPL (GNU General Public License) 
Patrick Ahlbrecht
ROOT \ Communications \ Email
Newsletter is a free and simple tool intended for website, web community or web portal owners, wishing to send email newsletters to their subscribed users.

This software runs directly on LAMP servers. It does not provide a GUI of it's own, but is intended to be controlled via webinterface.

The newsletter to be sent is constructed by submitting a template text file, which is then personalized by taking the according information directly from the website's database (only MySQL is supported at this time). The result will afterwards be sent via SMTP protocol through a locally installed mailserver.

Please note, that newsletter is not intended to be used for sending spam and therefore is designed in a way, to prevent this kind of usage, by making an own mailserver mandatory.

Here are some key features of "Newsletter":

Detach from controlling terminal (so it can be started from a PHP webinterface).
Allows for fully customized mail
Mail is sent via SMTP through a local or remote MTA
Stop and continue operation
Logging of progress


GNU make, groff, gzip
Linux (v2.4.20)
libgdbm (v1.8.3)

Building and installing

Compiling the program should simply be a matter of doing:

make install

Instead of "make install", one may want to build RPM packages. A specfile can be found in the data/dist directory after the first successful build.


A sample config file and email template can be found in the data directory. Assuming the default configuration, connect to your database as database admin, and create a new database "px":

mysql> create database px;

Next a new user "px" will be needed:

mysql> grant usage,select on px.* to px@localhost identified by 'px';

Now disconnect from the database and reconnect with the new user. Generate a new table named "px", containing at least the two columns "mail" and "name":

mysql> create table px (email blob, name blob);

Fill this table with some data e.g.:

mysql> insert into table px (mail,name) values ("","John Doe");
mysql> insert into table px (mail,name) values ("","Jane Doe");

Of course you should use some real addreses, pointing to a mailbox, you own here.

Now it's testing time:

./massmailer -c massmailer.cfg -t testmail.txt -l result.log -s $USER

Check your mailbox. If you've got mail, you may delete the testdata now.

Last updated on August 22nd, 2008

#email newsletters #website newsletters #mailing list #email #mailing #newsletter #LAMP

Add your review!