| Egg-Release-Mail documentation | Contained in the Egg-Release-Mail distribution. |
Egg::View::Mail::Mailer::SMTP - Mail is transmitted by using Net::SMTP.
package MyApp::View::Mail::MyComp;
use base qw/ Egg::View::Mail::Base /;
...........
.....
__PACKAGE__->setup_mailer('SMTP');
It is Mailer system component to transmit mail by using Net::SMTP.
Use is enabled specifying 'SMTP' for the first argument of 'setup_mailer' method.
SMTP host name.
Default is 'localhost'.
Value of 'Timeout' passed to Net::SMTP.
Default is '3'.
Value of 'Debug' passed to Net::SMTP.
This method is what 'send' method of Egg::View::Mail::Base calls it internally.
The obstacle is generated by operating the component built in when calling directly.
Masatoshi Mizuno <lushe&64;cpan.org>
Copyright (C) 2008 Bee Flag, Corp. <http://egg.bomcity.com/>, All Rights Reserved.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.6 or, at your option, any later version of Perl 5 you may have available.
| Egg-Release-Mail documentation | Contained in the Egg-Release-Mail distribution. |
package Egg::View::Mail::Mailer::SMTP; # # Masatoshi Mizuno E<lt>lusheE<64>cpan.orgE<gt> # # $Id: SMTP.pm 285 2008-02-28 04:20:55Z lushe $ # use strict; use warnings; use Carp qw/ croak /; use Net::SMTP; our $VERSION = '0.01'; sub mail_send { my $self= shift; my $data= $_[0] ? ($_[1] ? {@_}: $_[0]) : croak q{I want mail data.}; my $host= $data->{smtp_host} || 'localhost'; my $smtp= Net::SMTP->new( $host, Timeout => ($data->{timeout} || 3), Debug => ($data->{debug} || 0), ) || die qq{ '$host' Connection error. }; $smtp->mail($data->{from}); $smtp->to($data->{to}); $smtp->cc ($data->{cc}) if $data->{cc}; $smtp->bcc($data->{bcc}) if $data->{bcc}; $smtp->data(); $smtp->datasend(${$data->{body}}); $smtp->dataend(); $smtp->quit(); $self; } 1; __END__