एक्सचेंज मेलबॉक्स से संदेश फ़िल्टर करें
Aspose.Email for C++ डेवलपर्स को Exchange मेलबॉक्स में संदेशों को फ़िल्टर करने की अनुमति देता है, उपयोग करके IEWSClient, MailQuery, and ExchangeQueryBuilder. आप संदेशों को तिथि, प्रेषक, डोमेन, MessageID, डिलीवरी सूचनाओं और कई अन्य मानकों के अनुसार फ़िल्टर कर सकते हैं।
फ़ोल्डर से संदेशों को आगे की प्रोसेसिंग के लिए प्राप्त करने के लिए, IEWSClient. के पास निम्नलिखित विधियाँ हैं:
- ListMessages() - एक मेलबॉक्स से सभी संदेश प्राप्त करता है।
- ListMessages() ओवरलोड - केवल उन संदेशों को लौटाता है जो विशिष्ट शर्तों से मेल खाते हैं। यह एक MailQuery जो फ़िल्टरिंग नियमों को परिभाषित करता है जैसे कि विषय कीवर्ड, तिथि सीमा, और पता-आधारित फ़िल्टरिंग।
IEWSClient के साथ संदेश फ़िल्टर करें
निम्नलिखित कोड नमूना दिखाता है कि Aspose.Email for C++ के साथ Exchange Web Services (EWS) का उपयोग करके एक्सचेंज सर्वर से विशिष्ट ईमेल कैसे क्वेरी और प्राप्त करें। यह पूरी प्रक्रिया दिखाता है कि Exchange सर्वर (इस मामले में Office 365) से कैसे कनेक्ट करें, विषय में "Newsletter" वाले संदेशों को आज के दिन में प्राप्त करने के लिए खोज क्वेरी बनाएं, इनबॉक्स पर क्वेरी चलाएँ, मेलिंग संदेश प्राप्त करें, और त्रुटि हैंडलिंग के साथ कनेक्शन जीवनचक्र को उचित रूप से संभालें।
- Exchange सर्वर से कनेक्ट करने के लिए उपयोग करें IEWSClient.
- एक बनाएं MailQuery या ExchangeQueryBuilder और फ़िल्टरिंग शर्तें परिभाषित करें।
- कॉल करें ListMessages(folderUri, query) फ़िल्टर किए गए परिणाम प्राप्त करने के लिए।
मानदंड पर संदेश फ़िल्टर करें
ऊपर दिया गया कोड नमूना ईमेल विषय और तिथि के आधार पर संदेशों को फ़िल्टर करता है। आप अन्य गुणों पर भी फ़िल्टर कर सकते हैं। नीचे कुछ उदाहरण हैं जो शर्तें सेट करने के लिए उपयोग किए जाते हैं MailQuery.
आज की तिथि के आधार पर फ़िल्टर करें
निम्नलिखित कोड नमूना दर्शाता है कि कैसे एक क्वेरी बनाकर आज प्राप्त हुए ईमेल खोजे जाएँ।
तिथि सीमा द्वारा फ़िल्टर करें
निम्नलिखित कोड नमूना दर्शाता है कि कैसे एक क्वेरी बनाकर पिछले 7 दिनों में प्राप्त हुए ईमेल खोजे जाएँ।
विशिष्ट प्रेषक द्वारा फ़िल्टर करें
निम्नलिखित कोड नमूना दर्शाता है कि कैसे एक क्वेरी बनाकर किसी विशिष्ट प्रेषक से प्राप्त ईमेल खोजे जाएँ।
डोमेन द्वारा फ़िल्टर करें
निम्नलिखित कोड नमूना दर्शाता है कि कैसे एक क्वेरी बनाकर किसी विशिष्ट डोमेन से ईमेल खोजे जाएँ।
प्राप्तकर्ता द्वारा फ़िल्टर करें
निम्नलिखित कोड नमूना दर्शाता है कि कैसे एक क्वेरी बनाकर किसी विशिष्ट प्राप्तकर्ता को भेजे गए ईमेल खोजे जाएँ।
MessageID द्वारा फ़िल्टर करें
निम्नलिखित कोड नमूना दर्शाता है कि कैसे एक क्वेरी बनाकर उसके MessageId द्वारा विशिष्ट ईमेल खोजा जाए।
मेल डिलीवरी नोटिफिकेशन को फ़िल्टर करें
निम्नलिखित कोड नमूना दर्शाता है कि कैसे एक क्वेरी बनाकर पत्र डिलीवरी सूचनाएँ (MDNs) खोजी जाएँ।
संदेश आकार द्वारा फ़िल्टर करें
निम्नलिखित कोड नमूना दर्शाता है कि कैसे एक क्वेरी बनाकर किसी विशेष आकार से बड़े ईमेल खोजे जाएँ।
जटिल क्वेरी बनाएं
जब उपयोग कर रहे हों MailQueryBuilder या ExchangeQueryBuilder, आप प्रत्येक प्रॉपर्टी सेट करने से एक फ़िल्टर शर्त बनती है। यदि ये शर्तें अलग-अलग स्टेटमेंट में परिभाषित हों, तो वे लॉजिकल AND द्वारा संयोजित होती हैं, जिसका मतलब है कि संदेश को लौटने के लिये सभी शर्तों का मिलना आवश्यक है।
यह डेवलपर्स को सटीक फ़िल्टर बनाने की अनुमति देता है जैसे:
- तिथि सीमा के भीतर ईमेल
- विशिष्ट डोमेन से ईमेल
- एक साथ कई मानकों से मेल खाने वाले ईमेल
AND के साथ क्वेरी मिलाएं
एक क्रम में कई बिल्डर प्रॉपर्टियों का उपयोग करने से स्वचालित रूप से एक AND ऑपरेशन बनता है।
निम्नलिखित उदाहरण उन संदेशों को प्राप्त करता है जो:
- किसी विशिष्ट डोमेन से आएँ
- आज से पहले पहुँचे
- पिछले सात दिनों में पहुँचे
OR के साथ क्वेरी मिलाएं
दो शर्तों में से किसी एक को संतुष्ट करने वाले संदेशों को मिलाने के लिए, Or() मेथड का उपयोग करें।
निम्नलिखित उदाहरण उन संदेशों को प्राप्त करता है जो:
- विषय में “test” शामिल हों, या
- “noreply@host.com” द्वारा भेजे गए
केस-सेंसिटिव ईमेल फ़िल्टरिंग
आप Exchange मेलबॉक्स से संदेशों को क्वेरी करते समय केस-सेंसिटिव या केस-इंसेंसिटिव फ़िल्टरिंग लागू कर सकते हैं। इस व्यवहार को नियंत्रित करने के लिए, फ़िल्टरिंग मेथड्स में उपलब्ध IgnoreCase फ़्लैग का उपयोग करें। true पास करने से केस-इंसेंसिटिव मैचिंग सक्षम होगी।
नीचे दिया गया उदाहरण उन संदेशों को फ़िल्टर करता है जो:
- विषय में शब्द "Newsletter" (केस-इंसेंसिटिव) शामिल हो
- आज पहुँचे
संदेश फ़िल्टरिंग में पेजिनेशन
जब बड़े Exchange मेलबॉक्स के साथ काम किया जाता है, पेजिंग आपको छोटे, प्रबंधनीय बैचों में संदेश प्राप्त करने की अनुमति देती है। यह ListMessagesByPage की विधि IEWSClient निर्दिष्ट पृष्ठ आकार और क्वेरी मानदंड के आधार पर पृष्ठ-दर-पृष्ठ परिणाम लौटाता है।
नीचे दिया गया उदाहरण दर्शाता है कि कैसे:
- उपयोग करके फ़िल्टर बनाएँ MailQueryBuilder.
- परिणामों को पृष्ठों में प्राप्त करें।
- आखिरी पृष्ठ तक सभी पृष्ठों पर लूप करें।
- मेल मिलान करने वाले संदेशों की कुल संख्या गिनें।