Zaawansowane zarządzanie wiadomościami e‑mail
Śledzenie postępu konwersji dokumentu
Aspose.Email udostępnia możliwość śledzenia postępu konwersji dokumentu. W tym celu API zapewnia SaveOptions.CustomProgressHandler. które reprezentuje metodę obsługującą zdarzenia postępu. Typy zdarzeń postępu są reprezentowane przez ProgressEventType wyliczenie. The ProgressEventType wyliczenie posiada następujące elementy.
- MimeStructureCreated: To zdarzenie informuje, że struktura MIME została utworzona.
- MimePartSaved: To zdarzenie informuje, że zapis jednej części MIME został zakończony.
- SavedToStream: To zdarzenie informuje, że wszystkie części MIME zostały zapisane do strumienia.
Poniższy przykładowy kod demonstruje użycie SaveOptions.CustomProgressHandler i ProgressEventType wyliczenie śledzące postęp konwersji dokumentu.
Poniżej znajduje się kod klasy niestandardowej użytej w powyższym przykładzie kodu.
Renderowanie hiperłączy z własnymi stylami
Mogą wystąpić sytuacje, w których konieczne jest wyświetlenie hiperłączy w określonym stylu, zgodnie z wymaganiami aplikacji. W tym celu Aspose.Email udostępnia HyperlinkRenderingCallback. Możesz przekazać HyperlinkRenderingCallback jako parametr MailMessage.GetHtmlBodyText.
Poniższy fragment kodu pokazuje, jak używać HyperlinkRenderingCallback do wyświetlania hiperłączy przy użyciu własnego stylu.
Wyświetlanie informacji w niestandardowej kolejności w plikach MHTML
Aspose.Email udostępnia MhtSaveOptions.RenderingHeaders właściwość zwracająca listę nagłówków do renderowania. Nagłówki można dodać przy użyciu MhtTemplateName klasa. Kolejność, w jakiej nagłówki są dodawane, decyduje o kolejności wyświetlania informacji.
Poniższy obraz porównuje trzy wyniki wygenerowane przez przykładowy kod.

Poniższy fragment kodu demonstruje użycie MhtSaveOptions.RenderingHeaders właściwość określająca kolejność wyświetlania informacji w plikach wyjściowych MHTML.
Wyświetlanie opcjonalnych uczestników w plikach MHT
Podczas pracy z formatem MHT możesz wyświetlać lub ukrywać informacje o opcjonalnych uczestnikach w nagłówku zdarzeń kalendarza. Aby skonfigurować MhtSaveOptions do obsługi plików MHT musisz zrozumieć, jak MhtFormatOptions.RenderCalendarEvent i MhtFormatOptions.WriteHeader parametry działają przy dostosowywaniu wyjścia do Twoich potrzeb, szczególnie przy zarządzaniu wyświetlaniem opcjonalnych uczestników.
-
MhtFormatOptions.RenderCalendarEvent: Ten parametr kontroluje, czy szczegóły zdarzeń kalendarza są renderowane w pliku MHT. Ustawiając tę opcję, zapewniasz, że wyjściowy plik zawiera pełne informacje o wydarzeniu, włączając szczegóły uczestników. Jest to niezbędne do zapewnienia pełnej dokumentacji zdarzeń kalendarza.
-
MhtFormatOptions.WriteHeader: Ten parametr określa, czy nagłówki zawierające metadane, takie jak temat, data i informacje o uczestnikach (w tym opcjonalnych uczestnikach, jeśli skonfigurowane) są zapisywane do pliku MHT. Włączenie tej opcji zapewnia, że kontekstowo istotne informacje towarzyszą Twojej wiadomości, zwiększając jej zrozumiałość.
Poniższy przykład kodu demonstruje, jak używać funkcji wyświetlania opcjonalnych uczestników przy zapisywaniu wiadomości msg w formacie mhtml:
MhtSaveOptions options = new MhtSaveOptions()
{
MhtFormatOptions = MhtFormatOptions.RenderCalendarEvent | MhtFormatOptions.WriteHeader
};
MailMessage eml = MailMessage.Load(fileName);
eml.Save(fileName + ".mhtml", options);
Jeśli chcesz wykluczyć informacje o opcjonalnych uczestnikach z pliku MHT, po prostu wyczyść szablon formatu dla OptionalAttendees przed zapisaniem:
//if you need to skip OptionalAttendees in mhtml file you can clear format template for OptionalAttendees
options.FormatTemplates[MhtTemplateName.OptionalAttendees] = "";
msg.Save(fileName + "2.mhtml", options);
Zapisz wszystkie nagłówki w MHTML
Ten MhtSaveOptions.SaveAllHeaders właściwość MhtSaveOptions klasa określa, czy konieczne jest zapisanie wszystkich nagłówków w wyjściowym pliku mhtml. Poniższy fragment kodu pokazuje, jak zapisać wszystkie nagłówki pliku mhtml:
var eml = MailMessage.Load("message.eml");
var sopt = SaveOptions.DefaultMhtml;
sopt.SaveAllHeaders = true;
eml.Save("message.mhtml", sopt);
Przetwarzanie Odrzuconych Wiadomości
Bardzo często zdarza się, że wiadomość wysłana do odbiorcy może zostać odrzucona z dowolnego powodu, takiego jak nieprawidłowy adres odbiorcy. API Aspose.Email ma możliwość przetwarzania takiej wiadomości w celu sprawdzenia, czy jest to odrzucona wiadomość e‑mail, czy zwykła wiadomość e‑mail. Ta Sprawdź Odbite metoda MailMessage klasa zwraca prawidłowy wynik, jeśli wiadomość e‑mail jest zwrócona (bounce). Ten artykuł pokazuje użycie BounceResult klasa zapewniająca możliwość sprawdzania, czy wiadomość jest zwróconą pocztą (bounce). Dostarcza także szczegółowe informacje o odbiorcach, podjętej akcji i przyczynie powiadomienia. Poniższy fragment kodu pokazuje, jak przetwarzać wiadomości zwrócone.
Analizator Spamu Bayesa
Aspose.Email zapewnia filtrowanie e‑maili przy użyciu bayesowskiego analizatora spamu. Dostarcza on SpamAnalyzer klasa do tego celu. Ten artykuł pokazuje, jak wytrenować filtr, aby odróżniał spam od zwykłych wiadomości e‑mail na podstawie bazy słów.
Uzyskanie preambuły i epilogu z wiadomości EML
Wiadomość e‑mail może zawierać ukryte informacje jako zwykły tekst przed treścią wiadomości (np. preambuła) lub po niej (np. epilog). Zazwyczaj są to dodatkowe informacje lub kontekst dla odbiorcy przed lub po przeczytaniu głównej treści e‑maila. Możesz uzyskać te informacje za pomocą MailMessage.Preamble lub/i MailMessage.Epilogue odpowiednio właściwości.
Poniższy fragment kodu pokazuje, jak uzyskać teksty preambuły i epilogu:
// Gets or sets a preamble text.
public string Preamble
// Gets or sets an epilogue text.
public string Epilogue
Śledzenie e‑maili przy użyciu MDN i potwierdzeń odbioru
API Aspose.Email zapewnia wsparcie śledzenia e‑maili przy użyciu powiadomienia o przyjęciu wiadomości (Message Disposition Notification, MDN). Osiąga się to poprzez żądanie potwierdzeń odbioru i tworzenie niezbędnych informacji. The MailMessage.ReadReceiptTo właściwość pobiera lub ustawia adres potwierdzenia odbioru. The CreateReadReceipt i ReadReceiptRequested metody służą do tworzenia i pobierania informacji, czy żądane są potwierdzenia odbioru. Poniższy fragment kodu pokazuje, jak śledzić e‑maile przy użyciu API Aspose.Email.