É possível validar a conexão da máquina do cliente com o servidor SMTP do e-mail externamente ao componente.
Para realizar esse procedimento utilizaremos o WindowsPowerShell.
1- Executar o WindowsPowerShell como administrador:
O WindowsPowerShell é uma ferramenta nativa do Windows, basta pesquisar pelo nome na barra de pesquisas, que ela tende a aparecer, caso não encontre o WindowsPowerShell pela barra de pesquisas do Windows, pode tentar executa-lo da seguinte forma:
Pressione as teclas simultaneamente “Windows + R” logo será aberto o “Executar” digite no campo em branco C:\Windows\System32\WindowsPowerShell\v1.0 e pressione Enter.
Clique com botão direito do mouse em PowerShell, executar como administrador.
Caso mesmo assim não encontre o PowerShell, ele provavelmente não veio instalado de forma nativa no windows, para fazer a instalação, pode seguir os seguintes passos
1.1- Abra o CMD, executando-o como administrador.
1.2- Em seguida, digite o seguinte comando na interface do CMD:
winget search Microsoft.PowerShell. Após isso tecle Enter.
1.3- Por fim, digite os seguintes comandos:
winget install --id Microsoft.Powershell --source winget
winget install --id Microsoft.Powershell.Preview --source winget, com isso, a instalação do PowerShell vai ser iniciada.
Após finalizar a instalação, reinicie a máquina e abra o PowerShell normalmente.
Importante!
A execução do script tem que ser feita no WindowsPowerShell, não utilize o CMD para esse procedimento.
2- Após executar o WindowsPowerShell como administrador, copie o script anexado a baixo, na interface do PowerShell.
# Configurações do servidor SMTP
$smtpServer = "smtp.office365.com" # Substitua pelo seu servidor SMTP
$smtpPort = 587 # Substitua pela porta do servidor SMTP
$secureMode = "STARTTLS" # Deixe esse secureMode como padrão.
$username = " " # Endereço de e-mail
$password = " " # Substitua pela senha correta ou senha de aplicativo
# Informações do email
$from = " " # E-mail Remetente
$to = " " # E-mail Destinatário
$subject = "Teste de SMTP"
$body = "Este é um teste de envio de email usando SMTP do Office 365."
# Criação do objeto de email
$msg = New-Object System.Net.Mail.MailMessage
$msg.From = $from
$msg.To.Add($to)
$msg.Subject = $subject
$msg.Body = $body
# Configuração do cliente SMTP
$smtp = New-Object Net.Mail.SmtpClient($smtpServer, $smtpPort)
$smtp.EnableSsl = $true
$smtp.Credentials = New-Object System.Net.NetworkCredential($username, $password)
try {
# Envio do email
$smtp.Send($msg)
Write-Host "Email enviado com sucesso!"
} catch {
Write-Host "Falha ao enviar email: $_"
}
3- Edite os campos necessários para o envio, informando os dados do e-mail que você precisa testar fora do Componente, logo em seguida, tecle Enter no PowerShell, que será iniciado o envio do e-mail.
4- Logo após o envio, o PowerShell vai devolver um retorno positivo ou negativo sobre a comunicação com o SMTP do E-mail.
Nesse caso, o servidor SMTP não foi acessível pelo Windows, e o e-mail não foi enviado.
No segundo caso, pode indicar uma falha na senha, valide se a senha está correta, e se necessário crie uma senha de aplicativo para o seu e-mail.
Na terceira situação, ocorrerá quando o e-mail e os dados vão estar comunicáveis, e o e-mail será enviado sem problemas.
Caso receba a mensagem "Falha ao enviar email" pelo PowerShell, isso indica um problema de comunicação entre a máquina e o servidor. Esse problema pode ser tanto na infraestrutura do cliente quanto na própria máquina. Nessa situação, o mais correto é que a equipe de infraestrutura do cliente intervenha para analisar o caso e verificar possíveis bloqueios que possam estar causando essa falha no envio de e-mails via SMTP.
Comentários
0 comentário
Por favor, entre para comentar.