in reply to Re: Sending Mail from Perl Script
in thread Sending Mail from Perl Script

I submitted this awhile ago and haven't been able to get back to it now. I modified my script to be like this...
use strict; use warnings; use MIME::Lite; my $user = 'james@gmail.com'; my $pass = 'james12'; my $msg = MIME::Lite->new( From =>'James', To =>'james@hotmail.com', CC =>'', Subject =>'yah it worked', Type =>'Hello world' ); MIME::Lite->send('smtp','smtp.gmail.com:465', AuthUser=>$user, AuthPass=>$pass);
Yet, I still can't connect correctly. Everything compiles ok but the email doesn't get sent at all. Can anyone tell me why?

Replies are listed 'Best First'.
Re^3: Sending Mail from Perl Script
by thezip (Vicar) on Apr 30, 2008 at 05:12 UTC

    Have you tried enabling Debug as I suggested? What were the resulting messages?

    This might be a natural next step in the troubleshooting process.


    Your wish is my commandline.
      Hi, Yes, I tried the Debug=>1 option and got an error "Can't call method auth on an undefined value". When I tried to do it your way, it seems like the program hangs with the authorization part. I'm not sure why that is. My username and password are all correct. I've tried the username without the "@gmail.com" but still gives the same error. I'm wondering if I need SSL or anything for gmail. Can't seem to get my yahoo email account to work either. Maybe thats why the authorization is failing??
      use MIME::Lite; use Net::SMTP; $FROM='james@gmail.com'; $TO='james@hotmail.com'; $subject='TESTING 123'; $SMTPUSER='james@gmail.com'; $SMTPPASS='james1234'; $message_text='testing'; my $msg = MIME::Lite->new(From => $FROM,To => $TO,Subject => $subject, +Type => 'multipart/alternative'); my $smtp = new Net::SMTP('smtp.gmail.com:465', Timeout => 15, Debug => + 1); $smtp->auth($SMTPUSER, $SMTPPASS); $smtp->mail($FROM); $smtp->to($TO); $smtp->data($msg->as_string); $smtp->quit;