.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Email::Send::SMTP 3" .TH Email::Send::SMTP 3 2023-07-25 "perl v5.38.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME Email::Send::SMTP \- Send Messages using SMTP .SH SYNOPSIS .IX Header "SYNOPSIS" .Vb 1 \& use Email::Send; \& \& my $mailer = Email::Send\->new({mailer => \*(AqSMTP\*(Aq}); \& \& $mailer\->mailer_args([Host => \*(Aqsmtp.example.com:465\*(Aq, ssl => 1]) \& if $USE_SSL; \& \& $mailer\->send($message); .Ve .SH DESCRIPTION .IX Header "DESCRIPTION" This mailer for \f(CW\*(C`Email::Send\*(C'\fR uses \f(CW\*(C`Net::SMTP\*(C'\fR to send a message with an SMTP server. The first invocation of \f(CW\*(C`send\*(C'\fR requires an SMTP server arguments. Subsequent calls will remember the first setting until it is reset. .PP Any arguments passed to \f(CW\*(C`send\*(C'\fR will be passed to \f(CW\*(C`Net::SMTP\->new()\*(C'\fR, with some exceptions. \f(CW\*(C`username\*(C'\fR and \f(CW\*(C`password\*(C'\fR, if passed, are used to invoke \f(CW\*(C`Net::SMTP\->auth()\*(C'\fR for SASL authentication support. \&\f(CW\*(C`ssl\*(C'\fR, if set to true, turns on SSL support by using \f(CW\*(C`Net::SMTP::SSL\*(C'\fR. .PP SMTP can fail for a number of reasons. All return values from this package are true or false. If false, sending has failed. If true, send succeeded. The return values are \f(CW\*(C`Return::Value\*(C'\fR objects, however, and contain more information on just what went wrong. .PP Here is an example of dealing with failure. .PP .Vb 1 \& my $return = send SMTP => $message, \*(Aqlocalhost\*(Aq; \& \& die "$return" if ! $return; .Ve .PP The stringified version of the return value will have the text of the error. In a conditional, a failure will evaluate to false. .PP Here's an example of dealing with success. It is the case that some email addresses may not succeed but others will. In this case, the return value's \f(CW\*(C`bad\*(C'\fR property is set to a list of bad addresses. .PP .Vb 1 \& my $return = send SMTP => $message, \*(Aqlocalhost\*(Aq; \& \& if ( $return ) { \& my @bad = @{ $return\->prop(\*(Aqbad\*(Aq) }; \& warn "Failed to send to: " . join \*(Aq, \*(Aq, @bad \& if @bad; \& } .Ve .PP For more information on these return values, see Return::Value. .SS "ENVELOPE GENERATION" .IX Subsection "ENVELOPE GENERATION" The envelope sender and recipients are, by default, generated by looking at the From, To, Cc, and Bcc headers. This behavior can be modified by replacing the \&\f(CW\*(C`get_env_sender\*(C'\fR and \f(CW\*(C`get_env_recipients\*(C'\fR methods, both of which receive the Email::Simple object and their only parameter, and return email addresses. .SH "SEE ALSO" .IX Header "SEE ALSO" Email::Send, Net::SMTP, Net::SMTP::SSL, Email::Address, Return::Value, perl. .SH AUTHOR .IX Header "AUTHOR" Current maintainer: Ricardo SIGNES, <\fIrjbs@cpan.org\fR>. .PP Original author: Casey West, <\fIcasey@geeknest.com\fR>. .SH COPYRIGHT .IX Header "COPYRIGHT" .Vb 3 \& Copyright (c) 2004 Casey West. All rights reserved. \& This module is free software; you can redistribute it and/or modify it \& under the same terms as Perl itself. .Ve