Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Deze quickstart beschrijft hoe u e-mails kunt verzenden 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.
Vereiste voorwaarden
- Een Azure-account met een actieve abonnement. Maak gratis een account.
- De nieuwste versie van de .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-bron verbonden met e-maildomein. Een geverifieerd e-maildomein verbinden om e-mail te verzenden.
Voor het voltooien van dit artikel worden een kleine kosten van een paar cent of minder in uw Azure-account in rekening gebracht.
Een e-mailbericht verzenden met Try Email
E-mail uitproberen helpt u bij het verzenden van e-mailberichten naar de gewenste geadresseerden met behulp van Azure Communication Services en het controleren van de configuratie voor uw toepassing om e-mail te verzenden. Het helpt ook om de ontwikkeling van uw e-mailnotificaties te versnellen met het codefragment in uw voorkeursprogrammeertaal.
Een bericht verzenden naar een geadresseerde en het onderwerp en de hoofdtekst van het bericht opgeven:
Klik op de overzichtspagina van een geconfigureerde Azure Communication Service-resource op E-mail proberen in het linker-navigatievenster onder E-mail.
Selecteer een van de geverifieerde domeinen uit de vervolgkeuzelijst.
Stel het e-mailbericht op dat moet worden verzonden.
- Voer het e-mailadres van de ontvanger in
- Onderwerp invoeren
- Schrijf de e-mailtekst
Klik op Verzenden.
E-mail succesvol verzonden.
U kunt ook het voorbeeldcodefragment kopiëren om een e-mailbericht te verzenden voor gebruik in uw voorbeeldproject om meldingen te verzenden.
Het e-mailcodesnippet is nu klaar voor gebruik in uw meldingsproject.
Begin met Azure-communicatiediensten door de communicatieve uitbreiding van Azure CLI te gebruiken om e-mailberichten te verzenden.
Voor het voltooien van dit artikel worden een kleine kosten van een paar cent of minder in uw Azure-account in rekening gebracht.
Vereiste voorwaarden
- Een Azure-account met een actieve abonnement. Maak gratis een account.
- Een Azure Email Communication Services-resource is gemaakt en klaar met een toegewezen domein. Creëer een e-mailcommunicatiebron.
- Een actieve Azure Communication Services-resource verbonden met een e-maildomein en zijn verbindingsreeks. Een geverifieerd e-maildomein verbinden om e-mail te verzenden.
- De nieuwste Azure CLI.
Voorvereistecontrole
- Open een terminal- of opdrachtvenster en voer 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
Voeg de extensie toe
Voeg de Azure Communication Services-extensie toe voor Azure CLI met behulp van de az extension
-opdracht.
az extension add --name communication
Meld u aan bij Azure CLI
U moet zich aanmelden bij Azure CLI. U kunt inloggen door het az login
-commando uit te voeren vanuit de terminal en uw inloggegevens in te voeren.
Sla uw verbindingsreeks op in een omgevingsvariabele
U kunt de AZURE_COMMUNICATION_CONNECTION_STRING
omgevingsvariabele configureren om Azure CLI-sleutelbewerkingen te gebruiken zonder --connection_string
te hoeven gebruiken om de verbindingsreeks door te geven. Als u een omgevingsvariabele wilt configureren, opent u een consolevenster en selecteert u uw besturingssysteem op de volgende tabbladen. Vervang <connectionString>
met uw daadwerkelijke connectiestring.
Opmerking
Bewaar uw verbindingsreeks niet als een niet-versleutelde omgevingsvariabele voor productieomgevingen. Deze methode is alleen bedoeld voor testdoeleinden. Voor productieomgevingen moet u nieuwe verbindingsreeksen genereren. We raden u aan om verbindingsreeksen te versleutelen en ze regelmatig te wijzigen.
setx AZURE_COMMUNICATION_CONNECTION_STRING "<yourConnectionString>"
Nadat u de omgevingsvariabele hebt toegevoegd, moet u mogelijk alle actieve programma's opnieuw opstarten die de omgevingsvariabele moeten lezen, inclusief het consolevenster. Als u Visual Studio bijvoorbeeld gebruikt als editor, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
Verstuur een e-mailbericht
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."
Maak de volgende vervangingen in de code:
- Vervang
<yourConnectionString>
door uw verbindingsreeks. - Vervang
<emailalias@emaildomain.com>
door het e-mailadres waarnaar je een bericht wilt sturen. - Vervang
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
door het MailFrom-adres van je geverifieerd domein.
Met deze opdracht wordt ook een peiling uitgevoerd op de messageId
en wordt de status van de e-mailbezorging geretourneerd. De status kan een van de volgende waarden zijn:
Statusnaam | Beschrijving |
---|---|
Niet Begonnen | We sturen deze status op dit moment niet vanuit onze dienst. |
Hardlopen | De e-mail verzendoperatie is momenteel aan de gang en wordt verwerkt. |
Geslaagd | De e-mail verzending is zonder fouten voltooid en het e-mailbericht is onderweg voor bezorging. Gedetailleerde statusinformatie over de e-mailbezorging voorbij dit stadium 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 foutenobject met meer details over de reden van de fout. |
Optionele parameters
De volgende optionele parameters zijn beschikbaar in Azure CLI.
--html
kan worden gebruikt in plaats van--text
voor de body van een HTML-email.--importance
stelt het type belangrijkheid voor de e-mail in. Bekende waarden zijn: hoog, normaal en laag. De standaardoptie is normaal.--to
stelt de lijst met e-mailontvangers in.--cc
stelt e-mailadressen in voor een kopie.--bcc
stelt blinde kopie e-mailadressen in.--reply-to
stelt het Reply-To e-mailadres 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, in dezelfde volgorde als de bijlagen.
U kunt ook een lijst met geadresseerden gebruiken die vergelijkbaar is met --cc
, met --bcc
en --to
. Er moet ten minste één ontvanger zijn in --to
of --cc
of --bcc
.
Begin met Azure Communication Services door de C# e-mailclientbibliotheek van Communication Services te gebruiken om e-mailberichten te verzenden.
Aanbeveling
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.
Begrip van het e-mailobjectmodel
De volgende klassen en interfaces behandelen enkele van de belangrijkste functies van de Azure Communication Services E-mailclientbibliotheek voor C#.
Naam | Beschrijving |
---|---|
E-mailadres | 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. |
E-mailclient | Deze klasse is nodig voor alle e-mailfunctionaliteit. U initialiseert het met uw verbindingstekenreeks en gebruikt het om e-mailberichten te verzenden. |
Opties van de e-mailclient | Deze klasse kan worden toegevoegd aan de instantie van EmailClient om een specifieke API-versie te targeten. |
E-mailinhoud | Deze klasse bevat het onderwerp en de hoofdtekst van het e-mailbericht. U moet ten minste één van PlainText of Html-inhoud opgeven. |
E-mailAangepasteKoptekst | 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' |
E-mailbericht | Deze klasse combineert de afzender, inhoud en geadresseerden. Aangepaste kopteksten, bijlagen en e-mailadressen voor antwoorden kunnen ook worden toegevoegd. |
E-mailontvangers | Deze klasse bevat lijsten met EmailAddress-objecten voor de ontvangers van het e-mailbericht, inclusief optionele lijsten voor CC- en BCC-ontvangers. |
E-mailverzendoperatie | Deze klasse vertegenwoordigt de asynchrone verzendbewerking voor e-mail en wordt geretourneerd vanuit de API-aanroep voor e-mail verzenden. |
Resultaat van het Verzenden van E-mail | Deze klasse bevat de resultaten van de e-mailverzendoperatie. Het heeft een bewerkings-id, bewerkingsstatus en foutobject (indien van toepassing). |
EmailSendResult geeft de volgende status terug over de uitgevoerde e-mailoperatie.
Toestand | Beschrijving |
---|---|
Niet Begonnen | We sturen deze status op dit moment niet vanuit onze dienst. |
Hardlopen | De e-mail verzendoperatie is momenteel aan de gang en wordt verwerkt. |
Geslaagd | De verzendbewerking voor e-mail wordt zonder fouten voltooid en de e-mail is onderweg voor bezorging. Gedetailleerde statusinformatie over de e-mailbezorging voorbij dit stadium kan worden verkregen via Azure Monitor of via Azure Event Grid. Meer informatie over het abonneren op e-mailevenementen |
Mislukt | De e-mailverzendingsoperatie was niet succesvol en stuitte op een fout. De e-mail is niet verzonden. Het resultaat bevat een foutenobject met meer details over de reden van de fout. |
Vereiste voorwaarden
- Een Azure-account met een actieve abonnement. Maak gratis een account.
- De nieuwste versie van de .NET Core-clientbibliotheek voor uw besturingssysteem.
- Een Azure Email Communication Services-resource is aangemaakt en gereed met een ingericht domein Create Email Communication Resource.
- Een actieve Communication Services-resource verbonden met een Email Domein en een Connection String. Resources voor e-mailcommunicatieservice maken en beheren.
Voor het voltooien van dit artikel worden een kleine kosten van een paar cent of minder in uw Azure-account in rekening gebracht.
Opmerking
U kunt ook een e-mail verzenden vanuit ons eigen geverifieerde domein. Aangepaste geverifieerde domeinen toevoegen aan e-mailcommunicatieservice.
Voorvereistecontrole
- Open een terminalvenster of opdrachtvenster en voer het
dotnet
-commando 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.
Maak een nieuwe C#-applicatie
In een consolevenster (zoals cmd, PowerShell of Bash) gebruikt u de dotnet new
-opdracht om een nieuwe consoletoepassing met de naam EmailQuickstart
te maken. Met deze opdracht maakt u een eenvoudig 'Hallo wereld' C#-project met één bronbestand: Program.cs.
dotnet new console -o EmailQuickstart
Verander uw directory naar de nieuw aangemaakte app-map en gebruik de dotnet build
opdracht om uw applicatie te compileren.
cd EmailQuickstart
dotnet build
Installeer het pakket
Blijf in de applicatiemap en installeer de Azure Communication Services Email-clientbibliotheek voor het .NET-pakket door het dotnet add package
-commando te gebruiken.
dotnet add package Azure.Communication.Email
Maak de e-mailclient 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 het uitvoeren van 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 een paar verschillende opties beschikbaar voor het authenticeren van een e-mailclient.
Open Program.cs in een teksteditor en vervang de hoofdtekst van de Main
methode door code om een EmailClient
met uw verbindingsreeks te initialiseren. De volgende code haalt de verbindingsreeks voor de bron op uit een omgevingsvariabele genaamd COMMUNICATION_SERVICES_CONNECTION_STRING
. Leer hoe u de verbindingsreeks van uw bron kunt beheren.
// 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);
Opmerking
Het wordt afgeraden de handmatige polling te gebruiken (e-mail verzenden met asynchrone statuspeiling) om e-mail te verzenden.
Eenvoudig e-mail verzenden
Stel je e-mailbericht op
Om een e-mailbericht te versturen, moet je:
- Definieer het onderwerp en de inhoud van de e-mail.
- Definieer uw afzenderadres. Stel uw e-mailbericht op met uw afzenderinformatie en verkrijg uw MailFrom-adres van uw geverifieerd domein.
- Definieer het adres van de ontvanger.
- Roep de SendAsync-methode aan. Voeg deze code toe aan het einde van
Main
de methode in Program.cs:
Vervang deze met uw domeingegevens en pas indien nodig de inhoud en de ontvangergegevens aan
//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";
Verzend de e-mail en ontvang de verzendstatus
Wanneer je SendAsync aanroept met Azure.WaitUntil.Started, keert je methode terug nadat de operatie is gestart. De methode retourneert een EmailSendOperation object. U kunt de UpdateStatusAsync-methode aanroepen om de status van de e-mailbewerking bij te werken.
Het geretourneerde EmailSendOperation-object bevat een EmailSendStatus-object met:
- Huidige status van de e-mailverzendingoperatie.
- Een foutobject met foutdetails als de huidige status zich in een fouttoestand bevindt.
/// 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 applicatie uit vanuit je applicatiemap met het dotnet run
commando.
dotnet run
Voorbeeldcode
U kunt de voorbeeld-app downloaden van GitHub
Ga aan de slag met Azure Communication Services met behulp van de Clientbibliotheek voor JavaScript-e-mail van Communication Services om e-mailberichten te verzenden.
Aanbeveling
Start uw e-mailverzendingservaring met Azure Communication Services met behulp van de voorbeeldcode Eenvoudige e-mail verzenden en Geavanceerde e-mail verzenden op GitHub.
Inzicht in het e-mailobjectmodel
De volgende klassen en interfaces verwerken enkele functies van de Azure Communication Services-clientbibliotheek voor e-mail voor JavaScript.
Naam | Beschrijving |
---|---|
E-mailadres | 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. |
E-mailclient | Deze klasse is nodig voor alle e-mailfunctionaliteit. U initialiseert het met uw verbindingstekenreeks en gebruikt het om e-mailberichten te verzenden. |
Opties van de e-mailclient | Deze klasse kan worden toegevoegd aan de instantie van EmailClient om een specifieke API-versie te targeten. |
E-mailinhoud | Deze klasse bevat het onderwerp en de hoofdtekst van het e-mailbericht. U moet ten minste één van de PlainText- of Html-inhoud opgeven. |
E-mailAangepasteKoptekst | 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 kopteksten door de koptekstnaam x-priority of x-msmail-priority te gebruiken. |
E-mailbericht | Deze klasse combineert de afzender, inhoud en geadresseerden. Aangepaste kopteksten, bijlagen en e-mailadressen voor antwoorden kunnen ook worden toegevoegd. |
E-mailontvangers | Deze klasse bevat lijsten met EmailAddress-objecten voor de ontvangers van het e-mailbericht, inclusief optionele lijsten voor CC- en BCC-ontvangers. |
Resultaat van het Verzenden van E-mail | Deze klasse bevat de resultaten van de e-mailverzendoperatie. Het heeft een bewerkings-id, bewerkingsstatus en foutobject (indien van toepassing). |
E-mailverzendstatus | Deze klasse vertegenwoordigt de set statussen van een verzendbewerking per e-mail. |
EmailSendResult geeft de volgende status terug over de uitgevoerde e-mailoperatie.
Statusnaam | Beschrijving |
---|---|
isGestart | Retourneert true als de verzendbewerking voor e-mail momenteel in uitvoering is en wordt verwerkt. |
isVoltooid | Retourneert true als de verzendbewerking van het e-mailbericht zonder fouten is voltooid en de e-mail is weg voor bezorging. Gedetailleerde statusinformatie over de e-mailbezorging voorbij dit stadium 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 wordt afgesloten. |
fout | Eigenschap die bestaat als de e-mailverzendbewerking niet succesvol was en een fout is opgetreden. De e-mail is niet verzonden. Het resultaat bevat een foutenobject met meer details over de reden van de fout. |
Vereiste voorwaarden
- Node.js (~14).
- Een Azure-account met een actieve abonnement. Maak gratis een account.
- Een Azure Email Communication Services-resource is gemaakt en klaar met een toegewezen domein. Creëer een e-mailcommunicatiebron.
- Een actieve Azure Communication Services-resource verbonden met een e-maildomein en zijn verbindingsreeks. Resources voor e-mailcommunicatieservice maken en beheren.
Voor het voltooien van dit artikel worden een kleine kosten van een paar cent of minder in uw Azure-account in rekening gebracht.
Opmerking
U kunt ook een e-mail verzenden vanuit ons eigen geverifieerde domein. Aangepaste geverifieerde domeinen toevoegen aan e-mailcommunicatieservice.
Voorvereistecontrole
- In een terminal- of opdrachtvenster, voer
node --version
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.
Stel de applicatieomgeving in
Creëer een nieuwe Node.js-toepassing
Open eerst het terminal- of opdrachtvenster. Maak vervolgens een nieuwe map voor uw app en navigeer ernaartoe.
mkdir email-quickstart && cd email-quickstart
Voer deze opdracht npm init -y
uit om een package.json
bestand met standaardinstellingen te maken.
npm init -y
Gebruik een teksteditor om een bestand genaamd send-email.js
aan te maken in de hoofdmap van het project. Wijzig de main
eigenschap in package.json
naar send-email.js
. In de volgende sectie ziet u hoe u de broncode voor dit artikel toevoegt aan het zojuist gemaakte bestand.
Installeer het pakket
Gebruik de npm install
opdracht om de Azure Communication Services Email clientbibliotheek voor JavaScript te installeren.
npm install @azure/communication-email --save
Met --save
de optie wordt de bibliotheek weergegeven als een afhankelijkheid in uw package.json
bestand.
Maak de e-mailclient met verificatie
Er zijn een paar verschillende opties beschikbaar voor het authenticeren van een e-mailclient.
Importeer de EmailClient
uit de clientbibliotheek en instantieer deze met uw connectiestring.
Gebruik de volgende code om de verbindingsreeks voor de resource op te halen uit een omgevingsvariabele met de naam COMMUNICATION_SERVICES_CONNECTION_STRING
via het dotenv-pakket. Gebruik de npm install
-opdracht om het dotenv-pakket te installeren. Leer hoe u de verbindingsreeks van uw bron kunt beheren.
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 dit artikel verbindingsreeksen, maar in productieomgevingen raden we u aan service-principals te gebruiken.
Eenvoudig e-mail verzenden
Verstuur een e-mailbericht
Als u een e-mailbericht wilt verzenden, roept u de functie beginSend
aan vanuit de EmailClient
. Deze methode retourneert een poller die de status van de bewerking controleert en het resultaat ophaalt zodra het 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();
Maak de volgende vervangingen in de code:
- Vervang
<emailalias@emaildomain.com>
door het e-mailadres waarnaar je een bericht wilt sturen. - Vervang
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
door het MailFrom-adres van je geverifieerd domein.
Voer de code uit
Gebruik de knooppuntopdracht om de code uit te voeren die u aan het send-email.js
bestand hebt toegevoegd.
node ./send-email.js
Voorbeeldcode
U kunt de voorbeeld-app downloaden uit GitHub Azure Samples Send Email for JavaScript.
Begin met Azure Communication Services door de Communication Services Java Email SDK te gebruiken om e-mailberichten te versturen.
Aanbeveling
Ga snel aan de slag met het verzenden van e-mail met Azure Communication Services met behulp van de voorbeeldcode Eenvoudige e-mail verzenden en Geavanceerde e-mail verzenden op GitHub.
Inzicht in het e-mailobjectmodel
De volgende klassen en interfaces verwerken enkele van de belangrijkste functies van de Azure Communication Services Email SDK voor Java.
Naam | Beschrijving |
---|---|
E-mailadres | 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. |
E-mailclient | Deze klasse is nodig voor alle e-mailfunctionaliteit. U initialiseert het met uw verbindingstekenreeks en gebruikt het om e-mailberichten te verzenden. |
E-mailbericht | Deze klasse combineert de afzender, inhoud en geadresseerden. Aangepaste kopteksten, bijlagen en e-mailadressen voor antwoorden kunnen ook worden toegevoegd. |
Resultaat van het Verzenden van E-mail | Deze klasse bevat de resultaten van de e-mailverzendoperatie. Het heeft een bewerkings-id, bewerkingsstatus en foutobject (indien van toepassing). |
E-mailverzendstatus | Deze klasse vertegenwoordigt de set statussen van een verzendbewerking per e-mail. |
EmailSendResult geeft de volgende status terug over de uitgevoerde e-mailoperatie.
Statusnaam | Beschrijving |
---|---|
NIET_GESTART | We sturen deze status op dit moment niet vanuit onze dienst. |
WORDT_UITGEVOERD | De e-mail verzendoperatie is momenteel aan de gang en wordt verwerkt. |
Succesvol voltooid | De e-mail verzending is zonder fouten voltooid en het e-mailbericht is onderweg voor bezorging. Gedetailleerde statusinformatie over de e-mailbezorging voorbij dit stadium kan worden verkregen via Azure Monitor of via Azure Event Grid. Meer informatie over het abonneren op e-mailevenementen |
MISLUKT | De e-mailverzendingsoperatie was niet succesvol en stuitte op een fout. De e-mail is niet verzonden. Het resultaat bevat een foutenobject met meer details over de reden van de fout. |
Vereiste voorwaarden
- Een Azure-account met een actieve abonnement. Maak gratis een account.
- Java Development Kit (JDK) versie 8 of hoger.
- Apache Maven.
- Een geïmplementeerde Communicatie Services bron en verbindingsreeks. Zie Een Communication Services-resource maken voor meer informatie.
- Als u e-mailberichten wilt verzenden, maakt u een Azure Email Communication Services-resource.
- Een beheerde identiteit ingesteld voor een ontwikkelomgeving, zie Toegang autoriseren met een beheerde identiteit.
Voor het voltooien van dit artikel worden een kleine kosten van een paar cent of minder in uw Azure-account in rekening gebracht.
Opmerking
U kunt ook een e-mail verzenden vanuit ons eigen geverifieerde domein Resources voor e-mailcommunicatieservice maken en beheren.
Voorvereistecontrole
- Open een terminalvenster of opdrachtvenster en voer
mvn -v
uit 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 in het linkernavigatievenster.
Stel de applicatieomgeving in
Om een omgeving in te stellen voor het versturen van e-mails, volg je de stappen in de volgende secties.
Maak een nieuwe Java-toepassing aan
Open uw terminal of opdrachtvenster en navigeer naar de map waar u uw Java-toepassing wilt maken. Voer de volgende opdracht uit om het Java-project te genereren vanuit de maven-archetype-quickstart template.
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 map src/main/java 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.
Installeer het pakket
Open het pom.xml
bestand in de teksteditor. Voeg het volgende afhankelijkheidselement toe aan de groep van 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.
}
}
Het maken van de e-mailclient met authenticatie
Er zijn een paar verschillende opties beschikbaar voor het verifiëren van een e-mailclient.
Om een client te authenticeren, installeert u een EmailClient
met uw verbindingsreeks. Leer hoe u de verbindingsreeks van uw bron kunt beheren. Je kunt de client ook initialiseren met een aangepaste HTTP-client die de com.azure.core.http.HttpClient
interface implementeert.
Om een synchrone client te instantiëren, voeg 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();
nl-NL: Om een asynchrone client te instantiëren, voeg 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 dit artikel verbindingsreeksen, maar in productieomgevingen raden we u aan service-principals te gebruiken.
Eenvoudig e-mail verzenden
U kunt een e-mailbericht opstellen 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.");
Maak de volgende vervangingen in de code:
- Vervang
<emailalias@emaildomain.com>
door het e-mailadres waarnaar je een bericht wilt sturen. - Vervang
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
door het MailFrom-adres van je geverifieerd domein.
Om het e-mailbericht te verzenden, roept u de beginSend
-functie aan vanuit de EmailClient
.
Als u de synchronisatieclient aanroept beginSend
, wordt een SyncPoller
object geretourneerd, dat kan worden gebruikt om de status van de bewerking te controleren en het resultaat op te halen zodra het is voltooid. De eerste aanvraag voor het verzenden van een e-mailbericht begint zodra de beginSend
methode wordt aangeroepen. Een e-mail verzenden is een langdurige handeling. 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. U wordt aangeraden handmatig polling uit te voeren met een interval dat geschikt is voor uw toepassingsbehoeften, zoals wordt weergegeven in het volgende 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());
}
Voer de code uit
Navigeer naar de map die het
pom.xml
bestand bevat en compileer het project met behulp van demvn
opdracht.mvn compile
Bouw het pakket.
mvn package
Voer de volgende
mvn
opdracht uit om de app te starten.mvn exec:java -D"exec.mainClass"="com.communication.quickstart.App" -D"exec.cleanupDaemonThreads"="false"
Voorbeeldcode
U kunt de voorbeeld-app downloaden uit GitHub Azure Samples Send Email for Java
Ga aan de slag met Azure Communication Services met behulp van de Python Email SDK voor Communication Services om e-mailberichten te verzenden.
Aanbeveling
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
Het volgende JSON-berichtensjabloon en reactieobject demonstreren enkele van de belangrijkste kenmerken 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 toegelicht in de onderstaande tabel.
Statusnaam | Beschrijving |
---|---|
In uitvoering | De e-mail verzendoperatie is momenteel aan de gang en wordt verwerkt. |
Geslaagd | De e-mail verzending is zonder fouten voltooid en het e-mailbericht is onderweg voor bezorging. Gedetailleerde statusinformatie over de e-mailbezorging voorbij dit stadium kan worden verkregen via Azure Monitor of via Azure Event Grid. Meer informatie over het abonneren op e-mailevenementen |
Mislukt | De e-mailverzendingsoperatie was niet succesvol en stuitte op een fout. De e-mail is niet verzonden. Het resultaat bevat een foutenobject met meer details over de reden van de fout. |
Vereiste voorwaarden
- Een Azure-account met een actieve abonnement. Maak gratis een account.
- Python 3.7+.
- Een Azure Email Communication Services-resource is gemaakt en klaar met een toegewezen domein. Creëer een e-mailcommunicatiebron.
- Een actieve Azure Communication Services-resource verbonden met een e-maildomein en zijn verbindingsreeks. Een geverifieerd e-maildomein verbinden om e-mail te verzenden.
Voor het voltooien van dit artikel worden een kleine kosten van een paar cent of minder in uw Azure-account in rekening gebracht.
Opmerking
We kunnen ook een e-mail versturen vanaf ons eigen geverifieerde domein. Aangepaste geverifieerde domeinen toevoegen aan e-mailcommunicatieservice.
Voorvereistecontrole
- In een terminal- of opdrachtvenster, voer het
python --version
-commando 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.
Stel de applicatieomgeving in
Om een omgeving in te stellen voor het versturen van e-mails, volg je de stappen in de volgende secties.
Maak een nieuwe Python-toepassing
Open je terminal of opdrachtvenster. Gebruik vervolgens het volgende commando om een virtuele omgeving aan 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 de volgende opdrachten.
cd email-quickstart .\Scripts\activate
Gebruik een teksteditor om een bestand te maken met de naam send-email.py in de hoofdmap van het project en voeg de structuur voor het programma toe, 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.
Installeer het pakket
Blijf in de applicatiemap en installeer het Azure Communication Services Email SDK voor Python pakket met behulp van de volgende opdracht.
pip install azure-communication-email
Het maken van de e-mailclient met authenticatie
Er zijn een paar verschillende opties beschikbaar voor het authenticeren van een e-mailclient.
Instantieer een EmailClient met uw verbindingsstring. Leer hoe u de verbindingsreeks van uw bron kunt beheren.
# Create the EmailClient object that you use to send Email messages.
email_client = EmailClient.from_connection_string(<connection_string>)
Voor het gemak gebruikt dit artikel verbindingsreeksen, maar in productieomgevingen raden we u aan service-principals te gebruiken.
Eenvoudig e-mail verzenden
Verstuur een e-mailbericht
Om een e-mailbericht te versturen, moet je:
- Construeer 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 van e-mailontvangers en optioneel lijsten van CC- en BCC-e-mailontvangers. -
content
: Een object dat het onderwerp en optioneel de platte tekst of HTML-inhoud van een e-mailbericht bevat.
-
- Roep de
begin_send
methode 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())
Maak de volgende vervangingen in de code:
- Vervang
<emailalias@emaildomain.com>
door het e-mailadres waarnaar je een bericht wilt sturen. - Vervang
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
door het MailFrom-adres van je geverifieerd domein.
Verkrijg de status van de e-mailbezorging
We kunnen de status van de e-mailbezorging controleren door een lus in te stellen voor het bewerkingsstatusobject dat wordt geretourneerd via de e-mailclientmethode 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)
Voer de code uit
Voer de applicatie uit vanuit je applicatiemap met het python
commando.
python send-email.py
Voorbeeldcode
U kunt de voorbeeld-app downloaden uit GitHub Azure Samples Send email for Python
Vereiste voorwaarden
Een Azure-account met een actief abonnement of maak gratis een Azure-account.
Een actieve Azure Communication Services-resource of een Communication Services-resource maken.
Zorg voor een actieve Azure Logic Apps-resource (logic app) en workflow, of maak een nieuwe logic app-resource en workflow aan met de trigger die je wilt gebruiken. Momenteel biedt de Azure Communication Services Email-connector alleen acties, daarom heeft uw logische app-workflow op zijn minst een trigger nodig. U kunt een Verbruik of Standaard logica-appresource 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-mail verzenden
nl-NL: Om een nieuwe stap toe te voegen aan uw workflow met behulp van de Azure Communication Services Email connector, volgt u deze stappen:
Open in de ontwerper uw logische app-workflow.
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.
Onder het zoekvak Een bewerking kiezen, selecteer Premium. Voer in het zoekvak Azure Communication Email in.
Selecteer e-mail verzenden in de lijst met acties.
Standaard
Onder de stap waar u de nieuwe actie wilt toevoegen, selecteert u 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 in de vervolgkeuzelijst Runtime onder het zoekvak Een actie toevoegen de optie Premium. 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-bron. 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.
Wanneer u klaar bent, selecteert u Maken.
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 workflow op. Selecteer Opslaan op de werkbalk van de ontwerpfunctie.
Test je workflow
Afhankelijk van of je een Consumption- of Standard-werkstroom hebt, start je werkstroom handmatig.
- Verbruik: selecteer op de werkbalk van de ontwerper Run Trigger>Uitvoeren.
- Standaard: Selecteer Overzicht in het werkstroommenu. Selecteer Trigger uitvoeren>Uitvoeren op de werkbalk.
De werkstroom creëert een gebruiker, geeft een toegangstoken voor die gebruiker uit, en vervolgens verwijdert en verwijdert het systeem de gebruiker definitief. U kunt de uitvoer van deze acties controleren nadat het werkproces met succes is uitgevoerd.
Je zou een e-mail moeten ontvangen 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.
Ruim workflowbronnen op
Als u de resources, werkstromen en gerelateerde items van uw Logische App wilt opschonen, bekijkt u hoe u resources voor de verbruikslogische app opschoont of hoe u standaard logische app-resources 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 dit artikel worden een kleine kosten van een paar cent of minder in uw Azure-account in rekening gebracht.
Vereiste voorwaarden
- Een Azure-account met een actieve abonnement. Maak gratis een account.
- Een Azure Email Communication Services-resource is gemaakt en klaar met een toegewezen domein. Creëer een e-mailcommunicatiebron.
- Een actieve Azure Communication Services-resource verbonden met een e-maildomein en zijn verbindingsreeks. Een geverifieerd e-maildomein verbinden om e-mail te verzenden.
- De nieuwste Versie van Azure PowerShell.
Voorvereistecontrole
- Voer in een Windows PowerShell de
Get-Module -ListAvailable -Name Az.Communication
opdracht uit om te controleren of de communicatiemodule 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 in het linkernavigatievenster.
Inrichten
Installeer communicatiemodule
Installeer de Azure Communication Services-module voor Azure PowerShell met behulp van de Install-Module -Name Az.Communication
opdracht.
Install-Module -Name Az.Communication
Na het installeren van de communicatiemodule, voert u de Get-Command -Module Az.Communication
opdracht uit om alle communicatiemodules te verkrijgen.
Get-Command -Module Az.Communication
Verstuur een e-mailbericht
Een e-mailbericht in de wachtrij plaatsen om te worden verzonden naar een of meer geadresseerden met enkel de noodzakelijke velden.
$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>"
Maak de volgende vervangingen in de code:
- Vervang
<yourEndpoint>
door uw eindpunt. - Vervang
<emailalias@emaildomain.com>
door het e-mailadres waarnaar je een bericht wilt sturen. - Vervang
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
door het MailFrom-adres van je geverifieerd domein.
Een e-mailbericht in de wachtrij plaatsen om te worden verzonden naar een of meer geadresseerden met alle velden.
$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>"
Maak de volgende vervangingen 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 sturen. - Vervang
<file path> and <image file path>
door de daadwerkelijke bestandslocaties van de bijlagen die je wilt versturen. - 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 Content-ID voor uw inline-bijlage. - Vervang
<emailbccalias@emaildomain.com>
door het e-mailadres waarnaar je het bericht als BCC wilt versturen. - Vervang
<emailccalias@emaildomain.com>
met het e-mailadres waarmee je het bericht als CC wilt verzenden. - Vervang
<emailreplytoalias@emaildomain.com>
door het e-mailadres waarnaar u wilt dat de antwoorden worden verzonden. - Vervang
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
door het MailFrom-adres van je geverifieerd domein.
Optionele parameters
De volgende optionele parameters zijn beschikbaar in Azure PowerShell.
ContentHtml
kan worden gebruikt om de HTML-body van de e-mail op te geven.ContentPlainText
gebruikt om het platte-tekstgedeelte van de e-mail op te geven.Attachment
stelt de lijst met e-mailbijlagen in. Deze parameter accepteert een array van bestandslocaties of bijlage-objecten. We beperken de totale grootte van een e-mailaanvraag, inclusief normale en inlinebijlagen, tot 10 MB.Header
Aangepaste e-mailheaders doorgeven en het niveau van e-mailbelang instellen (hoog, normaal of laag).RecipientBcc
array van ontvangers voor het BCC-veld.RecipientCc
array van ontvangers voor het CC-veld.ReplyTo
array van e-mailadressen waarnaar antwoorden van ontvangers worden gestuurd.UserEngagementTrackingDisabled
geeft aan of het bijhouden 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 gebruiken die vergelijkbaar is met RecipientCc
, met RecipientBcc
en RecipientTo
. Er moet ten minste één ontvanger zijn in RecipientTo
of RecipientCc
of RecipientBcc
.
Probleemoplossingsproces
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. Zie voor meer informatie over de status van de bezorging aan de kant van de ontvanger hoe u e-mailgebeurtenissen kunt afhandelen.
Beperking van e-mailverkeer
Als uw toepassing vasthangt, kan dit worden veroorzaakt doordat het verzenden van e-mail wordt beperkt. U kunt laaglimieten verwerken via logboekregistratie of door een aangepast beleid te implementeren.
Opmerking
Deze sandbox is bedoeld om ontwikkelaars te helpen bij het bouwen van de toepassing. Je kunt geleidelijk verzoeken om het verzendvolume te verhogen zodra de applicatie klaar is om live te gaan. Dien een ondersteuningsverzoek in om uw gewenste verzendlimiet te verhogen als u een hoeveelheid berichten wilt verzenden die de snelheidslimieten overschrijdt.
Opruimen van Azure Communication Service-bronnen
Om een abonnement op Communicatie Services op te schonen en te verwijderen, kunt u de resource of de resourcegroep verwijderen. Het verwijderen van de resourcegroep verwijdert ook alle andere bijbehorende resources. Meer informatie over het opschonen van middelen.
Volgende stappen
In dit artikel wordt beschreven hoe u e-mailberichten verzendt met behulp van Azure Communication Services. Je kunt ook:
- Meer informatie over e-mailconcepten.
- Maak uzelf vertrouwd met de e-mailbibliotheek.
- Meer informatie over het verzenden van een chatbericht vanuit Power Automate met behulp van Azure Communication Services.
- Meer te weten komen over het gebruik van toegangstokens in het creëren en beheren van Azure Communication Services-gebruikers en toegangstokens.