Zpracování příloh TNEF v e‑mailových zprávách

E‑mailové zprávy obsahující TNEF přílohy

Transport Neutral Encapsulation Format (TNEF) je proprietární formát příloh e‑mailu používaný Microsoft Outlook a Microsoft Exchange Server. API Aspose.Email umožňuje číst e‑mailové zprávy, které mají TNEF přílohy, a upravovat jejich obsah. E‑mail pak může být uložen jako běžná zpráva nebo ve stejném formátu se zachováním těchto příloh. Tento článek ukazuje různé ukázky kódu pro práci se zprávami obsahujícími TNEF přílohy. Také demonstruje, jak vytvořit TNEF soubory EML z Outlook MSG souborů.

Identifikace TNEF příloh v e‑mailu

Následující úryvek kódu ukazuje, jak zjistit, zda e‑mail obsahuje TNEF přílohy:

from aspose.email import MailMessage

mail = MailMessage.load(data_dir + "message.eml")
is_tnef = mail.original_is_tnef

Čtení e‑mailů se zachováním TNEF příloh

Následující úryvek kódu ukazuje, jak načíst zprávu a zachovat TNEF přílohy.

from aspose.email import MailMessage, SaveOptions, EmlLoadOptions, MessageFormat, FileCompatibilityMode

options = EmlLoadOptions()
# This will Preserve the TNEF attachment as it is, file contains the TNEF attachment
options.preserve_tnef_attachments = True

eml = MailMessage.load(data_dir + "message.eml", options)
for attachment in eml.attachments:
    print(attachment.name)

Konverze MSG na TNEF

Outlook MSG soubory někdy obsahují informace jako tabulky a textové styly, které mohou být po konverzi do EML poškozeny. Vytvářením TNEF zpráv z takových MSG souborů můžete zachovat formátování a dokonce odesílat takové zprávy prostřednictvím e‑mailových klientů s zachovaným formátováním. convert_as_tnef vlastnost se používá k dosažení tohoto cíle. Následující úryvek kódu ukazuje, jak vytvořit TNEF e‑mail z MSG.

from aspose.email.mapi import MapiMessage, MailConversionOptions, OutlookMessageFormat

mapi_msg = MapiMessage.from_file(data_dir + "message.msg")

mail_conversion_options = MailConversionOptions()
mail_conversion_options.convert_as_tnef = True

message = mapi_msg.to_mail_message(mail_conversion_options)

Vytváření TNEF e‑mailu

Následující ukázkový kód lze použít k vytvoření e‑mailu ve formátu TNEF:

  1. Nakonfigurujte volby souboru pomocí MsgLoadOptions třída.
  2. Zajistěte, aby byly při načítání souboru zachovány TNEF přílohy v e‑mailu nastavením options.preserve_tnef_attachments na True.
  3. Použijte MailMessage.load(eml_file_name, options) metoda pro načtení vstupního e‑mailového souboru s použitím dříve nastavených možností. Tím se konkrétně zajistí, že načtený e‑mail si zachová informace související s TNEF (např. přílohy nebo proprietární formáty Microsoft Outlook).
from aspose.email import MailMessage, SaveOptions, MsgLoadOptions, MessageFormat, FileCompatibilityMode

options = MsgLoadOptions()
# The PreserveTnefAttachments option with MessageFormat.Msg will create the TNEF eml.
options.preserve_tnef_attachments = True

eml = MailMessage.load(eml_file_name, options)

Detekce zpráv TNEF

Následující úryvek kódu ukazuje, jak zjistit, zda je zpráva TNEF. original_is_tnef vlastnost třídy MailMessage objekt se kontroluje, aby se zjistilo, zda byl e‑mail původně ve formátu TNEF (Transport Neutral Encapsulation Format). Pokud is_tnef vyhodnotí se jako True, což znamená, že e‑mail obsahuje kódování TNEF, které se typicky vyskytuje v e‑mailových zprávách pocházejících z Microsoft Outlook nebo Exchange.

from aspose.email import MailMessage

mail = MailMessage.load(data_dir + "message.eml")
is_tnef = mail.original_is_tnef