Pular para o conteúdo

A história

Uso Sendmail desde 1998 e, atualmente, administro dois servidores com esse SMTP. Sempre utilizei a solução clássica de procmail para fazer mensagem de teste automatizada. Com isso, depois de configurar os seus programas de e-mail sob protocolo POP3 ou POP3s, os técnicos e usuários podem testar o funcionamento, enviando uma mensagem vazia para teste@dominio.com.br.

A citada solução clássica de procmail, muito conhecida, é a seguinte:

:0
* ^From.*dominio.com.br
* ^To.*teste@dominio.com.br
{
 :0 c
    | (formail -ri "From:teste@dominio.com.br"; cat /usr/share/msg/teste.msg) | sendmail -oi -t
 :0
    /dev/null
}

(Para saber a sobre a sintaxe utilizada acima, $ man procmailrc, $ man formail e $ man sendmail.)

No entanto, em algumas instalações o Procmail+SMTP engasga e termina não executando a linha formail/cat/sendmail corretamente. Assim, resolvi mudar o método, inovar e embelezar.

A solução

No procmail, o caratere pipe é responsável por executar alguma rotina. Assim, criei um script externo e determinei a execução via pipe. O procmail ficou assim (colocar dentro do arquivo /etc/procmailrc, que deverá ser criado caso não exista):

:0
* ^From.*dominio.com.br
* ^To.*teste@dominio.com.br
{
  :0 c
     |/usr/share/msg/teste.sh
  :0
     /dev/null
}

O script /usr/share/msg/teste.sh, ativado pelo procmail, é este:

#!/bin/bash
# by Eriberto - C 2012

formail -ri "From: teste@dominio.com.br" \
    -I "Subject:" \
    -A "Subject: Servidor Mail - RESPOSTA AO SEU TESTE" \
    -A "Content-Type: text/html; charset="ISO-8859-1"" \
    > /tmp/resposta

cat /usr/share/msg/teste.msg >> /tmp/resposta

cat /tmp/resposta | sendmail -oi -t

O script anterior deve receber permissão de execução:

# chmod 750 /usr/share/msg/teste.sh

Por fim, a mensagem teste.msg, utilizada pelo script anterior é um texto em HTML. Eu usei o SeaMonkey Composer para fazer o HTML (IceApe no Debian; basta fazer # apt-get install iceape-browser e, no menu Window escolher Composer ). Mas você pode até usar sites on-line, como o quackit.com ou o Free Online HTML Editor.

O resultado final foi este (clique para ampliar):

Bem, é isso. Divirta-se!!!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

15 − 3 =