[Cascavel-pm] enviando e-mails localmente e enviando via smtp
Igor Sutton
igor.sutton em gmail.com
Sexta Abril 4 11:14:34 PDT 2008
On Apr 4, 2008, at 2:36 AM, Joao Gabriel C. Laass wrote:
> segue dois exemplos (o port 587 é do gmail):
>
> <code>
> use Net::SMTP_auth;
> $smtp = Net::SMTP_auth->new("$servidor", Port=>587, Timeout=>60,
> Debug=>1);
> $smtp->auth('PLAIN',$usuario,$senha);
> $smtp->mail($de);
> $smtp->to($para);
> $smtp->data();
> $smtp->datasend("To: $para\n");
> $smtp->datasend("From: $de\n");
> $smtp->datasend("Subject: $titulo\n");
> $smtp->datasend("Content-type: text/html\n\n");
> $smtp->datasend($mensagem);
> $smtp->dataend();
> $smtp->quit;
> </code>
> Não da erro, mas também não recebo o e-mail;
>
> <code>
> use MIME::Lite;
> $msg = MIME::Lite->new(
> From =>'usuario em gmail.com', # de
> To =>'usuario em gmail.com', # para
> Cc =>'copia em gmail.com', # Copia?
> Subject =>'com modulo', #titulo
> Type =>'text/html',
> Data =>'teste',
> );
> $msg->send('smtp','smtp.gmail.com',AuthUser=>'usuario em gmail.com',
> AuthPass=>'senha', Port=>587, Debug=>1);
> </code>
> Da o seguinte erro:
> " SMTP MAIL command failed: 5.7.0 Must issue a STARTTLS command
> first. 62sm5341073wri.30 "
>
> Bom, explicando, gostaria de enviar e-mails de minha contado gmail
> para qualquer outro e-mail, usando perl e do meu pc.
Hrm, o problema, como eu havia falado, é que o Gmail usa SSL/TLS por
default. Procurando por TLS no CPAN, encontrei o Net::SMTP::TLS.
Segundo esta url[1], também é possível utilizar o Net::SMTP::SSL para
o mesmo fim -- e tem até uma receita de bolo.
Boa sorte!
[1] http://robertmaldon.blogspot.com/2006/10/sending-email-through-google-smtp-from.html
-- Igor
Mais detalhes sobre a lista de discussão Cascavel-pm