Управление на Outlook MAPI Journal записи в PST файлове
Contents
[
Hide
]
Добавяне на MAPI записи в журнал към PST файлове
Създайте нов PST файл и добавете подпапки показва как да създадете нов PST файл и да добавите подпапка към него. С Aspose.Email можете също да създадете нов MAPI запис в журнал и да го добавите към PST файл. Примерният код по-долу демонстрира как да създадете запис в журнал, да зададете неговите свойства и да го съхраните в новосъздаден PST файл:
- Създаване на MAPI запис в журнал: Създайте инстанция на MapiJournal обект със заглавие, тяло и тип.
- Задаване на време за журнал: Определете началното време на записа в журнала като текущата дата и час, като използвате
dt.datetime.now()и задайте крайното време с един час по-късно, като използватеdt.datetime.today() + timedelta(hours=1). - Създаване на PST файл: Използвайте PersonalStorage.create за генериране на нов PST файл с UNICODE формат.
- Създаване на папка Журнал: В новия PST файл, създайте предварително дефинирана папка с име "Journal" като използвате create_predefined_folder с
StandardIpmFolder.JOURNALпараметър. - Добавяне на журнал запис към папка: Добавете преди това създадения MAPI журнал запис в папката "Journal" като използвате add_mapi_message_item.
Прикачване на файлове към MAPI записи в журнал в PST файлове
Примерният код по-долу демонстрира как да създадете и запишете MAPI запис в журнал, използвайки библиотеката Aspose.Email. Записът в журнала е свързан с телефонно обаждане и включва прикачени файлове.
- Определяне на директория и прикачени файлове:
data_dir: Променлива, която съдържа пътя към директорията за данни, където ще се съхраняват файловете и изходните данни.attach_file_names: Списък, съдържащ пълните пътни имена на прикачените файлове, които да бъдат добавени към журнала.
- Създаване на обект MapiJournal:
- A MapiJournal се създава обект със заглавие "testJournal". Този запис в журнал се описва като "Телефонно обаждане" както в полетата за тема, така и в полето за тип.
journal.start_timeсе задава като текущо време, като се използваdatetime.now().journal.end_timeсе изчислява чрез добавяне на един час към началното време, като се използваtimedelta(hours=1).
- Задаване на участващи компании:
- Този
journal.companiesатрибутът се обновява със списък от компании, участващи в този запис в журнала.
- Този
- Прикачване на файлове към журнала:
- Цикъл обхожда всеки файл в
attach_file_names. За всеки файл, той добавя файла къмjournal.attachmentsчете се съдържанието на файла в двоичен режим.
- Цикъл обхожда всеки файл в
- Записване на MapiJournal:
- Накрая, записът в журнал се записва като файл ".msg" в указаната директория за данни.
import os
from datetime import datetime, timedelta
from aspose.email.mapi import MapiJournal
data_dir = "path_to_data_directory"
attach_file_names = [os.path.join(data_dir, "Desert.jpg"), os.path.join(data_dir, "download.png")]
journal = MapiJournal("testJournal", "This is a test journal", "Phone call", "Phone call")
journal.start_time = datetime.now()
journal.end_time = journal.start_time + timedelta(hours=1)
journal.companies = ["company 1", "company 2", "company 3"]
for attach in attach_file_names:
journal.attachments.append(attach, open(attach, 'rb').read())
journal.save(os.path.join(data_dir, "AddAttachmentsToMapiJournal_out.msg"))