The Mail Modules
The Mail modules operate at a higher level than the Net modules, interacting with external mail packages such as mail, mailx, sendmail, or a POP3 server in the case of POP3Client. This section describes some of the MailTools modules, Mail::Folder, and Mail::POP3Client.
Send Email with Mail::Mailer
The Mail::Mailer module interacts with external mail programs. When you use Mail::Mailer or create a new Mail::Mailer object, you can specify which mail program you want your program to talk to:
use Mail::Mailer qw(mail);
Another way to specify the mailer is:
use Mail::Mailer; $type = 'sendmail'; $mailprog = Mail::Mailer->new($type);
where $type
is the mail program. Once you’ve created a new object,
use the open
function to send the message headers to the mail program as a hash
of key/value pairs, where each key represents a header type,
and where the value is the value of that header:
# mail headers to use in the message %headers = ( 'To' => 'you@mail.somename.com', 'From' => 'me@mail.somename.com', 'Subject' => 'working?' );
This code represents headers where the recipient of the mail message is you@mail.somename.com, the mail was sent from me@mail.somename.com, and the subject of the mail message is "working?"
Once %headers
has been defined, it is
passed to open
:
$mailprog->open(\%headers);
You then send the body of the message to the mail program:
print $mailprog "This is the message body.\n";
Now, close the program when the message is finished:
$mailprog->close; ...
Get Perl in a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.