उपयोगिता सुविधाएँ - MailMessage

संदेशों को एन्क्रिप्ट करना और डिक्रिप्ट करना

Aspose.Email ईमेल संदेशों को एन्क्रिप्ट और डिक्रिप्ट करने की सुविधा प्रदान करता है। यह विषय दर्शाता है कि मौजूदा या नया संदेश कैसे लोड कर एन्क्रिप्ट किया जा सकता है, उपयोग करके MailMessage. यह encrypt() और decrypt() मेथड्स लागू प्रभावों के लिए MailMessage ऑब्जेक्ट लौटाते हैं और संदेशों को एन्क्रिप्ट/डिक्रिप्ट करते समय इसका ध्यान रखना आवश्यक है। संदेशों को एन्क्रिप्ट और डिक्रिप्ट करने में निम्नलिखित कदम शामिल हैं:

  1. एक नया संदेश बनाएँ या मौजूदा को लोड करें
  2. सर्टिफिकेट फ़ाइल का उपयोग करके संदेश को एन्क्रिप्ट करें
  3. संदेश भेजें या सहेजें
  4. आवश्यकतानुसार संदेश को डिक्रिप्ट करें

निम्नलिखित कोड स्निपेट दिखाता है कि आप संदेशों को एन्क्रिप्ट और डिक्रिप्ट कैसे कर सकते हैं।

संदेश की एन्क्रिप्शन जाँच

Aspose.Email MailMessage क्लास यह जाँचने की अनुमति देता है कि कोई संदेश एन्क्रिप्टेड है या नहीं। यह isEncrypted MailMessage की प्रॉपर्टी आपको यह जांचने की अनुमति देती है जैसा कि निम्न कोड नमूने में दिखाया गया है।

X509Certificate के साथ संदेश एन्क्रिप्शन

Aspose.Email X509Certificate के साथ एन्क्रिप्टेड संदेशों के साथ काम करने के लिए API प्रदान करता है:

MailMessage क्लास के पास संदेश एन्क्रिप्शन के साथ काम करने के लिए निम्नलिखित मेथड्स हैं:

Aspose.Email के लिए लोकेल विकल्प कॉन्फ़िगर करें

आप उपयोग कर सकते हैं LocaleOptions क्लास अनपहचाने डिफ़ॉल्ट लोकेल की स्थिति में सबसे उपयुक्त लोकेल सेट करता है Aspose Email लाइब्रेरी के लिए। यह कार्य को करने के लिए निम्नलिखित मेथड्स प्रदान करता है:

  • getLocale() - Aspose.Email के लिए डिफ़ॉल्ट लोकेल लौटाता है।
  • setLocale(Locale locale) और setLocale(String localeName) - Aspose.Email के लिए डिफ़ॉल्ट लोकेल सेट करें।
  • clear() - Aspose.Email के लिए डिफ़ॉल्ट लोकेल साफ़ करता है। यह जावा के लिए डिफ़ॉल्ट लोकेल के रूप में उपयोग किया जाएगा।

निम्नलिखित कोड नमूना दर्शाता है कि निर्दिष्ट लोकेल सेटिंग्स का उपयोग करके फ़ाइल से मेल संदेश कैसे लोड किया जाए:

final Locale locale = new Locale("en", "DE");
Locale.setDefault(locale);

// set Locale for Aspose Email lib
LocaleOptions.setLocale("en-US");
// or
//LocaleOptions.setLocale(new Locale("en", "US"));

MailMessage.load("document.msg");

यह कोड सुनिश्चित करता है कि एप्लिकेशन और Aspose.Email लाइब्रेरी भाषा, देश और सांस्कृतिक मानदंडों को संभालने के लिए निर्दिष्ट लोकेल्स का उपयोग करें।

TNEF अटैचमेंट वाले MailMessages

Transport Neutral Encapsulation Format (TNEF) माइक्रोसॉफ्ट आउटलुक और माइक्रोसॉफ्ट एक्सचेंज सर्वर द्वारा उपयोग किया जाने वाला एक स्वामित्व ईमेल अटैचमेंट फॉर्मेट है। Aspose.Email API आपको TNEF अटैचमेंट वाले ईमेल संदेश पढ़ने और उनकी सामग्री संशोधित करने की अनुमति देता है। ईमेल को फिर सामान्य ईमेल के रूप में या उसी फॉर्मेट में सहेजा जा सकता है, जिससे TNEF अटैचमेंट संरक्षित रहते हैं। यह लेख TNEF अटैचमेंट वाले संदेशों के साथ काम करने के विभिन्न कोड नमूने दिखाता है।

TNEF अटैचमेंट्स को संरक्षित रखते हुए संदेश पढ़ना

निम्नलिखित कोड स्निपेट दिखाता है कि आप TNEF अटैचमेंट्स को संरक्षित रखते हुए संदेश को कैसे पढ़ सकते हैं।

TNEF अटैचमेंट में रिसोर्सेज़ को अपडेट करना और TNEF फॉर्मेट को संरक्षित रखना

निम्नलिखित कोड स्निपेट दिखाता है कि आप TNEF अटैचमेंट में रिसोर्सेज़ को कैसे अपडेट करें और TNEF फॉर्मेट को संरक्षित रखें।

TNEF वाले मुख्य संदेश में नए अटैचमेंट जोड़ना

MSG से TNEF EML बनाना

Outlook MSG कभी-कभी तालिकाओं और टेक्स्ट स्टाइल जैसी जानकारी रखते हैं जो यदि EML में परिवर्तित किया जाए तो बिगड़ सकते हैं। ऐसे MSG फ़ाइलों से TNEF संदेश बनाना हमें फॉर्मेटिंग को बरकरार रखने और यहां तक कि ईमेल क्लाइंट्स के ज़रिए फॉर्मेटिंग को बनाए रखते हुए संदेश भेजने की अनुमति देता है। 

TNEF बनाने के लिए, निम्नलिखित सैंपल कोड का उपयोग किया जा सकता है।

जांचें कि संदेश TNEF है या नहीं

बाउंस किए गए संदेशों को प्रोसेस करना

किसी कारण से, जैसे कि अमान्य प्राप्तकर्ता पता, प्राप्तकर्ता को भेजा गया संदेश बाउंस हो सकता है। Aspose.Email API के पास ऐसे संदेश को यह जांचने के लिए क्षमता है कि वह बाउंस किया गया ईमेल है या सामान्य ईमेल संदेश। बाउंस जाँचें विधि MailMessage क्लास एक वैध परिणाम लौटाता है यदि ईमेल संदेश बाउंस्ड ईमेल हो।

यह लेख उपयोग दिखाता है BounceResult क्लास जो यह जांचने की क्षमता प्रदान करता है कि संदेश बाउंस्ड ईमेल है या नहीं। यह प्राप्तकर्ताओं, हुए कार्रवाई और नोटिफिकेशन के कारण के बारे में विस्तृत जानकारी भी देता है।

अपवाद अनदेखा करें

यह लाइब्रेरी एक ExceptionManager क्लास जो आपके अनुप्रयोग की कार्यक्षमता में अपवाद को अनदेखा करने की क्षमता को लागू करता है। नीचे दिया गया कोड स्निपेट दिखाता है कि अपवाद को संभालने के लिए कॉलबैक कैसे सेट किया जाए:

 ExceptionManager.setIgnoreExceptionsHandler( new IgnoreExceptionsCallback() {

   //exception path: {Module}\{Method}\{Action}\{GUID}

   //example: MailMessage\Load\DecodeTnefAttachment\64149867-679e-4645-9af0-d46566cae598

   public boolean invoke(AsposeException ex, String path) {

       //Ignore all exceptions on MailMessage.Load

       return path.equals("MailMessage\\Load");

   }

});

या एक वैकल्पिक उपयोग करें:

 ExceptionManager.setIgnoreAll(true);

आप अनदेखा किए गए अपवाद लॉग के लिए एक कॉलबैक भी सेट कर सकते हैं:

ExceptionManager.setIgnoreExceptionsLogHandler( new IgnoreExceptionsLogCallback() {

   public void invoke(String message) {

        System.out.println("=== EXCEPTION IGNORED === " + message);

   }

});

उपयोगकर्ता को सूचित किया जाएगा कि अपवाद को एक त्रुटि संदेश द्वारा अनदेखा किया जा सकता है। उदाहरण के लिए:

संदेश में अपवाद:

AsposeArgumentException: properties should not be empty.

यदि आप एक अपवाद (exception) को अनदेखा करना चाहते हैं और आगे बढ़ना चाहते हैं तो आप उपयोग कर सकते हैं:

ExceptionManager.getIgnoreList().add("MailMessage\\Load\\DecodeTnefAttachment\\64149867-679e-4645-9af0-d46566cae598")

Invalid TNEF Attachment will be interpreted as regular attachment.

बेयेसियन स्पैम विश्लेषक

Aspose.Email बेयेस स्पैम विश्लेषक का उपयोग करके ई‑मेल फ़िल्टरिंग की सुविधा प्रदान करता है। यह प्रदान करता है SpamAnalyzer इस उद्देश्य के लिए क्लास। यह लेख दिखाता है कि शब्द डेटाबेस के आधार पर स्पैम और सामान्य इमेल्स को अलग करने के लिए फ़िल्टर को कैसे प्रशिक्षित किया जाए।

EML संदेशों से प्रीएम्बल और उपसंहार प्राप्त करना

MIME फ़ॉर्मेट में, preamble वह टेक्स्ट है जो हेडर के बाद और प्रथम multipart बाउंड्री से पहले आता है। epilogue वह टेक्स्ट है जो अंतिम बाउंड्री के बाद और संदेश के अंत से पहले आता है। यह टेक्स्ट आमतौर पर मेल रीडर में उपयोगकर्ता को दिखाई नहीं देता, लेकिन कुछ MIME कार्यान्वयन इसे गैर‑MIME अनुप्रयोगों का उपयोग करने वाले प्राप्तकर्ताओं के लिए नोट्स डालने हेतु उपयोग कर सकते हैं।

निम्न कोड स्निपेट दर्शाता है कि EML संदेश से प्रीएम्बल और उपसंहार कैसे प्राप्त किए जाएँ, जिसे संबंधित मेथड्स के माध्यम से किया जा सकता है। MailMessage क्लास:

  • setPreamble(String value) - प्रीएम्बल (preamble) टेक्स्ट को प्राप्त या सेट करता है।
  • setEpilogue(String value) - उपसंहार (epilogue) टेक्स्ट को प्राप्त या सेट करता है।
// Gets or sets a preamble text.
public String getPreamble, setPreamble

// Gets or sets an epilogue text.
public String getEpilogue, setEpilogue