Ir para conteúdo

POWERED BY:

Arquivado

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

kel cappra

Alerta de atualização por e-mail

Recommended Posts

ae gente... to com uma idéia aqui na cabeça, mas não sei como faço..queria fazer alguma coisa tipo um alerta de atualização do site... tipo, tem um gerenciador de conteúdo.. e eu quero que seja avisado por email se ficar mais de sei lá, três dias sem atualização no site.alguém sabe como fazer?valew ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

se você fizer um arquivo .bat até daria, pois nele você faria uma rotina diaria que verificaria a data da ultima alteração ou gravação feita no banco

Compartilhar este post


Link para o post
Compartilhar em outros sites

será q você poderia me ajudar a fazer isso?nunca trabalhei com esse tipo de arquivo, e acho que seria uma coisa muito importante de aprender

Compartilhar este post


Link para o post
Compartilhar em outros sites

lamento, mas nesse caso em especifico eu também estaria aprendendo com você, só tenho a teoria. Teria que aparecer uma alma caridosa que saiba criar arquivos .bat que disparem e-mails e verifique dados no banco pois esse tipo de arquivo normalmente quem manja bem são administradores de redes e de servidoresisso seria pra fazer exatamente como quer, outra forma seria exibir uma mensagem a cada login do usuario no sistema, tipo como temos aqui no forum quando recebemos uma MP, ao fazr o login aparece uma caixa de mensagem avisando que tem uma nova, no seu caso exibiria que a X dias não é feita atualização, ai não faria o .bat, mas também não ficaria como você colocou no enunciado do tópicolembrando que pra colocar um .bat no servidor web você deve ter acesso direto a administração do mesmo, se está usando um plano de hospedagem isso é praticamente impossivel de conseguir devido as regras de seguranças das empresas de hospedagem

Compartilhar este post


Link para o post
Compartilhar em outros sites

você ja trabalhou com arquivo.vbs ?

 

Usa a mesma linguagem do ASP, mas com algumas particularidades. Vou dar um exemplo:

 

Set tabRec = CreateObject("ADODB.Recordset")	sqlS = "SELECT nm_coluna FROM Tabela"	tabRec.open sqlS, conSTR,3,3	MsgBox (tabRec("nm_coluna"))	tabRec.Close	set tabRec = nothing
Salvando esse arquivo com extensão .vbs, ele faz uma consulta no banco e te mostra o resultado. A vantagemdele, é que ele fica rodando no Task Manager, ou seja, o site não precisa ser acessado pra ele rodar.

Daí você pode fazer um FOR pra ficar rodando de 20 em 20 minutos e quando houver uma atualização na tabela, ele dispara um email.

 

Mas como o jonathandj, as seguranças do servidor não deixam você rodar esse tipo de extensão.

 

Uma ideia é usar a lógica ao contrário:

Enquanto você não receber um email de atualização, significa que nada foi feito no teu gestor de conteúdo. Assim que alguém fizer uma alteração, você então dispara um email avisando. Essa ideia parte do princípio de que não haveria necessidade de ser avisado a cada 3 dias de que nenhuma alteração foi feita, ou seja, você recebe email somente quando é feito alguma atualização. Os sites administrativos trabalham nesse sentido. Quando você faz atualização do seu cadastro, ou abre um Help Desk, um email é disparado. Veja q esse email não é disparado a cada semana avisando a você q nenhuma alteração no cadastro foi feita, ou que você não abriu nenhum chamado.

 

Capite ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Princesa,

 

Vou dar um bico no post tb! http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif

 

Não entendi mto bem o que queres, mas como o pessoal do forúm sabe, sou ancião e demoro um pouco a processar! http://forum.imasters.com.br/public/style_emoticons/default/blush.gif

 

Eu até poderia dar uma força pois tenho um certa experiência com bat´s e msm vbscript.

 

Qto a utilizar cookies não acho a melhor solução pois o nevegador pode ser configurado para não aceitar cookies. onde trabalho msm não aceita cookies. Então seria uma solução que funcionaria mas não completa.

 

Talvez uma sugestão seria o uso de um executável como serviço do windows que seria bem mais fácil de configurar, instalar e tratar os erro e falhar (gerando log por exemplo). Mas para isso preciso de mais informações

 

De com o processo funcionaria, pois seu post é lacônico por demais! http://forum.imasters.com.br/public/style_emoticons/default/grin.gif

 

Vamso discutindo pois acho que podemos chegar a uma solução.

 

t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

entendi sim... realmente seria bem mais fácil... mas o caso é o seguinte... esse adminstrador é usado por todos os funcionários da empresa... cada um é responsável pela sua atualização.. ou seja a atualização da sua área...esse sistema é para que a "chefia" da empresa seja avisada que de tal "área" não recebeu atualização, compreende?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Princesa,Pelo que entendi isto rodará na rede interna (intranet) de sua empresa?t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

mais ou menos... é q assim óacho q eu não to conseguindo explicar direito heheheheheo cliente pediu dois serviços... um site e a intranet... em ambos os funcionários vão fazer atualizações... vai ter a intranet (que ainda não pensei como vou fazer, se isso pode ser feito em asp) e o administrador do site... que quando não houver atualização pela área de TI da empresa vai lançar um email dizendo que a tantos dias o site não é atualizado..a idéia é sim colocar isso na intranet... mas só depois que eu descobrir como vou fazer.. primeiramente estou pensando no site.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se o site é acessado pelo menos uma vez a cada 3 dias, você poderia fazer uma consulta ao abrir o site.

Pra tua tabela de conteúdo, crie uma coluna onde vai constar a data da última atualização. Nessa consulta você obtem o valor da tua tabela onde a data de atualização é maior que a data de hoje num intervalo multiplo de 3 dias.

Se voltar EOF significa que nesse período não houve atualização, então dispara um email.

 

Ex:

Na tabela tem a coluna Dt_Atualiza com o valor 03/05/2007, hoje é dia 09/05/2007, usa:

if DateDiff("d", Now, Dt_Atualiza) > 3 then	 'Dispara o emailend if
A diferença é maior que 3

 

O problema nesse caso, é que se o site não for acessado pelo menos uma vez a cada 3 dias, o email não é disparado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse é o problema... teria que ser alguma coisa automática... que se passasse dois ou três dias sem ser salva nenhum registro lançasse o email

Compartilhar este post


Link para o post
Compartilhar em outros sites

Princesa,

 

O servidor IIS é na empresa ou externo?

 

Acho que um executável em VB por exemplo poder resolver o problema.

 

Onde trabalho tivemos de seguinte cenário:

-->Empresa q prestam serviços de taxi enviam diariamente aruiqvo texto via upload para um servidor de aquivos.

-->Um executável VB roda de uma em uma hora como serviço do windows consitindo e enviando estes txt´s para o bd.

-->Caso um dos fornecedores fique 4 dias sem enviar os txt o executável envia um e-mail para o fornecedor e para a área que administra o contrato.

 

Mas aqui temos um ambiente prórprio e tenho como instalar estes executávies com serviço sem problemas.

 

A sufestão do dataset pode ser um caminho mas roda via asp e não independente como o executável.

 

Bem as carta estão na mesmo. Faça suas apostas.

 

t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu já precisei que uma Schedule fosse instalada no servidor WEB, lá no Services do Windows, mas como o Servidor é compartilhado, a administração não permitiu. Eles permitem que se instale Componentes, Schedules, VBS, BAT num servidor dedicado, que custa a maior grana.Então tive que achar outra alternativa pro meu problema. Se alguém souber, compartilha aí, eu me interesso por esse assunto.Seria bacana se houvesse um modo de rodar um código de tempos em tempos no servidor sem necessidade de acessos.Att;

Compartilhar este post


Link para o post
Compartilhar em outros sites

a intranet rodaria em IIS.. mas o site seria em um servidor web comum, por isso não tem como instalar um sisteminha pra fazer essa verificação...já estou achando que não tem como fazer =/

Compartilhar este post


Link para o post
Compartilhar em outros sites

A aplicação da INTRANET seria uma cópia perfeita da Aplicação WEB ?Então faz a instalação da tua Schedule no Services do servidor de INTRANET.Pelo que entendi você tem dois ambientes: Desenvolvimento e Produção, correto ? A equipe desenvolve e Publica na WEb. Caso não seja atualizado no ambiente de Desenvolvimento, dispara o email.Se Ambiente Desenvolvimento não é atualizado, se tem por definição que o Ambiente de Produção também não é atualizado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Princesa,Qual banco de dados você esta utilizando?t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas a intranet é independente do site....inclusive a intranet nem comecei a fazer ainda, é coisa futura....o que tenho é um gerenciador de conteúdo hospedado numa locaweb da vida, ok? só preciso que seja criado um email dizendo que o site (através do gerenciador de conteúdo) não é atualizado a tantos dias.estou usando no site um access porque é pouca coisa, são só noticias a serem atualizadas

Compartilhar este post


Link para o post
Compartilhar em outros sites

Gata... não tem como, eu também hospedo na LocaWeb. Já precisei, mas não foi permitido por causa das seguranças.

O jeito mesmo é usar um daqueles modos que foram postados.

[*]Ou a cada visita a página fazer a verificação se a data da ultima atualização é maior que 3 comparada com a data atual, ou

[*]Enviar um email somente quando for feita uma atualização.

Quem sabe os amigos que tem mais experiências podem dar outras ideias.

 

Parte editada após publicação:

jothaz, só uma pergunta... o SQL SERVER permite fazer Programmability => Functions

Eu creio que dá pra fazer um laço e nesse laço ficar verificando a atualização. O que você acha ? Podeira ser uma saída.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tá ok então dataset... vou dar mais um pesquisada por ae... se alguém souber alguma maneira que seja possível de ser feito isso... sei lá criando um log, carregando um cookie, qualquer coisa, dá um toque.vou ficar no aguardo, porque a única exigência do cliente foi esse alerta de atualização ae.valew ;)

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.