Como obter feedback do servidor SMTP, conectando-se a ele de outro servidor na mesma rede?

2

Eu tenho o seguinte cenário:

[Servidor HTTP]: processar mensagens

[Servidor SMTP]: somente envia mensagens

[Servidor HTTP] === conecte-se a === > > > [Servidor SMTP] === envia mensagem === > > > [mundo]

Ok, isso está indo bem.

Meu ponto é: como obter feedback do [Servidor SMTP] para saber se minha mensagem foi realmente enviada ou não?

Usando php-mailer ou qualquer idioma / API (em [HTTP Server]), eu só tenho feedback para conexão entre servidores: "Conexão com servidor SMTP estava OK", mas isso não é uma prova de que minha mensagem foi realmente enviada .

Quero dizer, como obter "status = sent" ou "status = bounce" que aparece no / var / log / maillog para cada mensagem?

Estou realmente tentando isso nas últimas semanas, mas sem sucesso.

Eu trabalhei de uma forma que, quando o [HTTP Server] se conecta ao [SMTP Server], obtém o Message-ID do maillog, então mais tarde eu irei (SSH do [HTTP Server] para [SMTP Server]) para grep o / var / log / maillog com este Message-ID e obtém este "status = sent" ou "status = anything".

Mas tenho certeza de que há uma maneira automatizada de fazer isso.

Alguém sabe?

    
por Sergio Mira 31.10.2013 / 18:06

2 respostas

2

A única maneira de saber que você está pegando o NDR e similares é ter um endereço válido de: ou reply-to: que detectará essas informações e garantirá que o servidor SMTP as gere e entregue.

    
por 31.10.2013 / 18:20
2

É assim que o SMTP funciona, você o envia para o próximo servidor e lhe dirá se aceitou ou não. O que acontece além disso requer algum acesso ao servidor de retransmissão.

Você pode fazer com que o servidor de correio envie por e-mail segmentos de 5 minutos de / var / log / maillog .. se desejar automatizado.

    
por 31.10.2013 / 18:22