Get detailed information of a delivery report.
[Visual Basic] Public Function GetReport( _ ) As MailReport
[C#] public MailReport GetReport( );
[C++] public: MailReport* GetReport( );
[JScript] public function GetReport( ) : MailReport;
Return Value
Example
[Visual Basic, C#] The following example demonstrates how to parse the delivery report with EAGetMail POP3 & IMAP4 .NET Component. To get the full samples of EAGetMail, please refer to Samples section.
[Visual Basic]
Imports EAGetMail
Public Sub ParseReport(ByVal emlFile As String)
Dim oMail As New Mail("TryIt")
oMail.Load(emlFile, False)
If Not oMail.IsReport Then
Console.WriteLine("This is not a delivery report.")
Exit Sub
End If
Dim oReport As MailReport = oMail.GetReport()
Select (oReport.ReportType)
Case DeliveryReportType.DeliveryReceipt
Console.WriteLine("This is a delivery receipt!")
Case DeliveryReportType.ReadReceipt
Console.WriteLine("This is a read receipt!")
Case Else
Console.WriteLine("This is a failure report!")
End Select
Console.WriteLine("OriginalSender: {0}", oReport.OriginalSender)
Console.WriteLine("OriginalRecipient: {0}", oReport.OriginalRecipient)
Console.WriteLine("OriginalMessageID: {0}", oReport.OriginalMessageID)
If oReport.ReportType = DeliveryReportType.FailureReport Then
Console.WriteLine("ErrCode: {0}", oReport.ErrCode)
Console.WriteLine("ErrDescription: {0}", oReport.ErrDescription)
Console.WriteLine("OriginalSubject: {0}", oReport.OriginalSubject)
Console.WriteLine("ReportMTA: {0}", oReport.ReportMTA)
Console.WriteLine(oReport.OriginalHeaders.ToString())
End If
End Sub
[C#]
using System;
using System.Collections;
using EAGetMail;
public void ParseReport(string emlFile)
{
Mail oMail = new Mail("TryIt");
oMail.Load(emlFile, false);
if (!oMail.IsReport)
{
Console.WriteLine("This is not a delivery report.");
return;
}
MailReport oReport = oMail.GetReport();
switch (oReport.ReportType)
{
case DeliveryReportType.DeliveryReceipt:
Console.WriteLine( "This is a delivery receipt!" );
break;
case DeliveryReportType.ReadReceipt:
Console.WriteLine( "This is a read receipt!" );
break;
default:
Console.WriteLine( "This is a failure report!" );
break;
}
Console.WriteLine( "OriginalSender: {0}", oReport.OriginalSender );
Console.WriteLine( "OriginalRecipient: {0}", oReport.OriginalRecipient );
Console.WriteLine( "OriginalMessageID: {0}", oReport.OriginalMessageID );
if( oReport.ReportType == DeliveryReportType.FailureReport )
{
Console.WriteLine( "ErrCode: {0}", oReport.ErrCode );
Console.WriteLine("ErrDescription: {0}", oReport.ErrDescription);
Console.WriteLine( "OriginalSubject: {0}", oReport.OriginalSubject );
Console.WriteLine( "ReportMTA: {0}", oReport.ReportMTA );
Console.WriteLine( oReport.OriginalHeaders.ToString());
}
}