Mail::Send (original) (raw)
NAME
Mail::Send - Simple electronic mail interface
SYNOPSIS
require Mail::Send;
$msg = Mail::Send->new;
$msg = Mail::Send->new(Subject => 'example', To => 'timbo');
$msg->to('user@host');
$msg->to('user@host', 'user2@example.com');
$msg->subject('example subject');
$msg->cc('user@host');
$msg->bcc('someone@else');
<span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>m</mi><mi>s</mi><mi>g</mi><mo>−</mo><mo>></mo><mi>s</mi><mi>e</mi><mi>t</mi><mo stretchy="false">(</mo></mrow><annotation encoding="application/x-tex">msg->set(</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.7778em;vertical-align:-0.1944em;"></span><span class="mord mathnormal">m</span><span class="mord mathnormal">s</span><span class="mord mathnormal" style="margin-right:0.03588em;">g</span><span class="mord">−</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="mrel">></span><span class="mspace" style="margin-right:0.2778em;"></span></span><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"></span><span class="mord mathnormal">se</span><span class="mord mathnormal">t</span><span class="mopen">(</span></span></span></span>header, @values); <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>m</mi><mi>s</mi><mi>g</mi><mo>−</mo><mo>></mo><mi>a</mi><mi>d</mi><mi>d</mi><mo stretchy="false">(</mo></mrow><annotation encoding="application/x-tex">msg->add(</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.7778em;vertical-align:-0.1944em;"></span><span class="mord mathnormal">m</span><span class="mord mathnormal">s</span><span class="mord mathnormal" style="margin-right:0.03588em;">g</span><span class="mord">−</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="mrel">></span><span class="mspace" style="margin-right:0.2778em;"></span></span><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"></span><span class="mord mathnormal">a</span><span class="mord mathnormal">dd</span><span class="mopen">(</span></span></span></span>header, @values); <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>m</mi><mi>s</mi><mi>g</mi><mo>−</mo><mo>></mo><mi>d</mi><mi>e</mi><mi>l</mi><mi>e</mi><mi>t</mi><mi>e</mi><mo stretchy="false">(</mo></mrow><annotation encoding="application/x-tex">msg->delete(</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.7778em;vertical-align:-0.1944em;"></span><span class="mord mathnormal">m</span><span class="mord mathnormal">s</span><span class="mord mathnormal" style="margin-right:0.03588em;">g</span><span class="mord">−</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="mrel">></span><span class="mspace" style="margin-right:0.2778em;"></span></span><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"></span><span class="mord mathnormal">d</span><span class="mord mathnormal">e</span><span class="mord mathnormal" style="margin-right:0.01968em;">l</span><span class="mord mathnormal">e</span><span class="mord mathnormal">t</span><span class="mord mathnormal">e</span><span class="mopen">(</span></span></span></span>header);
# Launch mailer and set headers. The filehandle returned
# by open() is an instance of the Mail::Mailer class.
# Arguments to the open() method are passed to the Mail::Mailer
# constructor.
<span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>f</mi><mi>h</mi><mo>=</mo></mrow><annotation encoding="application/x-tex">fh = </annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.8889em;vertical-align:-0.1944em;"></span><span class="mord mathnormal" style="margin-right:0.10764em;">f</span><span class="mord mathnormal">h</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="mrel">=</span></span></span></span>msg->open; # some default mailer <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>f</mi><mi>h</mi><mo>=</mo></mrow><annotation encoding="application/x-tex">fh = </annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.8889em;vertical-align:-0.1944em;"></span><span class="mord mathnormal" style="margin-right:0.10764em;">f</span><span class="mord mathnormal">h</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="mrel">=</span></span></span></span>msg->open('sendmail'); # explicit
print $fh "Body of message";
$fh->close # complete the message and send it
or die "couldn't send whole message: $!\n";
DESCRIPTION
Mail::Send creates e-mail messages without using the Mail::Header knowledge, which means that all escaping and folding must be done by you! Also: do not forget to escape leading dots. Simplicity has its price.
When you have time, take a look at Mail::Transport which is part of the MailBox suite.
METHODS
Constructors
Mail::Send->new(PAIRS)
A list of header fields (provided as key-value PAIRS) can be used to initialize the object, limited to the few provided as method: to
, subject
, cc
, and bcc
. For other header fields, use add().
obj−>∗∗add∗∗(obj->add(obj−>∗∗add∗∗(fieldname, @values)
Add values to the list of defined values for the $fieldname.
$obj->bcc(@values)
$obj->cc(@values) obj−>∗∗delete∗∗(obj->delete(obj−>∗∗delete∗∗(fieldname) obj−>∗∗set∗∗(obj->set(obj−>∗∗set∗∗(fieldname, @values)
The @values will replace the old values for the $fieldname. Returned is the LIST of values after modification.
$obj->subject(@values)
$obj->to(@values)
Sending
$obj->open(%options)
The %options are used to initiate a mailer object via Mail::Mailer::new(). Then Mail::Mailer::open() is called with the knowledge collected in this Mail::Send
object.
Be warned: this module implements raw smtp, which means that you have to escape lines which start with a dot, by adding one in front.
SEE ALSO
This module is part of the MailTools distribution, http://perl.overmeer.net/mailtools/.
The MailTools bundle was developed by Graham Barr. Later, Mark Overmeer took over maintenance without commitment to further development.
Mail::Cap by Gisle Aas aas@oslonett.no. Mail::Field::AddrList by Peter Orbaek poe@cit.dk. Mail::Mailer and Mail::Send by Tim Bunce Tim.Bunce@ig.co.uk. For other contributors see ChangeLog.
LICENSE
Copyrights 1995-2000 Graham Barr gbarr@pobox.com and 2001-2024 Mark Overmeer perl@overmeer.net.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html