Monthly Archives: June 2016

Simple Email Notifications With Perl

I’m working on an application that needs to send email notifications using a Perl-based back end.  In my spare time, I’m developing a scheduling platform for yard service/lawn care applications.  In prototyping solutions on a Godaddy shared hosting server, my ability to install Perl packages in the hosted environment is very limited, so I am forced to work with what is available to me.  For sending email, the available Perl packages include Net::SMTP.  Luckily, using Net::SMTP to send email is easy and straight-forward, however I had some difficulty figuring out how to correctly send the Subject part of an email, primarily because most of the documentation on the web is not correct.  Net::SMTP is a relatively low level package, so all you need to understand for the correct usage of this package is how to send email by hand.  Here’s a good tutorial for using telnet on port 25 of a known SMTP Server to manually craft an email.

Here’s how to send an email with Perl, using Net::SMTP, which contains a proper Email Subject:

use strict;
use warnings;

use Net::SMTP;

my $smtp = Net::SMTP->new("localhost", Hello => '', Timeout => 30, Debug => 1);
$smtp->datasend("Subject: Email Test");
$smtp->datasend("Hallo Welt!");