עבודה עם אנשי קשר של Outlook

יצירת, שמירה וקריאת אנשי קשר

כמו MapiMessage, Aspose.Email מאפשרת ליצור אנשי קשר של Outlook. מחלקת MapiContact מספקת את כל המאפיינים הקשורים לאיש קשר הדרושים ליצירת איש קשר של Outlook. מאמר זה מראה כיצד ליצור, לשמור ולקרוא איש קשר של Outlook בעזרת מחלקת MapiContact.

יצירת ושמירת איש קשר של Outlook

כדי ליצור איש קשר ולשמור אותו בכונן:

  1. צור מופע חדש של מחלקת MapiContact.
  2. הזן מידע על מאפייני האיש קשר.
  3. הוסף נתוני תמונה (אם קיימים).
  4. שמור את האיש קשר בפורמט 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, הגדר את המאפיין version של האובייקט 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)

קריאת MapiContact

המחלקה MapiContact ניתנת לשימוש לטעון אנשי קשר בפורמט Outlook MSG ו‑VCard. קטע הקוד הבא מראה כיצד לטעון אנשי קשר של Outlook שנשמרו כ‑MSG ו‑VCF ל‑MapiContact.

טעינת איש קשר מ-MSG

קטע הקוד הבא מראה כיצד לטעון איש קשר מ-MSG.

טעינת איש קשר מ‑vCard

קטע הקוד הבא מראה כיצד לטעון איש קשר מ‑vCard.

טעינת איש קשר מ‑vCard עם קידוד ספציפי

קטע הקוד הבא מראה כיצד לטעון איש קשר מ‑vCard עם קידוד ספציפי.

שמירת פריטי איש קשר VCard עם קידוד ספציפי

בעת שמירת קובץ VCard, אפשר לציין את קידוד התווים שישמש, כדי לוודא תאימות לתווים שאינם ASCII. הגדר את המאפיין preferred_text_encoding של האובייקט VCardSaveOptions ל‑"utf-8". קטע הקוד הבא מראה כיצד ליישם פונקציה זו בפרויקט שלך:

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 המחלקה מאפשרת לך לבצע זאת. קטע הקוד הבא מראה כיצד לשמור קובץ 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:

# Checks whether VCard source stream contains multiple contacts.
aspose.email.personalinfo.vcard.VCardContact.is_multi_contacts(stream)

# Loads list of all contacts from VCard file.
aspose.email.personalinfo.vcard.VCardContact.load_as_multiple(file_path, encoding)

# Loads list of all contacts from VCard stream.
aspose.email.personalinfo.vcard.VCardContact.load_as_multiple(stream, encoding)

קטע הקוד למטה יציג את תהליך קריאת מספר אנשי קשר מקובץ 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. דוגמה זו מראה כיצד vCard נטען לתוך MapiContact ולאחר מכן מומר ל‑MHTML בעזרת MailMessage API.