التشغيل السريع: كيفية إرسال بريد إلكتروني باستخدام Azure Communication Services
إشعار
يرجى مشاركة أفكارك وملاحظاتك حول Azure Communication Services معنا من خلال إجراء هذا الاستطلاع القصير.
يصف هذا التشغيل السريع كيفية إرسال البريد الإلكتروني باستخدام حزم SDK للبريد الإلكتروني.
ابدأ باستخدام Azure Communication Services باستخدام Communication Services Try Email لإرسال رسائل البريد الإلكتروني.
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- أحدث إصدار .NET Core client library لنظام التشغيل.
- مورد خدمات اتصالات البريد الإلكتروني Azure تم إنشاؤه وجاهز مع نطاق مخصص ابدأ بإنشاء مورد اتصالات البريد الإلكتروني
- مورد خدمات اتصالات نشط متصل بمجال البريد الإلكتروني. ابدأ بربط مورد البريد الإلكتروني بمورد الاتصال
إن إكمال هذه البداية السريعة يتكبد تكلفة بسيطة تبلغ بضعة سنتات من دولارات الولايات المتحدة أو أقل في حسابك في Azure.
إرسال بريد إلكتروني باستخدام "تجربة البريد الإلكتروني"
تساعدك تجربة البريد الإلكتروني على بدء إرسال رسائل البريد الإلكتروني إلى المستلمين المطلوبين باستخدام Azure Communication Services، بالإضافة إلى التحقق من تكوين تطبيقك لإرسال البريد الإلكتروني. كما أنه يساعد على بدء تطوير إعلام البريد الإلكتروني الخاص بك مع مقتطف التعليمات البرمجية في اختيارك المفضل للغة.
لإرسال رسالة إلى مستلم، ولتحدين موضوع الرسالة والنص الأساسي لها،
من صفحة النظرة العامة لمورد Azure Communication Service المقدم، انقر فوق Try Email على لوحة التنقل اليسرى ضمن Email.
حدد أحد المجالات التي تم التحقق منها من القائمة المنسدلة.
إنشاء البريد الإلكتروني لإرساله
- إدخال عنوان البريد الإلكتروني للمستلم
- إدخال الموضوع
- كتابة نص البريد الإلكتروني
انقر فوق إرسال
تم إرسال البريد الإلكتروني بنجاح.
يمكنك الآن أيضا نسخ نموذج مقتطف التعليمات البرمجية لإرسال بريد إلكتروني لاستخدامه في نموذج المشروع لإرسال إعلامات.
مقتطف رمز البريد الإلكتروني جاهز الآن للاستخدام في مشروع الإعلام الخاص بك.
ابدأ باستخدام Azure Communication Services باستخدام ملحق اتصال Azure CLI لإرسال رسائل البريد الإلكتروني.
إن إكمال هذه البداية السريعة يتكبد تكلفة بسيطة تبلغ بضعة سنتات من دولارات الولايات المتحدة أو أقل في حسابك في Azure.
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- تم إنشاء مورد Azure Email Communication Services وجاهز لمجال مزود. ابدأ بإنشاء مورد اتصال البريد الإلكتروني.
- مورد Azure Communication Services نشط متصل بمجال بريد إلكتروني سلسلة الاتصال الخاص به. ابدأ عن طريق توصيل مورد اتصال البريد الإلكتروني بمورد اتصال Azure.
- أحدث إصدار من Azure CLI.
التحقق من المتطلبات الأساسية
- في نافذة طرفية أو نافذة أوامر، قم بتشغيل
az --version
الأمر للتحقق من تثبيت Azure CLI وملحق الاتصال. - لعرض المجالات التي تم التحقق منها باستخدام مورد خدمات اتصالات البريد الإلكتروني، سجل الدخول إلى مدخل Microsoft Azure. حدد موقع مورد خدمات اتصالات البريد الإلكتروني وافتح علامة التبويب Provision domains من جزء التنقل الأيمن.
الإعداد
إضافة الملحق
أضف ملحق Azure Communication Services ل Azure CLI باستخدام az extension
الأمر .
az extension add --name communication
تسجيل الدخول إلى واجهة سطر الأوامر Azure
تحتاج إلى تسجيل الدخول إلى Azure CLI. يمكنك تسجيل الدخول لتشغيل az login
الأمر من المحطة الطرفية وتوفير بيانات الاعتماد الخاصة بك.
تخزين سلسلة الاتصال في متغير بيئة
يمكنك تكوين AZURE_COMMUNICATION_CONNECTION_STRING
متغير البيئة لاستخدام عمليات مفاتيح Azure CLI دون الحاجة إلى استخدام --connection_string
لتمرير سلسلة الاتصال. لتكوين متغير بيئة، افتح إطار وحدة التحكم وحدد نظام التشغيل من علامات التبويب أدناه. استبدل <connectionString>
بسلسلة الاتصال الفعلية الخاصة بك.
إشعار
لا تخزن سلسلة الاتصال كمتغير بيئة غير مشفر لبيئات الإنتاج. هذا مخصص لأغراض الاختبار فقط. بالنسبة لبيئات الإنتاج، يجب إنشاء سلسلة الاتصال جديدة. نحن نشجعك على تشفير سلسلة الاتصال وتغييرها بانتظام.
setx AZURE_COMMUNICATION_CONNECTION_STRING "<yourConnectionString>"
بعد إضافة متغير البيئة، قد تحتاج إلى إعادة تشغيل أي برامج قيد التشغيل ستحتاج إلى قراءة متغير البيئة، بما في ذلك إطار وحدة التحكم. على سبيل المثال، إذا كنت تستخدم Visual Studio كمحرر، فعد تشغيل Visual Studio قبل تشغيل المثال.
إرسال رسالة بريد إلكتروني
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."
قم بإجراء هذه الاستبدالات في التعليمات البرمجية:
- استبدل
<yourConnectionString>
سلسلة الاتصال الخاص بك. - استبدل
<emailalias@emaildomain.com>
بعنوان البريد الإلكتروني الذي ترغب في إرسال رسالة إليه. - استبدل
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
بعنوان MailFrom للمجال الذي تم التحقق منه.
يقوم الأمر أعلاه أيضا بإجراء استقصاء على messageId وإرجاع حالة تسليم البريد الإلكتروني. يمكن أن تكون الحالة أحد ما يلي:
اسم الحالة | الوصف |
---|---|
لم يتم البدء | لن نرسل هذه الحالة من خدمتنا في الوقت الحالي. |
قيد التشغيل | عملية إرسال البريد الإلكتروني قيد التقدم حاليا ويتم معالجتها. |
نجح | اكتملت عملية إرسال البريد الإلكتروني دون خطأ وخرج البريد الإلكتروني للتسليم. يمكن الحصول على أي حالة مفصلة حول تسليم البريد الإلكتروني خارج هذه المرحلة إما من خلال Azure Monitor أو من خلال Azure Event Grid. تعرف على كيفية الاشتراك في أحداث البريد الإلكتروني |
فشل | لم تنجح عملية إرسال البريد الإلكتروني وواجهت خطأ. لم يتم إرسال البريد الإلكتروني. تحتوي النتيجة على كائن خطأ مع مزيد من التفاصيل حول سبب الفشل. |
تتمثل المعلمات الاختيارية في الآتي
تتوفر المعلمات الاختيارية التالية في Azure CLI.
--html
يمكن استخدامها بدلا من--text
نص البريد الإلكتروني html.--importance
تعيين نوع الأهمية للبريد الإلكتروني. القيم المعروفة هي: عالية وطبيعية ومنخفضة. الإعداد الافتراضي طبيعي.--to
تعيين قائمة مستلمي البريد الإلكتروني.--cc
تعيين عناوين البريد الإلكتروني للنسخ الكربوني.--bcc
تعيين عناوين البريد الإلكتروني للنسخة المخفية.--reply-to
تعيين عنوان البريد الإلكتروني للرد على.--disable-tracking
يشير إلى ما إذا كان يجب تعطيل تعقب مشاركة المستخدم لهذا الطلب.--attachments
تعيين قائمة مرفقات البريد الإلكتروني.--attachment-types
تعيين قائمة أنواع مرفقات البريد الإلكتروني، بترتيب المرفقات نفسه.
يمكنك أيضا استخدام قائمة بالمستلمين مع --cc
و --bcc
مشابهة ل --to
. يجب أن يكون هناك مستلم واحد على الأقل في --to
أو --cc
.--bcc
ابدأ مع Azure Communication Services باستخدام مكتبة عميل خدمات الاتصالات C# EMAIL لإرسال رسائل البريد الإلكتروني.
تلميح
ابدأ تجربة إرسال البريد الإلكتروني باستخدام Azure Communication Services عن طريق التخطي مباشرة إلى نموذج التعليمات البرمجية إرسال البريد الإلكتروني الأساسي وإرسال البريد الإلكتروني المتقدم على GitHub.
فهم نموذج كائن البريد الإلكتروني
تتعامل الفصول والواجهات التالية مع بعض الميزات الرئيسية لمكتبة Azure Communication Services Email Client لـ C#.
Name | الوصف |
---|---|
EmailAddress | يحتوي هذا الفصل على عنوان بريد إلكتروني وخيار لاسم عرض. |
عنوان البريد الإلكتروني | تنشئ هذه الفئة مرفق بريد إلكتروني بقبول معرف فريد، وسلسلة نوع MIME لمرفق البريد الإلكتروني، وبيانات ثنائية للمحتوى، ومعرف محتوى اختياري لتعريفه كمرفق مضمن. |
البريد الإلكتروني للعميل | هذا الفصل مطلوب لجميع وظائف البريد الإلكتروني. تقوم بتشغيله مع سلسلة الاتصال خاصتك واستخدامه لإرسال رسائل البريد الإلكتروني. |
خيارات البريد الإلكتروني للعميل | يمكن إضافة هذا الفصل إلى مثيل EmailClient لاستهداف إصدار API محدد. |
محتوى البريد الإلكتروني | يحتوي هذا الفصل على موضوع وجوهر رسالة البريد الإلكتروني. يجب عليك تحديد محتوى واحد على الأقل من محتوى PlainText أو Html |
EmailCustomHeader | تسمح هذه الفئة بإضافة اسم وزوج قيمة لعنوان مخصص. يمكن أيضا تحديد أهمية البريد الإلكتروني من خلال هذه العناوين باستخدام اسم العنوان "x-priority" أو "x-msmail-priority" |
رسالة بريد إلكتروني | تجمع هذه الفئة بين المرسل والمحتوى والمستلمين. يمكن إضافة عناوين مخصصة ومرفقات والرد على عناوين البريد الإلكتروني اختياريًا أيضًا. |
مراسلو البريد الإلكتروني | تحتوي هذه الفئة على قوائم عناصر EmailAddress لمستلمي رسالة البريد الإلكتروني، بما في ذلك القوائم الاختيارية لمستلمي CC وBCC. |
EmailSendOperation | تمثل هذه الفئة عملية إرسال البريد الإلكتروني غير المتزامنة ويتم إرجاعها من مكالمة api لإرسال البريد الإلكتروني. |
EmailSendResult | تحتوي هذه الفئة على نتائج عملية إرسال البريد الإلكتروني. يحتوي على معرف العملية وحالة العملية وعنصر الخطأ (عند الاقتضاء). |
تقوم EmailSendResult بإرجاع الحالة التالية على عملية البريد الإلكتروني التي تم تنفيذها.
الحالة | الوصف |
---|---|
لم يتم البدء | لن نرسل هذه الحالة من خدمتنا في الوقت الحالي. |
قيد التشغيل | عملية إرسال البريد الإلكتروني قيد التقدم حاليا ويتم معالجتها. |
نجح | اكتملت عملية إرسال البريد الإلكتروني دون خطأ وخرج البريد الإلكتروني للتسليم. يمكن الحصول على أي حالة مفصلة حول تسليم البريد الإلكتروني خارج هذه المرحلة إما من خلال Azure Monitor أو من خلال Azure Event Grid. تعرف على كيفية الاشتراك في أحداث البريد الإلكتروني |
فشل | لم تنجح عملية إرسال البريد الإلكتروني وواجهت خطأ. لم يتم إرسال البريد الإلكتروني. تحتوي النتيجة على كائن خطأ مع مزيد من التفاصيل حول سبب الفشل. |
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- أحدث إصدار .NET Core client library لنظام التشغيل.
- مورد خدمات اتصالات البريد الإلكتروني Azure تم إنشاؤه وجاهز مع نطاق مخصص ابدأ بإنشاء مورد اتصالات البريد الإلكتروني
- مورد خدمات اتصال نشط متصل بنطاق البريد الإلكتروني وسلسلة اتصال. ابدأ بربط مورد البريد الإلكتروني بمورد الاتصال
إن إكمال هذه البداية السريعة يتكبد تكلفة بسيطة تبلغ بضعة سنتات من دولارات الولايات المتحدة أو أقل في حسابك في Azure.
إشعار
يمكننا أيضا إرسال بريد إلكتروني من مجالنا الذي تم التحقق منه. إضافة مجالات تم التحقق منها مخصصة إلى خدمة اتصالات البريد الإلكتروني.
التحقق من المتطلبات الأساسية
- في النافذة الطرفية أو نافذة الأوامر، قم بتشغيل
dotnet
الأمر للتحقق من تثبيت NET client library. - لعرض أرقام الهواتف المقترنة بمورد Communication Services، سجل الدخول إلى مدخل Microsoft Azure، وحدد موقع مورد Communication Services وافتح علامة التبويب أرقام الهواتف من جزء التنقل الأيسر.
إنشاء تطبيق C# جديد
في نافذة وحدة تحكم (مثل cmd أو PowerShell أو Bash)، استخدم الأمر dotnet new
لإنشاء تطبيق وحدة تحكم جديد بالاسم EmailQuickstart
. هذا الأمر ينشئ مشروع "مرحباً بالعالم" بسيطاً بلغة #C باستخدام ملف مصدر واحد: Program.cs.
dotnet new console -o EmailQuickstart
قم بتغيير الدليل الخاص بك إلى مجلد التطبيق الذي تم إنشاؤه حديثًا، واستخدم الأمر dotnet build
للتحويل البرمجي لتطبيقك.
cd EmailQuickstart
dotnet build
تثبيت الحزمة
أثناء وجودك في دليل التطبيق، قم بتثبيت مكتبة عميل Azure Communication Services EMAIL لحزمة .NET باستخدام الأمر dotnet add package
.
dotnet add package Azure.Communication.Email
إنشاء عميل البريد الإلكتروني مع المصادقة
افتح Program.cs واستبدل الرمز الحالي بما يلي لإضافة using
توجيهات لتضمين Azure.Communication.Email
مساحة الاسم ونقطة انطلاق لتنفيذ برنامجك.
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)
{
}
}
}
هناك بعض الخيارات المختلفة المتاحة لمصادقة عميل البريد الإلكتروني:
افتح Program.cs في محرر النصوص، واستبدل نص الأسلوب Main
مع التعليمات البرمجية لتهيئة EmailClient
مع سلسلة الاتصال. تسترد التعليمات البرمجية التالية سلسلة الاتصال للمورد من متغير بيئة يسمى COMMUNICATION_SERVICES_CONNECTION_STRING
. تعرف على كيفية إدارة سلسلة اتصال الموارد خاصتك.
// 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);
إشعار
من المستحسن استخدام الاستقصاء اليدوي (إرسال بريد إلكتروني مع التحقق من الحالة غير المتزامنة) لإرسال البريد الإلكتروني.
- إرسال بريد إلكتروني مع التحقق من الحالة غير المتزامنة
- إرسال بريد إلكتروني مع التحقق من الحالة المتزامنة
إرسال البريد الإلكتروني الأساسي
إنشاء رسالة بريدك الإلكتروني
لإرسال رسالة بريد إلكتروني، تحتاج إلى:
- حدد موضوع البريد الإلكتروني والنص الأساسي.
- حدد عنوان المرسل. أنشئ رسالة بريدك الإلكتروني باستخدام معلومات المرسل التي تحصل عليها من عنوان MailFrom من نطاقك الذي تم التحقق منه.
- حدد عنوان المستلم.
- استدعاء الأسلوب SendAsync. أضف هذه التعليمات البرمجية إلى نهاية الأسلوب
Main
في Program.cs:
استبدل بتفاصيل نطاقك وقم بتعديل المحتوى وتفاصيل المستلم كما هو مطلوب
//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";
إرسال حالة إرسال البريد الإلكتروني والحصول عليها
عند استدعاء SendAsync مع Azure.WaitUntil.Started، يعود الأسلوب الخاص بك مرة أخرى بعد بدء العملية. يقوم الأسلوب بإرجاع كائن EmailSendOperation. يمكنك استدعاء أسلوب UpdateStatusAsync لتحديث حالة عملية البريد الإلكتروني.
يحتوي كائن EmailSendOperation الذي تم إرجاعه على كائن EmailSendStatus الذي يحتوي على:
- الحالة الحالية لعملية إرسال البريد الإلكتروني.
- كائن خطأ مع تفاصيل الفشل إذا كانت الحالة الحالية في حالة فشل.
/// 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}");
شغّل التطبيق من دليل تطبيقك باستخدام الأمر dotnet run
.
dotnet run
التعليمة البرمجية العينة
يمكنك تنزيل نموذج التطبيق من GitHub
ابدأ مع Azure Communication Services باستخدام مكتبة عميل البريد الإلكتروني لخدمات الاتصال من JS لإرسال رسائل البريد الإلكتروني.
تلميح
ابدأ تجربة إرسال البريد الإلكتروني باستخدام Azure Communication Services عن طريق التخطي مباشرة إلى نموذج التعليمات البرمجية إرسال البريد الإلكتروني الأساسي وإرسال البريد الإلكتروني المتقدم على GitHub.
فهم نموذج كائن البريد الإلكتروني
تتعامل الفصول والواجهات التالية مع بعض الميزات الرئيسية لمكتبة Azure Communication Services Email Client لـ JavaScript.
Name | الوصف |
---|---|
EmailAddress | يحتوي هذا الفصل على عنوان بريد إلكتروني وخيار لاسم عرض. |
عنوان البريد الإلكتروني | تنشئ هذه الفئة مرفق بريد إلكتروني بقبول معرف فريد، وسلسلة نوع MIME لمرفق البريد الإلكتروني، وبيانات ثنائية للمحتوى، ومعرف محتوى اختياري لتعريفه كمرفق مضمن. |
البريد الإلكتروني للعميل | هذا الفصل مطلوب لجميع وظائف البريد الإلكتروني. تقوم بتشغيله مع سلسلة الاتصال خاصتك واستخدامه لإرسال رسائل البريد الإلكتروني. |
خيارات البريد الإلكتروني للعميل | يمكن إضافة هذا الفصل إلى مثيل EmailClient لاستهداف إصدار API محدد. |
محتوى البريد الإلكتروني | يحتوي هذا الفصل على موضوع وجوهر رسالة البريد الإلكتروني. يجب عليك تحديد محتوى واحد على الأقل من محتوى PlainText أو Html. |
EmailCustomHeader | تسمح هذه الفئة بإضافة اسم وزوج قيمة لعنوان مخصص. يمكن أيضا تحديد أهمية البريد الإلكتروني من خلال هذه الرؤوس باستخدام اسم العنوان 'x-priority' أو 'x-msmail-priority'. |
رسالة بريد إلكتروني | تجمع هذه الفئة بين المرسل والمحتوى والمستلمين. يمكن إضافة عناوين مخصصة ومرفقات والرد على عناوين البريد الإلكتروني اختياريًا أيضًا. |
مراسلو البريد الإلكتروني | تحتوي هذه الفئة على قوائم عناصر EmailAddress لمستلمي رسالة البريد الإلكتروني، بما في ذلك القوائم الاختيارية لمستلمي CC وBCC. |
EmailSendResult | تحتوي هذه الفئة على نتائج عملية إرسال البريد الإلكتروني. يحتوي على معرف العملية وحالة العملية وعنصر الخطأ (عند الاقتضاء). |
EmailSendStatus | تمثل هذه الفئة مجموعة حالات عملية إرسال بريد إلكتروني. |
تقوم EmailSendResult بإرجاع الحالة التالية على عملية البريد الإلكتروني التي تم تنفيذها.
اسم الحالة | الوصف |
---|---|
تم البدء | إرجاع القيمة true إذا كانت عملية إرسال البريد الإلكتروني قيد التقدم حاليا ويتم معالجتها. |
تم الإكمال | إرجاع القيمة true إذا اكتملت عملية إرسال البريد الإلكتروني دون خطأ وكان البريد الإلكتروني خارج التسليم. يمكن الحصول على أي حالة مفصلة حول تسليم البريد الإلكتروني خارج هذه المرحلة إما من خلال Azure Monitor أو من خلال Azure Event Grid. تعرف على كيفية الاشتراك في أحداث البريد الإلكتروني |
نتيجة | الخاصية الموجودة إذا انتهت عملية إرسال البريد الإلكتروني. |
خطأ | الخاصية الموجودة إذا لم تكن عملية إرسال البريد الإلكتروني ناجحة وواجهت خطأ. لم يتم إرسال البريد الإلكتروني. تحتوي النتيجة على كائن خطأ مع مزيد من التفاصيل حول سبب الفشل. |
المتطلبات الأساسية
- Node.js (~14).
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- تم إنشاء مورد Azure Email Communication Services وجاهز لمجال مزود. ابدأ بإنشاء مورد اتصال البريد الإلكتروني.
- مورد Azure Communication Services نشط متصل بمجال بريد إلكتروني سلسلة الاتصال الخاص به. ابدأ عن طريق توصيل مورد اتصال البريد الإلكتروني بمورد اتصال Azure.
إن إكمال هذه البداية السريعة يتكبد تكلفة بسيطة تبلغ بضعة سنتات من دولارات الولايات المتحدة أو أقل في حسابك في Azure.
إشعار
يمكننا أيضا إرسال بريد إلكتروني من مجالنا الذي تم التحقق منه. إضافة مجالات تم التحقق منها مخصصة إلى خدمة اتصالات البريد الإلكتروني.
التحقق من المتطلبات الأساسية
- في نافذة طرفية أو نافذة أوامر، قم بتشغيل
node --version
للتحقق من تثبيت Node.js. - لعرض أرقام الهواتف المقترنة بمورد Communication Services، سجل الدخول إلى مدخل Microsoft Azure، وحدد موقع مورد Communication Services وافتح علامة التبويب أرقام الهواتف من جزء التنقل الأيسر.
إعداد بيئة التطبيق
إنشاء تطبيق Node.js جديد
أولًا، افتح نافذة طرفية أو نافذة الأوامر الخاصة بك، وأنشئ دليلاً جديدًا لتطبيقك، وانتقل إليه.
mkdir email-quickstart && cd email-quickstart
قم بتشغيل npm init -y
لإنشاء ملف package.json بالإعدادات الافتراضية.
npm init -y
استخدم محرر نصوص لإنشاء ملف يسمى send-email.js في دليل جذر المشروع. غيّر الخاصية "main" في package.json إلى "send-email.js". يوضح القسم التالي كيفية إضافة التعليمات البرمجية المصدر لهذا التشغيل السريع إلى الملف الذي تم إنشاؤه حديثا.
تثبيت الحزمة
استخدم الأمر npm install
لتثبيت مكتبة عميل البريد الإلكتروني لخدمات الاتصالات Azure لـ JavaScript.
npm install @azure/communication-email --save
يسرد الخيار --save
المكتبة كتبعية في ملف package.json.
إنشاء عميل البريد الإلكتروني مع المصادقة
هناك بعض الخيارات المختلفة المتاحة لمصادقة عميل البريد الإلكتروني:
قم باستيراد عميلالبريد الإلكتروني من مكتبة العميل وقم بتثبيته مع سلسلة الاتصال خاصتك.
تسترد التعليمات البرمجية التالية سلسلة الاتصال للمورد من متغير بيئة يسمى COMMUNICATION_SERVICES_CONNECTION_STRING
باستخدام حزمة dotenv. استخدم الأمر npm install
لتثبيت حزمة dotenv. تعرف على كيفية إدارة سلسلة اتصال الموارد خاصتك.
npm install dotenv
أضف التعليمات البرمجية التالية إلى 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);
للتبسيط، يستخدم هذا التشغيل السريع سلسلة الاتصال، ولكن في بيئات الإنتاج، نوصي باستخدام كيانات الخدمة.
إرسال البريد الإلكتروني الأساسي
إرسال رسالة بريد إلكتروني
لإرسال رسالة بريد إلكتروني، اتصل بالدالة beginSend
من EmailClient. يقوم هذا الأسلوب بإرجاع الاستقصاء الذي يتحقق من حالة العملية ويسترد النتيجة بمجرد الانتهاء منها.
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();
قم بإجراء هذه الاستبدالات في التعليمات البرمجية:
- استبدل
<emailalias@emaildomain.com>
بعنوان البريد الإلكتروني الذي ترغب في إرسال رسالة إليه. - استبدل
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
بعنوان MailFrom للمجال الذي تم التحقق منه.
تشغيل التعليمات البرمجية
استخدم أمر العقدة لتشغيل التعليمات البرمجية التي أضفتها إلى ملف send-email.js
node ./send-email.js
التعليمة البرمجية العينة
يمكنك تنزيل نموذج التطبيق من GitHub
ابدأ مع Azure Communication Services باستخدام Communication Services Java Email SDK لإرسال رسائل البريد الإلكتروني.
تلميح
ابدأ تجربة إرسال البريد الإلكتروني باستخدام Azure Communication Services عن طريق التخطي مباشرة إلى نموذج التعليمات البرمجية إرسال البريد الإلكتروني الأساسي وإرسال البريد الإلكتروني المتقدم على GitHub.
فهم نموذج كائن البريد الإلكتروني
تتعامل الفئات والواجهات التالية مع بعض الميزات الرئيسية ل Azure Communication Services Email SDK ل Python.
Name | الوصف |
---|---|
EmailAddress | يحتوي هذا الفصل على عنوان بريد إلكتروني وخيار لاسم عرض. |
عنوان البريد الإلكتروني | تنشئ هذه الواجهة مرفق بريد إلكتروني بقبول معرف فريد، وسلسلة نوع MIME لمرفق البريد الإلكتروني، وسلسلة من بايت المحتوى، ومعرف محتوى اختياري لتعريفه كمرفق مضمن. |
البريد الإلكتروني للعميل | هذا الفصل مطلوب لجميع وظائف البريد الإلكتروني. تقوم بتشغيله مع سلسلة الاتصال خاصتك واستخدامه لإرسال رسائل البريد الإلكتروني. |
رسالة بريد إلكتروني | تجمع هذه الفئة بين المرسل والمحتوى والمستلمين. يمكن إضافة عناوين مخصصة ومرفقات والرد على عناوين البريد الإلكتروني اختياريًا أيضًا. |
EmailSendResult | تحتوي هذه الفئة على نتائج عملية إرسال البريد الإلكتروني. يحتوي على معرف العملية وحالة العملية وعنصر الخطأ (عند الاقتضاء). |
EmailSendStatus | تمثل هذه الفئة مجموعة حالات عملية إرسال بريد إلكتروني. |
تقوم EmailSendResult بإرجاع الحالة التالية على عملية البريد الإلكتروني التي تم تنفيذها.
اسم الحالة | الوصف |
---|---|
NOT_STARTED | لن نرسل هذه الحالة من خدمتنا في الوقت الحالي. |
قيد التنفيذ | عملية إرسال البريد الإلكتروني قيد التقدم حاليا ويتم معالجتها. |
SUCCESSFULLY_COMPLETED | اكتملت عملية إرسال البريد الإلكتروني دون خطأ وخرج البريد الإلكتروني للتسليم. يمكن الحصول على أي حالة مفصلة حول تسليم البريد الإلكتروني خارج هذه المرحلة إما من خلال Azure Monitor أو من خلال Azure Event Grid. تعرف على كيفية الاشتراك في أحداث البريد الإلكتروني |
فشل | لم تنجح عملية إرسال البريد الإلكتروني وواجهت خطأ. لم يتم إرسال البريد الإلكتروني. تحتوي النتيجة على كائن خطأ مع مزيد من التفاصيل حول سبب الفشل. |
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- Java Development Kit (SDK) الإصدار 8 أو أحدث.
- Apache Maven.
- سلسلة اتصال ومورد خدمات اتصالات تم نشرها. للحصول على التفاصيل، راجع إنشاء مورد Communication Services.
- إنشاء مورد Azure Email Communication Services لبدء إرسال رسائل البريد الإلكتروني.
- إعداد هوية مدارة لبيئة تطوير، راجع تخويل الوصول باستخدام الهوية المدارة.
يتطلب إكمال هذا التشغيل السريع تكلفة صغيرة تبلغ بضعة سنتات أمريكية أو أقل في حساب Azure الخاص بك.
إشعار
يمكننا أيضا إرسال بريد إلكتروني من مجالنا الذي تم التحقق منه إضافة مجالات تم التحقق منها مخصصة إلى خدمة اتصالات البريد الإلكتروني.
التحقق من المتطلبات الأساسية
- في نافذة طرفية أو نافذة أوامر، قم بتشغيل
mvn -v
للتحقق من تثبيت Maven. - لعرض المجالات التي تم التحقق منها باستخدام مورد خدمات اتصالات البريد الإلكتروني، سجل الدخول إلى مدخل Microsoft Azure. حدد موقع مورد خدمات اتصالات البريد الإلكتروني وافتح علامة التبويب Provision domains من جزء التنقل الأيمن.
إعداد بيئة التطبيق
لإعداد بيئة لإرسال رسائل البريد الإلكتروني، اتبع الخطوات الواردة في الأقسام التالية.
إنشاء تطبيق Java جديد
افتح نافذة الأوامر أو terminal وانتقل إلى الدليل حيث ترغب في إنشاء تطبيق Java خاصتك. قم بتشغيل الأمر التالي لإنشاء مشروع Java من قالب 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"
ينشئ generate
الهدف دليلا بنفس اسم artifactId
القيمة. ضمن هذا الدليل، يحتوي الدليل src/main/java على التعليمات البرمجية لمصدر المشروع، ويحتوي الدليل src/test/java على مصدر الاختبار، والملف pom.xml هو نموذج كائن المشروع (POM).
تثبيت الحزمة
افتح ملف pom.xml في محرر النص. أضف عنصر التبعية التالي إلى مجموعة التبعيات.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-communication-email</artifactId>
<version>1.0.0-beta.2</version>
</dependency>
إعداد إطار عمل التطبيق
افتح /src/main/java/com/communication/quickstart/App.java في محرر نصوص، وأضف توجيهات الاستيراد، وأزل العبارة System.out.println("Hello world!");
:
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.
}
}
إنشاء عميل البريد الإلكتروني مع المصادقة
هناك بعض الخيارات المختلفة المتاحة لمصادقة عميل بريد إلكتروني.
لمصادقة عميل، يمكنك إنشاء EmailClient
مثيل مع سلسلة الاتصال. تعرف على كيفية إدارة سلسلة اتصال الموارد خاصتك. يمكنك أيضا تهيئة العميل مع أي عميل HTTP مخصص ينفذ الواجهة com.azure.core.http.HttpClient
.
لإنشاء مثيل عميل متزامن، أضف التعليمات البرمجية 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>";
EmailClient emailClient = new EmailClientBuilder()
.connectionString(connectionString)
.buildClient();
لإنشاء مثيل عميل غير متزامن، أضف التعليمات البرمجية 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();
للتبسيط، يستخدم هذا التشغيل السريع سلسلة الاتصال، ولكن في بيئات الإنتاج، نوصي باستخدام كيانات الخدمة.
إرسال البريد الإلكتروني الأساسي
يمكن صياغة رسالة بريد إلكتروني باستخدام EmailMessage
العنصر في 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.");
قم بإجراء هذه الاستبدالات في التعليمات البرمجية:
- استبدل
<emailalias@emaildomain.com>
بعنوان البريد الإلكتروني الذي ترغب في إرسال رسالة إليه. - استبدل
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
بعنوان MailFrom للمجال الذي تم التحقق منه.
لإرسال رسالة البريد الإلكتروني، اتصل بالدالة beginSend
من EmailClient
.
يؤدي استدعاء beginSend
عميل المزامنة إلى إرجاع كائن SyncPoller
، والذي يمكن استخدامه للتحقق من حالة العملية واسترداد النتيجة بمجرد الانتهاء منها. لاحظ أنه سيتم إرسال الطلب الأولي لإرسال بريد إلكتروني بمجرد beginSend
استدعاء الأسلوب. يعد إرسال رسالة بريد إلكتروني عملية طويلة الأمد. من المهم ملاحظة أن الأسلوب على getFinalResult()
الاستقصاء هو عملية حظر حتى يتم الوصول إلى حالة طرفية (SUCCESSFULLY_COMPLETED
أو FAILED
). الطريقة الموصى بها هي إجراء الاستقصاء اليدوي في فاصل زمني مناسب لاحتياجات التطبيق الخاص بك كما هو موضح في العينة أدناه.
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();
System.out.println("Email send poller status: " + pollResponse.getStatus());
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());
}
تشغيل التعليمات البرمجية
انتقل إلى الدليل الذي يحتوي على ملف pom.xml وقم بتحويل المشروع برمجيا باستخدام
mvn
الأمر .mvn compile
إنشاء الحزمة.
mvn package
قم بتشغيل الأمر التالي
mvn
لتنفيذ التطبيق.mvn exec:java -D"exec.mainClass"="com.communication.quickstart.App" -D"exec.cleanupDaemonThreads"="false"
التعليمة البرمجية العينة
يمكنك تنزيل نموذج التطبيق من GitHub
ابدأ مع Azure Communication Services باستخدام Communication Services Python Email SDK لإرسال رسائل البريد الإلكتروني.
تلميح
ابدأ تجربة إرسال البريد الإلكتروني باستخدام Azure Communication Services عن طريق التخطي مباشرة إلى نموذج التعليمات البرمجية إرسال البريد الإلكتروني الأساسي وإرسال البريد الإلكتروني المتقدم على GitHub.
فهم نموذج كائن البريد الإلكتروني
يوضح قالب رسالة JSON التالي كائن الاستجابة بعض الميزات الرئيسية ل Azure Communication Services Email SDK ل 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.
}
}
response.status
يتم شرح القيم بشكل أكبر في الجدول التالي.
اسم الحالة | الوصف |
---|---|
قيد التقدم | عملية إرسال البريد الإلكتروني قيد التقدم حاليا ويتم معالجتها. |
نجح | اكتملت عملية إرسال البريد الإلكتروني دون خطأ وخرج البريد الإلكتروني للتسليم. يمكن الحصول على أي حالة مفصلة حول تسليم البريد الإلكتروني خارج هذه المرحلة إما من خلال Azure Monitor أو من خلال Azure Event Grid. تعرف على كيفية الاشتراك في أحداث البريد الإلكتروني |
فشل | لم تنجح عملية إرسال البريد الإلكتروني وواجهت خطأ. لم يتم إرسال البريد الإلكتروني. تحتوي النتيجة على كائن خطأ مع مزيد من التفاصيل حول سبب الفشل. |
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- Python 3.7+.
- تم إنشاء مورد Azure Email Communication Services وجاهز لمجال مزود. ابدأ بإنشاء مورد اتصال البريد الإلكتروني.
- مورد Azure Communication Services نشط متصل بمجال بريد إلكتروني سلسلة الاتصال الخاص به. ابدأ عن طريق توصيل مورد اتصال البريد الإلكتروني بمورد اتصال Azure.
إن إكمال هذه البداية السريعة يتكبد تكلفة بسيطة تبلغ بضعة سنتات من دولارات الولايات المتحدة أو أقل في حسابك في Azure.
إشعار
يمكننا أيضا إرسال بريد إلكتروني من مجالنا الذي تم التحقق منه. إضافة مجالات تم التحقق منها مخصصة إلى خدمة اتصالات البريد الإلكتروني.
التحقق من المتطلبات الأساسية
- في نافذة طرفية أو نافذة أوامر، قم بتشغيل
python --version
الأمر للتحقق من تثبيت Python. - لعرض المجالات التي تم التحقق منها باستخدام مورد خدمات اتصالات البريد الإلكتروني، سجل الدخول إلى مدخل Microsoft Azure. حدد موقع مورد خدمات اتصالات البريد الإلكتروني وافتح علامة التبويب Provision domains من جزء التنقل الأيمن.
إعداد بيئة التطبيق
لإعداد بيئة لإرسال رسائل البريد الإلكتروني، اتبع الخطوات الواردة في الأقسام التالية.
إنشاء تطبيق Python جديد
افتح نافذة المحطة الطرفية أو نافذة الأوامر. ثم استخدم الأمر التالي لإنشاء بيئة ظاهرية وتنشيطها. ينشئ هذا الأمر دليلا جديدا لتطبيقك.
python -m venv email-quickstart
انتقل إلى الدليل الجذر للبيئة الظاهرية وقم بتنشيطه باستخدام الأوامر التالية.
cd email-quickstart .\Scripts\activate
استخدم محرر نص لإنشاء ملف يسمى send-email.py في الدليل الجذر للمشروع وإضافة بنية البرنامج، بما في ذلك معالجة الاستثناءات الأساسية.
import os from azure.communication.email import EmailClient try: # Quickstart code goes here. except Exception as ex: print('Exception:') print(ex)
في الأقسام التالية، يمكنك إضافة كافة التعليمات البرمجية المصدر لهذا التشغيل السريع إلى ملف send-email.py الذي قمت بإنشائه.
تثبيت الحزمة
أثناء وجودك في دليل التطبيق، قم بتثبيت Azure Communication Services Email SDK لحزمة Python باستخدام الأمر التالي.
pip install azure-communication-email
إنشاء عميل البريد الإلكتروني مع المصادقة
هناك بعض الخيارات المختلفة المتاحة لمصادقة عميل البريد الإلكتروني:
إنشاء مثيل EmailClient باستخدام سلسلة الاتصال. تعرف على كيفية إدارة سلسلة اتصال الموارد خاصتك.
# Create the EmailClient object that you use to send Email messages.
email_client = EmailClient.from_connection_string(<connection_string>)
للتبسيط، يستخدم هذا التشغيل السريع سلسلة الاتصال، ولكن في بيئات الإنتاج، نوصي باستخدام كيانات الخدمة.
إرسال البريد الإلكتروني الأساسي
إرسال رسالة بريد إلكتروني
لإرسال رسالة بريد إلكتروني، تحتاج إلى:
- إنشاء الرسالة بالقيم التالية:
senderAddress
: عنوان بريد إلكتروني صالح للمرسل، موجود في الحقل MailFrom في جزء النظرة العامة للمجال المرتبط بمورد خدمات اتصال البريد الإلكتروني.recipients
: كائن يحتوي على قائمة بمستلمي البريد الإلكتروني، واختياريا، قوائم مستلمي البريد الإلكتروني CC وBCC.content
: كائن يحتوي على الموضوع، ومحتوى النص العادي أو HTML اختياريا، لرسالة بريد إلكتروني.
- استدعاء أسلوب begin_send الذي يرجع نتيجة العملية.
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())
قم بإجراء هذه الاستبدالات في التعليمات البرمجية:
- استبدل
<emailalias@emaildomain.com>
بعنوان البريد الإلكتروني الذي ترغب في إرسال رسالة إليه. - استبدل
<donotreply@xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.azurecomm.net>
بعنوان MailFrom للمجال الذي تم التحقق منه.
الحصول على حالة تسليم البريد الإلكتروني
يمكننا الاستقصاء عن حالة تسليم البريد الإلكتروني عن طريق تعيين حلقة على كائن حالة العملية التي تم إرجاعها من أسلوب 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)
تشغيل التعليمات البرمجية
شغّل التطبيق من دليل تطبيقك باستخدام الأمر python
.
python send-email.py
التعليمة البرمجية العينة
يمكنك تنزيل نموذج التطبيق من GitHub
المتطلبات الأساسية
حساب Azure باشتراك نشط - أنشئ حساب Azure مجانًا
مورد خدمات اتصالات Azure نشط، أو قم بإنشاء مورد خدمات الاتصال .
مورد Azure Logic Apps نشط (تطبيق منطقي) وسير عمل، أو إنشاء مورد تطبيق منطقي جديد وسير عمل مع المشغل الذي تريد استخدامه. حاليا، يوفر موصل البريد الإلكتروني لخدمات اتصالات Azure إجراءات فقط، لذلك يتطلب سير عمل تطبيق المنطق مشغلا، كحد أدنى. يمكنك إنشاء إما مورد Consumption أو Standard logic app.
مورد بريد إلكتروني لخدمات اتصالات Azure مع مجال مكون أو مجال مخصص.
إرسال رسالة بريد إلكتروني
لإضافة خطوة جديدة إلى سير العمل باستخدام موصل البريد الإلكتروني لخدمات اتصالات Azure، اتبع الخطوات التالية:
في المصمم، افتح سير عمل تطبيق المنطق الخاص بك.
استهلاك
ضمن الخطوة حيث تريد إضافة الإجراء الجديد، حدد خطوة جديدة. بدلا من ذلك، لإضافة الإجراء الجديد بين الخطوات، حرك المؤشر فوق السهم بين هذه الخطوات، وحدد علامة الجمع (+)، وحدد إضافة إجراء.
ضمن مربع البحث Choose an operation ، حدد Premium. في مربع البحث، أدخل Azure Communication Email.
من قائمة الإجراءات، حدد إرسال بريد إلكتروني.
قياسي
ضمن الخطوة حيث تريد إضافة الإجراء الجديد، حدد علامة الجمع (+). بدلا من ذلك، لإضافة الإجراء الجديد بين الخطوات، حرك المؤشر فوق السهم بين هذه الخطوات، وحدد علامة الجمع (+)، وحدد إضافة إجراء.
ضمن مربع البحث Add an action، حدد Premium في القائمة المنسدلة وقت التشغيل. في مربع البحث، أدخل Azure Communication Email.
من قائمة الإجراءات، حدد إرسال بريد إلكتروني.
أدخل اسمًا للاتصال.
أدخل سلسلة الاتصال لمورد Azure Communications Service. للعثور على هذه السلسلة، اتبع الخطوات التالية:
عند الانتهاء، حدد إنشاء.
في الحقل من، استخدم عنوان البريد الإلكتروني الذي قمت بتكوينه في المتطلبات الأساسية. أدخل قيم الحقول إلى البريد الإلكتروني والموضوع والنص الأساسي، على سبيل المثال:
احفظ سير العمل الخاص بك. في شريط أدوات المصمم، حدد "Save".
اختبار سير العمل
استنادا إلى ما إذا كان لديك سير عمل Consumption أو Standard، ابدأ سير العمل يدويا:
- الاستهلاك: على شريط أدوات المصمم، حدد تشغيل تشغيل المشغل>.
- قياسي: في قائمة سير العمل، حدد Overview. في شريط الأدوات، حدد تشغيل تشغيل المشغل>.
ينشئ سير العمل مستخدما، ويصدر رمز وصول لهذا المستخدم، ثم يزيل المستخدم ويحذفه. يمكنك التحقق من مخرجات هذه الإجراءات بعد تشغيل سير العمل بنجاح.
يجب أن تتلقى رسالة بريد إلكتروني على العنوان المحدد. يمكنك أيضا استخدام إجراء الحصول على حالة رسالة البريد الإلكتروني للتحقق من حالة رسائل البريد الإلكتروني المرسلة من خلال إجراء إرسال بريد إلكتروني . لمزيد من الإجراءات، راجع الوثائق المرجعية لموصل البريد الإلكتروني لخدمات اتصالات Azure.
تنظيف موارد سير العمل
لتنظيف مورد تطبيق المنطق وسير العمل والموارد ذات الصلة، راجع كيفية تنظيف موارد تطبيق منطق الاستهلاك أو كيفية تنظيف موارد تطبيق المنطق القياسي.
استكشاف الأخطاء وإصلاحها
تسليم البريد الإلكتروني
لاستكشاف المشكلات المتعلقة بتسليم البريد الإلكتروني وإصلاحها، يمكنك الحصول على حالة تسليم البريد الإلكتروني لالتقاط تفاصيل التسليم.
هام
نتيجة النجاح التي تم إرجاعها عن طريق التحقق من حالة عملية الإرسال تتحقق فقط من حقيقة أن البريد الإلكتروني قد تم إرساله بنجاح للتسليم. للحصول على معلومات إضافية حول حالة التسليم على نهاية المستلم، ستحتاج إلى الرجوع إلى كيفية التعامل مع أحداث البريد الإلكتروني.
تقييد البريد الإلكتروني
إذا رأيت أن تطبيقك معلق، فقد يكون ذلك بسبب تقييد إرسال البريد الإلكتروني. يمكنك التعامل مع ذلك من خلال التسجيل أو عن طريق تنفيذ نهج مخصص.
إشعار
إعداد بيئة الاختبار المعزولة هذا لمساعدة المطورين على بدء إنشاء التطبيق. يمكنك طلب زيادة حجم الإرسال تدريجيا بمجرد أن يصبح التطبيق جاهزا للبدء. أرسل طلب دعم لرفع حد الإرسال المطلوب إذا كنت بحاجة إلى إرسال حجم رسائل يتجاوز حدود المعدل.
تنظيف موارد Azure Communication Service
لتنظيف اشتراك Communication Services وإزالته، يمكنك حذف المورد أو مجموعة الموارد. يؤدي حذف مجموعة الموارد أيضا إلى حذف أي موارد أخرى مقترنة. تعرّف على المزيد حول تنظيف الموارد.
الخطوات التالية
في هذا التشغيل السريع، تعلمت كيفية إرسال رسائل البريد الإلكتروني باستخدام Azure Communication Services. قد ترغب أيضًا في:
- تعرف على مفاهيم البريد الإلكتروني.
- تعرف على مكتبة عميل البريد الإلكتروني.
- تعرف على المزيد حول كيفية إرسال رسالة دردشة من Power Automate باستخدام Azure Communication Services.
- تعرف على المزيد حول تسجيل الوصول إلى الرموز المميزة لإنشاء وإدارة مستخدمي Azure Communication Services والرموز المميزة للوصول.