Obtendo o sendmail para enviar mensagens em um horário específico

2

Temos um aplicativo PHP de comércio eletrônico de ações que envia e-mails de notificação sempre que uma compra bem-sucedida é feita. Queremos que uma das notificações seja enviada duas semanas após a compra.

Existem duas abordagens para isso:

  1. Configure um sistema de enfileiramento usando o cron, o php etc. Isso também envolverá a modificação do aplicativo de comércio eletrônico php de terceiros que estamos usando.
  2. Encontre uma maneira de deixar o sendmail na fila para ser entregue duas semanas depois de adicioná-lo.

O que eu gostaria de saber é se há um cabeçalho ou algo inteligente como esse que eu possa definir na mensagem para atrasar o envio dele. Talvez haja um plugin para o sendmail que possa conseguir isso?

Basicamente, eu estou procurando uma maneira mais prática de entregar uma mensagem do que hackear o php, já que isso seria um grande trabalho, ao passo que mexer um pouco com o sendmail pode ser muito mais fácil.

A página de manual do sendmail no servidor em questão afirma que é um tipo de wrapper de postfix:

sendmail - Interface de compatibilidade Postfix para Sendmail

    
por John Hunt 22.04.2015 / 12:14

1 resposta

1

Isso poderia ser feito? Possivelmente, mas provavelmente com mais ajustes e hackers do sendmail do que você faria com o código PHP.

No entanto, depois de algumas pesquisas, descobri o seguinte: " Como posso atrasar a entrega de e-mails "

As desvantagens são que você terá que ter um segundo servidor SMTP em execução no modo QUEUE e ainda precisará ajustar o código para que isso funcione.

Então, minha sugestão é criar um pequeno miniaplicativo php ou javascript que, em um horário predeterminado (todos os dias pelo cron), consulte o banco de dados para todas as compras feitas há duas semanas e envie um email para esse cliente. Dessa forma, você pode usar seu servidor existente e não precisar tocar em nenhum código.

Espero que ajude.

    
por 22.04.2015 / 14:42

Tags