Exchange सर्वर पर संदेश भेजें, पढ़ें और व्यवस्थित करें
EWS के साथ Exchange Mailbox जानकारी प्राप्त करें
Aspose.Email आपको Microsoft Exchange से mailbox विवरण प्राप्त करने देता है, उपयोग करके IEWSClient क्लास। कॉल करके GetMailboxInfo() मेथड, क्लाइंट एक लौटाता है ExchangeMailboxInfo ऑब्जेक्ट जिसमें उपयोगी फ़ोल्डर URIs जैसे Mailbox, Inbox, Drafts, और Sent Items होते हैं।
Exchange Web Services (EWS) के साथ Exchange सर्वर से कनेक्ट करने के लिए, उपयोग करें IEWSClient क्लास। यह क्लास EWS का उपयोग करके Exchange सर्वर से कनेक्ट होती है और आइटम प्रबंधित करती है।
निम्नलिखित कोड स्निपेट दर्शाता है कि कैसे mailbox जानकारी प्राप्त करें, एक्सचेंज वेब सर्विसेज़ का उपयोग करके।
EWS के माध्यम से ईमेल संदेश भेजें
आप एक्सचेंज के माध्यम से ईमेल भेज सकते हैं, कॉल करके IEWSClient->Send() विधि। यह लेती है एक MailMessage ऑब्जेक्ट और इसे सीधे सर्वर के माध्यम से EWS का उपयोग करके सबमिट करता है।
निम्नलिखित कोड नमूना दर्शाता है कि कैसे Aspose.Email for C++ के साथ Exchange Web Services (EWS) का उपयोग करके Exchange सर्वर के माध्यम से एक HTML ईमेल संदेश भेजें। यह Exchange से कनेक्शन स्थापित करने, प्रेषक, प्राप्तकर्ता, विषय और HTML सामग्री के साथ मेल संदेश बनाने, और फिर EWS क्लाइंट के Send मेथड का उपयोग करके संदेश भेजने की पूरी प्रक्रिया दिखाता है।
अन्य उपयोगकर्ता की मेलबॉक्स से ईमेल पढ़ना
एक्सचेंज सर्वरों पर कुछ खातों को कई मेलबॉक्स तक पहुँचने का अधिकार होता है, और कुछ उपयोगकर्ताओं के पास समान एक्सचेंज सर्वर पर कई ईमेल खाते होते हैं। दोनों मामलों में, उपयोगकर्ता Aspose.Email के साथ अन्य उपयोगकर्ताओं के मेलबॉक्स तक पहुंच सकते हैं। API फ़ोल्डर और ईमेल को अन्य मेलबॉक्स से पहुँचाने के लिए एक तंत्र प्रदान करता है, जिसका उपयोग IEWSClient क्लास। यह कार्यक्षमता ओवरलोडेड GetMailboxInfo() मेथड और उपयोगकर्ता ईमेल पता को पैरामीटर के रूप में प्रदान करके।
निम्न कोड स्निपेट दिखाता है कि आप ईमेल कैसे पढ़ सकते हैं IEWSClient क्लास।
EWS का उपयोग करके संदेश सूचीबद्ध करें
C++ के लिए Aspose.Email आपको एक्सचेंज सर्वर मेलबॉक्स से संदेश मेटाडेटा प्राप्त करने की अनुमति देता है, के माध्यम से IEWSClient. EWS-आधारित का उपयोग करके ListMessages API के माध्यम से, आप किसी भी फ़ोल्डर से संदेश सूचीबद्ध कर सकते हैं, संदेश मेटाडेटा ब्राउज़ कर सकते हैं, और बड़े मेलबॉक्स के लिए पेजिंग लागू कर सकते हैं।
इनबॉक्स से संदेश सूचीबद्ध करें
उपयोग करें ListMessages इनबॉक्स या किसी भी फ़ोल्डर से विषय, प्रेषक, प्राप्तकर्ता, और संदेश ID जैसी मूल संदेश जानकारी प्राप्त करने के लिए।
निम्न कोड उदाहरण दर्शाता है कि एक्सचेंज सर्वर में सभी संदेशों की मूल जानकारी कैसे सूचीबद्ध और प्रदर्शित करें।
- का एक इंस्टेंस बनाएं IEWSClient.
- कॉल करें ListMessages लक्ष्य फ़ोल्डर URI के साथ।
- के माध्यम से दोहराएँ ExchangeMessageInfoCollection.
किसी भी फ़ोल्डर से संदेश सूचीबद्ध करें
ListMessages किसी भी मान्य फ़ोल्डर URI को स्वीकार करता है, जिससे आप Deleted Items, Drafts, Sent Items, या कस्टम फ़ोल्डर से आइटम सूचीबद्ध कर सकते हैं। उपयोग करें IEWSClient->get_MailboxInfo->xxxFolderUri विभिन्न फ़ोल्डरों के URI प्राप्त करने के लिए प्रॉपर्टी।
निम्न कोड उदाहरण दर्शाता है कि विभिन्न एक्सचेंज सर्वर फ़ोल्डर URIs तक कैसे पहुँचें और निर्दिष्ट फ़ोल्डर से संदेश प्राप्त करें।
संदेश सूची में पेजिनेशन
बड़े मेलबॉक्स के लिए, उपयोग करें ListMessagesByPage छोटे ब्लॉकों में संदेश लोड करने के लिए।
निम्न कोड उदाहरण दर्शाता है कि एक्सचेंज सर्वर के इनबॉक्स से बड़ी संख्या में संदेश प्राप्त करने के लिए पेजिनेशन कैसे लागू करें।
- पहले, यह सर्वर पर कई परीक्षण संदेश बनाता है।
- फिर, इसका उपयोग करता है ListMessagesByPage छोटे बैच (इस मामले में प्रति पृष्ठ 5 संदेश) में संदेश प्राप्त करने की विधि, सभी पृष्ठों पर दोहराते हुए जब तक अंतिम पृष्ठ नहीं पहुँच जाता।
- अंत में, कोड सभी संदेशों को सफलतापूर्वक प्राप्त हुआ यह सत्यापित करता है, सभी पृष्ठों में कुल आइटम गिनकर।
संदेश प्रकार जानकारी प्राप्त करें
उपयोग करें ExchangeMessageInfo->MessageInfoType अधोलेखित एक्सचेंज संदेश प्रकार निर्धारित करने के लिए (जैसे, ईमेल, मीटिंग अनुरोध, आदि)।
निम्न कोड उदाहरण दर्शाता है कि कैसे एक्सचेंज सर्वर से कनेक्ट करें और Deleted Items फ़ोल्डर से संदेश प्रकार जानकारी प्राप्त करें।
Exchange Web Services (EWS) का उपयोग करके संदेश सहेजें
Aspose.Email आपको एक्सचेंज सर्वर मेलबॉक्स से संदेश प्राप्त करने और उन्हें कई फ़ॉर्मैट्स में सहेजने में सक्षम बनाता है, जैसे EML, मेमोरी स्ट्रिम्स, और MSG। नीचे के उदाहरण दिखाते हैं कि संदेश जानकारी कैसे प्राप्त करें और संदेशों को उपयोग करके सहेजें। IEWSClient API।
संदेशों को EML फ़ाइलों के रूप में सहेजें
मेलबॉक्स संदेशों को EML फ़ाइलों के रूप में सहेजने के लिए:
- एक बनाएं IEWSClient वैध क्रेडेंशियल्स का उपयोग करके एक उदाहरण।
- कॉल करें ListMessages() एक प्राप्त करने के लिए ExchangeMessagesInfoCollection.
- संग्रह के माध्यम से लूप करें ताकि प्रत्येक संदेश के अद्वितीय URI तक पहुँच सकें।
- कॉल करें SaveMessage() प्रत्येक संदेश को डिस्क पर EML फ़ॉर्मेट में संग्रहीत करने के लिए।
निम्न कोड उदाहरण दर्शाता है कि Aspose.Email for C++ का उपयोग करके एक्सचेंज सर्वर इनबॉक्स से ईमेल संदेशों को स्थानीय रूप से व्यक्तिगत EML फ़ाइलों के रूप में कैसे सहेजा जाए।
संदेशों को मेमोरी स्ट्रिम में सहेजें
डिस्क पर लिखने के बजाय, आप संदेशों को मेमोरी स्ट्रिम में सहेज सकते हैं—डेटाबेस में ईमेल संग्रहीत करने या मेमोरी में प्रोसेस करने के लिए उपयोगी।
निम्न कोड उदाहरण दर्शाता है कि एक्सचेंज सर्वर इनबॉक्स से ईमेल संदेशों को मेमोरी स्ट्रिम्स में कैसे सहेजा जाए।
MSG फ़ॉर्मेट में संदेश सहेजें
संदेशों को MSG के रूप में सहेजने के लिए:
- संदेश प्राप्त करें उपयोग करके FetchMessage(), जो लौटाता है एक MailMessage.
- कॉल करें MailMessage::Save() MSG सहेजने के विकल्पों के साथ।
निम्न कोड उदाहरण दर्शाता है कि एक्सचेंज सर्वर इनबॉक्स से ईमेल संदेशों को कैसे प्राप्त और Outlook MSG फ़ॉर्मेट फ़ाइलों के रूप में सहेजा जाए।
संदेश URI द्वारा संदेश विवरण प्राप्त करें
जब केवल संदेश का अद्वितीय URI उपलब्ध हो, तब भी आप पूर्ण प्राप्त कर सकते हैं ExchangeMessageInfo ऑब्जेक्ट्स। The IEWSClient::ListMessages() ओवरलोड संदेश IDs (URIs) की सूची स्वीकार करता है और एक लौटाता है ExchangeMessageInfoCollection. इस सुविधा का उपयोग तब करें जब आप बाहरी रूप से संदेश URIs संग्रहीत या प्राप्त करते हैं और पूर्ण संदेशों को प्राप्त किए बिना मेटाडाटा (विषय, प्रेषक, आकार, आदि) लोड करना चाहते हों।
निम्न कोड उदाहरण दर्शाता है कि एक्सचेंज सर्वर पर कई ईमेल संदेश कैसे बनाएं और फिर उनके अद्वितीय पहचानकर्ताओं का उपयोग करके संदेश जानकारी प्राप्त करें।
पूर्ण संदेश सामग्री प्राप्त करें
ListMessages() वापस देता है सारांश जानकारी (विषय, प्रेषक, IDs)। पूर्ण संदेश सामग्री — बॉडी, हेडर, अटैचमेंट — लोड करने के लिए उपयोग करें FetchMessage().
निम्न कोड उदाहरण दर्शाता है कि एक्सचेंज सर्वर इनबॉक्स से पूर्ण संदेश कैसे प्राप्त करें और अटैचमेंट जानकारी निकालें:
- एक बनाएं IEWSClient इंस्टैंस।
- कॉल करें ListMessages() मूल संदेश मेटाडाटा प्राप्त करने के लिए।
- प्रत्येक संदेश का UniqueUri निकालें।
- कॉल करें FetchMessage() पूर्ण संदेश विवरण प्राप्त करने के लिए।
संदेश आकार प्राप्त करें (पूर्ण संदेश डाउनलोड किए बिना)
Aspose.Email पूरे ईमेल को प्राप्त किए बिना संदेश आकार जानकारी प्रदान करता है, के माध्यम से ExchangeMessageInfo::Size प्रॉपर्टी।
यह उपयोगी है के लिए:
- मेलबॉक्स आँकड़े
- कोटा गणना
- डownload करने से पहले बड़े संदेशों को फ़िल्टर करना
निम्न कोड उदाहरण दर्शाता है कि एक्सचेंज सर्वर इनबॉक्स से संदेश मेटाडाटा सहित आकार कैसे सूचीबद्ध और प्रदर्शित करें।
Exchange सार्वजनिक फ़ोल्डरों से ईमेल डाउनलोड करें
Exchange सार्वजनिक फ़ोल्डर उपयोगकर्ताओं के बीच साझा संदेशों को संग्रहीत करने की अनुमति देते हैं।
Aspose.Email IEWSClient आपको इन फ़ोल्डरों और उनमें संग्रहीत संदेशों पर निम्नलिखित कार्य करने की अनुमति देता है:
- सार्वजनिक फ़ोल्डर सूचीबद्ध करें
- सबफ़ोल्डर को पुनरावर्ती रूप से ब्राउज़ करें
- संदेश डाउनलोड करें और उन्हें सहेजें (जैसे, MSG फ़ाइलें)।
नोट: Microsoft Exchange Server 2007 या बाद का संस्करण आवश्यक है, क्योंकि पहले के संस्करण EWS का समर्थन नहीं करते।
निम्न कोड उदाहरण दर्शाता है कि एक्सचेंज सर्वर पर सभी सार्वजनिक फ़ोल्डरों और उनके सबफ़ोल्डरों से संदेशों को पुनरावर्ती रूप से कैसे डाउनलोड करें, और उन्हें स्थानीय रूप से Outlook MSG फ़ाइलों के रूप में सहेजें।
एक्सचेंज फ़ोल्डरों के बीच संदेश स्थानांतरित करें
आप एक एक्सचेंज फ़ोल्डर से दूसरे में संदेश ले जा सकते हैं, उपयोग करके IEWSClient::MoveItem विधि। इसमें आवश्यक है:
- स्थानांतरित करने वाले संदेश का अद्वितीय URI।
- गंतव्य फ़ोल्डर का अद्वितीय URI।
निम्न कोड उदाहरण दर्शाता है कि सामग्री मानदंड के आधार पर एक्सचेंज सर्वर इनबॉक्स से विशिष्ट ईमेल संदेशों को फ़िल्टर और दूसरे फ़ोल्डर में कैसे ले जाएँ।
- EWS क्रेडेंशियल्स का उपयोग करके एक्सचेंज सर्वर से कनेक्ट करें।
- मेलबॉक्स जानकारी प्राप्त करें (फ़ोल्डर URIs)।
- इनबॉक्स से सभी संदेश सूचीबद्ध करें।
- प्रत्येक संदेश के माध्यम से दोहराएँ।
- जाँचें कि विषय में "process this message" शामिल है या नहीं।
- मेल खाने वाले संदेशों को Deleted Items फ़ोल्डर में ले जाएँ।
- प्रत्येक स्थानांतरित संदेश के लिए पुष्टि आउटपुट करें।
एक्सचेंज फ़ोल्डर से संदेश हटाएँ
आप फ़ोल्डर से ईमेल संदेश को इसके उपयोग से हटा सकते हैं। IEWSClient->DeleteMessage मेथड। यह संदेश के यूनिक URI को पैरामीटर के रूप में लेता है।
निम्न कोड उदाहरण दर्शाता है कि विषय मानदंड के आधार पर एक्सचेंज सर्वर इनबॉक्स से विशिष्ट ईमेल संदेशों को फ़िल्टर और हटाया जाए।
- इनबॉक्स संदेशों के माध्यम से दोहराएँ।
- किसी मानदंड के आधार पर संदेशों को प्रोसेस करें (इस उदाहरण में, हम संदेश विषय में एक कीवर्ड खोजते हैं)।
- मिलते-जुलते संदेश हटाएँ।
संदेशों को दूसरे एक्सचेंज फ़ोल्डर में कॉपी करें
उपयोग करें IEWSClient::CopyItem एक संदेश को दूसरे फ़ोल्डर में डुप्लिकेट करने के लिए। ओवरलोडेड संस्करण नई बनाई गई कॉपी का URI लौटाता है।
निम्न कोड उदाहरण दर्शाता है कि एक्सचेंज सर्वर पर ईमेल संदेश कैसे बनाएं और इसे दूसरे फ़ोल्डर में कॉपी करें।