การจัดการรายการบันทึกประจำวัน MAPI ของ Outlook ในไฟล์ PST
Contents
[
Hide
]
เพิ่มรายการ Journal ของ MAPI ไปยังไฟล์ PST
สร้างไฟล์ PST ใหม่และเพิ่มโฟลเดอร์ย่อย แสดงวิธีสร้างไฟล์ PST ใหม่และเพิ่มโฟลเดอร์ย่อยลงไป. ด้วย Aspose.Email คุณยังสามารถสร้างรายการบันทึก MAPI ใหม่และเพิ่มลงในไฟล์ PST ได้ ตัวอย่างโค้ดด้านล่างสาธิตวิธีสร้างรายการบันทึก, ตั้งค่าคุณสมบัติของมัน, และเก็บไว้ในไฟล์ PST ที่สร้างใหม่:
- สร้างรายการ Journal ของ MAPI: สร้างอินสแตนซ์ของ MapiJournal อ็อบเจ็กต์ที่มีหัวเรื่อง, เนื้อหา และประเภท
- กำหนดเวลา Journal: กำหนดเวลาเริ่มต้นของรายการบันทึกเป็นวันและเวลาปัจจุบันโดยใช้
dt.datetime.now()และตั้งเวลาสิ้นสุดให้ช้ากว่าอีกหนึ่งชั่วโมงโดยใช้dt.datetime.today() + timedelta(hours=1). - สร้างไฟล์ PST: ใช้ PersonalStorage.create เพื่อสร้างไฟล์ PST ใหม่ด้วยรูปแบบ UNICODE.
- สร้างโฟลเดอร์ Journal: ภายในไฟล์ PST ใหม่, สร้างโฟลเดอร์ที่กำหนดไว้ล่วงหน้าชื่อ "Journal" โดยใช้ create_predefined_folder ด้วย
StandardIpmFolder.JOURNALพารามิเตอร์ - Add Journal Entry to Folder: เพิ่มรายการบันทึกประจำวัน MAPI ที่สร้างไว้ก่อนหน้านี้ไปยังโฟลเดอร์ "Journal" โดยใช้ add_mapi_message_item.
เพิ่มไฟล์แนบไปยังรายการ Journal ของ MAPI ในไฟล์ PST
ตัวอย่างโค้ดด้านล่างสาธิตวิธีสร้างและบันทึกรายการบันทึก MAPI โดยใช้ไลบรารี Aspose.Email รายการบันทึกนี้เกี่ยวข้องกับการโทรศัพท์และมีไฟล์แนบ
- กำหนดไดเรกทอรีและไฟล์แนบ:
data_dir: ตัวแปรที่เก็บพาธไปยังไดเรกทอรีข้อมูลที่ไฟล์และผลลัพธ์จะถูกจัดเก็บattach_file_names: รายการที่ประกอบด้วยชื่อไฟล์พาธเต็มของไฟล์แนบที่จะเพิ่มเข้าไปใน journal.
- สร้างอ็อบเจ็กต์ MapiJournal:
- A MapiJournal อ็อบเจ็กต์ถูกสร้างด้วยหัวเรื่อง "testJournal". รายการบันทึกนี้ถูกระบุเป็น "การโทรศัพท์" ทั้งในฟิลด์หัวเรื่องและประเภท
journal.start_timeตั้งค่าเป็นเวลาเท่าเดี๋ยวนี้โดยใช้datetime.now().journal.end_timeคำนวณโดยเพิ่มหนึ่งชั่วโมงไปยังเวลาเริ่มต้นโดยใช้timedelta(hours=1).
- ตั้งค่าบริษัทที่เกี่ยวข้อง:
- นี้
journal.companiesแอตทริบิวต์จะถูกอัปเดตด้วยรายการบริษัทที่เกี่ยวข้องในรายการบันทึกนี้
- นี้
- แนบไฟล์ไปยัง Journal:
- ลูปทำซ้ำสำหรับแต่ละไฟล์ใน
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"))