Ir para conteúdo
Beatriz Burti

Criar um serviço de monitoramento para envio de e-mail com o windows service

Recommended Posts

Preciso criar um serviço para monitorar as automações que eu tenho, por exemplo se a automação X,Y ou Z pararem durante 15 minutos gere um alerta e envie um e-mail para as pessoas responsáveis, e depois que o problema for resolvido disparar outro e-mail a todos para informar que o problema está ok.

tenho uma tabela no banco de dados (SQL server) referente as automações e as máquinas que estão rodando, porém não sei como fazer o código em c# para que isso funcione, alguém tem alguma ideia?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por laumello12
      Galera ajudinha
      Como faço para consumir um web service pronto em um projeto. Preciso só que ele busque no web service e traga na web 
      HELP
    • Por ValérinhaSilva255
      Precisamos criar um teatro, onde utilizaremos os conceitos de uma matriz em C#. Esta matriz, deverá ter, no máximo, 150 lugares.

      O programa deverá reservar uma poltrona, cobrando para isso do usuário 40% do valor total do ingresso, que deverá ser informado na tela inicial do programa.

      Quando ocupada uma poltrona, o usuário poderá pagar 60% ou 100% do valor total (caso esteja ou não reservada anteriormente). No caso de desmarcação de reserva, deverá ser devolvido 50% do valor da reserva (portanto, 20% do valor total do ingresso).

      O programa poderá ocupar, reservar, liberar poltronas.
      Um espetáculo somente poderá acontecer se a arrecadação total for maior ou igual a 51% do valor total do teatro. 

      Quando o teatro for fechado, pede-se para que se informe:
      Total de Lugares reservados: XX
      Valor total das reservas: R$00,00
      Total de Lugares Ocupados: YY
      Valor total de Ocupantes: R$00,00
      Total de Lugares Livres: ZZ

      Mínimo para realização do Evento: R$999,99. Valor Total Arrecadado: R$989,00
      Se o valor arrecadado for MAIOR que 51% do mínimo para realização, deverá ACONTECER o espetáculo, caso contrário, mostrar quantos locais ainda precisariam ser ocupados, da seguinte forma: Precisaríamos de 10 lugares Ocupados ou 30 lugares reservados para que o espetáculo pudesse ocorrer.

      O visitante deverá ter o “mapa” de cadeiras a sua disposição.

      O visitante irá escolher sua posição informando fileira e cadeira desejada.
      EXEMPLO DE EXECUÇÃO
      PREÇO DO INGRESSO: R$100,00

      ***** ***** ****** Mapa do Teatro ***** ***** *****

      0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
      0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
      0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
      0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
      0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
      0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
      0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
      0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
      0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
      0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

      ***** ***** ****** Mapa do Teatro ***** ***** *****

      O que você deseja fazer?
      [0] - Finalizar o programa
      [1] - Abrir Espetáculo
      [2] - Reservar uma poltrona
      [3] - Liberar poltrona reservada
      [4] - Vender poltrona
      [7] - Finalizar vendas
      [9] - Parciais do Espetáculo

      Resumo das Operações:
      0 - Finaliza o programa e retorna para o sistema operacional.
      1 - Libera a sala do teatro, para que o programa possa ser executado outras vezes, para outros espetáculos (Zera todas as variáveis).
      2 - Reservar poltrona (Cobrar 40% do valor do ingresso)
      3 - Liberar poltrona reservada (Devolve 20% do valor do ingresso)
      4 - Vender poltrona (Recebe valor integral do ingresso - 100%)
      7 - Finalizar vendas (listar todos os resultados)
      9 - Parciais (saber quanto esta pago em cada situação. Reservas, vendas, etc.) Pode ser solicitado a qualquer momento.
    • Por Antonio Barbosa
      Saudações colegas,
      Sou novo aqui na comunidad e estou com um grave problema, mas que penso ser muito simples.
       
      Normalmente sempre trabalhei com MySQL, nos meus projectos em php sempre trabalhei e tudo funciona perfeitamente, porém, estou numa empresa em que o SGBD é SQL SERVER  e tenho enfrentado alguns problemas, consigo fazer quase tudo que fazia quando o SGBD era MySQL, mas conforme o projecto na empresa vai crescendo, cresce também  a dificuldade de implementar as minha ideias usando o SQL SERVER, cá vai o problema:
       
      Tenho uma tela de Login em que o mesmo faz a requisição no Banco de Dados SQL SERVER, ele funciona 75%, caso eu coloque o Username Errado, ele trás a mensagem Dados Errados, caso eu erre a Senha, ele apresenta a mensagem de Senha Incorrecta, até aqui tudo bem, mas se eu colocar todos os dados correctos, ele não me apresenta nenhuma mensagem e não me renderiza para a página de destino.
       
      Estou a trabalhar com MVC, abaixo segue-se o código.
       
      Controller
       
      function entrar(){
              $data = array();
              $data['username'] = $_POST['nome_utilizador'];
              $data['password'] = sha1($_POST['senha']);
       
              if(!is_null($this->model->verificausername($data))){
                  echo 2;
              }
              else if(!is_null($a = $this->model->verificasenha($data))){
                  
                  echo 3;
              }    
              else if (!is_null($this->model->entrar($data))):
              echo 1;

          endif;
      }
       
      Model
       
      public function entrar($data){
       $sth =  $this->bd->prepare("SELECT *  FROM tKxUsUtilizador WHERE UtCodigo = :username AND UtSenha = :password");
       $sth->execute(array(
          ':username' => $data['username'],
          ':password' => $data['password']
      ));
       $data = $sth->fetch();
       $count = $sth->rowCount();
       if($count > 0):
                  //login
          Session::init();
          Session::set('UtCodigo', $data['UtCodigo']);
            Session::set('UtSenha', sha1($data['UtSenha']));
          Session::set('loggedIn', true);
          return 1;
      else:
          return null;
      endif;
      }
       
      Preciso muito dessa ajuda,
       
      Obrigado.
    • Por Beatriz Burti
      Olá pessoal
       
      Preciso da ajuda de vocês, atualmente tenho uma consulta que está retornando as datas, nomes e quantidade de erros, gostaria de fazer um pivot para que a data fique como coluna e somar a quantidade de erros. 
       
      Poderiam me ajudar?
       
       
       
      SELECT
        CAST(C.DataPalitagem AS DATE) AS Data,
        C.Id,
        R.Id,
        R.Nome,
        COUNT(DISTINCT CASE WHEN SPC.IdStatus = 4 THEN REL.IdCaptura ELSE NULL END) AS Erros
       FROM
        Caso C (NOLOCK)
        INNER JOIN StatusProcessosCaso SPC (NOLOCK) ON C.Id = SPC.IdCaso
        INNER JOIN Relacionamento REL (NOLOCK) ON SPC.IdCaso = REL.IdCaso AND SPC.IdRobo = REL.IdRobo
        INNER JOIN Robo R (NOLOCK) ON SPC.IdRobo = R.ID
        INNER JOIN StatusProcesso S ON SPC.IdStatus = S.Id
        LEFT  JOIN TipoRobo TR ON R.IdTipoRobo = TR.Id
        LEFT  JOIN CasoCaptura CC (NOLOCK) ON C.Id = CC.IdCaso AND REL.IdCaptura = CC.IdCaptura AND CC.Excluido = 0
       WHERE
        C.Id > 370
        AND
        C.IdStatusCaso >= 2
        AND
        C.DataPalitagem >= CAST(GETDATE()-15 AS DATE)
        AND
        SPC.IdRobo NOT IN (4)
       GROUP BY
        CAST(C.Data AS DATE),
        C.Id,
        R.Id,
        R.Nome
        ORDER BY 
        C.Id,
        R.Id,
        R.Nome
       
    • Por Fiori
      Eu, estou cursando SI, e estou no primeiro semestre, o professor passou uma lista de exercícios, consegue resolver todos mas quando cheguei nesse não consigo resolver.
      O exercício é esse:  "Entrar via teclado com o sexo de determinado usuário, aceitar somente “F” ou “M” como respostas válidas.".
      Independente se a resposta for "F", "f", "M", "m" ou qualquer outra o loop do Do se repete. Oque preciso fazer para acontecer o if?
      string genero; Console.Clear(); Console.WriteLine("Caso seja mulher, digite [F]."); Console.WriteLine("Caso seja homem, digite [M]."); genero = Console.ReadLine(); do { Console.WriteLine("Valor invalido."); Console.WriteLine("Digite [F] ou [M]."); genero = Console.ReadLine(); } while (genero != "F" || genero != "M"); if (genero == "F" || genero == "M") { Console.WriteLine("Esse valor foi aceito."); Console.ReadKey(); }
       
×

Informação importante

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