[SP-pm] [Rio-pm] MIME::Lite
Lucas Oliveira
lucasmateus.oliveira at gmail.com
Thu Sep 12 05:42:27 PDT 2013
Na verdade não é o Google que está fechando a porta, são os provedores, é muito provavel que esse disparo é feito utilizando um serviço de Internet domestica ou não própria para isso, para esses casos é aconselhavel fechar a porta 25 pois a conexão com servidores SMTP por clientes agora é feita pela porta 587 e a 25 fica limita a comunicação entre servidores.
Sendo assim, tente utilizar a porta 587.
Em 12/09/2013, às 09:13, Ailton Zacarias <ailtonzsilva em gmail.com> escreveu:
> Bom dia a todos,
>
> O código abaixo estava funcionando corretamente a mais de 2 anos porem a 4 dias não funciona mais e error que mostra ao executar é
>
>
> "SMTP Failed to connect to mail server: Uma tentativa de conexÒo falhou porque o
> componente conectado nÒo respondeu
> corretamente ap¾s um perÝodo de tempo ou a conexÒo estabelecida falhou
> porque o host conectado nÒo respondeu."
>
> alguem pode me ajudar?
>
>
> AMBIENTE: Win7 e WinXP
>
>
> segue abaixo o script:
>
> #!c:/Perl/perl.exe -w
>
> use warnings;
>
> my $Cliente = 'CLIENTE';
> my $smtp = 'smtp.gmail.com';
> my $to = 'user em gmail.com';
> my $senha = 'senha';
> my $cc = 'user em gmail.com,user em yahoo.com.br';
>
> $Cliente = $Cliente.'_'.DataHora();
> my $Lista = 'Arquivos.txt';
> my $Pacote = $Cliente.".zip";
>
> CompactarArquivos($Lista,$Pacote);
> EnviarDados($smtp,$to,$Cliente,$Pacote,$cc);
>
> sub EnviarDados{
> # SMTP, E-MAIL, TITULO, ARQUIVO, CC
>
> use MIME::Lite;
> use MIME::Base64;
> use Authen::SASL;
>
> @ARQV = $_[3];
>
> # Configuração do E-mail.
> my $SMTP_SERVER = $_[0];
> my $DEFAULT_SENDER = $_[1];
> my $DEFAULT_RECIPIENT = $_[4];
>
> MIME::Lite->send('smtp',$SMTP_SERVER, Timeout=>60, AuthUser=>$to, AuthPass=>$senha);
>
> my (%o, $msg);
>
> $o{f} ||= $DEFAULT_SENDER;
> $o{t} ||= $DEFAULT_RECIPIENT;
> $o{s} ||= $_[2];
> $o{c} ||= $_[1];
>
> # construct and send email
> $msg = new MIME::Lite(
> From => $o{f},
> To => $o{t},
> Subject => $o{s},
> Data => "Hi",
> Type => "multipart/mixed",
> );
>
> # Anexar arquivo p/ envio.
> while (@ARQV) {
> $msg->attach('Type' => 'application/octet-stream',
> 'Encoding' => 'base64',
> 'Path' => shift @ARQV);
> }
>
> # Enviar e-mail
> $msg->send();
> }
>
> sub CompactarArquivos{
> # ARQVS, NomeDoPacote
> # Create a Zip file
> use Getopt::Std;
> use Archive::Zip qw( :ERROR_CODES :CONSTANTS );
> my $zip = Archive::Zip->new();
>
> open(my $file, q{<}, $_[0]) or die "Can't open file $!\n";
> foreach my $arquivo ( <$file> ) {
> #Remove o último caractere apenas se for igual a $/ "Separador de regsitro"
> chomp($arquivo);
> # Verifica se o arquivo existe
> if (-e $arquivo){
> # Add a file from disk
> my $file_member = $zip->addFile($arquivo);
> }
> }
>
> # Save the Zip file
> unless ( $zip->writeToFileNamed($_[1]) == AZ_OK ) {
> die 'write error';
> }
>
> }
>
> sub DataHora{
> # Criar layout de data
> my($dd,$mm,$yy,$day,$hh,$nn) = (localtime)[3,4,5,6,2,1];
> my $today = join '', map sprintf("%02d", $_),($yy%100,$mm+1,$dd,);
> my $hr = join '', map sprintf("%02d", $_),($hh,$nn);
>
> # "Vasio" = Data e hora | "1" Apenas Data
> my $data = $_[0] ? $today:$today.'_'.$hr;
>
> my $datahora = $data;
>
> return ($datahora);
> }
>
>
> --
> Ailton Zacarias
> Cel: 55 +11 9 4857-5143
> Tel: 55 +11 2373-7625
> Skype: ailton.zacarias
> Msn: ailtonzsilva em gmail.com
>
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
-------------- Pr?xima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20130912/b3ca0cde/attachment.html>
More information about the SaoPaulo-pm
mailing list