Quickstart: Een e-mailbericht verzenden met behulp van Azure Communication Services
In deze quickstart wordt beschreven hoe u e-mail verzendt met behulp van onze E-mail-SDK's.
Ga aan de slag met Azure Communication Services met behulp van de Communication Services Try Email om e-mailberichten te verzenden.
Vereisten
- Een Azure-account met een actief abonnement. Gratis een account maken
- De nieuwste versie van .NET Core-clientbibliotheek voor uw besturingssysteem.
- Een Azure Email Communication Services-resource die is gemaakt en gereed is met een ingericht domein Aan de slag met het maken van een e-mailcommunicatieresource
- Een actieve Communication Services-resource die is verbonden met e-maildomein. Aan de slag door e-mailresource te verbinden met een communicatieresource
Voor het voltooien van deze quickstart worden kleine kosten in rekening gebracht van een paar dollarcenten of minder in uw Azure-account.
Een e-mailbericht verzenden met e-mail uitproberen
Met e-mail kunt u e-mailberichten snel verzenden naar de gewenste geadresseerden met behulp van Azure Communication Services, en de configuratie controleren voor uw toepassing om e-mail te verzenden. Het helpt ook om snel aan de slag te gaan met de ontwikkeling van uw e-mailmeldingen met het codefragment in de gewenste taal.
Een bericht verzenden naar een geadresseerde en het onderwerp en de hoofdtekst van het bericht opgeven
Klik op de overzichtspagina van een ingerichte Azure Communication Service-resource op E-mail proberen in het linkernavigatievenster onder E-mail.
Selecteer een van de geverifieerde domeinen in de vervolgkeuzelijst.
Het e-mailbericht opstellen dat moet worden verzonden
- E-mailadres van geadresseerde invoeren
- Onderwerp invoeren
- De hoofdtekst van de e-mail schrijven
Klik op Verzenden
E-mail verzonden.
U kunt nu ook het voorbeeldcodefragment kopiëren om een e-mailbericht te verzenden dat u in uw voorbeeldproject kunt gebruiken om meldingen te verzenden.
E-mailcodefragment is nu klaar voor gebruik in uw meldingsproject.
Ga aan de slag met Azure Communication Services met behulp van de Azure CLI-communicatie-extensie om e-mailberichten te verzenden.
Voor het voltooien van deze quickstart worden kleine kosten in rekening gebracht van een paar dollarcenten of minder in uw Azure-account.
Vereisten
- Een Azure-account met een actief abonnement. Gratis een account maken
- Een Azure Email Communication Services-resource die is gemaakt en gereed is met een ingericht domein. Ga aan de slag met het maken van een e-mailcommunicatieresource.
- Een actieve Azure Communication Services-resource die is verbonden met een e-maildomein en de bijbehorende verbindingsreeks. Ga aan de slag door een e-mailcommunicatieresource te verbinden met een Azure Communication-resource.
- De nieuwste Azure CLI.
Controle van vereisten
- Voer in een terminal- of opdrachtvenster de
az --version
opdracht uit om te controleren of Azure CLI en de communicatie-extensie zijn geïnstalleerd. - Meld u aan bij Azure Portal om de domeinen weer te geven die zijn geverifieerd met uw E-mail Communication Services-resource. Zoek uw E-mail Communication Services-resource en open het tabblad Domeinen inrichten vanuit het linkernavigatiedeelvenster.
Instellen
De extensie toevoegen
Voeg de Azure Communication Services-extensie voor Azure CLI toe met behulp van de az extension
opdracht.
az extension add --name communication
Aanmelden bij Azure CLI
U moet zich aanmelden bij Azure CLI. U kunt zich aanmelden bij het uitvoeren van de az login
opdracht vanuit de terminal en uw referenties opgeven.
De verbindingsreeks naar een omgevingsvariabele schrijven
U kunt de AZURE_COMMUNICATION_CONNECTION_STRING
omgevingsvariabele configureren voor het gebruik van Bewerkingen van Azure CLI-sleutels zonder dat u de verbindingsreeks hoeft door te --connection_string
geven. Als u een omgevingsvariabele wilt configureren, opent u een consolevenster en selecteert u het besturingssysteem op de onderstaande tabbladen. Vervang <connectionString>
door de feitelijke verbindingsreeks.
Notitie
Sla uw verbindingsreeks niet op als een niet-versleutelde omgevingsvariabele voor productieomgevingen. Dit is alleen bedoeld voor testdoeleinden. Voor productieomgevingen moet u nieuwe verbindingsreeks genereren. We raden u aan om verbindingsreeks s te versleutelen en deze regelmatig te wijzigen.
setx AZURE_COMMUNICATION_CONNECTION_STRING "<yourConnectionString>"
Nadat u de omgevingsvariabele hebt toegevoegd, moet u actieve programma's die de omgevingsvariabele moeten lezen, opnieuw starten. Start ook het consolevenster opnieuw. Als u Visual Studio bijvoorbeeld gebruikt als editor, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
Een e-mailbericht verzenden
az communication email send
--connection-string "yourConnectionString"
--sender "<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>"
--to "<emailalias@emaildomain.com>"
--subject "Welcome to Azure Communication Services Email" --text "This email message is sent from Azure Communication Services Email using Azure CLI."
Voer de volgende vervangingen uit in de code:
- Vervang
<yourConnectionString>
door uw verbindingsreeks. - Vervang
<emailalias@emaildomain.com>
door het e-mailadres waarnaar u een bericht wilt verzenden. - Vervang door
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
het MailFrom-adres van uw geverifieerde domein.
De bovenstaande opdracht voert ook een polling uit op de messageId en retourneert de status van de e-mailbezorging. De status kan een van de volgende zijn:
Statusnaam | Beschrijving |
---|---|
NotStarted | Deze status wordt momenteel niet verzonden vanuit onze service. |
Wordt uitgevoerd | De verzendbewerking voor e-mail wordt momenteel uitgevoerd en verwerkt. |
Geslaagd | De verzendbewerking voor e-mail is zonder fouten voltooid en het e-mailbericht is niet bezorgd. Elke gedetailleerde status van de e-mailbezorging buiten deze fase kan worden verkregen via Azure Monitor of via Azure Event Grid. Meer informatie over het abonneren op e-mailevenementen |
Mislukt | De verzendbewerking voor e-mail is mislukt en er is een fout opgetreden. Het e-mailbericht is niet verzonden. Het resultaat bevat een foutobject met meer informatie over de reden voor de fout. |
Optionele parameters
De volgende optionele parameters zijn beschikbaar in Azure CLI.
--html
kan worden gebruikt in plaats van voor de hoofdtekst van--text
html-e-mail.--importance
stelt het urgentietype voor het e-mailbericht in. Bekende waarden zijn: hoog, normaal en laag. De standaardwaarde is normaal.--to
stelt de lijst met e-mailontvangers in.--cc
stelt e-mailadressen voor carbon copy in.--bcc
stelt e-mailadressen voor blind carbon copy in.--reply-to
hiermee stelt u het e-mailadres voor beantwoorden in.--disable-tracking
geeft aan of tracering van gebruikersbetrokkenheid moet worden uitgeschakeld voor deze aanvraag.--attachments
stelt de lijst met e-mailbijlagen in.--attachment-types
stelt de lijst met typen e-mailbijlagen in dezelfde volgorde van bijlagen in.
U kunt ook een lijst met geadresseerden met en --bcc
vergelijkbaar met .--cc
--to
Er moet ten minste één geadresseerde zijn in --to
of--cc
.--bcc
Ga aan de slag met Azure Communication Services met behulp van de Clientbibliotheek voor C#-e-mail van Communication Services om e-mailberichten te verzenden.
Tip
Start uw e-mailverzendingservaring met Azure Communication Services door rechtstreeks over te slaan naar de voorbeeldcode Basic Email Verzenden en Geavanceerd e-mail verzenden op GitHub.
Informatie over het e-mailobjectmodel
De volgende klassen en interfaces verwerken enkele van de belangrijkste functies van de E-mailclientbibliotheek van Azure Communication Services voor C#.
Name | Beschrijving |
---|---|
EmailAddress | Deze klasse bevat een e-mailadres en een optie voor een weergavenaam. |
E-mailbijlage | Met deze klasse wordt een e-mailbijlage gemaakt door een unieke id, MIME-type tekenreeks voor e-mailbijlagen, binaire gegevens voor inhoud en een optionele inhouds-id te accepteren om deze te definiëren als een inlinebijlage. |
EmailClient | Deze klasse is nodig voor alle e-mailfunctionaliteit. U maakt een instantie met uw verbindingsreeks en gebruikt deze om e-mailberichten te verzenden. |
EmailClientOptions | Deze klasse kan worden toegevoegd aan de instantie van EmailClient om een specifieke API-versie te targeten. |
EmailContent | Deze klasse bevat het onderwerp en de hoofdtekst van het e-mailbericht. U moet ten minste één van plaintext- of HTML-inhoud opgeven |
EmailCustomHeader | Met deze klasse kunt u een naam- en waardepaar toevoegen voor een aangepaste header. Het belang van e-mail kan ook worden opgegeven via deze headers met behulp van de headernaam 'x-priority' of 'x-msmail-priority' |
EmailMessage | Deze klasse combineert de afzender, inhoud en geadresseerden. Aangepaste kopteksten, bijlagen en e-mailadressen voor antwoorden kunnen ook worden toegevoegd. |
EmailRecipients | Deze klasse bevat lijsten met EmailAddress-objecten voor geadresseerden van het e-mailbericht, inclusief optionele lijsten voor CC & BCC-geadresseerden. |
EmailSendOperation | Deze klasse vertegenwoordigt de asynchrone verzendbewerking voor e-mail en wordt geretourneerd vanuit de API-aanroep voor e-mail verzenden. |
EmailSendResult | Deze klasse bevat de resultaten van de verzendbewerking voor e-mail. Het heeft een bewerkings-id, de bewerkingsstatus en het foutobject (indien van toepassing). |
EmailSendResult retourneert de volgende status van de e-mailbewerking die is uitgevoerd.
-Status | Beschrijving |
---|---|
NotStarted | Deze status wordt momenteel niet verzonden vanuit onze service. |
Wordt uitgevoerd | De verzendbewerking voor e-mail wordt momenteel uitgevoerd en verwerkt. |
Geslaagd | De verzendbewerking voor e-mail is zonder fouten voltooid en het e-mailbericht is niet bezorgd. Elke gedetailleerde status van de e-mailbezorging buiten deze fase kan worden verkregen via Azure Monitor of via Azure Event Grid. Meer informatie over het abonneren op e-mailevenementen |
Mislukt | De verzendbewerking voor e-mail is mislukt en er is een fout opgetreden. Het e-mailbericht is niet verzonden. Het resultaat bevat een foutobject met meer informatie over de reden voor de fout. |
Vereisten
- Een Azure-account met een actief abonnement. Gratis een account maken
- De nieuwste versie van .NET Core-clientbibliotheek voor uw besturingssysteem.
- Een Azure Email Communication Services-resource die is gemaakt en gereed is met een ingericht domein Aan de slag met het maken van een e-mailcommunicatieresource
- Een actieve Communication Services-resource die is verbonden met e-maildomein en een verbindingsreeks. Aan de slag door e-mailresource te verbinden met een communicatieresource
Voor het voltooien van deze quickstart worden kleine kosten in rekening gebracht van een paar dollarcenten of minder in uw Azure-account.
Notitie
We kunnen ook een e-mail verzenden vanuit ons eigen geverifieerde domein. Aangepaste geverifieerde domeinen toevoegen aan e-mailcommunicatieservice.
Controle van vereisten
- Voer in een terminal- of opdrachtvenster de opdracht
dotnet
uit om te controleren of de .NET-clientbibliotheek is geïnstalleerd. - Als u de subdomeinen wilt weergeven die zijn gekoppeld aan uw Resource voor e-mailcommunicatieservices, meldt u zich aan bij Azure Portal, zoekt u uw Resource voor e-mailcommunicatieservices en opent u het tabblad Domeinen inrichten in het linkernavigatiedeelvenster.
Een nieuwe C#-toepassing maken
Gebruik in een consolevenster (zoals cmd, PowerShell of Bash) de opdracht dotnet new
om een nieuwe console-app te maken met de naam EmailQuickstart
. Met deze opdracht maakt u een eenvoudig C#-project Hallo wereld met één bronbestand: Program.cs.
dotnet new console -o EmailQuickstart
Wijzig uw map in de zojuist gemaakte app-map en gebruik de opdracht dotnet build
om uw toepassing te compileren.
cd EmailQuickstart
dotnet build
Het pakket installeren
Terwijl u zich nog in de toepassingsmap bevindt, installeert u de e-mailclientbibliotheek van Azure Communication Services voor .NET-pakket met behulp van de dotnet add package
opdracht.
dotnet add package Azure.Communication.Email
De e-mailclient maken met verificatie
Open Program.cs en vervang de bestaande code door het volgende om instructies toe te voegen voor het toevoegen using
van de Azure.Communication.Email
naamruimte en een beginpunt voor uitvoering voor uw programma.
using System;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using Azure;
using Azure.Communication.Email;
namespace SendEmail
{
internal class Program
{
static async Task Main(string[] args)
{
}
}
}
Er zijn enkele verschillende opties beschikbaar voor het verifiëren van een e-mailclient:
Open Program.cs in een teksteditor en vervang de hoofdtekst van de Main
-methode door code om een EmailClient
te initialiseren met uw verbindingsreeks. Met de volgende code wordt de verbindingsreeks voor de resource opgehaald uit een omgevingsvariabele met de naam COMMUNICATION_SERVICES_CONNECTION_STRING
. Meer informatie over het beheren van de verbindingsreeks van uw resource.
// This code demonstrates how to fetch your connection string
// from an environment variable.
string connectionString = Environment.GetEnvironmentVariable("COMMUNICATION_SERVICES_CONNECTION_STRING");
EmailClient emailClient = new EmailClient(connectionString);
Notitie
Het is raadzaam om de handmatige polling (e-mail verzenden met asynchrone status polling) te gebruiken om e-mail te verzenden.
Standaard-e-mail verzenden
Uw e-mailbericht samenstellen
Als u een e-mailbericht wilt verzenden, moet u het volgende doen:
- Definieer het onderwerp en de hoofdtekst van het e-mailbericht.
- Definieer uw Adres van verzender. Stel uw e-mailbericht samen met uw afzendergegevens en haal uw MailFrom-adres op uit uw geverifieerde domein.
- Definieer het adres van de geadresseerde.
- Roep de sendAsync-methode aan. Voeg deze code toe aan het einde van de
Main
-methode in Program.cs:
Vervang door uw domeingegevens en wijzig de inhoud, de details van de geadresseerde naar behoefte
//Replace with your domain and modify the content, recipient details as required
var subject = "Welcome to Azure Communication Service Email APIs.";
var htmlContent = "<html><body><h1>Quick send email test</h1><br/><h4>This email message is sent from Azure Communication Service Email.</h4><p>This mail was sent using .NET SDK!!</p></body></html>";
var sender = "donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net";
var recipient = "emailalias@contoso.com";
De verzendstatus van het e-mailbericht verzenden en ophalen
Wanneer u SendAsync aanroept met Azure.WaitUntil.Started, keert uw methode terug na het starten van de bewerking. De methode retourneert het Object EmailSendOperation. U kunt de methode UpdateStatusAsync aanroepen om de status van de e-mailbewerking te vernieuwen.
Het geretourneerde EmailSendOperation-object bevat een EmailSendStatus-object met:
- Huidige status van de bewerking E-mail verzenden.
- Een foutobject met foutdetails als de huidige status de status Mislukt heeft.
/// Send the email message with WaitUntil.Started
EmailSendOperation emailSendOperation = await emailClient.SendAsync(
Azure.WaitUntil.Started,
sender,
recipient,
subject,
htmlContent);
/// Call UpdateStatus on the email send operation to poll for the status
/// manually.
try
{
while (true)
{
await emailSendOperation.UpdateStatusAsync();
if (emailSendOperation.HasCompleted)
{
break;
}
await Task.Delay(100);
}
if (emailSendOperation.HasValue)
{
Console.WriteLine($"Email queued for delivery. Status = {emailSendOperation.Value.Status}");
}
}
catch (RequestFailedException ex)
{
Console.WriteLine($"Email send failed with Code = {ex.ErrorCode} and Message = {ex.Message}");
}
/// Get the OperationId so that it can be used for tracking the message for troubleshooting
string operationId = emailSendOperation.Id;
Console.WriteLine($"Email operation id = {operationId}");
Voer de toepassing uit vanuit uw toepassingsmap met de opdracht dotnet run
.
dotnet run
Voorbeeldcode
U kunt de voorbeeld-app downloaden uit GitHub.
Ga aan de slag met Azure Communication Services met behulp van de Clientbibliotheek voor JS-e-mail van Communication Services om e-mailberichten te verzenden.
Tip
Start uw e-mailverzendingservaring met Azure Communication Services door rechtstreeks over te slaan naar de voorbeeldcode Basic Email Verzenden en Geavanceerd e-mail verzenden op GitHub.
Informatie over het e-mailobjectmodel
De volgende klassen en interfaces verwerken enkele van de belangrijkste functies van de Azure Communication Services-clientbibliotheek voor e-mail voor JavaScript.
Name | Beschrijving |
---|---|
EmailAddress | Deze klasse bevat een e-mailadres en een optie voor een weergavenaam. |
E-mailbijlage | Met deze klasse maakt u een e-mailbijlage door een unieke id, mime-tekenreeks voor e-mailbijlagen, binaire gegevens voor inhoud en een optionele inhouds-id te accepteren om deze als een inlinebijlage te definiëren. |
EmailClient | Deze klasse is nodig voor alle e-mailfunctionaliteit. U maakt een instantie met uw verbindingsreeks en gebruikt deze om e-mailberichten te verzenden. |
EmailClientOptions | Deze klasse kan worden toegevoegd aan de instantie van EmailClient om een specifieke API-versie te targeten. |
EmailContent | Deze klasse bevat het onderwerp en de hoofdtekst van het e-mailbericht. U moet ten minste één van plaintext- of HTML-inhoud opgeven. |
EmailCustomHeader | Met deze klasse kunt u een naam- en waardepaar toevoegen voor een aangepaste header. Het belang van e-mail kan ook worden opgegeven via deze headers met behulp van de koptekstnaam 'x-priority' of 'x-msmail-priority'. |
EmailMessage | Deze klasse combineert de afzender, inhoud en geadresseerden. Aangepaste kopteksten, bijlagen en e-mailadressen voor antwoorden kunnen ook worden toegevoegd. |
EmailRecipients | Deze klasse bevat lijsten met EmailAddress-objecten voor geadresseerden van het e-mailbericht, inclusief optionele lijsten voor CC & BCC-geadresseerden. |
EmailSendResult | Deze klasse bevat de resultaten van de verzendbewerking voor e-mail. Het heeft een bewerkings-id, de bewerkingsstatus en het foutobject (indien van toepassing). |
EmailSendStatus | Deze klasse vertegenwoordigt de set statussen van een verzendbewerking per e-mail. |
EmailSendResult retourneert de volgende status van de e-mailbewerking die is uitgevoerd.
Statusnaam | Beschrijving |
---|---|
isStarted | Retourneert waar als de verzendbewerking voor e-mail momenteel wordt uitgevoerd en wordt verwerkt. |
isCompleted | Retourneert waar als de verzendbewerking voor e-mail zonder fouten is voltooid en de e-mail is uitgeschakeld voor bezorging. Elke gedetailleerde status van de e-mailbezorging buiten deze fase kan worden verkregen via Azure Monitor of via Azure Event Grid. Meer informatie over het abonneren op e-mailevenementen |
resultaat | Eigenschap die bestaat als de verzendbewerking voor e-mail is afgesloten. |
error | Eigenschap die bestaat als de verzendbewerking voor e-mail niet is geslaagd en er een fout is opgetreden. Het e-mailbericht is niet verzonden. Het resultaat bevat een foutobject met meer informatie over de reden voor de fout. |
Vereisten
- Node.js (~14).
- Een Azure-account met een actief abonnement. Gratis een account maken
- Een Azure Email Communication Services-resource die is gemaakt en gereed is met een ingericht domein. Ga aan de slag met het maken van een e-mailcommunicatieresource.
- Een actieve Azure Communication Services-resource die is verbonden met een e-maildomein en de bijbehorende verbindingsreeks. Ga aan de slag door een e-mailcommunicatieresource te verbinden met een Azure Communication-resource.
Voor het voltooien van deze quickstart worden kleine kosten in rekening gebracht van een paar dollarcenten of minder in uw Azure-account.
Notitie
We kunnen ook een e-mail verzenden vanuit ons eigen geverifieerde domein. Aangepaste geverifieerde domeinen toevoegen aan e-mailcommunicatieservice.
Controle van vereisten
- Voer
node --version
in een terminal of opdrachtvenster uit om te controleren of Node.js is geïnstalleerd. - Als u de domeinen wilt weergeven die zijn geverifieerd met uw E-mail Communication Services-resource, meldt u zich aan bij De Azure-portal, zoekt u uw E-mail Communication Services-resource en opent u het tabblad Domeinen inrichten in het linkernavigatiedeelvenster.
De toepassingsomgeving instellen
Een nieuwe Node.js-toepassing maken
Open eerst uw terminal of opdrachtvenster, maak een nieuwe map voor uw app en navigeer daar naartoe.
mkdir email-quickstart && cd email-quickstart
Voer npm init -y
uit om een package.json-bestand te maken met de standaardinstellingen.
npm init -y
Gebruik een teksteditor om een bestand met de naam send-email.js te maken in de hoofdmap van het project. Wijzig de eigenschap 'main' in package.json in 'send-email.js'. In de volgende sectie ziet u hoe u de broncode voor deze quickstart toevoegt aan het zojuist gemaakte bestand.
Het pakket installeren
Gebruik de npm install
opdracht om de e-mailclientbibliotheek van Azure Communication Services voor JavaScript te installeren.
npm install @azure/communication-email --save
De optie --save
geeft de bibliotheek weer als afhankelijkheid in het package.json-bestand.
De e-mailclient maken met verificatie
Er zijn enkele verschillende opties beschikbaar voor het verifiëren van een e-mailclient:
Importeer de EmailClient uit de clientbibliotheek en maak er een exemplaar van met uw verbindingsreeks.
Met de volgende code wordt de verbindingsreeks voor de resource opgehaald uit een omgevingsvariabele met COMMUNICATION_SERVICES_CONNECTION_STRING
behulp van het dotenv-pakket. Gebruik de npm install
opdracht om het dotenv-pakket te installeren. Meer informatie over het beheren van de verbindingsreeks van uw resource.
npm install dotenv
Voeg de volgende code toe aan send-email.js:
const { EmailClient } = require("@azure/communication-email");
require("dotenv").config();
// This code demonstrates how to fetch your connection string
// from an environment variable.
const connectionString = process.env['COMMUNICATION_SERVICES_CONNECTION_STRING'];
const emailClient = new EmailClient(connectionString);
Voor het gemak gebruikt deze quickstart verbindingsreeks s, maar in productieomgevingen raden we u aan service-principals te gebruiken.
Standaard-e-mail verzenden
Een e-mailbericht verzenden
Als u een e-mailbericht wilt verzenden, roept u de functie aan vanuit de beginSend
EmailClient. Deze methode retourneert een poller die de status van de bewerking controleert en het resultaat ophaalt zodra deze is voltooid.
async function main() {
const POLLER_WAIT_TIME = 10
try {
const message = {
senderAddress: "<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>",
content: {
subject: "Welcome to Azure Communication Services Email",
plainText: "This email message is sent from Azure Communication Services Email using the JavaScript SDK.",
},
recipients: {
to: [
{
address: "<emailalias@emaildomain.com>",
displayName: "Customer Name",
},
],
},
};
const poller = await emailClient.beginSend(message);
if (!poller.getOperationState().isStarted) {
throw "Poller was not started."
}
let timeElapsed = 0;
while(!poller.isDone()) {
poller.poll();
console.log("Email send polling in progress");
await new Promise(resolve => setTimeout(resolve, POLLER_WAIT_TIME * 1000));
timeElapsed += 10;
if(timeElapsed > 18 * POLLER_WAIT_TIME) {
throw "Polling timed out.";
}
}
if(poller.getResult().status === KnownEmailSendStatus.Succeeded) {
console.log(`Successfully sent the email (operation id: ${poller.getResult().id})`);
}
else {
throw poller.getResult().error;
}
} catch (e) {
console.log(e);
}
}
main();
Voer de volgende vervangingen uit in de code:
- Vervang
<emailalias@emaildomain.com>
door het e-mailadres waarnaar u een bericht wilt verzenden. - Vervang door
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
het MailFrom-adres van uw geverifieerde domein.
De code uitvoeren
gebruik de knooppuntopdracht om de code uit te voeren die u hebt toegevoegd aan het send-email.js-bestand.
node ./send-email.js
Voorbeeldcode
U kunt de voorbeeld-app downloaden uit GitHub.
Ga aan de slag met Azure Communication Services met behulp van de Java Email SDK voor Communication Services om e-mailberichten te verzenden.
Tip
Start uw e-mailverzendingservaring met Azure Communication Services door rechtstreeks over te slaan naar de voorbeeldcode Basic Email Verzenden en Geavanceerd e-mail verzenden op GitHub.
Informatie over het e-mailobjectmodel
De volgende klassen en interfaces verwerken enkele van de belangrijkste functies van de Azure Communication Services Email SDK voor Python.
Name | Beschrijving |
---|---|
EmailAddress | Deze klasse bevat een e-mailadres en een optie voor een weergavenaam. |
E-mailbijlage | Deze interface maakt een e-mailbijlage door een unieke id, MIME-type tekenreeks voor e-mailbijlagen, een tekenreeks met inhoudsbytes en een optionele inhouds-id te accepteren om deze te definiëren als een inlinebijlage. |
EmailClient | Deze klasse is nodig voor alle e-mailfunctionaliteit. U maakt een instantie met uw verbindingsreeks en gebruikt deze om e-mailberichten te verzenden. |
EmailMessage | Deze klasse combineert de afzender, inhoud en geadresseerden. Aangepaste kopteksten, bijlagen en e-mailadressen voor antwoorden kunnen ook worden toegevoegd. |
EmailSendResult | Deze klasse bevat de resultaten van de verzendbewerking voor e-mail. Het heeft een bewerkings-id, de bewerkingsstatus en het foutobject (indien van toepassing). |
EmailSendStatus | Deze klasse vertegenwoordigt de set statussen van een verzendbewerking per e-mail. |
EmailSendResult retourneert de volgende status van de e-mailbewerking die is uitgevoerd.
Statusnaam | Beschrijving |
---|---|
NOT_STARTED | Deze status wordt momenteel niet verzonden vanuit onze service. |
WORDT_UITGEVOERD | De verzendbewerking voor e-mail wordt momenteel uitgevoerd en verwerkt. |
SUCCESSFULLY_COMPLETED | De verzendbewerking voor e-mail is zonder fouten voltooid en het e-mailbericht is niet bezorgd. Elke gedetailleerde status van de e-mailbezorging buiten deze fase kan worden verkregen via Azure Monitor of via Azure Event Grid. Meer informatie over het abonneren op e-mailevenementen |
MISLUKT | De verzendbewerking voor e-mail is mislukt en er is een fout opgetreden. Het e-mailbericht is niet verzonden. Het resultaat bevat een foutobject met meer informatie over de reden voor de fout. |
Vereisten
- Een Azure-account met een actief abonnement. Gratis een account maken
- Java Development Kit (JDK) versie 8 of hoger.
- Apache Maven.
- Een actieve Communication Services-resource en verbindingsreeks. Zie Een Communication Services-resource maken voor meer informatie.
- Maak een Azure Email Communication Services-resource om te beginnen met het verzenden van e-mailberichten.
- Een door setup beheerde identiteit voor een ontwikkelomgeving, zie Toegang autoriseren met een beheerde identiteit.
Voor het voltooien van deze quickstart worden kosten van een paar dollarcent of minder in rekening gebracht bij uw Azure-account.
Notitie
We kunnen ook een e-mail verzenden vanuit ons eigen geverifieerde domein Aangepaste geverifieerde domeinen toevoegen aan e-mailcommunicatieservice.
Controle van vereisten
- Voer in een terminal- of opdrachtvenster uit
mvn -v
om te controleren of Maven is geïnstalleerd. - Meld u aan bij Azure Portal om de domeinen weer te geven die zijn geverifieerd met uw E-mail Communication Services-resource. Zoek uw E-mail Communication Services-resource en open het tabblad Domeinen inrichten vanuit het linkernavigatiedeelvenster.
De toepassingsomgeving instellen
Als u een omgeving wilt instellen voor het verzenden van e-mailberichten, voert u de stappen in de volgende secties uit.
Een nieuwe Java-toepassing maken
Open uw terminal- of opdrachtvenster en navigeer naar de map waarin u uw Java-toepassing wilt maken. Voer de volgende opdracht uit om het Java-project te genereren op basis van de maven-archetype-quickstart-sjabloon.
mvn archetype:generate -DarchetypeArtifactId="maven-archetype-quickstart" -DarchetypeGroupId="org.apache.maven.archetypes" -DarchetypeVersion="1.4" -DgroupId="com.communication.quickstart" -DartifactId="communication-quickstart"
Het generate
doel maakt een map met dezelfde naam als de artifactId
waarde. Onder deze map bevat de src/main/java-map de broncode van het project, bevat de src/test/java-map de testbron en het pom.xml bestand is het Project Object Model (POM) van het project.
Het pakket installeren
Open het bestand pom.xml in uw teksteditor. Voeg het volgende afhankelijkheidselement toe aan de groep met afhankelijkheden.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-communication-email</artifactId>
<version>1.0.0-beta.2</version>
</dependency>
Stel het app-framework in
Open /src/main/java/com/communication/quickstart/App.java in een teksteditor, voeg importrichtlijnen toe en verwijder de System.out.println("Hello world!");
instructie:
package com.communication.quickstart;
import com.azure.communication.email.models.*;
import com.azure.communication.email.*;
import com.azure.core.util.polling.*;
public class App
{
public static void main( String[] args )
{
// Quickstart code goes here.
}
}
De e-mailclient maken met verificatie
Er zijn enkele verschillende opties beschikbaar voor het verifiëren van een e-mailclient.
Als u een client wilt verifiëren, instantieert u een EmailClient
instantie met uw verbindingsreeks. Meer informatie over het beheren van de verbindingsreeks van uw resource. U kunt de client ook initialiseren met elke aangepaste HTTP-client die de com.azure.core.http.HttpClient
interface implementeert.
Als u een synchrone client wilt instantiëren, voegt u de volgende code toe aan de main
methode:
// You can get your connection string from your resource in the Azure portal.
String connectionString = "endpoint=https://<resource-name>.communication.azure.com/;accesskey=<access-key>";
EmailClient emailClient = new EmailClientBuilder()
.connectionString(connectionString)
.buildClient();
Als u een asynchrone client wilt instantiëren, voegt u de volgende code toe aan de main
methode:
// You can get your connection string from your resource in the Azure portal.
String connectionString = "endpoint=https://<resource-name>.communication.azure.com/;accesskey=<access-key>";
EmailAsyncClient emailClient = new EmailClientBuilder()
.connectionString(connectionString)
.buildAsyncClient();
Voor het gemak gebruikt deze quickstart verbindingsreeks s, maar in productieomgevingen raden we u aan service-principals te gebruiken.
Standaard-e-mail verzenden
Een e-mailbericht kan worden gemaakt met behulp van het EmailMessage
object in de SDK.
EmailMessage message = new EmailMessage()
.setSenderAddress("<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>")
.setToRecipients("<emailalias@emaildomain.com>")
.setSubject("Welcome to Azure Communication Services Email")
.setBodyPlainText("This email message is sent from Azure Communication Services Email using the Java SDK.");
Voer de volgende vervangingen uit in de code:
- Vervang
<emailalias@emaildomain.com>
door het e-mailadres waarnaar u een bericht wilt verzenden. - Vervang door
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
het MailFrom-adres van uw geverifieerde domein.
Als u het e-mailbericht wilt verzenden, roept u de beginSend
functie aan vanuit de EmailClient
.
Het aanroepen beginSend
van de synchronisatieclient retourneert een SyncPoller
object, dat kan worden gebruikt om de status van de bewerking te controleren en het resultaat op te halen zodra het is voltooid. Houd er rekening mee dat de eerste aanvraag voor het verzenden van een e-mailbericht wordt verzonden zodra de beginSend
methode wordt aangeroepen. Het verzenden van een e-mailbericht is een langdurige bewerking. Het is belangrijk om te weten dat de getFinalResult()
methode op de poller een blokkeringsbewerking is totdat een terminalstatus (SUCCESSFULLY_COMPLETED
of FAILED
) is bereikt. De aanbevolen methode is om handmatig polling uit te voeren met een interval dat geschikt is voor uw toepassingsbehoeften, zoals wordt weergegeven in het onderstaande voorbeeld.
try
{
SyncPoller<EmailSendResult, EmailSendResult> poller = emailClient.beginSend(message, null); // This will send out the initial request to send an email
PollResponse<EmailSendResult> pollResponse = null;
Duration timeElapsed = Duration.ofSeconds(0);
Duration POLLER_WAIT_TIME = Duration.ofSeconds(10);
// Polling is done manually to avoid blocking the application in case of an error
while (pollResponse == null
|| pollResponse.getStatus() == LongRunningOperationStatus.NOT_STARTED
|| pollResponse.getStatus() == LongRunningOperationStatus.IN_PROGRESS)
{
pollResponse = poller.poll();
// The operation ID can be retrieved as soon as .poll() is called on the poller
System.out.println("Email send poller status: " + pollResponse.getStatus() + ", operation id: " + pollResponse.getValue().getId());
Thread.sleep(POLLER_WAIT_TIME.toMillis());
timeElapsed = timeElapsed.plus(POLLER_WAIT_TIME);
if (timeElapsed.compareTo(POLLER_WAIT_TIME.multipliedBy(18)) >= 0)
{
throw new RuntimeException("Polling timed out.");
}
}
if (poller.getFinalResult().getStatus() == EmailSendStatus.SUCCEEDED)
{
System.out.printf("Successfully sent the email (operation id: %s)", poller.getFinalResult().getId());
}
else
{
throw new RuntimeException(poller.getFinalResult().getError().getMessage());
}
}
catch (Exception exception)
{
System.out.println(exception.getMessage());
}
De code uitvoeren
Navigeer naar de map met het pom.xml-bestand en compileer het project met behulp van de
mvn
opdracht.mvn compile
Bouw het pakket.
mvn package
Voer de volgende
mvn
-opdracht uit om de app uit te voeren.mvn exec:java -D"exec.mainClass"="com.communication.quickstart.App" -D"exec.cleanupDaemonThreads"="false"
Voorbeeldcode
U kunt de voorbeeld-app downloaden uit GitHub.
Ga aan de slag met Azure Communication Services met behulp van de Python Email SDK voor Communication Services om e-mailberichten te verzenden.
Tip
Start uw e-mailverzendingservaring met Azure Communication Services door rechtstreeks over te slaan naar de voorbeeldcode Basic Email Verzenden en Geavanceerd e-mail verzenden op GitHub.
Informatie over het e-mailobjectmodel
In het volgende JSON-berichtsjabloon en antwoordobject ziet u enkele van de belangrijkste functies van de Azure Communication Services Email SDK voor Python.
message = {
"content": {
"subject": "str", # Subject of the email message. Required.
"html": "str", # Optional. Html version of the email message.
"plainText": "str" # Optional. Plain text version of the email
message.
},
"recipients": {
"to": [
{
"address": "str", # Email address. Required.
"displayName": "str" # Optional. Email display name.
}
],
"bcc": [
{
"address": "str", # Email address. Required.
"displayName": "str" # Optional. Email display name.
}
],
"cc": [
{
"address": "str", # Email address. Required.
"displayName": "str" # Optional. Email display name.
}
]
},
"senderAddress": "str", # Sender email address from a verified domain. Required.
"attachments": [
{
"contentInBase64": "str", # Base64 encoded contents of the attachment. Required.
"contentType": "str", # MIME type of the content being attached. Required.
"name": "str" # Name of the attachment. Required.
}
],
"userEngagementTrackingDisabled": bool, # Optional. Indicates whether user engagement tracking should be disabled for this request if the resource-level user engagement tracking setting was already enabled in the control plane.
"headers": {
"str": "str" # Optional. Custom email headers to be passed.
},
"replyTo": [
{
"address": "str", # Email address. Required.
"displayName": "str" # Optional. Email display name.
}
]
}
response = {
"id": "str", # The unique id of the operation. Uses a UUID. Required.
"status": "str", # Status of operation. Required. Known values are:
"NotStarted", "Running", "Succeeded", and "Failed".
"error": {
"additionalInfo": [
{
"info": {}, # Optional. The additional info.
"type": "str" # Optional. The additional info type.
}
],
"code": "str", # Optional. The error code.
"details": [
...
],
"message": "str", # Optional. The error message.
"target": "str" # Optional. The error target.
}
}
De response.status
waarden worden verder uitgelegd in de volgende tabel.
Statusnaam | Beschrijving |
---|---|
In uitvoering | De verzendbewerking voor e-mail wordt momenteel uitgevoerd en verwerkt. |
Geslaagd | De verzendbewerking voor e-mail is zonder fouten voltooid en het e-mailbericht is niet bezorgd. Elke gedetailleerde status van de e-mailbezorging buiten deze fase kan worden verkregen via Azure Monitor of via Azure Event Grid. Meer informatie over het abonneren op e-mailevenementen |
Mislukt | De verzendbewerking voor e-mail is mislukt en er is een fout opgetreden. Het e-mailbericht is niet verzonden. Het resultaat bevat een foutobject met meer informatie over de reden voor de fout. |
Vereisten
- Een Azure-account met een actief abonnement. Gratis een account maken
- Python 3.7+.
- Een Azure Email Communication Services-resource die is gemaakt en gereed is met een ingericht domein. Ga aan de slag met het maken van een e-mailcommunicatieresource.
- Een actieve Azure Communication Services-resource die is verbonden met een e-maildomein en de bijbehorende verbindingsreeks. Ga aan de slag door een e-mailcommunicatieresource te verbinden met een Azure Communication-resource.
Voor het voltooien van deze quickstart worden kleine kosten in rekening gebracht van een paar dollarcenten of minder in uw Azure-account.
Notitie
We kunnen ook een e-mail verzenden vanuit ons eigen geverifieerde domein. Aangepaste geverifieerde domeinen toevoegen aan e-mailcommunicatieservice.
Controle van vereisten
- Voer in een terminal- of opdrachtvenster de opdracht
python --version
uit om te controleren of Python is geïnstalleerd. - Meld u aan bij Azure Portal om de domeinen weer te geven die zijn geverifieerd met uw E-mail Communication Services-resource. Zoek uw E-mail Communication Services-resource en open het tabblad Domeinen inrichten vanuit het linkernavigatiedeelvenster.
De toepassingsomgeving instellen
Als u een omgeving wilt instellen voor het verzenden van e-mailberichten, voert u de stappen in de volgende secties uit.
Een nieuwe Python-toepassing maken
Open uw terminal-of opdrachtvenster. Gebruik vervolgens de volgende opdracht om een virtuele omgeving te maken en deze te activeren. Met deze opdracht maakt u een nieuwe map voor uw app.
python -m venv email-quickstart
Navigeer naar de hoofdmap van de virtuele omgeving en activeer deze met behulp van de volgende opdrachten.
cd email-quickstart .\Scripts\activate
Gebruik een teksteditor om een bestand met de naam send-email.py te maken in de hoofdmap van het project en de structuur voor het programma toe te voegen, inclusief eenvoudige verwerking van uitzonderingen.
import os from azure.communication.email import EmailClient try: # Quickstart code goes here. except Exception as ex: print('Exception:') print(ex)
In de volgende secties voegt u alle broncode voor deze quickstart toe aan het send-email.py bestand dat u hebt gemaakt.
Het pakket installeren
Installeer, terwijl u zich nog in de toepassingsmap bevindt, de Azure Communication Services Email SDK voor Python-pakket met behulp van de volgende opdracht.
pip install azure-communication-email
De e-mailclient maken met verificatie
Er zijn enkele verschillende opties beschikbaar voor het verifiëren van een e-mailclient:
Instantieer een EmailClient met uw verbindingsreeks. Meer informatie over het beheren van de verbindingsreeks van uw resource.
# Create the EmailClient object that you use to send Email messages.
email_client = EmailClient.from_connection_string(<connection_string>)
Voor het gemak gebruikt deze quickstart verbindingsreeks s, maar in productieomgevingen raden we u aan service-principals te gebruiken.
Standaard-e-mail verzenden
Een e-mailbericht verzenden
Als u een e-mailbericht wilt verzenden, moet u het volgende doen:
- Maak het bericht met de volgende waarden:
senderAddress
: Een geldig e-mailadres van afzender, te vinden in het veld MailFrom in het overzichtsvenster van het domein dat is gekoppeld aan uw E-mail Communication Services-resource.recipients
: Een object met een lijst met e-mailontvangers en optioneel lijsten met CC & BCC-e-mailontvangers.content
: Een object met het onderwerp en eventueel de tekst zonder opmaak of HTML-inhoud van een e-mailbericht.
- Roep de methode begin_send aan, die het resultaat van de bewerking retourneert.
message = {
"content": {
"subject": "This is the subject",
"plainText": "This is the body",
"html": "<html><h1>This is the body</h1></html>"
},
"recipients": {
"to": [
{
"address": "<emailalias@emaildomain.com>",
"displayName": "Customer Name"
}
]
},
"senderAddress": "<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>"
}
poller = email_client.begin_send(message)
print("Result: " + poller.result())
Voer de volgende vervangingen uit in de code:
- Vervang
<emailalias@emaildomain.com>
door het e-mailadres waarnaar u een bericht wilt verzenden. - Vervang door
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
het MailFrom-adres van uw geverifieerde domein.
De status van de e-mailbezorging ophalen
We kunnen de status van de e-mailbezorging peilen door een lus in te stellen voor het bewerkingsstatusobject dat wordt geretourneerd door de methode e-mailclient begin_send
:
POLLER_WAIT_TIME = 10
try:
email_client = EmailClient.from_connection_string(connection_string)
poller = email_client.begin_send(message);
time_elapsed = 0
while not poller.done():
print("Email send poller status: " + poller.status())
poller.wait(POLLER_WAIT_TIME)
time_elapsed += POLLER_WAIT_TIME
if time_elapsed > 18 * POLLER_WAIT_TIME:
raise RuntimeError("Polling timed out.")
if poller.result()["status"] == "Succeeded":
print(f"Successfully sent the email (operation id: {poller.result()['id']})")
else:
raise RuntimeError(str(poller.result()["error"]))
except Exception as ex:
print(ex)
De code uitvoeren
Voer de toepassing uit vanuit uw toepassingsmap met de opdracht python
.
python send-email.py
Voorbeeldcode
U kunt de voorbeeld-app downloaden uit GitHub.
Vereisten
Een Azure-account met een actief abonnement, of gratis een account maken.
Een actieve Azure Communication Services-resource, of een Communication Services-resource maken.
Een actieve Azure Logic Apps-resource (logische app) en werkstroom, of maak een nieuwe resource en werkstroom voor logische apps met de trigger die u wilt gebruiken. Momenteel biedt de Azure Communication Services-e-mailconnector alleen acties, dus uw werkstroom voor logische apps vereist minimaal een trigger. U kunt een resource voor de logische app Verbruik of Standard maken.
Een e-mailresource van Azure Communication Services met een geconfigureerd domein of aangepast domein.
Een Azure Communication Services-resource die is verbonden met een Azure Email-domein.
E-mailbericht versturen
Voer de volgende stappen uit om een nieuwe stap toe te voegen aan uw werkstroom met behulp van de e-mailconnector van Azure Communication Services:
Open uw werkstroom voor logische apps in de ontwerpfunctie.
Verbruik
Selecteer nieuwe stap onder de stap waar u de nieuwe actie wilt toevoegen. Als u de nieuwe actie tussen stappen wilt toevoegen, verplaatst u de aanwijzer over de pijl tussen deze stappen, selecteert u het plusteken (+) en selecteert u Een actie toevoegen.
Selecteer Premium onder het zoekvak Een bewerking kiezen. Voer in het zoekvak Azure Communication Email in.
Selecteer e-mail verzenden in de lijst met acties.
Standaard
Selecteer onder de stap waar u de nieuwe actie wilt toevoegen het plusteken (+). Als u de nieuwe actie tussen stappen wilt toevoegen, verplaatst u de aanwijzer over de pijl tussen deze stappen, selecteert u het plusteken (+) en selecteert u Een actie toevoegen.
Selecteer Premium in de vervolgkeuzelijst Runtime onder Het zoekvak Een actie toevoegen. Voer in het zoekvak Azure Communication Email in.
Selecteer e-mail verzenden in de lijst met acties.
Geef een naam op voor de verbinding.
Voer de verbindingsreeks in voor uw Azure Communications Service-resource. Volg deze stappen om deze tekenreeks te vinden:
Open uw Azure Communication Service-resource in Azure Portal.
Selecteer sleutels in het resourcemenu onder Instellingen en kopieer de verbindingsreeks.
Selecteer Maken als u klaar bent.
Gebruik in het veld Van het e-mailadres dat u hebt geconfigureerd in de vereisten. Voer de waarden in voor de velden Aan e-mail, Onderwerp en Hoofdtekst , bijvoorbeeld:
Sla uw werkstroom op. Selecteer in de werkbalk van de ontwerper Opslaan.
Uw werkstroom testen
Op basis van of u een verbruiks- of standaardwerkstroom hebt, start u uw werkstroom handmatig:
- Verbruik: Selecteer Op de werkbalk van de ontwerpfunctie de optie Triggeruitvoering>uitvoeren.
- Standaard: Selecteer Overzicht in het werkstroommenu. Selecteer Uitvoeren van trigger>uitvoeren op de werkbalk op de werkbalk.
De werkstroom maakt een gebruiker, geeft een toegangstoken voor die gebruiker uit, verwijdert en verwijdert de gebruiker. U kunt de uitvoer van deze acties controleren nadat de werkstroom is uitgevoerd.
U ontvangt een e-mailbericht op het opgegeven adres. U kunt ook de actie Status van e-mailbericht ophalen gebruiken om de status van e-mailberichten te controleren die worden verzonden via de actie E-mail verzenden. Raadpleeg de referentiedocumentatie voor de Azure Communication Services-e-mailconnector voor meer acties.
Werkstroombronnen opschonen
Als u de resource, werkstroom en gerelateerde resources van uw logische app wilt opschonen, bekijkt u hoe u logische app-resources voor verbruik opschoont of hoe u Resources van de logische standaard-app opschoont.
Ga aan de slag met Azure Communication Services met behulp van de Azure PowerShell-communicatiemodule om e-mailberichten te verzenden.
Voor het voltooien van deze quickstart worden kleine kosten in rekening gebracht van een paar dollarcenten of minder in uw Azure-account.
Vereisten
- Een Azure-account met een actief abonnement. Gratis een account maken
- Een Azure Email Communication Services-resource die is gemaakt en gereed is met een ingericht domein. Ga aan de slag met het maken van een e-mailcommunicatieresource.
- Een actieve Azure Communication Services-resource die is verbonden met een e-maildomein en de bijbehorende verbindingsreeks. Ga aan de slag door een e-mailcommunicatieresource te verbinden met een Azure Communication-resource.
- De nieuwste Versie van Azure PowerShell.
Controle van vereisten
- Voer in een Windows PowerShell de
Get-Module -ListAvailable -Name Az.Communication
opdracht uit om te controleren of de communicatiemodule al dan niet is geïnstalleerd. - Meld u aan bij Azure Portal om de domeinen weer te geven die zijn geverifieerd met uw E-mail Communication Services-resource. Zoek uw E-mail Communication Services-resource en open het tabblad Domeinen inrichten vanuit het linkernavigatiedeelvenster.
Instellen
Communicatiemodule installeren
Installeer de Azure Communication Services-module voor Azure PowerShell met behulp van de Install-Module -Name Az.Communication
opdracht.
Install-Module -Name Az.Communication
Nadat u de Communication-module hebt geïnstalleerd, voert u de Get-Command -Module Az.Communication
opdracht uit om alle communicatiemodules op te halen.
Get-Command -Module Az.Communication
Een e-mailbericht verzenden
Hiermee wordt een e-mailbericht in de wachtrij geplaatst dat naar een of meer geadresseerden met alleen vereiste velden wordt verzonden.
$emailRecipientTo = @(
@{
Address = "<emailalias@emaildomain.com>"
DisplayName = "Email DisplayName"
}
)
$message = @{
ContentSubject = "Test Email"
RecipientTo = @($emailRecipientTo) # Array of email address objects
SenderAddress = '<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>'
ContentPlainText = "This is the first email from ACS - Azure PowerShell"
}
Send-AzEmailServicedataEmail -Message $Message -endpoint "<yourEndpoint>"
Voer de volgende vervangingen uit in de code:
- Vervang
<yourEndpoint>
door uw eindpunt. - Vervang
<emailalias@emaildomain.com>
door het e-mailadres waarnaar u een bericht wilt verzenden. - Vervang door
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
het MailFrom-adres van uw geverifieerde domein.
Hiermee wordt een e-mailbericht in de wachtrij geplaatst dat naar een of meer geadresseerden met alle velden moet worden verzonden.
$emailRecipientTo = @(
@{
Address = "<emailalias@emaildomain.com>"
DisplayName = "Email DisplayName"
},
@{
Address = "<emailalias1@emaildomain.com>"
DisplayName = "Email DisplayName"
}
)
$fileBytes1 = [System.IO.File]::ReadAllBytes("<file path>")
$fileBytes2 = [System.IO.File]::ReadAllBytes("<image file path>")
$emailAttachment = @(
@{
ContentInBase64 = $fileBytes1
ContentType = "<text/plain>"
Name = "<test.txt>"
},
@{
ContentInBase64 = $fileBytes2
ContentType = "<image/png>"
Name = "<inline-attachment.png>"
contentId = "<inline-attachment>"
}
)
$headers = @{
"Key1" = "Value1"
"Key2" = "Value2"
"Importance" = "high"
}
$emailRecipientBcc = @(
@{
Address = "<emailbccalias@emaildomain.com>"
DisplayName = "Email DisplayName"
}
)
$emailRecipientCc = @(
@{
Address = "<emailccalias@emaildomain.com>"
DisplayName = "Email DisplayName"
}
)
$emailRecipientReplyTo = @(
@{
Address = "<emailreplytoalias@emaildomain.com>"
DisplayName = "Email DisplayName"
}
)
$message = @{
ContentSubject = "Test Email"
RecipientTo = @($emailRecipientTo) # Array of email address objects
SenderAddress = '<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>'
Attachment = @($emailAttachment) # Array of attachments
ContentHtml = "<html><head><title>Enter title</title></head><body><img src='cid:inline-attachment' alt='Company Logo'/><h1>This is the first email from ACS - Azure PowerShell</h1></body></html>"
ContentPlainText = "This is the first email from ACS - Azure PowerShell"
Header = $headers # Importance = high/medium/low or X-Priority = 2/3/4
RecipientBcc = @($emailRecipientBcc) # Array of email address objects
RecipientCc = @($emailRecipientCc) # Array of email address objects
ReplyTo = @($emailRecipientReplyTo) # Array of email address objects
UserEngagementTrackingDisabled = $true
}
Send-AzEmailServicedataEmail -Message $Message -endpoint "<yourEndpoint>"
Voer de volgende vervangingen uit in de code:
- Vervang
<yourEndpoint>
door uw eindpunt. - Vervang
<emailalias@emaildomain.com> and <emailalias1@emaildomain.com>
door de e-mailadressen waarnaar u een bericht wilt verzenden. - Vervang
<file path> and <image file path>
door de werkelijke bestandspaden van de bijlagen die u wilt verzenden. - Vervang
<text/plain> and <image/png>
door de juiste inhoudstypen voor uw bijlagen. - Vervang
<test.txt> and <inline-attachment.png>
door de bestandsnamen van uw bijlagen. - Vervang
<inline-attachment>
door de Inhouds-id voor uw inlinebijlage. - Vervang
<emailbccalias@emaildomain.com>
door het e-mailadres waarnaar u het bericht wilt verzenden als BCC. - Vervang
<emailccalias@emaildomain.com>
door het e-mailadres waarnaar u het bericht wilt verzenden als CC. - Vervang
<emailreplytoalias@emaildomain.com>
door het e-mailadres waarnaar u antwoorden wilt verzenden. - Vervang door
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
het MailFrom-adres van uw geverifieerde domein.
Optionele parameters
De volgende optionele parameters zijn beschikbaar in Azure PowerShell.
ContentHtml
kan worden gebruikt om de HTML-hoofdtekst van het e-mailbericht op te geven.ContentPlainText
wordt gebruikt om de hoofdtekst zonder opmaak van het e-mailbericht op te geven.Attachment
stelt de lijst met e-mailbijlagen in. Deze parameter accepteert een matrix van bestandspaden of bijlageobjecten. Houd er rekening mee dat we de totale grootte van een e-mailaanvraag beperken (inclusief zowel gewone als inlinebijlagen) tot 10 MB.Header
aangepaste e-mailkoppen die moeten worden doorgegeven en het urgentieniveau voor e-mail (hoog, normaal of laag) worden ingesteld.RecipientBcc
matrix met geadresseerden voor het veld BCC.RecipientCc
matrix met geadresseerden voor het veld CC.ReplyTo
matrix met e-mailadressen waarnaar geadresseerden antwoorden worden verzonden.UserEngagementTrackingDisabled
geeft aan of tracering van gebruikersbetrokkenheid moet worden uitgeschakeld voor deze aanvraag als de instelling voor het bijhouden van gebruikersbetrokkenheid op resourceniveau al is ingeschakeld in het besturingsvlak.
U kunt ook een lijst met geadresseerden met en RecipientBcc
vergelijkbaar met .RecipientCc
RecipientTo
Er moet ten minste één geadresseerde zijn in RecipientTo
ofRecipientCc
.RecipientBcc
Probleemoplossing
E-mailbezorging
Als u problemen met betrekking tot e-mailbezorging wilt oplossen, kunt u de status van de e-mailbezorging ophalen om details van de bezorging vast te leggen.
Belangrijk
Het resultaat dat is geretourneerd door te peilen naar de status van de verzendbewerking, valideert alleen het feit dat het e-mailbericht is verzonden voor bezorging. Als u meer informatie wilt over de status van de bezorging aan het einde van de geadresseerde, moet u verwijzen naar het afhandelen van e-mailevenementen.
Beperking van e-mail
Als u ziet dat uw toepassing vasthangt, kan dit komen doordat het verzenden van e-mail wordt beperkt. U kunt dit afhandelen via logboekregistratie of door een aangepast beleid te implementeren.
Notitie
Deze sandbox-installatie is bedoeld om ontwikkelaars te helpen bij het bouwen van de toepassing. U kunt geleidelijk aanvragen om het verzendvolume te verhogen zodra de toepassing klaar is om live te gaan. Dien een ondersteuningsaanvraag in om de gewenste verzendlimiet te verhogen als u een aantal berichten wilt verzenden dat de frequentielimieten overschrijdt.
Azure Communication Service-resources opschonen
Als u een Communication Services-abonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle andere gekoppelde resources verwijderd. Meer informatie over het opschonen van resources.
Volgende stappen
In deze quickstart hebt u geleerd hoe u e-mailberichten verzendt met behulp van Azure Communication Services. U kunt ook het volgende doen:
- Meer informatie over e-mailconcepten.
- Vertrouwd raken met de e-mailclientbibliotheek.
- Meer informatie over het verzenden van een chatbericht vanuit Power Automate met behulp van Azure Communication Services.
- Meer informatie over het inchecken van toegangstokens voor het maken en beheren van Azure Communication Services-gebruikers en toegangstokens.