Udostępnij za pośrednictwem


Wysyłanie wiadomości e-mail przy użyciu protokołu SMTP

W tym artykule opisano sposób wysyłania wiadomości e-mail przy użyciu protokołu SIMPLE Mail Transfer Protocol (SMTP).

Wymagania wstępne

Ukończenie tego artykułu wiąże się z niewielkim kosztem kilku centów USD lub mniej na koncie platformy Azure.

Uwaga

Możesz również wysłać wiadomość e-mail z własnej zweryfikowanej domeny. Dodaj niestandardowe zweryfikowane domeny do usługi komunikacji e-mail.

W tym artykule opisano sposób wysyłania wiadomości e-mail za pomocą usług Azure Communication Services przy użyciu protokołu SMTP.

Sprawdzanie wymagań wstępnych

  • W terminalu lub oknie polecenia uruchom dotnet polecenie , aby sprawdzić, czy zainstalowano bibliotekę klienta platformy .NET.
  • Aby wyświetlić poddomeny skojarzone z zasobem Azure Communication Email, zaloguj się do portalu Azure. Znajdź zasób poczty e-mail usługi Azure Communication i otwórz kartę Udostępnianie domen w okienku nawigacyjnym z lewej strony.

Tworzenie nowej aplikacji w języku C#

W oknie konsoli (takim jak cmd, PowerShell lub Bash) użyj dotnet new polecenia , aby utworzyć nową aplikację konsolową o nazwie EmailQuickstart. To polecenie tworzy prosty projekt języka C# "Hello World" z jednym plikiem źródłowym: Program.cs.

dotnet new console -o EmailSmtpQuickstart

Zmień katalog na nowo utworzony folder aplikacji i użyj dotnet build polecenia , aby skompilować aplikację.

cd EmailSmtpQuickstart
dotnet build

Konstruowanie wiadomości e-mail

Aby utworzyć wiadomość e-mail, musisz:

  • Zdefiniuj poświadczenia uwierzytelniania SMTP przy użyciu identyfikatora Entra firmy Microsoft.
  • Zdefiniuj temat wiadomości e-mail i treść.
  • Zdefiniuj adres nadawcy. Pobierz adres MailFrom z zweryfikowanej domeny.
  • Zdefiniuj adres adresata.

Zastąp element szczegółami domeny i zmodyfikuj zawartość. Dodaj szczegóły adresata zgodnie z potrzebami.

//Replace with your domain and modify the content, recipient details as required

string smtpAuthUsername = "<SMTP Username>";
string smtpAuthPassword = "<Entra Application Client Secret>";
string sender = "donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net";
string recipient = "emailalias@contoso.com";
string subject = "Welcome to Azure Communication Service Email SMTP";
string body = "This email message is sent from Azure Communication Service Email using SMTP.";

Wysyłanie wiadomości e-mail przy użyciu elementu System.Net.Mail.SmtpClient

Aby wysłać wiadomość e-mail, musisz:

  1. Utwórz SmtpClient przy użyciu adresu URL hosta usług Azure Communication Services i poświadczeń uwierzytelniania SMTP.
  2. Utwórz wiadomość e-mail.
  3. Wyślij przy użyciu SmtpClient metody Send.
using System.Net;
using System.Net.Mail;

string smtpAuthUsername = "<SMTP Username>";
string smtpAuthPassword = "<Entra Application Client Secret>";
string sender = "donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net";
string recipient = "emailalias@contoso.com";
string subject = "Welcome to Azure Communication Service Email SMTP";
string body = "This email message is sent from Azure Communication Service Email using SMTP.";

string smtpHostUrl = "smtp.azurecomm.net";
var client = new SmtpClient(smtpHostUrl)
{
    Port = 587,
    Credentials = new NetworkCredential(smtpAuthUsername, smtpAuthPassword),
    EnableSsl = true
};

var message = new MailMessage(sender, recipient, subject, body);

try
{
    client.Send(message);
    Console.WriteLine("The email was successfully sent using Smtp.");
}
catch (Exception ex)
{
    Console.WriteLine($"Smtp send failed with the exception: {ex.Message}.");
}

Wymagania wstępne

Ukończenie tego szybkiego startu wiąże się z niewielkim kosztem kilku centów amerykańskich lub mniej na koncie Azure.

Uwaga

Możemy również wysłać wiadomość e-mail z własnej zweryfikowanej domeny. Dodaj niestandardowe zweryfikowane domeny do usługi komunikacji e-mail.

W tym artykule opisano sposób wysyłania wiadomości e-mail za pomocą usług Azure Communication Services przy użyciu protokołu SMTP.

Wysyłanie wiadomości e-mail przy użyciu Send-MailMessage

Poświadczenia można zweryfikować przy użyciu narzędzia Microsoft PowerShell Send-MailMessage. Aby uzyskać składnię, zobacz Send-MailMessage .

Aby zapisać poświadczenia w wymaganym formacie PSCredential, użyj następujących poleceń programu PowerShell:

$Password = ConvertTo-SecureString -AsPlainText -Force -String '<Entra Application Client Secret>'
$Cred = New-Object -TypeName PSCredential -ArgumentList '<SMTP Username>', $Password

Użyj następującego skryptu programu PowerShell, aby wysłać wiadomość e-mail. Wartość From to poczta z adresu zweryfikowanej domeny. Wartość To to adres e-mail, do którego chcesz wysłać.

Send-MailMessage -From 'User01 <user01@fabrikam.com>' -To 'User02 <user02@fabrikam.com>' -Subject 'Test mail' -Body 'test' -SmtpServer 'smtp.azurecomm.net' -Port 587 -Credential $Cred -UseSsl