in reply to Re: getting SMTP failure codes
in thread getting SMTP failure codes
My only improvement would be to loop on the call to 'recipient( )' and capture the results yourself. Please see below. 'recipient( )' does this internally, anyway. Good luck. -c
#test_mail.pl use Net::SMTP; use Net::Cmd; $smtp = Net::SMTP->new( Host => '192.168.55.173', Debug => 1, ); die "Did not connect to host..." unless defined($smtp); #you can remo +ve this, so it would die w/ your address $smtp -> mail("root\@test-server.my.home"); @good = (); @bad = (); @mess = (); foreach $toadr (('good_address@my.home','bad_address@my.home')) { if ($smtp -> recipient( $toadr,{ SkipBad => 0, Notify => ['FAILURE +']})) {; #make result boolean, 1 ::= good push( @good, $toadr ); } else { push( @bad, $toadr ); push( @mess, $smtp->message() ); } } $smtp -> data(); $smtp -> datasend("TO: good_address@my.home\n"); $smtp -> datasend("TO: bad_address@my.home\n"); $smtp -> datasend("SUBJECT: Test e-mail from root\n"); $smtp -> datasend("\n"); $smtp -> datasend("A test message.\n"); $smtp -> dataend(); print "These address(es) went: @good\n"; print "These address(es) were bad \[ and why \]:\n"; for (0..$#bad) { print "$bad[$_] \[ $mess[$_] \]\n"; } $smtp -> quit();
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: getting SMTP failure codes
by e5z8652 (Novice) on Feb 05, 2010 at 18:07 UTC | |
by Anonymous Monk on Feb 06, 2011 at 20:40 UTC | |
by Anonymous Monk on Feb 06, 2011 at 20:44 UTC | |
by Corion (Patriarch) on Feb 06, 2011 at 20:46 UTC |