Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

vpribeiro

Disparar envio de email automaticamente em uma determinada data.

Recommended Posts

E aí, http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif,

 

Alguém saberia dizer como faço para disparar o envio de emails automaticamente com ASP (CDONTS), em uma determinada data, para uma lista de usuários cadastrados em uma base Access?

 

Por exemplo: Tenho um evento começando no dia 15/03/07 e gostaria de que todos os usuários da minha base que se cadastraram neste evento recebessem um "reminder" por e-mail dois dias antes do evento.

 

A base já está pronta, o SELECT e a mensagem também, gostaria apenas de saber como disparo este envio automaticamente quando a data for igual a 13/03/07?

Um simples IF (DATE == 13/03/2007 00:00:00 ) then {dispara email ...} funcionaria?

 

Desde já, agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha pelo que sei o e-mail só é disparado quando você abre a página, pois só ai execulta a função, não sei se tem como fazer isso automatico sem que você precise entrar na página!e sua dúvida foi Movida, DÚVIDAS são postadas na RAIZ do fórum ASP!Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala Shumi,Obrigado pela resposta. Conheço alguns sistemas que possuem essa funcionalidade, só não sei se o procedimento ou gatilho que dispara essa ação está programado no ASP, ou direto no Banco. Vou continuar pesquisando! De qualquer forma, obrigado!Abraço,vpribeiro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ai cara vou ficar te devendo essa mesmo!desculpa!Um tempão atrás precisei fazer isso e perguntei aqui no Imasters e não achamos solução!mas se achar poste aqui para vermos!Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala Shumi,Obrigado pela resposta. Conheço alguns sistemas que possuem essa funcionalidade, só não sei se o procedimento ou gatilho que dispara essa ação está programado no ASP, ou direto no Banco. Vou continuar pesquisando! De qualquer forma, obrigado!Abraço,vpribeiro.

Bom via ASP que eu saiba não teria como enviar os e-mail tipo em "batch". Você deveria entrar em uma página ASP para executar a rotina. Mas o q desejas é a automatização.Aqui onde trabalho nestes cados criamos um componente (normalmente VB que e a linguagem homologada pela instiruição onde trabalho), mas pode ser Delphi pi até Java, que é registrado em um seridor como serviço e roda em determindo período (2 vezes por dia, de 3 em 3 horas etc) enviando os e-mails de acordo com uma data determinda.Acho que é a solução mais simples e concerteza funciona porque utilizamos a mesma em vários processos sem probelmas.QQ coisa estamos ai para trocar mais ideias.t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

é em ASP ASP mesmo pelo que sei não dá!Apesar de quando tava tentando o Salgado falou que leu por cima não sei onde que dava!mas não sei como e na época ele também não sabia!

Compartilhar este post


Link para o post
Compartilhar em outros sites

é em ASP ASP mesmo pelo que sei não dá!Apesar de quando tava tentando o Salgado falou que leu por cima não sei onde que dava!mas não sei como e na época ele também não sabia!

Em ASP msm tb desconheço com disparar com se fosse um batch ou script.Só vejo msm usar componente ou usar o bd para enviar os e-amils sei que MSSQL permite que se faça isto.Mas caso você consiga fazer em ASP post a resposta aki poi fiquei curioso.t+

Compartilhar este post


Link para o post
Compartilhar em outros sites
<script LANGUAGE=VBScript RUNAT=Server>       ' aqui iniciou o aplicativo e foi definido a data de hoje à variável AutoSend("Data" )       ' A data de envio do email foi definida para 30 dias apos esta data       Sub AutoSend_OnStart              AutoSend.Lock              AutoSend("Data") = Date              AutoSend("DataDeEnvio") = DateAdd("d", 30, Date)              AutoSend.Unlock        End Sub       ' Vamos  ver se hoje é o dia da data de envio do email        Sub Session_OnStart              ' caso a data de envio e a data de hoje conferir, o email será enviado       ' Primeiro, a data de envio é modificada novamente. (claro)      if AutoSend("DataDeEnvio") = Date then                                 AutoSend.Lock                    AutoSend("Data") = Date                    AutoSend("DataDeEnvio") = DateAdd("d", 30, Date)                AutoSend.UnLock       ' Código para enviar o email. Usei o CDONTS mais pode ser qualquer outro.               Set objMail = Server.CreateObject("CDONTS.NewMail")                      objMail.To = "email@do.site.com.br"                      objMail.From = "script@automatico.com"                      objMail.Subject = "Email do mês!"                      objMail.Body = "Email enviado."                      objMail.Send                     End if             End Sub</SCRIPT>

Naum sei c entendi oq qr mais uso este e é funcional.FLW

Compartilhar este post


Link para o post
Compartilhar em outros sites

<script LANGUAGE=VBScript RUNAT=Server>       ' aqui iniciou o aplicativo e foi definido a data de hoje à variável AutoSend("Data" )       ' A data de envio do email foi definida para 30 dias apos esta data       Sub AutoSend_OnStart              AutoSend.Lock              AutoSend("Data") = Date              AutoSend("DataDeEnvio") = DateAdd("d", 30, Date)              AutoSend.Unlock        End Sub       ' Vamos  ver se hoje é o dia da data de envio do email        Sub Session_OnStart              ' caso a data de envio e a data de hoje conferir, o email será enviado       ' Primeiro, a data de envio é modificada novamente. (claro)      if AutoSend("DataDeEnvio") = Date then                                 AutoSend.Lock                    AutoSend("Data") = Date                    AutoSend("DataDeEnvio") = DateAdd("d", 30, Date)                AutoSend.UnLock       ' Código para enviar o email. Usei o CDONTS mais pode ser qualquer outro.               Set objMail = Server.CreateObject("CDONTS.NewMail")                      objMail.To = "email@do.site.com.br"                      objMail.From = "script@automatico.com"                      objMail.Subject = "Email do mês!"                      objMail.Body = "Email enviado."                      objMail.Send                     End if             End Sub</SCRIPT>
Naum sei c entendi oq qr mais uso este e é funcional.FLW
Acho q o problema é q o vpribeiro quer é que o envio seja automático sem precisar entrar e rodar o script.Uma solução seria converte o script do NewUser para vb criar um componente VB (delphi por exemplo) e defini-lo como serviço no sevidor que seria rodado periodicamente de acordo com o schedule do servidor.vpribeiro são mtos e-maisl? Qtos +-?t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para que funcione automático eu uso o global.asa!No lugar das variávei AutoSend coloque Application!

Maneira esta solução! Nunca tinha me passado pela cabeça.Como disse aqui trabalhava em 3 camada com ASP (agora estou no Java) e sempre trabalhos com componentes.Eu perguntei sobre a quantidade pois tivemos um problema com relação a isto usando CDONTs. Tivemos de utilizar um diretório do proprio IIS de nome PICKUP que manda e-amil massivamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.