Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Panduan singkat ini menjelaskan cara mengirim email menggunakan SDK Email kami.
Mulai menggunakan Azure Communication Services menggunakan Communication Services Coba Email untuk mengirim pesan Email.
Prasyarat
- Sebuah akun Azure dengan langganan aktif. Buat akun secara gratis.
- Pustaka klien .NET Core versi terbaru untuk sistem operasi Anda.
- Sumber Daya Azure Email Communication Services dibuat dan siap dengan domain yang disediakan Mulai Membuat Sumber Daya Komunikasi Email
- Sumber daya Layanan Komunikasi aktif yang diintegrasikan dengan Domain Email. Sambungkan domain email terverifikasi untuk mengirim email.
Menyelesaikan artikel ini dikenakan biaya kecil beberapa sen USD atau kurang di akun Azure Anda.
Mengirim Email menggunakan Coba Email
Coba Email membantu Anda mulai mengirim email ke penerima yang diinginkan menggunakan Azure Communication Services, dan memverifikasi konfigurasi aplikasi Anda untuk mengirim email. Ini juga membantu mempercepat pengembangan notifikasi email Anda dengan menggunakan potongan kode dalam bahasa pilihan Anda.
Untuk mengirim pesan ke penerima, dan untuk menentukan subjek dan isi pesan:
Dari halaman gambaran umum sumber daya Azure Communication Service yang disediakan, klik Coba Email di panel navigasi kiri di bawah Email.
Pilih salah satu domain yang terverifikasi dari menu dropdown.
Buat email yang akan dikirim.
- Masukkan Alamat email penerima
- Masukkan Subjek
- Tulis Isi Email
Klik Kirim.
Email berhasil dikirim.
Anda juga dapat menyalin sampel Cuplikan Kode untuk mengirim email untuk digunakan dalam proyek sampel Anda untuk mengirim pemberitahuan.
Cuplikan Kode Email sekarang siap digunakan dalam proyek pemberitahuan Anda.
Mulai menggunakan Azure Communication Services dengan menggunakan ekstensi komunikasi Azure CLI untuk mengirim pesan Email.
Menyelesaikan artikel ini dikenakan biaya kecil beberapa sen USD atau kurang di akun Azure Anda.
Prasyarat
- Sebuah akun Azure dengan langganan aktif. Buat akun secara gratis.
- Sumber daya Azure Email Communication Services telah dibuat dan siap dengan domain yang disediakan. Membuat Sumber Daya Komunikasi Email.
- Sebuah sumber daya Azure Communication Services yang aktif terhubung ke Domain Email dan string koneksinya. Sambungkan domain email terverifikasi untuk mengirim email.
- Azure CLI terbaru.
Pemeriksaan prasyarat
- Di terminal atau jendela perintah, jalankan perintah
az --versionuntuk memeriksa apakah CLI Azure dan ekstensi komunikasi sudah terpasang. - Untuk melihat domain yang diverifikasi dengan sumber daya Email Communication Services Anda, masuk ke portal Microsoft Azure. Temukan sumber daya Layanan Komunikasi Email Anda dan buka tab Penyediaan domain dari panel navigasi kiri.
Persiapan
Tambahkan ekstensi
Tambahkan ekstensi Azure Communication Services untuk Azure CLI dengan menggunakan perintah az extension.
az extension add --name communication
Masuk ke Azure CLI
Anda perlu masuk ke Azure CLI. Anda dapat masuk dengan menjalankan perintah az login dari terminal dan memberikan kredensial Anda.
Simpan string koneksi Anda dalam variabel lingkungan
Anda dapat mengonfigurasi variabel lingkungan AZURE_COMMUNICATION_CONNECTION_STRING untuk menggunakan operasi kunci Azure CLI tanpa harus menggunakan --connection_string untuk memasukkan string koneksi. Untuk mengonfigurasi variabel lingkungan, buka jendela konsol dan pilih sistem operasi Anda dari tab berikut. Gantilah <connectionString> dengan string koneksi yang sebenarnya.
Catatan
Jangan simpan string koneksi Anda sebagai variabel lingkungan yang tidak terenkripsi untuk lingkungan produksi. Metode ini dimaksudkan hanya untuk tujuan pengujian. Untuk lingkungan produksi, Anda perlu membuat string koneksi baru. Kami mendorong Anda untuk mengenkripsi string koneksi dan menggantinya secara teratur.
setx AZURE_COMMUNICATION_CONNECTION_STRING "<yourConnectionString>"
Setelah menambahkan variabel lingkungan, Anda mungkin perlu memulai ulang program yang sedang berjalan yang perlu membaca variabel lingkungan, termasuk jendela konsol. Misalnya, jika Anda menggunakan Visual Studio sebagai editor Anda, restart Visual Studio sebelum menjalankan contoh.
Kirim pesan email
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."
Lakukan penggantian ini di kode.
- Ganti
<yourConnectionString>dengan string koneksi Anda. - Ganti
<emailalias@emaildomain.com>dengan alamat email yang ingin Anda kirimi pesan. - Ganti
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>dengan alamat MailFrom domain terverifikasi Anda.
Perintah ini juga melakukan polling pada messageId dan mengembalikan status pengiriman email. Statusnya bisa menjadi salah satu nilai berikut:
| Nama Status | Deskripsi |
|---|---|
| Belum Dimulai | Kami tidak mengirimkan status ini dari layanan kami saat ini. |
| Berlari | Operasi pengiriman email saat ini sedang berlangsung dan sedang diproses. |
| Berhasil | Operasi pengiriman email selesai tanpa kesalahan dan email keluar untuk pengiriman. Status terperinci mengenai pengiriman email setelah tahap ini dapat diperoleh melalui Azure Monitor atau melalui Azure Event Grid. Pelajari cara berlangganan acara email. |
| Kegagalan | Operasi pengiriman email tidak berhasil dan mengalami kesalahan. Email tidak dikirim. Hasilnya mengandung objek kesalahan dengan rincian lebih lanjut tentang alasan kegagalan. |
Parameter opsional
Parameter opsional berikut tersedia di Azure CLI.
--htmldapat digunakan sebagai pengganti--textuntuk badan email HTML.--importancemengatur jenis kepentingan untuk email. Nilai yang diketahui adalah: tinggi, normal, dan rendah. Bawaan adalah biasa.--tomenetapkan daftar penerima email.--ccmengatur alamat email tembusan.--bccmenetapkan alamat email tembusan buta.--reply-tomenetapkan alamat email Balas-Ke.--disable-trackingmenunjukkan apakah pelacakan keterlibatan pengguna harus dinonaktifkan untuk permintaan ini.--attachmentsmenetapkan daftar lampiran email.--attachment-typesmenetapkan daftar jenis lampiran email, dalam urutan yang sama dengan lampiran.
Anda juga dapat menggunakan daftar penerima dengan --cc dan --bcc yang mirip dengan --to. Perlu ada setidaknya satu penerima di --to atau --cc atau --bcc.
Mulailah dengan Azure Communication Services dengan menggunakan pustaka klien Email C# dari Communication Services untuk mengirim pesan Email.
Petunjuk / Saran
Mulai langsung pengalaman pengiriman email Anda dengan Azure Communication Services dengan melompat langsung ke kode sampel Pengiriman Email Dasar dan Pengiriman Email Tingkat Lanjut di GitHub.
Memahami Model Objek Email
Kelas-kelas dan antarmuka berikut menangani beberapa fitur utama dari pustaka Azure Communication Services Email Client untuk C#.
| Nama | Deskripsi |
|---|---|
| Alamat Email | Kelas ini berisi alamat email dan opsi untuk nama tampilan. |
| Lampiran Email | Kelas ini membuat lampiran email dengan menerima ID unik, string tipe MIME lampiran email, data biner untuk konten, dan ID konten opsional untuk mendefinisikannya sebagai lampiran langsung. |
| Klien Email | Kelas ini diperlukan untuk semua fungsi email. Anda menginisialisasinya dengan string koneksi Anda dan menggunakannya untuk mengirim pesan email. |
| Opsi Klien Email | Kelas ini dapat ditambahkan ke inisiasi EmailClient untuk menentukan versi API tertentu. |
| Email Konten | Kelas ini berisi subjek dan isi dari pesan email. Anda harus menentukan setidaknya salah satu dari konten PlainText atau Html. |
| EmailCustomHeader | Kelas ini memungkinkan penambahan pasangan nama dan nilai untuk sebuah header kustom. Pentingnya email juga dapat ditentukan melalui header-header ini menggunakan nama header 'x-priority' atau 'x-msmail-priority' |
| PesanEmail | Kelas ini menggabungkan pengirim, konten, dan penerima. Header khusus, lampiran, dan alamat email reply-to dapat ditambahkan secara opsional, juga. |
| Penerima Email | Kelas ini menyimpan daftar objek EmailAddress untuk penerima pesan email, termasuk daftar opsional untuk penerima CC dan BCC. |
| OperasiPengirimanEmail | Kelas ini mewakili operasi pengiriman email asinkron dan dikembalikan dari panggilan API pengiriman email. |
| HasilPengirimanEmail | Kelas ini menyimpan hasil dari operasi pengiriman email. Ini memiliki ID operasi, status operasi, dan objek kesalahan (jika berlaku). |
EmailSendResult mengembalikan status berikut pada operasi email yang dilakukan.
| Kedudukan | Deskripsi |
|---|---|
| Belum Dimulai | Kami tidak mengirimkan status ini dari layanan kami saat ini. |
| Berlari | Operasi pengiriman email saat ini sedang berlangsung dan sedang diproses. |
| Berhasil | Operasi pengiriman email selesai tanpa kesalahan dan email keluar untuk pengiriman. Status terperinci mengenai pengiriman email setelah tahap ini dapat diperoleh melalui Azure Monitor atau melalui Azure Event Grid. Pelajari cara berlangganan peristiwa email |
| Kegagalan | Operasi pengiriman email tidak berhasil dan mengalami kesalahan. Email tidak terkirim. Hasilnya mengandung objek kesalahan dengan rincian lebih lanjut tentang alasan kegagalan. |
Prasyarat
- Sebuah akun Azure dengan langganan aktif. Buat akun secara gratis.
- Pustaka klien .NET Core versi terbaru untuk sistem operasi Anda.
- Sumber Daya Azure Email Communication Services dibuat dan siap dengan domain yang disediakan Buat Sumber Daya Komunikasi Email.
- Sumber daya Layanan Komunikasi yang aktif terhubung dengan Domain Email dan String Koneksi. Membuat dan mengelola sumber daya Layanan Komunikasi Email.
Menyelesaikan artikel ini dikenakan biaya kecil beberapa sen USD atau kurang di akun Azure Anda.
Catatan
Anda juga dapat mengirim email dari domain terverifikasi kami sendiri. Tambahkan domain terverifikasi kustom ke Email Communication Service.
Pemeriksaan prasyarat
- Dalam terminal atau jendela perintah, jalankan perintah
dotnetuntuk memeriksa bahwa pustaka klien .NET sudah terpasang. - Untuk melihat subdomain yang terkait dengan sumber daya Email Communication Services Anda, masuk ke portal Microsoft Azure, temukan sumber daya Email Communication Services Anda dan buka tab Provisi domain dari panel navigasi kiri.
Buat aplikasi C# baru
Di jendela konsol (seperti cmd, PowerShell, atau Bash), gunakan perintah dotnet new untuk membuat aplikasi konsol baru dengan nama EmailQuickstart. Perintah ini membuat proyek C# "Halo Dunia" sederhana dengan satu file sumber: Program.cs.
dotnet new console -o EmailQuickstart
Ubah direktori Anda ke folder aplikasi yang baru dibuat dan gunakan perintah dotnet build untuk mengompilasi aplikasi Anda.
cd EmailQuickstart
dotnet build
Pasang paket
Saat masih di direktori aplikasi, instal pustaka klien Email Azure Communication Services untuk paket .NET dengan menggunakan perintah dotnet add package.
dotnet add package Azure.Communication.Email
Membuat klien email dengan autentikasi
Buka Program.cs dan ganti kode yang ada dengan yang berikut ini untuk menambahkan using arahan untuk menyertakan Azure.Communication.Email namespace dan titik awal untuk menjalankan program Anda.
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)
{
}
}
}
Ada beberapa pilihan berbeda yang tersedia untuk mengautentikasi klien email.
Buka Program.cs di editor teks dan ganti isi Main metode dengan kode untuk menginisialisasi EmailClient dengan string koneksi Anda. Kode berikut mengambil string koneksi untuk sumber daya dari variabel lingkungan bernama COMMUNICATION_SERVICES_CONNECTION_STRING. Pelajari cara mengelola string koneksi sumber daya Anda.
// 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);
Catatan
Kami tidak merekomendasikan penggunaan polling manual (Kirim Email dengan polling status asinkron) untuk mengirim email.
- Kirim Email dengan memantau status secara asinkron
- Kirim Email dengan pemantauan status secara sinkron
Pengiriman email dasar
Bangun pesan email Anda
Untuk mengirim pesan email, Anda perlu:
- Tentukan subjek dan isi email.
- Tentukan Alamat Pengirim Anda. Bangun pesan email Anda dengan informasi Pengirim Anda; dapatkan alamat MailFrom Anda dari domain terverifikasi Anda.
- Tentukan Alamat Penerima.
- Panggil metode SendAsync. Tambahkan kode ini ke akhir
Mainmetode dalam Program.cs:
Gantikan dengan detail domain Anda dan modifikasi konten, detail penerima sesuai kebutuhan.
//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";
Kirim dan dapatkan status pengiriman email
Saat Anda memanggil SendAsync dengan Azure.WaitUntil.Started, metode Anda akan kembali setelah memulai operasi. Metode ini mengembalikan objek EmailSendOperation. Anda dapat memanggil metode UpdateStatusAsync untuk menyegarkan status operasi email.
Objek EmailSendOperation yang dikembalikan mengandung objek EmailSendStatus yang berisi:
- Status terkini dari operasi pengiriman email.
- Objek error dengan detail kegagalan jika status saat ini berada dalam kondisi gagal.
/// 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}");
Jalankan aplikasi dari direktori aplikasi Anda dengan perintah dotnet run.
dotnet run
Kode contoh
Anda dapat mengunduh aplikasi sampel dari GitHub
Mulai menggunakan Azure Communication Services menggunakan pustaka klien Email JavaScript Communication Services untuk mengirim pesan Email.
Petunjuk / Saran
Mulai langsung pengalaman pengiriman email Anda dengan Azure Communication Services menggunakan kode sampel Pengiriman Email Dasar dan Pengiriman Email Tingkat Lanjut di GitHub.
Memahami model objek email
Kelas dan antarmuka berikut menangani beberapa fitur pustaka Klien Email Azure Communication Services untuk JavaScript.
| Nama | Deskripsi |
|---|---|
| Alamat Email | Kelas ini berisi alamat email dan opsi untuk nama tampilan. |
| Lampiran Email | Kelas ini membuat lampiran email dengan menerima ID unik, string jenis MIME lampiran email, data biner untuk konten, dan ID Konten opsional untuk menentukannya sebagai lampiran sebaris. |
| Klien Email | Kelas ini diperlukan untuk semua fungsi email. Anda menginisialisasinya dengan string koneksi Anda dan menggunakannya untuk mengirim pesan email. |
| Opsi Klien Email | Kelas ini dapat ditambahkan ke inisiasi EmailClient untuk menentukan versi API tertentu. |
| Email Konten | Kelas ini berisi subjek dan isi dari pesan email. Anda harus menentukan setidaknya satu dari konten PlainText atau Html. |
| EmailCustomHeader | Kelas ini memungkinkan penambahan pasangan nama dan nilai untuk sebuah header kustom. Kepentingan email juga dapat ditentukan melalui header ini menggunakan header nama x-priority atau x-msmail-priority. |
| PesanEmail | Kelas ini menggabungkan pengirim, konten, dan penerima. Header khusus, lampiran, dan alamat email reply-to dapat ditambahkan secara opsional, juga. |
| Penerima Email | Kelas ini menyimpan daftar objek EmailAddress untuk penerima pesan email, termasuk daftar opsional untuk penerima CC dan BCC. |
| HasilPengirimanEmail | Kelas ini menyimpan hasil dari operasi pengiriman email. Ini memiliki ID operasi, status operasi, dan objek kesalahan (jika berlaku). |
| Status Pengiriman Email | Kelas ini mewakili kumpulan status dari operasi pengiriman email. |
EmailSendResult mengembalikan status berikut pada operasi email yang dilakukan.
| Nama Status | Deskripsi |
|---|---|
| dimulai | Mengembalikan true jika operasi pengiriman email saat ini sedang berlangsung dan diproses. |
| sudah selesai | Menghasilkan nilai benar jika operasi pengiriman email selesai tanpa kesalahan dan email keluar untuk pengiriman. Status terperinci mengenai pengiriman email setelah tahap ini dapat diperoleh melalui Azure Monitor atau melalui Azure Event Grid. Pelajari cara berlangganan peristiwa email |
| hasil | Properti yang ada jika operasi pengiriman email menyimpulkan. |
| galat | Properti yang ada jika operasi pengiriman email tidak berhasil dan mengalami kesalahan. Email tidak terkirim. Hasilnya mengandung objek kesalahan dengan rincian lebih lanjut tentang alasan kegagalan. |
Prasyarat
- Node.js (~14).
- Sebuah akun Azure dengan langganan aktif. Buat akun secara gratis.
- Sumber daya Azure Email Communication Services telah dibuat dan siap dengan domain yang disediakan. Membuat Sumber Daya Komunikasi Email.
- Sebuah sumber daya Azure Communication Services yang aktif terhubung ke Domain Email dan string koneksinya. Membuat dan mengelola sumber daya Layanan Komunikasi Email.
Menyelesaikan artikel ini dikenakan biaya kecil beberapa sen USD atau kurang di akun Azure Anda.
Catatan
Anda juga dapat mengirim email dari domain terverifikasi kami sendiri. Tambahkan domain terverifikasi kustom ke Email Communication Service.
Pemeriksaan prasyarat
- Dalam terminal atau jendela perintah, jalankan
node --versionuntuk memeriksa apakah Node.js telah terpasang. - Untuk melihat domain yang diverifikasi dengan sumber daya Email Communication Services Anda, masuk ke portal Microsoft Azure, temukan sumber daya Email Communication Services Anda dan buka tab Provisi domain dari panel navigasi kiri.
Siapkan lingkungan aplikasi
Buat Aplikasi Node.js Baru
Pertama, buka terminal atau jendela perintah Anda. Kemudian buat direktori baru untuk aplikasi Anda, dan navigasikan ke direktori tersebut.
mkdir email-quickstart && cd email-quickstart
Jalankan npm init -y untuk membuat berkas package.json dengan pengaturan default.
npm init -y
Gunakan editor teks untuk membuat file yang disebut send-email.js di direktori akar proyek. Ubah properti main di package.json menjadi send-email.js. Bagian berikut menunjukkan cara menambahkan kode sumber untuk artikel ini ke file yang baru dibuat.
Pasang paket
Gunakan perintah npm install untuk menginstal pustaka klien Email Azure Communication Services untuk JavaScript.
npm install @azure/communication-email --save
Opsi --save mencantumkan perpustakaan sebagai ketergantungan dalam file package.json Anda.
Membuat klien email dengan autentikasi
Ada beberapa pilihan berbeda yang tersedia untuk mengautentikasi klien email.
EmailClient Impor dari pustaka klien dan buat instans dengan string koneksi Anda.
Gunakan kode berikut untuk mengambil string koneksi untuk sumber daya dari variabel lingkungan bernama COMMUNICATION_SERVICES_CONNECTION_STRING melalui paket dotenv. Gunakan perintah npm install untuk menginstal paket dotenv. Pelajari cara mengelola string koneksi sumber daya Anda.
npm install dotenv
Tambahkan kode berikut ke 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);
Untuk kesederhanaan, artikel ini menggunakan string koneksi, tetapi di lingkungan produksi, sebaiknya gunakan perwakilan layanan.
Pengiriman email dasar
Kirim pesan email
Untuk mengirim pesan email, panggil fungsi beginSend dari EmailClient. Metode ini mengembalikan poller yang memeriksa status operasi dan mengambil hasil setelah selesai.
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();
Lakukan penggantian ini di kode.
- Ganti
<emailalias@emaildomain.com>dengan alamat email yang ingin Anda kirimi pesan. - Ganti
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>dengan alamat MailFrom domain terverifikasi Anda.
Jalankan kode
Gunakan perintah node untuk menjalankan kode yang Anda tambahkan ke send-email.js file.
node ./send-email.js
Kode contoh
Anda dapat mengunduh aplikasi sampel dari GitHub Azure Samples Send Email for JavaScript.
Mulai menggunakan Azure Communication Services dengan menggunakan SDK Email Java Communication Services untuk mengirim pesan Email.
Petunjuk / Saran
Mulai langsung pengalaman pengiriman email Anda dengan Azure Communication Services dengan menggunakan kode sampel Pengiriman Email Dasar dan Pengiriman Email Tingkat Lanjut di GitHub.
Memahami model objek email
Kelas dan antarmuka berikut menangani beberapa fitur utama SDK Email Azure Communication Services untuk Java.
| Nama | Deskripsi |
|---|---|
| Alamat Email | Kelas ini berisi alamat email dan opsi untuk nama tampilan. |
| Lampiran Email | Antarmuka ini membuat lampiran email dengan menerima ID unik, string jenis MIME lampiran email, string byte konten, dan ID konten opsional untuk menentukannya sebagai lampiran sebaris. |
| Klien Email | Kelas ini diperlukan untuk semua fungsi email. Anda menginisialisasinya dengan string koneksi Anda dan menggunakannya untuk mengirim pesan email. |
| PesanEmail | Kelas ini menggabungkan pengirim, konten, dan penerima. Header khusus, lampiran, dan alamat email reply-to dapat ditambahkan secara opsional, juga. |
| HasilPengirimanEmail | Kelas ini menyimpan hasil dari operasi pengiriman email. Ini memiliki ID operasi, status operasi, dan objek kesalahan (jika berlaku). |
| Status Pengiriman Email | Kelas ini mewakili kumpulan status dari operasi pengiriman email. |
EmailSendResult mengembalikan status berikut pada operasi email yang dilakukan.
| Nama Status | Deskripsi |
|---|---|
| BELUM DIMULAI | Kami tidak mengirimkan status ini dari layanan kami saat ini. |
| SEDANG DALAM PROSES | Operasi pengiriman email saat ini sedang berlangsung dan sedang diproses. |
| BERHASIL_SELESAI | Operasi pengiriman email selesai tanpa kesalahan dan email keluar untuk pengiriman. Status terperinci mengenai pengiriman email setelah tahap ini dapat diperoleh melalui Azure Monitor atau melalui Azure Event Grid. Pelajari cara berlangganan peristiwa email |
| GAGAL | Operasi pengiriman email tidak berhasil dan mengalami kesalahan. Email tidak terkirim. Hasilnya mengandung objek kesalahan dengan rincian lebih lanjut tentang alasan kegagalan. |
Prasyarat
- Sebuah akun Azure dengan langganan aktif. Buat akun secara gratis.
- Java Development Kit (JDK) versi 8 atau lebih tinggi.
- Apache Maven.
- Sumber daya dan string koneksi layanan komunikasi yang telah di-deploy. Untuk detailnya, lihat Membuat sumber daya Communication Services.
- Untuk mulai mengirim email, buat sumber daya Azure Email Communication Services.
- Penyiapan identitas terkelola untuk lingkungan pengembangan, lihat Mengotorisasi akses dengan identitas terkelola.
Menyelesaikan artikel ini dikenakan biaya kecil beberapa sen USD atau kurang di akun Azure Anda.
Catatan
Anda juga dapat mengirim email dari domain terverifikasi kami sendiri Membuat dan mengelola sumber daya Layanan Komunikasi Email.
Pemeriksaan prasyarat
- Di terminal atau jendela perintah, jalankan
mvn -vuntuk memeriksa apakah Maven sudah terpasang. - Untuk melihat domain yang diverifikasi dengan sumber daya Email Communication Services Anda, masuk ke portal Microsoft Azure. Temukan resource Email Communication Services Anda dan buka tab Penyediaan domain dari panel navigasi kiri.
Siapkan lingkungan aplikasi
Untuk mengatur lingkungan untuk mengirim email, ikuti langkah-langkah pada bagian berikut.
Buat aplikasi Java baru
Buka terminal atau jendela perintah Anda dan navigasikan ke direktori tempat Anda ingin membuat aplikasi Java Anda. Jalankan perintah berikut untuk menghasilkan proyek Java dari template maven-archetype-quickstart.
mvn archetype:generate -DarchetypeArtifactId="maven-archetype-quickstart" -DarchetypeGroupId="org.apache.maven.archetypes" -DarchetypeVersion="1.4" -DgroupId="com.communication.quickstart" -DartifactId="communication-quickstart"
Tujuan generate membuat direktori dengan nama yang sama seperti nilai artifactId. Di bawah direktori ini, direktori src/main/java berisi kode sumber proyek, direktori src/test/java berisi sumber pengujian, dan file pom.xml adalah Project Object Model (POM) proyek.
Pasang paket
Buka file pom.xml di editor teks Anda. Tambahkan elemen dependensi berikut ke grup dependensi.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-communication-email</artifactId>
<version>1.0.0-beta.2</version>
</dependency>
Siapkan kerangka aplikasi
Buka /src/main/java/com/communication/quickstart/App.java di editor teks, tambahkan direktif impor, dan hapus System.out.println("Hello world!"); pernyataan:
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.
}
}
Membuat klien email dengan otentikasi
Ada beberapa opsi berbeda yang tersedia untuk mengautentikasi klien email.
Untuk mengautentikasi klien, Anda menginstansiasi EmailClient dengan string koneksi Anda. Pelajari cara mengelola string koneksi sumber daya Anda. Anda juga dapat menginisialisasi klien dengan klien HTTP kustom apa pun yang mengimplementasikan antarmuka com.azure.core.http.HttpClient.
Untuk membuat instans klien sinkron, tambahkan kode berikut ke main metode :
// 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();
Untuk menginisialisasi klien asinkron, tambahkan kode berikut ke dalam metode main:
// 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();
Untuk kesederhanaan, artikel ini menggunakan string koneksi, tetapi di lingkungan produksi, sebaiknya gunakan perwakilan layanan.
Pengiriman email dasar
Anda dapat membuat pesan email menggunakan EmailMessage objek di 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.");
Lakukan penggantian ini di kode.
- Ganti
<emailalias@emaildomain.com>dengan alamat email yang ingin Anda kirimi pesan. - Ganti
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>dengan alamat MailFrom domain terverifikasi Anda.
Untuk mengirim pesan email, panggil beginSend fungsi dari EmailClient.
Memanggil beginSend pada klien asinkron mengembalikan objek PollerFlux yang dapat Anda langgani. Panggilan balik yang ditentukan dalam metode berlangganan dipicu setelah operasi pengiriman email selesai.
Perhatikan bahwa permintaan awal untuk mengirim email tidak akan dikirim hingga pelanggan disiapkan.
Duration MAIN_THREAD_WAIT_TIME = Duration.ofSeconds(30);
// ExecutorService to run the polling in a separate thread
ExecutorService executorService = Executors.newSingleThreadExecutor();
PollerFlux<EmailSendResult, EmailSendResult> poller = emailAsyncClient.beginSend(emailMessage);
executorService.submit(() -> {
// The initial request is sent out as soon as we subscribe the to PollerFlux object
poller.subscribe(
response -> {
if (response.getStatus() == LongRunningOperationStatus.SUCCESSFULLY_COMPLETED) {
System.out.printf("Successfully sent the email (operation id: %s)\n", response.getValue().getId());
}
else {
// The operation ID can be retrieved as soon as the first response is received from the PollerFlux.
System.out.println("Email send status: " + response.getStatus() + ", operation id: " + response.getValue().getId());
}
},
error -> {
System.out.println("Error occurred while sending email: " + error.getMessage());
}
);
});
// In a real application, you might have a mechanism to keep the main thread alive.
// For this sample we will keep the main thread alive for 30 seconds to make sure the child thread has time to receive the SUCCESSFULLY_COMPLETED status.
try {
Thread.sleep(MAIN_THREAD_WAIT_TIME.toMillis());
} catch (InterruptedException e) {
e.printStackTrace();
}
executorService.shutdown();
System.out.println("Main thread ends.");
Jalankan kode
Navigasi ke direktori yang berisi
pom.xmlfile dan kompilasi proyek menggunakanmvnperintah .mvn compileBangun paketnya.
mvn packageJalankan perintah berikut
mvnuntuk memulai aplikasi.mvn exec:java -D"exec.mainClass"="com.communication.quickstart.App" -D"exec.cleanupDaemonThreads"="false"
Kode contoh
Anda dapat mengunduh aplikasi sampel dari GitHub Azure Samples Send Email for Java
Mulailah dengan Azure Communication Services dengan menggunakan Communication Services Python Email SDK untuk mengirim pesan Email.
Petunjuk / Saran
Mulai langsung pengalaman pengiriman email Anda dengan Azure Communication Services dengan melompat langsung ke kode sampel Pengiriman Email Dasar dan Pengiriman Email Tingkat Lanjut di GitHub.
Memahami model objek email
Template pesan JSON berikut dan objek respons menunjukkan beberapa fitur utama dari Azure Communication Services Email SDK untuk 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.
}
}
Nilai response.status dijelaskan lebih lanjut dalam tabel berikut.
| Nama Status | Deskripsi |
|---|---|
| Sedang Berlangsung | Operasi pengiriman email saat ini sedang berlangsung dan sedang diproses. |
| Berhasil | Operasi pengiriman email selesai tanpa kesalahan dan email keluar untuk pengiriman. Status terperinci mengenai pengiriman email setelah tahap ini dapat diperoleh melalui Azure Monitor atau melalui Azure Event Grid. Pelajari cara berlangganan peristiwa email |
| Kegagalan | Operasi pengiriman email tidak berhasil dan mengalami kesalahan. Email tidak terkirim. Hasilnya mengandung objek kesalahan dengan rincian lebih lanjut tentang alasan kegagalan. |
Prasyarat
- Sebuah akun Azure dengan langganan aktif. Buat akun secara gratis.
- Python 3.7+.
- Sumber daya Azure Email Communication Services telah dibuat dan siap dengan domain yang disediakan. Membuat Sumber Daya Komunikasi Email.
- Sebuah sumber daya Azure Communication Services yang aktif terhubung ke Domain Email dan string koneksinya. Sambungkan domain email terverifikasi untuk mengirim email.
Menyelesaikan artikel ini dikenakan biaya kecil beberapa sen USD atau kurang di akun Azure Anda.
Catatan
Kami juga dapat mengirim email dari domain terverifikasi milik kami sendiri. Tambahkan domain terverifikasi kustom ke Email Communication Service.
Pemeriksaan prasyarat
- Di terminal atau jendela perintah, jalankan perintah
python --versionuntuk memeriksa bahwa Python sudah terinstal. - Untuk melihat domain yang diverifikasi dengan sumber daya Email Communication Services Anda, masuk ke portal Microsoft Azure. Temukan sumber daya Layanan Komunikasi Email Anda dan buka tab Penyediaan domain dari panel navigasi kiri.
Siapkan lingkungan aplikasi
Untuk mengatur lingkungan untuk mengirim email, ikuti langkah-langkah pada bagian berikut.
Membuat aplikasi Python baru
Buka terminal atau jendela perintah Anda. Kemudian gunakan perintah berikut untuk membuat lingkungan virtual dan mengaktifkannya. Perintah ini membuat direktori baru untuk aplikasi Anda.
python -m venv email-quickstartArahkan ke direktori root dari lingkungan virtual dan aktifkan menggunakan perintah berikut.
cd email-quickstart .\Scripts\activateGunakan editor teks untuk membuat file yang disebut send-email.py di direktori akar proyek dan menambahkan struktur untuk program, termasuk penanganan pengecualian dasar.
import os from azure.communication.email import EmailClient try: # Quickstart code goes here. except Exception as ex: print('Exception:') print(ex)
Di bagian berikut, Anda menambahkan semua kode sumber untuk mulai cepat ini ke file send-email.py yang Anda buat.
Pasang paket
Selama masih di direktori aplikasi, instal paket Azure Communication Services Email SDK untuk Python dengan menggunakan perintah berikut.
pip install azure-communication-email
Membuat klien email dengan otentikasi
Ada beberapa pilihan berbeda yang tersedia untuk mengautentikasi klien email.
Buat instance EmailClient dengan string koneksi Anda. Pelajari cara mengelola string koneksi sumber daya Anda.
# Create the EmailClient object that you use to send Email messages.
email_client = EmailClient.from_connection_string(<connection_string>)
Untuk kesederhanaan, artikel ini menggunakan string koneksi, tetapi di lingkungan produksi, sebaiknya gunakan perwakilan layanan.
Pengiriman email dasar
Kirim pesan email
Untuk mengirim pesan email, Anda perlu:
- Susun pesan dengan nilai-nilai berikut:
-
senderAddress: Alamat email pengirim valid, ditemukan di bidang MailFrom di panel ikhtisar domain yang terhubung dengan Sumber Daya Layanan Komunikasi Email Anda. -
recipients: Sebuah objek dengan daftar penerima email, dan secara opsional, daftar penerima email CC dan BCC. -
content: Sebuah objek yang berisi subjek, dan opsional berisi konten teks biasa atau HTML dari pesan email.
-
-
begin_sendPanggil metode , yang mengembalikan hasil operasi.
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())
Lakukan penggantian ini di kode.
- Ganti
<emailalias@emaildomain.com>dengan alamat email yang ingin Anda kirimi pesan. - Ganti
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>dengan alamat MailFrom domain terverifikasi Anda.
Dapatkan status pengiriman email
Kita dapat melakukan polling untuk status pengiriman email dengan mengatur perulangan pada objek status operasi yang dikembalikan dari metode EmailClient 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)
Jalankan kode
Jalankan aplikasi dari direktori aplikasi Anda dengan perintah python.
python send-email.py
Kode contoh
Anda dapat mengunduh aplikasi sampel dari GitHub Azure Samples Kirim email untuk Python
Prasyarat
Akun Azure dengan langganan aktif, atau buat akun Azure secara gratis.
Sumber daya Azure Communication Services aktif, atau buat sumber daya Communication Services.
Sumber daya Azure Logic Apps yang aktif (logic app) dan alur kerja, atau buat sumber daya logic app dan alur kerja baru dengan pemicu yang ingin Anda gunakan. Saat ini, penghubung Email Azure Communication Services hanya menyediakan tindakan, jadi alur kerja aplikasi logika Anda memerlukan setidaknya satu pemicu. Anda dapat membuat sumber daya aplikasi logika Konsumsi atau Standar .
Sumber daya Email Azure Communication Services dengan domain yang dikonfigurasi atau domain kustom.
Sumber daya Azure Communication Services yang tersambung dengan domain Azure Email.
Kirim email
Untuk menambahkan langkah baru ke alur kerja Anda dengan menggunakan konektor Email Azure Communication Services, ikuti langkah-langkah berikut:
Di dalam perancang, buka alur kerja aplikasi logika Anda.
Konsumsi
Di bawah langkah di mana Anda ingin menambahkan tindakan baru, pilih Langkah baru. Atau, untuk menambahkan tindakan baru di antara langkah-langkah, pindahkan penunjuk Anda ke panah di antara langkah-langkah tersebut, pilih tanda plus (+), dan pilih Tambahkan tindakan.
Di bawah kotak pencarian Pilih operasi , pilih Premium. Dalam kotak pencarian, masukkan Azure Communication Email.
Dari daftar tindakan, pilih Kirim email.
Standar
Di bawah langkah di mana Anda ingin menambahkan tindakan baru, pilih tanda plus (+). Atau, untuk menambahkan tindakan baru di antara langkah-langkah, pindahkan penunjuk Anda ke panah di antara langkah-langkah tersebut, pilih tanda plus (+), dan pilih Tambahkan tindakan.
Di bawah kotak pencarian Tambahkan tindakan, pilih Premium di menu dropdown runtime. Dalam kotak pencarian, masukkan Azure Communication Email.
Dari daftar tindakan, pilih Kirim email.
Berikan nama untuk koneksi.
Masukkan connection string untuk resource Azure Communications Service Anda. Untuk menemukan string ini, ikuti langkah-langkah berikut:
Di portal Microsoft Azure, buka sumber daya Azure Communication Service Anda.
Pada menu sumber daya, di bawah Pengaturan, pilih Kunci, dan salin string koneksi.
Setelah selesai, pilih Buat.
Di bidang Dari , gunakan alamat email yang Anda konfigurasi dalam prasyarat. Masukkan nilai untuk bidang Kepada Email, Subjek, dan Isi , misalnya:
Simpan alur kerja Anda. Pada toolbar perancang, pilih Simpan.
Uji alur kerja Anda
Berdasarkan apakah Anda memiliki alur kerja Konsumsi atau Standar, mulai alur kerja Anda secara manual:
- Konsumsi: Pada toolbar perancang, pilih Jalankan Pemicu>Jalankan.
- Standar: Pada menu alur kerja, pilih Gambaran Umum. Pada toolbar, pilih Jalankan Eksekusi Pemicu>.
Alur kerja membuat pengguna, mengeluarkan token akses untuk pengguna tersebut, kemudian menghapus dan menghilangkan pengguna tersebut. Anda dapat memeriksa keluaran dari tindakan-tindakan ini setelah alur kerja berhasil dijalankan.
Anda seharusnya menerima email di alamat yang ditentukan. Selain itu, Anda dapat menggunakan tindakan Dapatkan status pesan email untuk memeriksa status email yang dikirim melalui tindakan Kirim email . Untuk tindakan lebih lanjut, tinjau dokumentasi referensi konektor Email Azure Communication Services.
Membersihkan sumber daya alur kerja
Untuk membersihkan sumber daya aplikasi logika, alur kerja, dan sumber daya terkait, tinjau cara membersihkan sumber daya aplikasi logika Konsumsi atau cara membersihkan sumber daya aplikasi logika Standar.
Mulai menggunakan Azure Communication Services menggunakan modul komunikasi Azure PowerShell untuk mengirim pesan Email.
Menyelesaikan artikel ini dikenakan biaya kecil beberapa sen USD atau kurang di akun Azure Anda.
Prasyarat
- Sebuah akun Azure dengan langganan aktif. Buat akun secara gratis.
- Sumber daya Azure Email Communication Services telah dibuat dan siap dengan domain yang disediakan. Membuat Sumber Daya Komunikasi Email.
- Sebuah sumber daya Azure Communication Services yang aktif terhubung ke Domain Email dan string koneksinya. Sambungkan domain email terverifikasi untuk mengirim email.
- Azure PowerShell terbaru.
Pemeriksaan prasyarat
- Di Windows PowerShell, jalankan
Get-Module -ListAvailable -Name Az.Communicationperintah untuk memeriksa apakah modul komunikasi diinstal. - Untuk melihat domain yang diverifikasi dengan sumber daya Email Communication Services Anda, masuk ke portal Microsoft Azure. Temukan resource Email Communication Services Anda dan buka tab Penyediaan domain dari panel navigasi kiri.
Pengaturan
Pasang modul komunikasi
Instal modul Azure Communication Services untuk Azure PowerShell menggunakan Install-Module -Name Az.Communication perintah .
Install-Module -Name Az.Communication
Setelah menginstal modul komunikasi, jalankan perintah Get-Command -Module Az.Communication untuk mendapatkan semua modul komunikasi.
Get-Command -Module Az.Communication
Kirim pesan email
Antrekan pesan email yang akan dikirim ke satu atau beberapa penerima hanya dengan bidang yang diperlukan.
$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>"
Lakukan penggantian ini di kode.
- Gantilah
<yourEndpoint>dengan titik akhir Anda. - Ganti
<emailalias@emaildomain.com>dengan alamat email yang ingin Anda kirimi pesan. - Ganti
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>dengan alamat MailFrom domain terverifikasi Anda.
Antrekan pesan email yang akan dikirim ke satu atau beberapa penerima dengan semua bidang.
$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>"
Lakukan penggantian ini di kode.
- Gantilah
<yourEndpoint>dengan titik akhir Anda. - Gantikan
<emailalias@emaildomain.com> and <emailalias1@emaildomain.com>dengan alamat email yang ingin Anda kirimi pesan. - Ganti
<file path> and <image file path>dengan jalur file sebenarnya dari lampiran yang ingin Anda kirim. - Ganti
<text/plain> and <image/png>dengan jenis konten yang sesuai untuk lampiran Anda. - Ganti
<test.txt> and <inline-attachment.png>dengan nama file lampiran Anda. - Gantilah
<inline-attachment>dengan Content-ID untuk lampiran sebaris Anda. - Ganti
<emailbccalias@emaildomain.com>dengan alamat email yang ingin Anda kirimi pesan sebagai BCC. - Ganti
<emailccalias@emaildomain.com>dengan alamat email yang ingin Anda kirimi pesan sebagai CC. - Ganti
<emailreplytoalias@emaildomain.com>dengan alamat email yang ingin Anda gunakan untuk menerima balasan. - Ganti
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>dengan alamat MailFrom domain terverifikasi Anda.
Parameter opsional
Parameter opsional berikut tersedia di Azure PowerShell.
ContentHtmldapat digunakan untuk menentukan badan HTML dari email.ContentPlainTextdigunakan untuk menentukan badan teks biasa dari email.Attachmentmenetapkan daftar lampiran email. Parameter ini menampung array dari jalur berkas atau objek lampiran. Kami membatasi ukuran total permintaan email, termasuk lampiran reguler dan sebaris, hingga 10 MB.Headerheader email kustom yang akan diteruskan dan menetapkan tingkat kepentingan email (tinggi, normal, atau rendah).RecipientBccarray penerima untuk bidang BCC.RecipientCcdaftar penerima untuk bidang CC.ReplyToarray alamat email di mana balasan dari penerima dikirim.UserEngagementTrackingDisabledmenunjukkan apakah pelacakan keterlibatan pengguna perlu dinonaktifkan untuk permintaan ini jika pengaturan pelacakan keterlibatan pengguna tingkat sumber daya sudah diaktifkan di sarana kontrol.
Anda juga dapat menggunakan daftar penerima dengan RecipientCc dan RecipientBcc yang mirip dengan RecipientTo. Perlu ada setidaknya satu penerima di RecipientTo atau RecipientCc atau RecipientBcc.
Pemecahan Masalah
Pengiriman Email
Untuk memecahkan masalah yang terkait dengan pengiriman email, Anda bisa mendapatkan status pengiriman email untuk mengambil detail pengiriman.
Penting
Hasil sukses yang diperoleh dari pemantauan status operasi pengiriman hanya memvalidasi fakta bahwa email berhasil dikirim untuk pengantaran. Untuk informasi selengkapnya tentang status pengiriman di akhir penerima, lihat cara menangani peristiwa email.
Pembatasan email
Jika aplikasi Anda menggantung, itu bisa disebabkan oleh pengiriman email yang dibatasi. Anda dapat menangani batas tingkat melalui pengelogan atau dengan menerapkan kebijakan kustom.
Catatan
Sandbox ini dimaksudkan untuk membantu pengembang mulai membangun aplikasi. Anda dapat secara bertahap meminta peningkatan volume pengiriman setelah aplikasi siap untuk diluncurkan. Ajukan permintaan dukungan untuk meningkatkan batas pengiriman yang Anda inginkan jika Anda perlu mengirimkan sejumlah pesan yang melebihi batas kecepatan.
Bersihkan sumber daya Layanan Komunikasi Azure
Untuk membersihkan dan menghapus langganan Communication Services, Anda dapat menghapus grup sumber daya atau sumber daya. Menghapus grup sumber daya juga menghapus sumber daya lain yang terkait. Pelajari selengkapnya tentang membersihkan sumber daya.
Langkah selanjutnya
Artikel ini menjelaskan cara mengirim email menggunakan Azure Communication Services. Anda juga dapat:
- Pelajari tentang konsep Email.
- Biasakan diri Anda dengan pustaka klien email.
- Pelajari selengkapnya tentang cara mengirim pesan obrolan dari Power Automate menggunakan Azure Communication Services.
- Pelajari lebih lanjut tentang pengelolaan token akses Membuat dan Mengelola pengguna Azure Communication Services dan token akses.