Обработка на TNEF прикачени файлове в имейл съобщения

Имейл съобщения, съдържащи TNEF прикачени файлове

Transport Neutral Encapsulation Format (TNEF) е собственически формат за имейл прикачени файлове, използван от Microsoft Outlook и Microsoft Exchange Server. Aspose.Email API позволява да четете имейл съобщения, които имат TNEF прикачени файлове и да модифицирате тяхното съдържание. След това имейлът може да бъде запазен като нормално съобщение или в същия формат, запазвайки тези прикачени файлове. Тази статия показва различни примерни кодове за работа със съобщения, съдържащи TNEF прикачени файлове. Тя също демонстрира как да се създадат TNEF EML файлове от Outlook MSG файлове.

Идентифициране на TNEF прикачени файлове в имейл

Следният фрагмент от код показва как да откриете дали имейлът съдържа TNEF прикачени файлове:

from aspose.email import MailMessage

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

Четене на имейли със запазени TNEF прикачени файлове

Следният фрагмент от код показва как да прочетете съобщение и да запазите TNEF прикачените файлове.

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)

Конвертиране на MSG към TNEF

Outlook MSG файловете понякога съдържат информация като таблици и текстови стилове, които могат да се повредят при конвертиране към EML. Създаването на TNEF съобщения от такива MSG файлове ви позволява да запазите форматирането и дори да изпратите такива съобщения чрез имейл клиентите, като запазите форматирането. Това convert_as_tnef свойството се използва за постигане на това. Следният фрагмент от код показва как да създадете TNEF имейл от 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)

Създаване на TNEF имейл

Следният примерен код може да се използва за създаване на имейл във формат TNEF:

  1. Конфигурирайте файловите опции, използвайки MsgLoadOptions клас.
  2. Уверете се, че TNEF прикачените файлове в имейла се запазват при зареждане на файла, като зададете options.preserve_tnef_attachments на True.
  3. Използвайте MailMessage.load(eml_file_name, options) метод за зареждане на входния имейл файл, като се прилагат предварително конфигурираните опции. Това специално гарантира, че зареденият имейл запазва информация, свързана с TNEF (като прикачени файлове или собствените формати на 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)

Откриване на TNEF съобщения

Следният фрагмент от код показва как да се открие дали съобщението е TNEF. Това original_is_tnef свойство на MailMessage обектът се проверява, за да се определи дали имейлът е бил оригинално в TNEF (Transport Neutral Encapsulation Format). Ако is_tnef оценява се като True, което означава, че имейлът съдържа TNEF кодиране, което обикновено се среща в имейли, произхождащи от Microsoft Outlook или Exchange.

from aspose.email import MailMessage

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