Конвертация и обработка шаблонов Outlook (OFT)
Шаблоны Outlook (OFT) предоставляют удобный способ оптимизировать процесс отправки повторяющихся электронных писем. Вместо того чтобы каждый раз создавать письмо с нуля, вы можете создать сообщение в Outlook и сохранить его как шаблон Outlook (OFT). Позже, когда понадобится отправить похожее письмо, вы сможете быстро сгенерировать его из шаблона. Такой подход экономит время на переписывание одинакового содержимого в теле письма, указание темы, форматирование и т.д.
Загрузить, изменить и сохранить файл OFT
Aspose.Email предоставляет MailMessage класс для загрузки и управления файлами шаблонов Outlook (OFT). После загрузки шаблона Outlook в экземпляр MailMessage класс, с помощью которого можно легко обновлять свойства, такие как отправитель, получатель, тело сообщения, тема и различные другие атрибуты.
import aspose.email as ae
# Load the OFT file
oft_file_path = "your_template.oft"
mail_message = ae.MailMessage.load(oft_file_path)
# Update properties as needed
mail_message.subject = "Updated Subject"
mail_message.body = "Updated body text."
# Save the updated message as an MSG file
msg_file_path = "updated_message.msg"
mail_message.save(msg_file_path, ae.MailMessageSaveType.outlook_message_format_unicode)
print(f"Updated message saved to {msg_file_path}")
После внесения необходимых изменений вы можете отправить письмо, используя SmtpClient класс:
import aspose.email as ae
mail_message = ae.MailMessage.load("updated_message.msg")
# Send the email
with ae.clients.smtp.SmtpClient("smtp.example.com", 587, "username", "password", ae.clients.SecurityOptions.AUTO) as client:
client.send(mail_message)
Сохранить файлы MSG как шаблоны Outlook
Чтобы создать письмо, а затем сохранить его как файл OFT, используйте MailMessage класс. Следующий пример кода показывает, как сохранить письмо в виде шаблона Outlook:
import aspose.email as ae
# Create a new MailMessage
message = ae.MailMessage()
message.subject = "Sample Outlook Template"
message.html_body = "<html><body>This is the body of the email.</body></html>"
message.from_address = ae.MailAddress("your.email@example.com", "Your Name")
# Save the MailMessage as an Outlook Template (OFT) file
oft_file_path = "sample_template.oft"
message.save(oft_file_path, ae.SaveOptions.default_oft)
print(f"Outlook Template saved as {oft_file_path}")
Определить типы файлов OFT и MSG
Следующий фрагмент кода иллюстрирует, как определить, является ли загруженное MAPI‑сообщение стандартным письмом или шаблоном Outlook (OFT):
import aspose.email as ae
msg = ae.mapi.MapiMessage.load("message.msg")
is_oft = msg.is_template # returns False
msg = ae.mapi.MapiMessage.load("message.oft")
is_oft = msg.is_template # returns True
После загрузки файла MSG код проверяет, установлен ли параметр is_template у MapiMessaage класс возвращает True или False. Если возвращает false, загруженное сообщение является стандартным электронным письмом, а не шаблоном Outlook; если возвращает true, сообщение является шаблоном Outlook.
Сохранить MapiMessage или MailMessage в формате OFT
Этот SaveOptions является абстрактным базовым классом, позволяющим пользователю задавать дополнительные параметры при сохранении MailMessage в определённый формат. Следующий пример кода демонстрирует, как сохранить сообщение в формате OFT:
import aspose.email as ae
# Save the MailMessage to OFT format
eml = ae.MailMessage.load("message.eml")
eml.save("message.oft", ae.SaveOptions.default_oft)
# or alternative way 2
save_options = ae.MsgSaveOptions(ae.MailMessageSaveType.outlook_template_format)
eml.save("message.oft", save_options)
# or alternative way 3
save_options = ae.SaveOptions.create_save_options(ae.MailMessageSaveType.outlook_template_format)
eml.save("message.oft", save_options)
# Save the MapiMessage to OFT format
msg = ae.mapi.MapiMessage.load("message.msg")
msg.save("message.oft", ae.SaveOptions.default_oft)
# or alternative way 2
save_options = ae.MsgSaveOptions(ae.MailMessageSaveType.outlook_template_format)
msg.save("message.oft", save_options)
# or alternative way 3
save_options = ae.SaveOptions.create_save_options(ae.MailMessageSaveType.outlook_template_format)
msg.save("message.oft", save_options)