|
Dicas
para owners e usuários de listas de discussão
|
| Nota:
As dicas a seguir referem-se a listas de discussão gerenciadas
pelo programa majordomo. Se sua lista usa outro programa (como
o Listserv, da Lsoft) você terá que descobrir de que
maneira ele implementa as funções citadas aqui e usar
as explicações que dou para os problemas como forma
de implementar uma solução no seu programa específico. |
Duplicação
de Prefixos
Se você
participa de uma lista de discussão ou gerencia uma deve ter se
deparado com um problema incômodo e intermitente. De vez em quando
e apenas em certas discussões (threads), o prefixo da lista aparece
em duplicata no subject da mensagem. Dependendo do andamento da discussão
o prefixo continua se duplicando estranhamente, até que começamos
a receber mensagens com subjects como os abaixo:
[noticias-l]
Re: [noticias-l] Re: [noticias-l] En: [noticias-l] Re: [noticias-l] Bangalôs
do Pontal
[noticias-l]
Re: [noticias-l] Re: [noticias-l] RE: [noticias-l] Re: [noticias-l] HTML
em lista pública!
Subjects
assim são muito difíceis de acompanhar e de ordenar, como
mostra a figura abaixo:

Essa ocorrência
NÃO é normal e pode ser corrigida.
A razão
Isso ocorre
apenas em mensagens cujo subject tem acentuação e por causa
da maneira que alguns programas de e-mail modernos tratam os acentos.
Isto inclui todas as versões do Outlook Express. Você não
vê isso, mas no código fonte da mensagem o programa converte
toda letra acentuada para seu equivalente no charset iso-8859-1. No processo,
certos caracters como o colchete também são convertidos.
Ao receber o reply, majordomo procura no subject da mensagem pelo prefixo,
mas como os colchetes foram "convertidos" internamente e majordomo
não entende nada de iso-8859-1, ele pensa que não há
prefixo e adiciona um outro.
A solução
O administrador
da lista precisa mudar o prefixo. Os colchetes devem ser removidos. No
exemplo acima, a mudança do prefixo de [Noticias-l] para
Noticias-l: resolveu o problema. Se estiver fora do alcance do
administrador a mudança do prefixo, este deve solicitar aos assinantes
que não usem acentuação no subject das mensagens.
Como barrar
mensagens automaticamente
| Nota:
minha primeira versão deste texto era bem mais simples de entender,
mas eu encontrei "brechas" que precisavam ser esclarecidas,
o que aumentou a complexidade do texto. Se você tiver dificuldade
para entender o que está descrito aqui, não hesite em
me mandar um e-mail. Terei o maior prazer em fazer as modificações
necessárias para tornar o texto mais claro. |
Majordomo
possui duas opções em seu arquivo de configuração
que permitem a você configurá-lo para "desconfiar"
de uma mensagem e mandá-la primeiro para você (o owner).
Essas opções são taboo_headers e taboo_body.
"Taboo" significa algo como "proibido".
taboo_headers
é uma lista de expressões que são proibidas ou merecem
atenção, se encontradas no cabeçalho (header) das
mensagens. O cabeçalho de uma mensagem geralmente só é
visível quando você olha o seu código fonte e inclui
muitas informações interessantes sobre o conteúdo
da mensagem e por onde ela passou até chegar a seu destino.
taboo_body,
por sua vez, é uma lista de expressões que vão ser
procuradas no corpo (body) da mensagem. A maior parte do corpo da mensagem
é visível para o usuário, mas os programas modernos
de e-mail escondem muitos detalhes. Como regra geral, considere que o
que não for um "header", faz parte do "body".
Se majordomo
aceitasse uma simples lista de palavras separadas por vírgula,
seria muito fácil. Mas majordomo exige que você use uma sintaxe
específica baseada no que, no mundo Unix, chamamos de "regular
expressions" (RegExps).
Nos exemplos,
vou usar a opção taboo_headers, mas o uso em taboo_body
é idêntico.
É
assim que a opção taboo_headers se apresenta no arquivo
de configuração:
taboo_headers
<< END
END
Tudo nas
linhas entre os dois END, é usado como filtro de mensagens. Cada
expressão é colocada em uma linha separada e deve ser obrigatoriamente
cercada por barras assim:
taboo_headers
<< END
/zipmail/
END
No exemplo
acima, toda mensagem que contenha a palavra "zipmail" no header,
vai ser apanhada pelo pente fino do majordomo e direcionada para o owner
antes de ir para a lista.
Você
pode incluir mais de um filtro:
taboo_headers
<< END
/zipmail/
/elogica/
END
Todo e-mail
que vier da Zipmail ou da Elogica vai passar por você primeiro.
Ë possível
fazer coisas muito interessantes com esses filtros, mas algumas delas
exigem uma boa compreensão de regexps. A seguir, mostro
dois bons exemplos já prontos de uso.
Como barrar
anexos (atachments) e/ou e-mail HTML
O pesadelo
para qualquer administrador de uma lista séria. Os anexos costumam
ser barrados limitando-se tamanho da mensagem no arquivo de configuração
da lista. Mas essa solução nem sempre é a melhor,
porque se você impuser um limite baixo, para barrar todos os anexos
possíveis, acaba barrando mensagens de quem gosta de escrever muito.
Se você
impuser um limite alto, pequenos atachments acabam passando. E exceções
à regra não são coisas que você deva tolerar.
Existe uma
expressão que aparece no cabeçalho de toda mensagem com
anexo:
multipart/mixed
Como essa
barra no meio da expressão pode confundir majordomo, é preciso
usar a sintaxe das regexps para contornar o problema. A expressão
que você deve usar é a seguinte:
multipart.mixed
O ponto no
lugar da barra, significa, em regexps, "qualquer caractere".
Como esse
filtro deve ser incluído em taboo_headers, seu resultado final
é o seguinte:
taboo_headers
<< END
/multipart.mixed/
END
Após
essa modificação, toda mensagem em HTML enviada para a lista
será redirecionada para o owner (você), que poderá
ou não aprová-la. A mensagem recebida por você terá
um subject mais ou menos assim:
BOUNCE
<nome_da_lista>: taboo header: /multipart.mixed/
Já
o e-mail formatado em HTML pode ser útil em certas circunstâncias,
mas em 99% dos casos as pessoas o utilizam de forma abusiva e com muito
mau gosto. Além do mais, nem todo programa de e-mail entende HTML.
Enviar e-mail HTML para uma lista de discussão é (por diversas
razões) indesejável, desnecessário e incômodo.
Muitas listas proibem seu uso.
Alguns administradores
tentam impedir de forma automática que os usuários enviem
e-mail em HTML para a lista limitando o tamanho das mensagens, mas isso
não é totalmente eficaz. O melhor meio é o que se
segue.
Para barrar
o e-mail HTML, siga as instruções acima, mas use as expressões:
multipart.alternative
text.html
|
Nota:
multipart/alternative é a expressão que vai
aparecer em e-mail enviado pelos programas de e-mail mais populares,
porque estes ao mandar um e-mail em HTML também enviam uma
cópia em texto puro (na mesma mensagem), para o caso do programa
do destinatário não ser capaz de ler HTML (daí
vem a parte multipart da expressão).
Entretanto,
quando uma mensagem é enviada exclusivamente em HTML,
multipart/alternative é substituída por text/html
no header. Esse é o caso dos boletins HTML que
são enviados via e-mail, como os da ZDNET, da PCWORLD e da
IDGNOW.
multipart/alternative
deve filtrar quase 100% das mensagens, mas use text/html
para se certificar.
|
Isso deve
ser suficiente na maioria das situações, mas se a pessoa
mandar uma mensagem HTML com um anexo suficientemente pequeno para passar
pelo filtro de tamanho, ela vai passar por esse filtro também,
porque apenas a expressão multipart/mixed, típica
das mensagens com anexo, vai estar no cabeçalho no lugar das citadas
anteriormente. Para contornar isso, sua taboo_headers deve ser
parecida com a seguinte:
taboo_headers
<< END
/multipart.alternative/
/text.html/
/multipart.mixed/
END
Isso deve
barrar qualquer tentativa de enfiar lixo em sua lista :)
| Nota:
Se você tiver implementado (com sucesso ou não) estas
dicas em uma lista de discussão, por favor me mande um e-mail
sobre a experiência. |

|