إدارة جهات اتصال Outlook في ملفات PST
إنشاء، حفظ وقراءة جهات الاتصال
تتيح لك Aspose.Email إنشاء ومعالجة جهات اتصال Outlook. الـ MapiContact الفئة توفر جميع الخصائص المتعلقة بالاتصال اللازمة لإنشاء وتعديل جهة اتصال Outlook. يوضح هذا المقال كيفية إنشاء، حفظ وقراءة جهة اتصال Outlook باستخدام MapiContact فئة.
إنشاء وحفظ جهات اتصال Outlook
لإنشاء جهة اتصال وحفظها على القرص، اتبع الخطوات التالية:
- إنشاء كائن جديد من MapiContact فئة.
- أدخل معلومات خصائص جهة الاتصال.
- أضف بيانات الصورة (إن وجدت).
- احفظ جهة الاتصال بصيغة MSG أو VCard.
يظهر مقتطف الشيفرة التالي كيفية إنشاء وحفظ جهة اتصال Outlook:
import aspose.email as ae
data_dir = "path/to/data/directory"
contact = ae.mapi.MapiContact()
contact.name_info = ae.mapi.MapiContactNamePropertySet("Bertha", "A.", "Buell")
contact.professional_info = ae.mapi.MapiContactProfessionalPropertySet("Awthentikz", "Social work assistant")
contact.personal_info.personal_home_page = "B2BTies.com"
contact.physical_addresses.work_address.address = "Im Astenfeld 59 8580 EDELSCHROTT"
contact.electronic_addresses.email1 = ae.mapi.MapiContactElectronicAddress("Experwas", "SMTP", "BerthaABuell@armyspy.com")
contact.telephones = ae.mapi.MapiContactTelephonePropertySet("06605045265")
contact.personal_info.children = ["child1", "child2", "child3"]
contact.categories = ["category1", "category2", "category3"]
contact.mileage = "Some test mileage"
contact.billing = "Test billing information"
contact.other_fields.journal = True
contact.other_fields.private = True
contact.other_fields.reminder_topic = "Test topic"
contact.other_fields.user_field1 = "ContactUserField1"
contact.other_fields.user_field2 = "ContactUserField2"
contact.other_fields.user_field3 = "ContactUserField3"
contact.other_fields.user_field4 = "ContactUserField4"
# Add a photo
with open(data_dir + "Desert.jpg", "rb") as file:
buffer = file.read()
contact.photo = ae.mapi.MapiContactPhoto(buffer, ae.mapi.MapiContactPhotoImageFormat.JPEG)
# Save the Contact in MSG format
contact.save(data_dir + "MapiContact_out.msg", ae.mapi.ContactSaveFormat.MSG)
# Save the Contact in VCF format
contact.save(data_dir + "MapiContact_out.vcf", ae.mapi.ContactSaveFormat.V_CARD)
حفظ جهات الاتصال بصيغة VCF الإصدار 3
لحفظ جهة اتصال بصيغة VCF الإصدار 3، استخدم خاصية version لكائن VCardSaveOptions فئة.
- إنشاء مثيل جديد من VCardSaveOptions فئة.
- عيّن خاصية الإصدار لكائن VCardSaveOptions إلى VCardVersion.V30. هذا يحدد إصدار vCard إلى 3.0.
- استدعِ الـ save طريقة كائن MapiContact، مع تمرير اسم الملف "contact.vcf" وكائن VCardSaveOptions كمعاملات. يحفظ هذا جهة الاتصال كملف vCard بالاسم والخيارات المحددة.
يظهر مقتطف الشيفرة التالي كيفية حفظ جهة اتصال بصيغة VCF الإصدار 3:
import aspose.email as ae
contact = ae.mapi.MapiContact()
contact.name_info = ae.mapi.MapiContactNamePropertySet("Bertha", "A.", "Buell")
options = ae.personalinfo.vcard.VCardSaveOptions()
options.version = ae.personalinfo.vcard.VCardVersion.V30
contact.save("contact.vcf", options)
تحميل جهات الاتصال من ملفات MSG أو VCard
الـ MapiContact يمكن استخدام الفئة لتحميل جهات اتصال بصيغة Outlook MSG و VCard.
لـ تحميل جهة اتصال من MSG، استخدم مثال الشيفرة أدناه:
لـ تحميل جهة اتصال من VCard، استخدم مثال الشيفرة التالي:
تحميل جهات الاتصال بترميز محدد
يظهر مقتطف الشيفرة التالي كيفية تحميل جهة اتصال من vcard بالترميز المحدد.
حفظ ملفات VCard بترميز حرف مخصص
عند حفظ ملف vCard، يمكنك تحديد ترميز الأحرف لضمان التوافق مع الأحرف غير ASCII. على سبيل المثال، تعيين خاصية preferred_text_encoding لكائن VCardSaveOptions كائن إلى "utf-8" يضمن ترميزًا صحيحًا للنص غير ASCII. هذه الميزة مفيدة خصوصًا للتعامل مع بيانات جهات اتصال متعددة اللغات. فيما يلي مثال على كيفية تكوين وحفظ ملف vCard بترميز حرف مخصص:
import aspose.email as ae
contact = ae.mapi.MapiContact()
contact.name_info = ae.mapi.MapiContactNamePropertySet("Bertha", "A.", "Buell")
options = ae.personalinfo.vcard.VCardSaveOptions()
options.preferred_text_encoding = "utf-8"
contact.save("contact.vcf", options)
حفظ ملفات VCard بالخصائص الموسعة
بالإضافة إلى حقول vCard القياسية، يمكنك تحسين ملفات vCard الخاصة بك عن طريق تضمين خصائص موسعة. هذه هي سمات إضافية لا يغطيها مواصفة vCard القياسية، مما يسمح بمزيد من التخصيص. لتمكين ذلك، عيّن خاصية use_extensions لكائن VCardSaveOptions فئة إلى True. هذا مفيد خصوصًا لإضافة بيانات ميتا مخصصة أو خاصة بالتطبيق. إليك كيفية حفظ ملف vCard مع تمكين الخصائص الموسعة:
import aspose.email as ae
contact = ae.mapi.MapiContact()
contact.name_info = ae.mapi.MapiContactNamePropertySet("Bertha", "A.", "Buell")
options = ae.personalinfo.vcard.VCardSaveOptions()
options.use_extensions = True
contact.save("contact.vcf", options)
قراءة جهات اتصال متعددة بصيغة VCard
لاسترجاع جميع جهات الاتصال من VCard، يمكنك استخدام التالي طرق:
- is_multi_contacts طريقة تحدد ما إذا كان التدفق يحتوي على عدة جهات اتصال.
- load_as_multiple(file_path) طريقة تقوم بتحميل قائمة بجميع جهات الاتصال من ملف VCard.
- load_as_multiple(stream) طريقة تقوم بتحميل قائمة بجميع جهات الاتصال من تدفق VCard.
يظهر مقتطف الشيفرة أدناه عملية قراءة جهات اتصال متعددة من ملف VCard:
import aspose.email as ae
contact = ae.mapi.MapiContact()
contact.name_info = ae.mapi.MapiContactNamePropertySet("Bertha", "A.", "Buell")
options = ae.personalinfo.vcard.VCardSaveOptions()
options.use_extensions = True
contact.save("contact.vcf", options)
if ae.personalinfo.vcard.VCardContact.is_multi_contacts("contact.vcf"):
ae.personalinfo.vcard.VCardContact.load_as_multiple("contact.vcf")
عرض معلومات جهة الاتصال إلى MHTML
يمكن تحويل جهة اتصال Outlook إلى MHTML باستخدام Aspose.Email API. يظهر مثال الشيفرة التالي كيفية إنشاء ملف MHTML يحتوي على معلومات جهة اتصال تفصيلية أصلًا من ملف MSG:
- حمّل ملف MSG كـ MapiMessage الكائن.
- حوّل الرسالة إلى صيغة EML.
- حضّر خيارات حفظ MHT:
- فعّل ترميز محتوى الجسم واحفظ الحدود الأصلية.
- عيّن خيارات تنسيق MHT لكتابة رؤوس وعرض معلومات vCard.
- حدد الحقول التي سيتم عرضها في MHT.
- احفظ ملف EML كملف MHTML.