NAME
Emailesque - Lightweight To-The-Point Email
VERSION
version 1.200000
SYNOPSIS
use Emailesque;
email {
to => '...',
from => '...',
subject => '...',
message => '...',
};
or
use Emailesque;
my $message = Emailesque->new({ driver => 'sendmail' });
$message->send({
to => '...',
from => '...',
subject => '...',
message => '...',
attach => [
'/path/to/file' => 'filename'
]
});
Important Note! The default email format is plain-text, this can be
changed to html by setting the option 'type' to 'html' in the hashref
passed to the new function or email keyword. The following are options
that can be passed within the hashref of arguments to the keyword,
constructor and/or the send method:
# send message to
to => $email_recipient
# send messages from
from => $mail_sender
# email subject
subject => 'email subject line'
# message body
message => 'html or plain-text data'
message => {
text => $text_message,
html => $html_messase,
# type must be 'multi'
}
# email message content type
type => 'text'
type => 'html'
type => 'multi'
# carbon-copy other email addresses
cc => 'user@site.com'
cc => 'user_a@site.com, user_b@site.com, user_c@site.com'
cc => join ', ', @email_addresses
# blind carbon-copy other email addresses
bcc => 'user@site.com'
bcc => 'user_a@site.com, user_b@site.com, user_c@site.com'
bcc => join ', ', @email_addresses
# specify where email responses should be directed
reply_to => 'other_email@website.com'
# attach files to the email
# set attechment name to null to use the filename
attach => [
$file_location => $attachment_name,
]
# send additional (specialized) headers
headers => {
"X-Mailer" => "SPAM-THE-WORLD-BOT 1.23456789"
}
Please note that if you get an error using basic sendmail functionality,
chances are good that your Mail Transfer Agent (email system) is not
setup properly.
DESCRIPTION
Eailesque provides an easy way of handling text or html email messages
with or without attachments. Simply define how you wish to send the
email, then call the email keyword passing the necessary parameters as
outlined above. This module is basically a wrapper around the email
interface Email::Stuffer.
USAGE EXAMPLES
# Handle Email Failures
my $msg = email {
to => '...',
subject => '...',
message => $msg,
attach => [
'/path/to/file' => 'filename'
]
};
die $msg unless $msg;
# Add More Email Headers
email {
to => '...',
subject => '...',
message => $msg,
headers => {
"X-Mailer" => 'SPAM-THE-WORLD-BOT 1.23456789',
"X-Accept-Language" => 'en'
}
};
# Send Text and HTML Email together
email {
to => '...',
subject => '...',
type => 'multi',
message => {
text => $txt,
html => $html,
}
};
# Send mail via SMTP with SASL authentication
{
...,
driver => 'smtp',
host => 'smtp.googlemail.com',
user => 'account@gmail.com',
pass => '****'
}
# Send mail to/from Google (gmail)
{
...,
ssl => 1,
driver => 'smtp',
host => 'smtp.googlemail.com',
port => 465,
user => 'account@gmail.com',
pass => '****'
}
# Send mail to/from Google (gmail) using TLS
{
...,
tls => 1,
driver => 'smtp',
host => 'smtp.googlemail.com',
port => 587,
user => 'account@gmail.com',
pass => '****'
}
# Debug email server communications, prints negotiation to stdout
{
...,
debug => 1
}
# Set headers to be issued with message
{
...,
from => '...',
subject => '...',
headers => {
'X-Mailer' => 'MyApp 1.0',
'X-Accept-Language' => 'en'
}
}
# Send email using sendmail, path is optional
{
...,
driver => 'sendmail',
path => '/usr/bin/sendmail',
}
AUTHOR
Al Newkirk <anewkirk@ana.io>
COPYRIGHT AND LICENSE
This software is copyright (c) 2010 by Al Newkirk.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.