مدیریت ورودی‌های ژورنال MAPI در Outlook در فایل‌های PST

افزودن ورودی‌های ژورنال MAPI به فایل‌های PST

ایجاد یک فایل PST جدید و افزودن زیرپوشه‌ها نحوه ایجاد یک فایل PST جدید و افزودن یک زیرپوشه به آن را نشان می‌دهد. با Aspose.Email می‌توانید یک ورودی ژورنال MAPI جدید ایجاد کنید و آن را به یک فایل PST اضافه کنید. نمونه کد زیر نشان می‌دهد چگونه یک ورودی ژورنال ایجاد کنید، ویژگی‌های آن را تنظیم کنید و در یک فایل PST تازه‌ساخته ذخیره کنید:

  1. Create MAPI Journal Entry: یک نمونه از MapiJournal شیء با موضوع، بدنه و نوع.
  2. Set Journal Timing: زمان شروع ورودی ژورنال را به‌عنوان تاریخ و زمان جاری تنظیم کنید با استفاده از dt.datetime.now() و زمان پایان را یک ساعت بعد تنظیم کنید با استفاده از dt.datetime.today() + timedelta(hours=1).
  3. Create PST File: استفاده کنید PersonalStorage.create برای تولید یک فایل PST جدید با فرمت یونیکد.
  4. Create Journal Folder: در فایل PST جدید، یک پوشه پیش‌تعریف‌شده به نام "Journal" ایجاد کنید با استفاده از create_predefined_folder با StandardIpmFolder.JOURNAL پارامتر.
  5. Add Journal Entry to Folder: ورودی ژورنال MAPI که قبلاً ایجاد شده را با استفاده از به پوشه "Journal" اضافه کنید add_mapi_message_item.

افزودن پیوست‌ها به ورودی‌های ژورنال MAPI در فایل‌های PST

نمونه کد زیر نشان می‌دهد چگونه یک مورد ژورنال MAPI را با استفاده از کتابخانه Aspose.Email ایجاد و ذخیره کنید. ورودی ژورنال مرتبط با یک تماس تلفنی است و شامل فایل‌های پیوست می‌شود.

  1. تعریف پوشه و پیوست‌ها:
    • data_dir: متغیری که مسیر پوشه داده‌ها را که فایل‌ها و خروجی‌ها در آن ذخیره می‌شوند نگه می‌دارد.
    • attach_file_names: فهرستی شامل مسیرهای کامل فایل‌های پیوست که به ژورنال اضافه می‌شوند.
  2. ایجاد یک شیء MapiJournal:
    • A MapiJournal یک شیء با عنوان "testJournal" ایجاد می‌شود. این ورودی ژورنال در هر دو فیلد موضوع و نوع به عنوان "Phone call" توصیف می‌شود.
    • journal.start_time با استفاده از به زمان فعلی تنظیم می‌شود. datetime.now().
    • journal.end_time با افزودن یک ساعت به زمان شروع با استفاده از محاسبه می‌شود. timedelta(hours=1).
  3. تنظیم شرکت‌های مشارکت‌کننده:
    • این journal.companies صفت با فهرستی از شرکت‌های مشارکت‌کننده در این ورودی ژورنال به‌روز می‌شود.
  4. پیوست‌کردن فایل‌ها به ژورنال:
    • یک حلقه بر روی هر فایل در attach_file_names. برای هر فایل، فایل را به journal.attachments با خواندن محتوای فایل به صورت باینری.
  5. ذخیره 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"))