Gestione degli allegati TNEF nei messaggi email

Messaggi email contenenti allegati TNEF

Transport Neutral Encapsulation Format (TNEF) è un formato di allegato email proprietario utilizzato da Microsoft Outlook e Microsoft Exchange Server. L’API Aspose.Email consente di leggere i messaggi email che hanno allegati TNEF e modificarne i contenuti. L’email può quindi essere salvata come messaggio normale o nello stesso formato, preservando questi allegati. Questo articolo mostra diversi esempi di codice per lavorare con messaggi contenenti allegati TNEF. Dimostra anche come creare file EML TNEF da file MSG di Outlook.

Identificazione degli allegati TNEF in un’email

Il seguente frammento di codice mostra come rilevare se un’email contiene allegati TNEF:

from aspose.email import MailMessage

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

Lettura di email mantenendo gli allegati TNEF

Il seguente frammento di codice mostra come leggere un messaggio e preservare gli allegati 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)

Conversione da MSG a TNEF

I file MSG di Outlook a volte contengono informazioni come tabelle e stili di testo che possono essere corrotti quando convertiti in EML. Creare messaggi TNEF da tali file MSG consente di mantenere la formattazione e persino inviare tali messaggi tramite i client email mantenendo la formattazione. Il convert_as_tnef la proprietà è utilizzata per ottenere questo. Il seguente frammento di codice mostra come creare un’email TNEF da 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)

Creazione di email TNEF

Il seguente esempio di codice può essere usato per creare un’email in formato TNEF:

  1. Configura le opzioni del file usando il MsgLoadOptions classe.
  2. Assicurati che gli allegati TNEF nell’email vengano preservati durante il caricamento del file impostando options.preserve_tnef_attachments a True.
  3. Usa il MailMessage.load(eml_file_name, options) metodo per caricare il file email di input applicando le opzioni configurate in precedenza. Questo garantisce specificamente che l’email caricata mantenga le informazioni relative a TNEF (come allegati o formati proprietari di 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)

Rilevamento dei messaggi TNEF

Il seguente frammento di codice mostra come rilevare se un messaggio è TNEF. Il original_is_tnef proprietà del MailMessage l’oggetto viene controllato per determinare se l’email era originariamente in TNEF (Transport Neutral Encapsulation Format). Se is_tnef valuta a True, significa che l’email contiene codifica TNEF, che tipicamente si verifica nelle email provenienti da Microsoft Outlook o Exchange.

from aspose.email import MailMessage

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