إنشاء وتحديد محتوى الرسائل البريدية
إنشاء رسالة بريد إلكتروني جديدة
تمثل فئة MailMessage رسالة بريد إلكتروني وتسمح للمطورين بإنشاء رسائل بريد جديدة. يمكن بسهولة إرفاق الخصائص الأساسية للبريد مثل From و To و Subject والجسم مع رسالة البريد التي تم إنشاؤها حديثًا. وبالمثل، يمكننا حفظ رسالة البريد في تنسيقات مختلفة مثل EML و MSG و MHTML.
- إنشاء نسخة من فئة MailMessage.
- تعيين خصائص رسالة البريد.
- احفظ رسالة البريد بتنسيقات مختلفة.
تُظهر لك قطعة الكود التالية كيفية إنشاء بريد إلكتروني جديد بخصائص مختلفة.
تحديد مستلمين متعددين
تمثل MailMessage رسالة بريد إلكتروني. تُستخدم مثيلات فئة MailMessage لإنشاء رسائل بريد تُرسل إلى خادم SMTP باستخدام فئة SmtpClient. يوضح هذا الموضوع كيفية تحديد أكثر من عنوان بريد إلكتروني. يمكن تحديد عناوين البريد باستخدام فئة MailMessage. عناوين البريد المستخدمة في فئة MailMessage هي:
- To - يمكن تحديد عناوين المستلمين في حقل "To". مستلمو حقل "To" هم الجمهور الأساسي للرسالة. يمكن أن يكون هناك أكثر من عنوان مستلم.
- Cc - الـ CC يعني "نسخة كربونية" أو "نسخة مجاملة"، ويسمح لك بإضافة مستلمين يحتاجون إلى رؤية البريد لكن لا يُتوقع منهم اتخاذ إجراء. مثال: المديرون أو أعضاء فريقك الذين يحتاجون إلى متابعة المحادثة. باستخدام Aspose.Email، يمكن تحديد عناوين CC في الكود الخاص بك. بهذه الطريقة، يمكن نسخ الرسائل التلقائية أو جميع الرسائل إلى عنوان معين إلى الأطراف المعنية.
- Bcc - نسخة مخفية (Blind Carbon Copy)، تتيح لك إرسال بريد إلكتروني إلى مستلم يكون مخفيًا عن باقي المستلمين. حيث يظهر الـ CC في معلومات البريد التي يراها المستلمون الرئيسيون، لا يظهر الـ Bcc. يُستخدم للإشعارات المخفية.
لتحديد عناوين بريد إلكتروني متعددة في رسالة بريد إلكتروني، اتبع هذه الخطوات:
- إنشاء نسخة من فئة MailMessage.
- تحديد عناوين From و To و Cc و Bcc المتعددة باستخدام نسخة MailMessage.
- إنشاء نسخة من فئة SmtpClient وإرسال البريد الإلكتروني باستخدام طريقة Send.
توضح عينة الشفرة أدناه كيفية تحديد عناوين To و CC و BCC المتعددة.
تحويل عناوين البريد إلى اسم ودّي
تُظهر عينات البرمجة أدناه كيفية تغيير عناوين البريد إلى أسماء ودية في رسالة بريد إلكتروني. الاسم الودّي هو اسم أكثر ملاءمة للإنسان من عنوان البريد، مثل John Smith بدلاً من js346@domain.com. عند إرسال بريد إلكتروني، يمكننا ربط اسم ودّي بعنوان البريد في مُنشئ فئة MailMessage.
لتغيير عناوين البريد إلى أسماء ودية في رسالة بريد إلكتروني، اتبع هذه الخطوات:
- أنشئ نسخة من فئة MailMessage وحدد عناوين البريد في حقول To و From مع الأسماء الودية.
- حدد عناوين البريد Cc و Bcc مع الأسماء الودية عن طريق استدعاء مُنشئ فئة MailMessage في نسخة MailMessage.
- إنشاء نسخة من فئة SmtpClient وإرسال البريد الإلكتروني باستخدام طريقة Send.
تُظهر الفقرة البرمجية التالية كيفية عرض الأسماء لعناوين البريد الإلكتروني.
تعيين جسم البريد
تمثل فئة MailMessage رسالة بريد إلكتروني. تُستخدم مثيلات فئة MailMessage لإنشاء رسائل تُرسل إلى خادم SMTP للتسليم باستخدام فئة SmtpClient. يمكن تحديد جسم البريد باستخدام فئة MailMessage. يمكن أن يحتوي البريد على أجسام متعددة. هناك نوعان من أجسام البريد في فئة MailMessage:
- جسم HTML
- نص الجسم
بالإضافة إلى HtmlBody و TextBody، تمتلك Aspose.Email خاصيتين أخريين للقراءة فقط تتعلقان بجسم البريد:
- IsBodyText: يخبر المستخدم ما إذا كان الجسم نصًا.
- IsBodyHtml: يخبر المستخدم ما إذا كان الجسم HTML أم نصًا عاديًا.
توضح هذه المقالة كيفية تعريف نص عادي أو نص HTML للجسم، وضبط النص البديل وترميز جسم البريد.
تعيين جسم HTML
يُستخدم HtmlBody لتحديد محتوى HTML لجسم الرسالة. يجب أن يُحاط HtmlBody بوسوم . يوضح مقطع الشيفرة التالي كيفية تعيين جسم HTML.
تعيين النص البديل
استخدم فئة AlternateView لتحديد نسخ من رسالة البريد بتنسيقات مختلفة. على سبيل المثال، إذا أرسلت رسالة بصيغة HTML، قد ترغب أيضًا في توفير نسخة نصية عادية في حال كان بعض المستلمين يستخدمون برامج قراءة لا تدعم محتوى HTML. تحتوي هذه الفئة على خاصيتين، LinkedResources و BaseUri، تُستخدمان لحل عناوين URL داخل محتوى البريد.
- LinkedResources هي مجموعة من كائنات LinkedResources. عند العرض، يتم أولاً مطابقة عناوين URL داخل محتوى البريد الإلكتروني مع عناوين URL في Content Link لكل كائن LinkedResources في مجموعة LinkedResources، ثم يتم حلها.
- يُستخدم BaseUri بواسطة قارئ البريد لحل عناوين URL النسبية داخل الجسم، وكذلك لحل عناوين URL روابط المحتوى النسبية، في مجموعة LinkedResources.
تُظهر الفقرة البرمجية التالية كيفية تعيين النص البديل.
ميزات MailMessage
الـ MailMessage الفئة تمثل محتوى رسالة بريد إلكتروني. نماذج الفئة هي MailMessage تُستخدم الفئة لبناء رسالة بريد إلكتروني يتم نقلها إلى خادم SMTP للتسليم باستخدام الـ SmtpClient فئة. يوضح هذا المقال كيفية الاستخدام MailMessage ميزات فئة utility للتحكم في ميزات البريد الإلكتروني التالية:
- التاريخ والوقت - من خلال الـ MailMessage خاصية class Date تُمكننا من الحصول على تاريخ ووقت البريد الإلكتروني أو تعيينهما.
- أولوية الرسالة - الـ MailPriority فئة تُحدد مستويات الأولوية لإرسال رسالة بريد إلكتروني. يمكن أن تكون منخفضة أو عادية أو عالية. تؤثر الأولوية على سرعة الإرسال والتسليم.
- حساسية الرسالة - الـ MailSensitivity فئة تُحدد خمس مستويات للحساسية.
- إشعار التسليم - إشعارات التسليم تُخبر المُرسِل بأن البريد الإلكتروني الذي أرسله قد تم تسليمه إلى صندوق الوارد للمستلم.
بشكل افتراضي، يمثل الحقل Date التاريخ الفعلي الذي تم إرسال الرسالة فيه، وTime يمثل الوقت الذي أُرسلت فيه، كما يعرضه Microsoft Outlook. ومع ذلك، يتم إضافة وقت تسليم البريد الفعلي من قبل خادم SMTP نفسه في رأس الرسالة. على سبيل المثال، أدناه رأس بريد شائع، حيث تحدد Date حقل Date.
توضع الفقرة البرمجية أدناه كيفية استخدام كل ميزة من المذكورات أعلاه.
طلب إيصال قراءة
تظهر عينات البرمجة أدناه كيفية طلب إيصال قراءة. الـ MailMessage فئة DeliveryNotificationOptions خاصية التعداد تصف خيارات إشعار التسليم للبريد الإلكتروني. لطلب إيصال قراءة بعد إرسال بريد إلكتروني، اتبع الخطوات التالية:
- إنشاء مثيل من الـ MailMessage فئة.
- حدد المرسل، المستقبل وجسم HTML للبريد في الـ MailMessage كائن.
- حدد الـ DeliveryNotificationOptions في أخرى MailMessage مثيلات.
- إنشاء مثيل من الـ SmtpClient الفئة وأرسل البريد باستخدام طريقة Send.
قد لا تُنفّذ طلبات إيصال القراءة دائمًا لأن:
- قد لا ينفّذ عميل البريد تلك الوظيفة.
- قد يكون لدى المستخدم النهائي هذه الوظيفة موقفة.
- قد يختار المستخدم النهائي عدم إرسالها.
تُظهر الفقرة البرمجية التالية كيفية طلب إيصال قراءة.
ضبط رؤوس البريد الإلكتروني
رؤوس البريد الإلكتروني تمثل معيار إنترنت وتُعرّف RFC حقول الرؤوس التي تُدرج في رسائل البريد الإلكتروني على الإنترنت. يمكن تحديد رأس البريد باستخدام فئة MailMessage. تُعرف أنواع الرؤوس الشائعة في فئة HeaderType. إنها فئة مغلقة تعمل كعدد ثابت عادي.
عادةً ما يحتوي رأس البريد الإلكتروني على الحقول التالية:
- إلى: يمكن تحديد عناوين المستلمين في حقل To. مستلمو حقل To هم الجمهور الأساسي للرسالة. يمكن أن يكون هناك أكثر من عنوان مستلم.
- From: يُظهر هذا الحقل عنوان البريد الإلكتروني للمرسل.
- CC: يسمح للمستخدمين بإرسال رسالة كـ "نسخة كربونية" أو "نسخة Courtesy". أي أن المتلقي ليس من المتوقع أن يرد أو يتصرف. عادةً ما يتم إبلاغ الموظفين المشرفين عبر CC.
- Bcc: يرمز إلى Blind Carbon Copy (نسخة مخفية)، ويشير إلى ممارسة إرسال رسالة إلى عدة مستلمين بطريقة لا يحتوي فيها ما يتلقاه كل منهم على قائمة كاملة بالمستلمين. يُستخدم لإشعارات مخفية.
- ReplyTo: يُقصد من هذا الحقل إظهار العنوان الذي يرغب المرسل في أن تُرسل إليه الردود.
- Subject: العنوان أو السطر الرئيسي أو الموضوع. يُستخدم غالبًا كمؤشر للنقاش للرسائل التي ترد أو تُعلق على رسائل أخرى.
- Date: يُحدد هذا الحقل تاريخ (ووقت). عادةً يكون هذا هو التاريخ الذي كُتب فيه الرسالة وأُرسل.
- XMailer: معلومات حول برنامج العميل للمرسل. مثال: X-Mailer: Aspose.Email. يُستخدم XMailer من قبل عملاء البريد. كل عميل بريد سيكون له قيمة XMailer مختلفة. قيمة XMailer في MS Outlook هي Microsoft Office Outlook, Build 11.0.5510. يتم تجاهلها من قبل مستقبل البريد أو قارئ البريد.
عادةً، يبدو رأس البريد الإلكتروني كالآتي:
Reply-To: reply@reply.com
From: sender@sender.com
To: guangzhou@guangzhoo.com
Subject: test mail
Date: 6 Mar 2006 8:2:2 +0800
X-Mailer: Aspose.Email
لتخصيص رأس بريد إلكتروني، اتبع الخطوات التالية:
- إنشاء مثيل من الـ MailMessage فئة.
- حدد To و From و CC و Bcc و ReplyTo و Subject و Date و XMailer باستخدام كائن من الـ MailMessage.
- إنشاء مثيل من الـ MimeHeader الفئة وتحديد الرأس السري.
- أضف الرأس السري إلى الـ MailMessage كائن.
تُظهر لك قطعة الكود التالية كيفية ضبط رؤوس البريد الإلكتروني.
تنتج قطعة الكود أعلاه رأس بريد إلكتروني بالتنسيق التالي. يمكن ملاحظة ذلك بفتح الملف الناتج "MsgHeaders.msg" في Microsoft Outlook ثم عرض الخصائص.
Reply-To: reply@reply.com
From: sender@sender.com
To: receiver1@receiver.com
CC: receiver2@receiver.com
BCC: receiver3@receiver.com
Subject: test mail
Date: 6 Mar 2006 8:2:2 +0800
X-Mailer: Aspose.Email
secret-header: mystery
إدراج رأس في موقع محدد
الـ Add طريقة من HeadersCollection الفئة تُدخل الرأس في نهاية المجموعة. ومع ذلك، قد يكون من الضروري أحيانًا إدراج رأس في موقع محدد. في هذه الحالة، الـ Add الطريقة لن تكون مفيدة. لتحقيق ذلك، استخدم الـ Insert طريقة الـ HeadersCollection. إذا كان التجميع يحتوي على رؤوس بنفس الاسم، سيُدرج هذا الرأس قبل الرؤوس الأخرى ذات الاسم نفسه. يوضح مقطع الشيفرة التالي كيفية إدراج رأس في موقع محدد.
إضافة رؤوس مخصصة إلى البريد الإلكتروني
توضح عينات البرمجة أدناه كيفية تحديد رأس مخصص في رسالة بريد إلكتروني. يمكن تحديد رأس البريد باستخدام MailMessage فئة. لتحديد رأس مخصص في رسالة بريد إلكتروني، يرجى اتباع الخطوات التالية:
- إنشاء مثيل من الـ MailMessage فئة.
- حدد قيم to و from و subject باستخدام كائن MailMessage.
- أضف الرأس السري إلى MailMessage كائن.
- إنشاء نسخة من فئة SmtpClient وإرسال البريد الإلكتروني باستخدام طريقة Send.
المقتطف البرمجي التالي يوضح لك كيفية إضافة رؤوس مخصصة إلى البريد الإلكتروني.