שליחה, קריאה וארגון הודעות ב-Exchange Server
קבלת מידע על תיבת Exchange באמצעות EWS
Aspose.Email מאפשרת לך לקבל פרטי תיבת דואר מ-Microsoft Exchange באמצעות IEWSClient מחלקה. על ידי קריאה ל- GetMailboxInfo() מתודה, הלקוח מחזיר ExchangeMailboxInfo אובייקט המכיל כתובות URI של תיקיות שימושיות כגון Mailbox, Inbox, Drafts ו-Sent Items.
כדי להתחבר ל-Exchange Server באמצעות Exchange Web Services (EWS), השתמש ב- IEWSClient מחלקה. מחלקה זו משתמשת ב-EWS כדי להתחבר ולנהל פריטים ב-Exchange Server.
קטע קוד הבא מדגים כיצד לקבל מידע על תיבת הדואר באמצעות שירותי רשת של Exchange.
שליחת הודעות אימייל באמצעות EWS
ניתן לשלוח אימיילים דרך Exchange על‑ידי קריאה ל‑ IEWSClient->Send() שיטה. היא לוקחת MailMessage אובייקט ושולח אותו ישירות דרך השרת באמצעות EWS.
דוגמת הקוד הבאה מדגימה כיצד לשלוח הודעת דוא"ל HTML דרך Exchange Server באמצעות Exchange Web Services (EWS) עם Aspose.Email for C++. היא מציגה את תהליך ההתחברות ל-Exchange, יצירת הודעת דוא"ל עם שולח, נמען, נושא ותוכן HTML, ולאחר מכן שליחה באמצעות מתודת Send של לקוח ה-EWS.
קריאת אימיילים מתיבת הדואר של משתמש אחר
לחלק מהחשבונות ב‑Exchange Server יש את הזכות לגשת למספר תיבות דואר, ולחלק מהמשתמשים יש כמה חשבונות אימייל באותו Exchange Server. בשני המקרים, משתמשים יכולים לגשת לתיבות הדואר של משתמשים אחרים באמצעות Aspose.Email. ה‑API מספק מנגנון לגישה לתיקיות ולאימיילים מתיבות דואר אחרות באמצעות IEWSClient class. פונקציונליות זו ניתנת להשגה באמצעות המומצאת GetMailboxInfo() מתודה ולספק את כתובת האימייל של המשתמש כפרמטר.
קטע הקוד הבא מראה כיצד לקרוא אימיילים באמצעות IEWSClient מחלקה.
רשימת הודעות באמצעות EWS
Aspose.Email עבור C++ מאפשר לך לאחזר מטא‑נתוני הודעה מתיבות הדואר של Exchange Server דרך ה‑ IEWSClient. באמצעות מבוסס‑EWS ListMessages באמצעות ה‑API, ניתן לרשום הודעות מכל תיקייה, לעיין במטא‑נתוני ההודעה וליישם דפדוף עבור תיבות דואר גדולות.
רשימת הודעות מתיבת הדואר הנכנס
השתמש ListMessages כדי לאחזר מידע בסיסי על ההודעה כגון נושא, שולח, נמענים וזהות ההודעה מתיבת הדואר הנכנס או מכל תיקייה.
דוגמת קוד זו מדגימה כיצד לפרט ולהציג מידע בסיסי עבור כל ההודעות ב‑Exchange Server.
- צור מופע של IEWSClient.
- קרא ListMessages עם כתובת ה‑URI של התיקייה המבוקשת.
- לעבור על ExchangeMessageInfoCollection.
רשימת הודעות מכל תיקייה
ListMessages מתקבל כל כתובת URI תקפה של תיקייה, מאפשר לרשום פריטים מ‑Deleted Items, Drafts, Sent Items, או תיקיות מותאמות. השתמש ב‑ IEWSClient->get_MailboxInfo->xxxFolderUri מאפיין לקבלת כתובת ה‑URI של תיקיות שונות.
דוגמת קוד זו מדגימה כיצד לגשת לכתובות URI של תיקיות שונות ב‑Exchange Server ולאחזר הודעות מתיקייה שהוגדרה.
דפדוף ברשימת הודעות
לתיבות דואר גדולות, השתמש ב‑ ListMessagesByPage לטעון הודעות בחלקים קטנים יותר.
דוגמת קוד זו מדגימה כיצד ליישם דפדוף לאחזור מספר גדול של הודעות מתיבת הדואר הנכנס של Exchange Server.
- ראשית, היא יוצרת מספר הודעות בדיקה על השרת.
- לאחר מכן, משתמש ב‑ ListMessagesByPage שיטה לאחזור הודעות בחבילות קטנות יותר (5 הודעות לעמוד במקרה זה), עוברת על כל העמודים עד שהעמוד האחרון מגיע.
- בסופו של דבר, הקוד מאמת שכל ההודעות נשלפו בהצלחה על ידי ספירת כל הפריטים בכל העמודים.
קבל מידע על סוג ההודעה
השתמש ExchangeMessageInfo->MessageInfoType כדי לקבוע את סוג הודעת ה‑Exchange הבסיסית (למשל, אימייל, בקשת פגישה, וכו’).
דוגמת קוד זו מדגימה כיצד להתחבר ל‑Exchange Server ולאחזר מידע על סוג ההודעה מתיקיית Deleted Items.
שמור הודעות באמצעות Exchange Web Services (EWS)
Aspose.Email מאפשר לך לאחזר הודעות מתיבת דואר של Exchange Server ולשמור אותן במספר פורמטים, כגון EML, זרמי זיכרון, ו‑MSG. הדוגמאות למטה מדגימות כיצד לאסוף מידע על הודעה ולאחסן הודעות באמצעות ה‑ IEWSClient API.
שמור הודעות כקבצי EML
כדי לשמור הודעות תיבת דואר כקבצי EML:
- צור IEWSClient מופע באמצעות אישורים תקינים.
- קרא ListMessages() כדי לאחזר ExchangeMessagesInfoCollection.
- לעבור על האוסף כדי לגשת לכל כתובת URI ייחודית של הודעה.
- קרא SaveMessage() לאחסן כל הודעה בדיסק בפורמט EML.
דוגמת קוד זו מדגימה כיצד לשמור הודעות אימייל מתיבת הדואר הנכנס של Exchange Server כקבצי EML נפרדים מקומית באמצעות Aspose.Email עבור C++.
שמור הודעות לזרם זיכרון
במקום לכתוב לדיסק, ניתן לשמור הודעות לזרם זיכרון — שימושי לאחסון אימיילים במסד נתונים או עיבוד בזיכרון.
דוגמת קוד זו מדגימה כיצד לשמור הודעות אימייל מתיבת הדואר הנכנס של Exchange Server לזרמי זיכרון.
שמירת הודעות בפורמט MSG
כדי לשמור הודעות כ‑MSG:
- אחזר את ההודעה באמצעות FetchMessage(), שמחזירה MailMessage.
- קרא MailMessage::Save() עם אפשרויות שמירת MSG.
דוגמת קוד זו מדגימה כיצד להביא ולשמור הודעות אימייל מתיבת הדואר של Exchange Server כקבצי פורמט Outlook MSG.
אחזר פרטי הודעה לפי כתובת URI של ההודעה
כאשר קיימת רק כתובת URI ייחודית של הודעה, עדיין ניתן לאחזר את כל ExchangeMessageInfo אובייקטים. ה- IEWSClient::ListMessages() הגרסה העמוסה מקבלת רשימת מזהי הודעות (URIs) ומחזירה ExchangeMessageInfoCollection. השתמש בתכונה זו כאשר אתה מאחסן או מקבל כתובות URI של הודעות מבחוץ וצריך לטעון מטא‑נתונים (נושא, שולח, גודל, וכו’) ללא שליפת הודעות מלאות.
דוגמת קוד זו מדגימה כיצד ליצור מספר הודעות אימייל ב‑Exchange Server ולאחר מכן לאחזר את מידע ההודעה שלהן באמצעות מזהים ייחודיים.
שלוף תוכן הודעה מלא
ListMessages() מחזירה מידע סיכום (נושא, שולח, מזהים). כדי לטעון תוכן הודעה מלא — גוף, כותרות, קבצים מצורפים — השתמש ב‑ FetchMessage().
דוגמת קוד זו מדגימה כיצד להביא הודעות מלאות מתיבת הדואר של Exchange Server ולחלץ מידע על קבצים מצורפים:
- צור IEWSClient מופע.
- קרא ListMessages() כדי לקבל מטא‑נתונים בסיסיים של הודעה.
- לחלץ את ה‑UniqueUri של כל הודעה.
- קרא FetchMessage() כדי לאחזר פרטים מלאים של ההודעה.
שלוף גודל הודעה (בלי להוריד את כל ההודעה)
Aspose.Email מספק מידע על גודל ההודעה ללא שליפת כל האימייל, דרך ה‑ ExchangeMessageInfo::Size מאפיין.
זה שימושי עבור:
- סטטיסטיקות תיבת דואר
- חישובי מכס
- סינון הודעות גדולות לפני הורדה
דוגמת קוד זו מדגימה כיצד לרשום ולהציג מטא‑נתוני הודעה כולל גודל מתיבת הדואר של Exchange Server.
הורד אימיילים מתיקיות ציבוריות של Exchange
תיקיות ציבוריות ב‑Exchange מאפשרות אחסון הודעות משותפות בין משתמשים.
Aspose.Email IEWSClient מאפשר לך לבצע את הפעולות הבאות עם תיקיות והודעות המאוחסנים בהם:
- רשום תיקיות ציבוריות
- עיין בתתי‑תיקיות בצורה רקורסיבית
- הורד הודעות ושמור אותן (למשל, כקובצי MSG)
הערה: נדרש Microsoft Exchange Server 2007 או גרסה מאוחרת יותר, שכן גרסאות קודמות אינן תומכות ב‑EWS.
דוגמת קוד זו מדגימה כיצד להוריד הודעות מכל התיקיות הציבוריות ותתי‑תיקיותיהן ב‑Exchange Server באופן רקורסיבי, ולשמור אותן כקבצי Outlook MSG במחשב המקומי.
העבר הודעות בין תיקיות Exchange
ניתן להעביר הודעות מתיקייה אחת ב‑Exchange לתיקייה אחרת באמצעות IEWSClient::MoveItem שיטה. היא דורשת:
- כתובת URI ייחודית של ההודעה להעברה.
- כתובת URI ייחודית של תיקיית היעד.
דוגמת קוד זו מדגימה כיצד לסנן ולהזיז הודעות אימייל ספציפיות מתיבת הדואר של Exchange Server לתיקייה אחרת על בסיס קריטריוני תוכן.
- התחבר ל‑Exchange Server באמצעות אישורי EWS.
- קבל מידע על תיבת הדואר (כתובות URI של תיקיות).
- רשום את כל ההודעות מתיבת הדואר הנכנס.
- לחזור על כל הודעה.
- בדוק אם הנושא מכיל "process this message".
- העבר הודעות תואמות לתיקיית Deleted Items.
- הצג אישור עבור כל הודעה שהועברה.
מחק הודעות מתיקיית Exchange
אתה יכול למחוק הודעות דוא"ל מתיקייה בעזרת ה- IEWSClient->DeleteMessage שיטה. היא מקבלת את כתובת ה-URI הייחודית של ההודעה כפרמטר.
דוגמת קוד זו מדגימה כיצד לסנן ולמחוק הודעות אימייל ספציפיות מתיבת הדואר של Exchange Server על בסיס קריטריון נושא.
- עבור על הודעות בתיבת הדואר הנכנס.
- עבד הודעות על בסיס קריטריונים מסוימים (בדוגמה זו, אנו מחפשים מילת מפתח בנושא ההודעה).
- מחק הודעות תואמות.
העתק הודעות לתיקייה אחרת ב‑Exchange
השתמש IEWSClient::CopyItem כדי לשכפל הודעה לתיקייה אחרת. הגרסה העמוסה מחזירה את כתובת ה‑URI של העתק החדש שנוצר.
דוגמת קוד זו מדגימה כיצד ליצור הודעת אימייל ב‑Exchange Server ולהעתיק אותה לתיקייה אחרת.