enviador
Como eu faço pro script colocar < e > antes e depois do email automaticamente?
Minha lista de email está assim:
email@provedor.com.br
email@provedor.com.br
email@provedor.com.br
email@provedor.com.br
email@provedor.com.br
Sem virgula e sem o < e >, quero que o script leia a lista da forma que está e coloque o < e >
Segue o script atual:
#!/usr/local/bin/perl
use MIME::Base64;
use Net::SMTP::SSL;
#### Configs ####
my $corpo = 'corpo.html';
my $lista = 'list.txt';my $envio = 0; ## 0 = smtp - 1 = sendmail
Configuracao SMTP ##
my ($servidorsmtp,$usuariosmtp,$senhasmtp) = ('', '', '');
my $dominiohello = '';
##
Configuracao SendMail ##
my $localsendmail = '/usr/lib/sendmail'; ##Dados Email ##
my ($nomeremetente,$emailremetente) = ('xxx', 'xxx');
my $assunto = 'xxx';
my $emailresposta = 'xxx';
##
########
Carregamento Corpo e Lista ##
open(FOO, $corpo) || die "Nao foi possivel abrir o html\n";
@foo = <FOO>;
$corpo = join("\n", @foo);
open (BANDFIT, $lista) || die "Nao foi possivel abrir a lista\n";
####
$cont=0;
system("rm enviados.txt");
system("rm naoenviados.txt");
while(<BANDFIT>) {
my $ID = $_;
foreach ($ID) {
$cont=$cont+1;
if ($ID =~ /<(.*)>/) {
$emaildestinatario = $1;
if ($ID =~ /<(.)@(.)>/) {
Criacao Boundary ##
my ($bi, $bn, @bchrs);
my $boundry = "";
foreach $bn (48..57,65..90,97..122) {
$bchrs[$bi++] = chr($bn);
}
foreach $bn (0..28) {
$boundry .= $bchrs[rand($bi)];
}
####
Data ##
@meses = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec);
@diasdasemana = qw(Sun Mon Tue Wed Thu Fri Sat Sun);
($segundo, $minuto, $hora, $diadomes, $mes, $ano0, $diadasemana, $diadoano, $dlsgs) = localtime();
$ano = 1900 + $ano0;
if (length($diadomes) == 1) {
my $diadomes = '0' . $diadomes;
}
if (length($hora) == 1) {
my $hora = '0' . $hora;
}
if (length($minuto) == 1) {
my $minuto = '0' . $minuto;
}
my $adesivodata = "$diasdasemana[$diadasemana], $diadomes $meses[$mes] $ano $hora:$minuto:$segundo -0600"; ## -0600: Fuso Horario
####
#### SMTP ####
if ($envio == 0) {
Conexao ##
my $enviador; if (not $enviador = Net::SMTP::SSL->new($servidorsmtp, Hello => $dominiohello,Port => 465,
Debug => 1)) {
die "Nao foi possivel conectar\n";
}
####
$usuariocriptografado = encode_base64("\00".$usuariosmtp."\0".$senhasmtp);
Comunicacao ##
$enviador->datasend("AUTH PLAIN " . $usuariocriptografado);
$enviador->mail($emailremetente);
$enviador->to($emaildestinatario);
$enviador->data();
$enviador->datasend("From: \"$nomeremetente\" <$emailremetente>\n");
$enviador->datasend("To: $ID");
$enviador->datasend("Subject: $assunto\n");
$enviador->datasend("Date: $adesivodata\n");
$enviador->datasend("Importance: Normal\n");
$enviador->datasend("MIME-Version: 1.0\n");
$enviador->datasend("Content-Type: multipart/alternative; boundary=\"$boundry\"\n");
$enviador->datasend("Reply-To: <$emailresposta>\n\n");
$enviador->datasend("\nThis is a multi-part message in MIME format.\n");
$enviador->datasend("\n--$boundry\n");
$enviador->datasend("Content-Type: text/html; charset=ISO-8859-1\n");
$enviador->datasend("Content-Transfer-Encoding: 8bit\n");
$enviador->datasend("\n $corpo \n\n");
$enviador->datasend("\n--$boundry--\n\n");
$enviador->dataend;
$enviador->quit;
####
}
########
#### SendMail ####
if ($envio == 1) {
open(enviador,"|$localsendmail -t");
print enviador "From: \"$nomeremetente\" <$emailremetente>\n";
print enviador "To: $ID";
print enviador "Subject: $assunto\n";
print enviador "Date: $adesivodata\n";
print enviador "Importance: Normal\n";
print enviador "MIME-Version: 1.0\n";
print enviador "Content-Type: multipart/alternative; boundary=\"$boundry\"\n";
print enviador "Reply-To: <$emailresposta>\n\n";
print enviador "\nThis is a multi-part message in MIME format.\n";
print enviador "\n--$boundry\n";
print enviador "Content-Type: text/html; charset=ISO-8859-1\n";
print enviador "Content-Transfer-Encoding: 8bit\n";
print enviador "\n $corpo \n\n";
print enviador "\n--$boundry--\n\n";
close (enviador);
}########
open (MEUARQUIVO, '>>enviados.txt');
print MEUARQUIVO "$cont Enviado para $emaildestinatario \n";
close (MEUARQUIVO);
printf "$cont Enviado para $emaildestinatario \n";
}
else {
open (MEUARQUIVO, '>>naoenviados.txt');
print MEUARQUIVO "$cont Nao enviado para $emaildestinatario adicionar o email entre <>\n";
close (MEUARQUIVO);
printf "$cont Nao enviado para $emaildestinatario adicionar o email entre <>\n";
}
}
else {
open (MEUARQUIVO, '>>public_html/naoenviados.txt');
print MEUARQUIVO "$cont Nao enviado para $emaildestinatario adicionar o email entre <>\n";
close (MEUARQUIVO);
printf "$cont Nao enviado para $emaildestinatario adicionar o email entre <>\n";
}
}
}
close(BANDFIT);Discussão (1)
Carregando comentários...