אימייל הקפצות והתראות מסירה

בעת שליחת אימייל, אתה רוצה לדעת אם הוא נמסר בהצלחה לנמען. לא פחות חשובה היא היכולת לזהות ולנהל הקפצות דוא"ל, המתרחשות כאשר אי אפשר לשלוח אימייל. הם יכולים לקרות מסיבות שונות, כולל כתובות דוא"ל לא חוקיות, תיבות דואר מלאות או בעיות בשרת. זיהוי הקפצות אלו חיוני לשמירה על רשימת דוא"ל נקייה ומעודכנת ולהבטחת שההודעות שלך מגיעות לאנשים הנכונים. במאמר זה, נחקור כיצד לטפל ביעילות בהחזרות דוא"ל והתראות מסירה בסביבת C# .NET.

C# .NET API לטיפול בהחזרות דוא"ל והתראות מסירה

לניהול יעיל של הקפצות דוא"ל והתראות מסירה ב-C# .NET, נשתמש בספריית Aspose.Email, המציעה סט מקיף של כלים ופונקציונליות למשימות הקשורות בדוא"ל. Aspose.Email עבור .NET. אתה יכול להשתמש בפוטנציאל של ה-API על ידי רכישת ה-DLL שלו דרך הורד או התקנתו מ-NuGet באמצעות הפקודה הבאה:

PM> Install-Package Aspose.Email

שליחת אימייל עם הודעות מסירה

קטע הקוד שלהלן מדגים כיצד ליצור הודעת דואר אלקטרוני ולהגדיר הודעות מסירה באמצעות Aspose.Email. קוד זה מאפשר לך ליצור הודעת דואר אלקטרוני, לציין את כתובות השולח והנמען, ולהגדיר הודעות מסירה להצלחה וכישלון. בנוסף, הוא מוסיף כותרות MIME להודעה למעקב מקיף יותר. הקוד מבצע את השלבים הבאים:

  1. צור הודעת דוא"ל חדשה: הקוד מתחיל ביצירת אובייקט MailMessage חדש. MailMessage היא מחלקה המייצגת הודעת eml שניתן לשלוח.

  2. הגדר הודעות מסירה: DeliveryNotificationOptions מוגדרות להיות גם OnSuccess וגם OnFailure. המשמעות היא שהשולח ירצה לקבל דוח מסירה אם ההודעה נמסרה בהצלחה או אם המסירה נכשלת.

  3. הוסף כותרות MIME עבור הודעות קריאה ו-Disposition: הכותרות של אובייקט ההודעה משמשות להוספת כותרות “Read-Reeipt-To” ו-“Disposition-Notification-To” עם האימייל של השולח. כותרות אלו מבקשות הודעות קריאה וסיפוק לכתובת הדואר האלקטרוני של השולח עם קבלת האימייל והטיפול בו על ידי הנמען, בהתאמה.

  4. הגדר את לקוח SMTP: המחלקה SmtpClient משמשת לשליחת הודעות דואר אלקטרוני. מופע של מחלקה זו נוצר עם אישורי המארח והמשתמש שצוינו.

  5. שלח את ההודעה: לבסוף, השיטה Send של האובייקט SmtpClient נקראת עם האובייקט MailMessage כארגומנט לשליחת האימייל.

// צור את ההודעה
MailMessage msg = new MailMessage();
msg.From = "sender@sender.com";
msg.To = "receiver@receiver.com";
msg.Subject = "the subject of the message";

// הגדר התראות מסירה על הצלחה והודעות שנכשלו והוסף את כותרות ה-MIME
msg.DeliveryNotificationOptions = DeliveryNotificationOptions.OnSuccess | DeliveryNotificationOptions.OnFailure;
msg.Headers.Add("Read-Receipt-To", "sender@sender.com");
msg.Headers.Add("Disposition-Notification-To", "sender@sender.com");

// שלח את ההודעה
SmtpClient client = new SmtpClient("host", "username", "password");
client.Send(msg);

טיפול בהחזרות אימייל

בנוסף להבטחת משלוח דוא"ל מוצלח, אתה יכול למנף את התכונות של הספרייה לטיפול בהחזרות. דוגמת הקוד שלהלן מדגימה כיצד לטעון ולבדוק את הסטטוס של הודעת דואר אלקטרוני שהוחזרה. הוא מאחזר ומציג מידע חשוב על הודעת דואר אלקטרוני שהוחזרה, כגון שם הקובץ, סטטוס החזרה, פעולה, נמען, סיבה, סטטוס וכתובת הדואר האלקטרוני של הנמען מההודעה המקורית. הקוד מבצע את השלבים הבאים:

  1. הקוד מתחיל ביצירת מופע של המחלקה MailMessage כדי לטעון את הודעת הדואר האלקטרוני מהקובץ שצוין בשיטת Load.

  2. לאחר מכן הוא בודק אם האימייל הוקפץ על ידי קריאה לשיטת CheckBounced. התוצאה של פעולה זו מאוחסנת באובייקט BounceResult.

  3. לאחר מכן הקוד ממשיך להדפיס את שם הקובץ למסוף המספק את המידע המפורט על ההודעה באמצעות המאפיינים הבאים:

MailMessage mail = MailMessage.Load(fileName);
BounceResult result = mail.CheckBounced();
Console.WriteLine(fileName);
Console.WriteLine("IsBounced : " + result.IsBounced);
Console.WriteLine("Action : " + result.Action);
Console.WriteLine("Recipient : " + result.Recipient);
Console.WriteLine();
Console.WriteLine("Reason : " + result.Reason);
Console.WriteLine("Status : " + result.Status);
Console.WriteLine("OriginalMessage ToAddress 1: " + result.OriginalMessage.To[0].Address);
Console.WriteLine();

סיכום

במאמר זה, הפנינו את תשומת לבכם למשמעות של הקפצות דוא"ל והתראות מסירה. סיפקנו גם דרכי טיפול בהם נתמכות באמצעות דוגמאות קוד. כעת עומדים לרשותך כלים רבי עוצמה כדי לאפשר משלוח מוצלח של מיילים ולנהל כל הקפצה שעלולה להתרחש. על ידי שילוב שיטות עבודה אלו בפרויקטים שלך, תוכל להשיג תקשורת דוא"ל יעילה בסביבת C# .NET ולהבטיח שההודעות שלך יגיעו לנמענים המיועדים להם.

למידע מפורט יותר או תכונות אחרות של Aspose.Email for .NET תוכל לפנות לתיעוד שלנו. למקרה שיש לך שאלות או נתקלת בקשיים כלשהם, בקר בפורום שלנו.

ראה גם