public void CriarOuAtualizar(int idEvento, DTOConfiguracaoEmail dto) { ExecutarSeguramente(() => { var evento = ObterEventoOuExcecaoSeNaoEncontrar(idEvento); var repositorioCnf = Contexto.RepositorioConfiguracoesEmail; var configuracao = repositorioCnf.Obter(idEvento); var EhParaCriar = true; if (configuracao == null) { configuracao = new ConfiguracaoEmail(evento); } else { EhParaCriar = false; } configuracao.EnderecoEmail = dto.EnderecoEmail; configuracao.PortaServidor = dto.PortaServidor; configuracao.SenhaEmail = dto.SenhaEmail; configuracao.ServidorEmail = dto.ServidorEmail; configuracao.TipoSeguranca = dto.TipoSeguranca; configuracao.UsuarioEmail = dto.UsuarioEmail; if (EhParaCriar) { repositorioCnf.Incluir(configuracao); } else { repositorioCnf.Atualizar(configuracao); } }); }
internal ConfiguracaoEmail ObterConfiguracao() { ConfiguracaoEmail config = null; using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia()) { #region Email Comando comando = bancoDeDados.CriarComando(@"select c.servidor_smtp, c.usuario_smtp, c.porta, c.ssl, c.remetente, c.senha, c.num_tentativa from cnf_email c"); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { config = new ConfiguracaoEmail(); config.SmtpServer = reader["servidor_smtp"].ToString(); config.SmtpUser = reader["usuario_smtp"].ToString(); config.Remetente = reader["remetente"].ToString(); config.SmtpSenha = reader["senha"].ToString(); config.NumeroTentativaEnvio = Convert.ToInt32(reader["num_tentativa"]); config.Porta = ((Convert.IsDBNull(reader["porta"]) || reader["porta"] == null) ? 25 : Convert.ToInt32(reader["porta"])); config.EnableSsl = ((Convert.IsDBNull(reader["ssl"]) || reader["ssl"] == null) ? false : Convert.ToBoolean(reader["ssl"])); } reader.Close(); } #endregion } return(config); }
public GeradorDeNfce() { CfgServico = ConfiguracaoServico.Instancia; CfgServico.tpAmb = TipoAmbiente.Homologacao; CfgServico.tpEmis = TipoEmissao.teNormal; CfgServico.ProtocoloDeSeguranca = ServicePointManager.SecurityProtocol; var emitente = new emit { CNPJ = "31808064000147", IE = "9079550016", xFant = "Joao Victor Spinoza", xNome = "Joao Victor Spinoza" }; var configuracaoDeEmail = new ConfiguracaoEmail("*****@*****.**", "senha", "Envio de NFE", "Teset123", "smtp.dominio.com", 587, true, true); var configuracaoDanfeNfe = new ConfiguracaoDanfeNfce(NfceDetalheVendaNormal.UmaLinha, NfceDetalheVendaContigencia.UmaLinha); _configuracoes = new Configuracao( GetEnderecoEmitente(), CfgServico, emitente, configuracaoDeEmail, configuracaoDanfeNfe ); }
public GeradorDeNfce(ConfiguracaoServico cfgServico, X509Certificate2 cert) { _cfgServico = cfgServico; var emitente = new emit { CNPJ = "31808064000147", IE = "9079550016", // ambiente produção //xFant = "Joao Victor Spinoza", //xNome = "Joao Victor Spinoza", xNome = nfeEmitadaHomolog, xFant = nfeEmitadaHomolog, CRT = CRT.SimplesNacional }; var configuracaoDeEmail = new ConfiguracaoEmail("*****@*****.**", "senha", "Envio de NFE", "Teset123", "smtp.dominio.com", 587, true, true); var configuracaoDanfeNfe = new ConfiguracaoDanfeNfce(NfceDetalheVendaNormal.UmaLinha, NfceDetalheVendaContigencia.UmaLinha, versaoQrCode: VersaoQrCode.QrCodeVersao2); _configuracoes = new Configuracao( GetEnderecoEmitente(), _cfgServico, emitente, configuracaoDeEmail, configuracaoDanfeNfe ); _cert = cert; _configuracoes.CfgServico.Certificado.Serial = _cert.SerialNumber; }
public async Task Enviar(string nomeDestinatario, string destinatario, string assunto, string mensagemHtml) { ConfiguracaoEmail configuracaoEmail = await ObterConfiguracoes(); var message = Montarmensagem(nomeDestinatario, destinatario, assunto, mensagemHtml, configuracaoEmail); await ExecutarEnvio(configuracaoEmail, message); }
public Configuracao(enderEmit enderecoEmitente, ConfiguracaoServico configuracaoServico, emit emitente, ConfiguracaoEmail configuracaoEmail, ConfiguracaoDanfeNfce configuracaoDanfeNfce) { EnderecoEmitente = enderecoEmitente; CfgServico = configuracaoServico; Emitente = emitente; ConfiguracaoEmail = configuracaoEmail; ConfiguracaoDanfeNfce = configuracaoDanfeNfce; }
public ConfiguracaoApp() { CfgServico = ConfiguracaoServico.Instancia; CfgServico.tpAmb = TipoAmbiente.taHomologacao; CfgServico.tpEmis = TipoEmissao.teNormal; Emitente = new emit { CPF = "", CRT = CRT.SimplesNacional }; EnderecoEmitente = new enderEmit(); ConfiguracaoEmail = new ConfiguracaoEmail("*****@*****.**", "senha", "Envio de NFE", Resources.MensagemHtml, "smtp.dominio.com", 587, true, true); ConfiguracaoCsc = new ConfiguracaoCsc("000001", ""); }
public ConfiguracaoApp() { CfgServico = ConfiguracaoServico.Instancia; CfgServico.tpAmb = TipoAmbiente.Homologacao; CfgServico.tpEmis = TipoEmissao.teNormal; CfgServico.ProtocoloDeSeguranca = ServicePointManager.SecurityProtocol; Emitente = new emit { CPF = "", CRT = CRT.SimplesNacional }; EnderecoEmitente = new enderEmit(); ConfiguracaoEmail = new ConfiguracaoEmail("*****@*****.**", "senha", "Envio de NFE", Properties.Resources.MensagemHtml, "smtp.dominio.com", 587, true, true); }
private static async Task ExecutarEnvio(ConfiguracaoEmail configuracaoEmail, MimeMessage message) { using (var client = new SmtpClient()) { await client.ConnectAsync(configuracaoEmail.ServidorSmtp, configuracaoEmail.Porta, configuracaoEmail.UsarTls); await client.AuthenticateAsync(configuracaoEmail.Usuario, configuracaoEmail.Senha); await client.SendAsync(message); await client.DisconnectAsync(true); } }
internal void FimDaFila(int id, ConfiguracaoEmail configEmail) { Comando comando = null; using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia()) { comando = bancoDeDados.CriarComando(@"update tab_email t set t.data_fila = sysdate + numtodsinterval(:CheckIntervalMinuto, 'MINUTE') where t.id = :email"); comando.AdicionarParametroEntrada("email", id, DbType.Int32); comando.AdicionarParametroEntrada("CheckIntervalMinuto", Settings.Default.CheckIntervalMinuto, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); } }
public ConfiguracaoApp() { CfgServico = ConfiguracaoServico.Instancia; CfgServico.tpAmb = TipoAmbiente.Homologacao; CfgServico.tpEmis = TipoEmissao.teNormal; CfgServico.ProtocoloDeSeguranca = ServicePointManager.SecurityProtocol; Emitente = new emit { CPF = "", CRT = CRT.SimplesNacional }; EnderecoEmitente = new enderEmit(); ConfiguracaoEmail = new ConfiguracaoEmail("*****@*****.**", "senha", "Envio de NFE", Resources.MensagemHtml, "smtp.dominio.com", 587, true, true); ConfiguracaoCsc = new ConfiguracaoCsc("000001", ""); ConfiguracaoDanfeNfce = new ConfiguracaoDanfeNfce(NfceDetalheVendaNormal.UmaLinha, NfceDetalheVendaContigencia.UmaLinha, documentoCancelado: true); }
public static bool Enviar(string[] para, string assunto, string mensagem, string[] paraOculto = null, string[] anexos = null) { try { ConfiguracaoEmail email = CarregaConfiguracao(); MailMessage mail = new MailMessage() { From = new MailAddress(email.De, email.NomeApresentacao) }; foreach (string p in para) { mail.To.Add(new MailAddress(p)); } foreach (string p in paraOculto) { mail.CC.Add(new MailAddress(p)); } mail.Subject = assunto; mail.Body = mensagem; mail.IsBodyHtml = true; mail.Priority = MailPriority.High; if (anexos != null) { foreach (string anexo in anexos) { mail.Attachments.Add(new Attachment(anexo)); } } using (SmtpClient smtp = new SmtpClient(email.Dominio, email.Porta)) { smtp.Credentials = new NetworkCredential(email.Usuario, email.Senha); smtp.EnableSsl = true; smtp.Send(mail); return(true); } } catch (Exception) { return(false); } }
public EmailServico(IRepositorioConfiguracaoEmail repositorioConfiguracaoEmail) { if (repositorioConfiguracaoEmail is null) { throw new System.ArgumentNullException(nameof(repositorioConfiguracaoEmail)); } var configuracoes = repositorioConfiguracaoEmail.Listar(); if (configuracoes != null) { configuracaoEmail = configuracoes.FirstOrDefault(); } else { throw new NegocioException("Não foi possível recuperar as configurações para envio de e-mail."); } }
protected override void Executar() { try { _config = _da.ObterConfiguracao(); if (_config == null) { throw new Exception("Não há linha na configuração do email. [cnf_email]"); } Email email = _da.ObterEmailDeEnvio(_config.NumeroTentativaEnvio); while (email != null) { try { Enviar(email); } catch (Exception exc) { Log.GerarLog(exc); } finally { if (email.Situacao != 2 && email.NumTentativas >= _config.NumeroTentativaEnvio) { _da.AlterarSituacao(email.Id, 3); } else { _da.FimDaFila(email.Id, _config); } } email = _da.ObterEmailDeEnvio(_config.NumeroTentativaEnvio); } } catch (Exception exc) { Log.GerarLog(exc); } }
/// <summary> /// Salvar configurações de serviços e remover os registros anteriores. /// </summary> public bool salvar(ConfiguracaoEmail OConfiguracoes) { OConfiguracoes.setDefaultInsertValues(); db.ConfiguracaoEmail.Add(OConfiguracoes); db.SaveChanges(); bool flagSucesso = OConfiguracoes.id > 0; if (flagSucesso) { int?idOrganizacaoParam = OConfiguracoes.idOrganizacao; db.ConfiguracaoEmail.Where(x => x.flagExcluido == false && x.idOrganizacao == idOrganizacaoParam && x.id != OConfiguracoes.id) .Update(x => new ConfiguracaoEmail { flagExcluido = true }); CacheService.getInstance.remover(chaveCache, idOrganizacaoParam.toInt()); } return(flagSucesso); }
public EmailBuilder(ConfiguracaoEmail configuracaoEmail) { _configuracaoEmail = configuracaoEmail; _destinatarios = new List <MailAddress>(); _anexos = new List <string>(); }
//Construtor public ConfiguracaoEmailForm() { this.ConfiguracaoEmail = new ConfiguracaoEmail(); }
public static ConfiguracaoEmail carregar() { ConfiguracaoEmail Config = new ConfiguracaoEmail(); Config.contaEmailSistema = "*****@*****.**"; Config.senhaEmailSistema = "123mudar"; Config.servidorPOPEmailSistema = "mail.sinctec.com.br"; Config.servidorSMTPEmailSistema = "mail.sinctec.com.br"; Config.flagSSLPOPEmailSistema = "S"; Config.flagSSLSMTPEmailSistema = "S"; Config.portaPOPEmailSistema = 995; Config.portaSMTPEmailSistema = 587; Config.assinaturaEmail = "" + "<p class=\"left-15\">" + "<font color=\"#ffffff\"><b class=\"white\">Associatec</b><br />Fone: (55 11) 1111-1111<br /></font>" + "<a href=\"#DOMINIO#\" style=\"color:#ffffff\">#DOMINIO#</a>" + "</p>"; Config.masterpageEmail = "" + "<!DOCTYPE html\">" + "<html lang=\"pt-br\">" + "<head>" + "<meta charset=\"utf-8\" />" + "<title>#NOME_APLICACAO#</title>" + "<style>" + ".logo{width: 166px;padding-top: 10px;padding-bottom: 10px;}" + ".titulo{margin-right: 15px;}" + ".right{text-align: right;margin-right: 15px;}" + ".borda-titulo{border-bottom: 6px solid #2ca5d0;}" + "p{color: #959499;}" + "b{color: #000000;}" + ".white{color: #ffffff !important;}" + ".back-titulo{background-color: #304149}" + ".back-footer{background-color: #2ca5d0;}" + ".back-footer td p{color: #ffffff !important;}" + ".left-15{margin-left: 15px;}" + "</style>" + "</head>" + "<body>" + "<table align=\"center\" width=\"650\" cellpadding=\"10\" cellspacing=\"0\" border=\"0\" style=\"background-color: #f2f2f2;font-family: 'Lato', Calibri, Arial, sans - serif;\">" + "<tr>" + "<td><a href=\"\"><img src=\"#URL_LOGO#\" alt=\"logo\" class=\"logo\"></a></td>" + "<td align=\"right\">#DATA_EMAIL# </td>" + "</tr>" + "<tr height=\"20\">" + "<td colspan=\"2\" class=\"borda-titulo\" bgcolor=\"#304149\"><br /><p class=\"titulo\" style=\"text-align:right;color:#ffffff;font-size:20px;\">#ASSUNTO#</p><br /></td>" + "</tr>" + "<tr height=\"2\"><td colspan=\"2\" bgcolor=\"#2ca5d0\"></td></tr>" + "<tr><td colspan=\"2\">#CONTEUDO_MENSAGEM#</td></tr>" + "<tr><td colspan=\"2\" bgcolor=\"#2ca5d0\">#ASSINATURA_ENVIO#</td></tr>" + "</table>" + "</body>" + "</html>"; return(Config); }
private static MimeMessage Montarmensagem(string nomeDestinatario, string destinatario, string assunto, string mensagemHtml, ConfiguracaoEmail configuracaoEmail) { var message = new MimeMessage(); message.From.Add(new MailboxAddress(configuracaoEmail.NomeRemetente, configuracaoEmail.EmailRemetente)); message.To.Add(new MailboxAddress(nomeDestinatario, destinatario)); message.Subject = assunto; message.Body = new TextPart("html") { Text = mensagemHtml }; return(message); }
public Email(IOptions <ConfiguracaoEmail> configuration) { _emailConfiguration = configuration.Value; }