Delen via


Verzend een e-mail met Azure Communication Services

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

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:

  1. Klik op de overzichtspagina van een geconfigureerde Azure Communication Service-resource op E-mail proberen in het linker-navigatievenster onder E-mail.

    Schermopname van het linkernavigatievenster voor E-mail uitproberen.

  2. Selecteer een van de geverifieerde domeinen uit de vervolgkeuzelijst.

    Schermopname van het geverifieerde domein in de vervolgkeuzelijst.

  3. Stel het e-mailbericht op dat moet worden verzonden.

    • Voer het e-mailadres van de ontvanger in
    • Onderwerp invoeren
    • Schrijf de e-mailtekst

    Schermopname die laat zien hoe u een van de geverifieerde e-maildomeinen filtert en selecteert om verbinding te maken.

  4. Klik op Verzenden.

    Een schermopname van een van de geverifieerde e-maildomeinen die nu is verbonden.

  5. E-mail succesvol verzonden.

    Schermopname van geslaagde e-mail verzenden.

  6. U kunt ook het voorbeeldcodefragment kopiëren om een e-mailbericht te verzenden voor gebruik in uw voorbeeldproject om meldingen te verzenden.

    • Selecteer de taal van uw keuze

    • Klik op Mijn verbinding invoegen

    • Klik op Kopiëren

      Schermopname van het codefragment voor het verzenden van e-mail.

  7. 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

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

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

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

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

  1. Navigeer naar de map die het pom.xml bestand bevat en compileer het project met behulp van de mvn opdracht.

    mvn compile
    
  2. Bouw het pakket.

    mvn package
    
  3. 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

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

  1. 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
    
  2. Navigeer naar de hoofdmap van de virtuele omgeving en activeer deze met de volgende opdrachten.

    cd email-quickstart
    .\Scripts\activate
    
  3. 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

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:

  1. Open in de ontwerper uw logische app-workflow.

    Verbruik

    1. 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.

    2. Onder het zoekvak Een bewerking kiezen, selecteer Premium. Voer in het zoekvak Azure Communication Email in.

    3. Selecteer e-mail verzenden in de lijst met acties.

      Schermopname die de Azure Communication Services Email-connector laat zien met de actie 'E-mail verzenden'.

    Standaard

    1. 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.

    2. Selecteer in de vervolgkeuzelijst Runtime onder het zoekvak Een actie toevoegen de optie Premium. Voer in het zoekvak Azure Communication Email in.

    3. Selecteer e-mail verzenden in de lijst met acties.

  2. Geef een naam op voor de verbinding.

  3. Voer de verbindingsreeks in voor uw Azure Communications Service-bron. Volg deze stappen om deze tekenreeks te vinden:

    1. Open uw Azure Communication Service-resource in Azure Portal.

    2. Selecteer sleutels in het resourcemenu onder Instellingen en kopieer de verbindingsreeks.

      Schermopname van de Verbindingsreeks van Azure Communication Services.

  4. Wanneer u klaar bent, selecteert u Maken.

  5. 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:

    Schermopname die de invoer voor de actie 'E-mail verzenden' van de Azure Communication Services-connector toont.

  6. 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

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: