مدیریت پیوست‌های TNEF در پیام‌های ایمیل

پیام‌های ایمیل حاوی پیوست‌های TNEF

فرمت Transport Neutral Encapsulation Format (TNEF) یک قالب پیوست ایمیل اختصاصی است که توسط Microsoft Outlook و Microsoft Exchange Server استفاده می‌شود. API Aspose.Email به شما امکان می‌دهد پیام‌های ایمیلی که حاوی پیوست‌های 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 به شما امکان می‌دهد قالب‌بندی را حفظ کنید و حتی این پیام‌ها را از طریق کلاینت‌های ایمیل که قالب‌بندی را حفظ می‌کنند، ارسال کنید. The 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 است یا خیر. The 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