SMTP के माध्यम से ईमेल भेजें और संदेश फॉरवर्ड करें
यह SmtpClient Aspose.Email for Python via .NET में क्लास एक मजबूत और लचीला इंटरफ़ेस प्रदान करता है जिससे Simple Mail Transfer Protocol (SMTP) का उपयोग करके ईमेल भेजे जा सकते हैं। यह उन डेवलपर्स के लिए प्रमुख प्रवेश बिंदु है जो अपने अनुप्रयोगों में ईमेल संदेश वितरित करना चाहते हैं।
की मुख्य विशेषताएँ SmtpClient क्लास शामिल करें:
-
SMTP ईमेल डिलीवरी: SMTP सर्वर के माध्यम से सीधे ईमेल भेजने को सक्षम बनाता है।
-
वैकल्पिक डिलीवरी विकल्प: फ़ाइल सिस्टम में संदेश सहेजने या मेसेज क्यू में लिखने जैसे अतिरिक्त डिलीवरी विधियों को समर्थन देता है।
-
सिंक्रोनस और एसिंक्रोनस ऑपरेशन:
-
सिंक्रोनस मोड: ईमेल के पूर्ण रूप से ट्रांसमिट होने तक वर्तमान थ्रेड को ब्लॉक करने के लिए Send मेथड्स का उपयोग करें।
-
असिंक्रोनस मोड: बैकग्राउंड में संदेश भेजने के लिए SendAsync मेथड्स का उपयोग करें, जिससे एप्लिकेशन प्रतिक्रियाशील बना रहे।
-
-
TNEF समर्थन: Microsoft Outlook सुविधाओं के साथ संगतता के लिए Transport Neutral Encapsulation Format (TNEF) में संदेश भेजने की अनुमति देता है।
यह लेख सभी प्रमुख कार्यात्मकताओं को कवर करता है जो इसके माध्यम से उपलब्ध हैं SmtpClient क्लास, दिखाते हुए कि कैसे मानक और उन्नत ईमेल संदेशों को कॉन्फ़िगरेशन और डिलीवरी पर पूर्ण नियंत्रण के साथ भेजा जाए।
ईमेल सिंक्रोनस रूप से भेजें
यह SmtpClient.send मेथड आपको सिंक्रोनस रूप से ईमेल संदेश भेजने की अनुमति देता है। यह दृष्टिकोण तब उपयोगी है जब एप्लिकेशन को जारी रखने से पहले डिलीवरी की पुष्टि करनी होती है।
Aspose.Email for Python via .NET का उपयोग करके सिंक्रोनस रूप से प्लेन टेक्स्ट ईमेल भेजने के लिए, नीचे दिए गए चरणों और कोड नमूने का उपयोग करें:
- एक बनाएं MailMessage इंस्टेंस और प्रेषक, प्राप्तकर्ता(ओं), विषय, तथा बॉडी सेट करें।
- कॉन्फ़िगर करें SmtpClient सर्वर होस्ट, पोर्ट, उपयोगकर्ता नाम और पासवर्ड के साथ।
- कॉल करें
sendपर विधि SmtpClient इंस्टेंस और पास करें MailMessage ऑब्जेक्ट।
# Create email
eml = ae.MailMessage()
eml.subject = "Message with Plain Text Body"
eml.body = "This is text body."
eml.from_address = "from@gmail.com"
eml.to.append(ae.MailAddress("to@gmail.com", "Recipient 1"))
# Configure SmtpClient object
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO
# Send email
client.send(eml)
SMTP के माध्यम से पूर्व-रचित EML फ़ाइल भेजें
यदि आपको पहले से ही तैयार और EML फ़ॉर्मेट में सहेजा गया ईमेल संदेश भेजना है, तो आप Aspose.Email for Python via .NET का उपयोग करके इसे प्रोग्रामेटिकली लोड और भेज सकते हैं।
निम्नलिखित कोड स्निपेट और चरण दिखाते हैं कि कैसे एक EML फ़ाइल भेजी जाए उपयोग करके SmtpClient:
- EML फ़ाइल को उपयोग करके लोड करें MailMessage.load विधि।
- का एक इंस्टेंस बनाएं और कॉन्फ़िगर करें SmtpClient, प्रमाणीकरण के लिए SMTP सर्वर होस्ट, उपयोगकर्ता नाम, और पासवर्ड प्रदान करते हुए।
- कॉल करें
sendपर विधि SmtpClient इंस्टेंस और लोड किया गया संदेश पास करें।
import aspose.email as ae
message = ae.MailMessage.load("test.eml")
# Send this message using SmtpClient
client = ae.clients.SmtpClient("host", "username", "password")
client.send(message)
सादा टेक्स्ट ईमेल भेजें
आप Aspose.Email का उपयोग करके संदेश बॉडी को साधारण टेक्स्ट के रूप में निर्दिष्ट करके एक साधारण टेक्स्ट ईमेल भेज सकते हैं। MailMessage.body प्रॉपर्टी सामग्री को परिभाषित करने के लिए उपयोग की जाती है, जबकि SmtpClient क्लास भेजने की प्रक्रिया को संभालती है।
निम्नलिखित कोड स्निपेट और चरण दिखाते हैं कि कैसे एक सादा टेक्स्ट ईमेल भेजा जाए:
- का एक इंस्टेंस बनाएं MailMessage क्लास।
- प्रेषक और प्राप्तकर्ता के ईमेल पते सेट करें।
- plain text सामग्री को body प्रॉपर्टी में असाइन करें।
- का एक इंस्टेंस बनाएं SmtpClient सर्वर विवरण और क्रेडेंशियल्स के साथ क्लास।
- ईमेल भेजें उपयोग करके
sendविधि।
HTML ईमेल भेजें
Aspose.Email for Python via .NET आपको HTML-फ़ॉर्मेटेड बॉडियों के साथ ईमेल भेजने की अनुमति देता है उपयोग करके MailMessage क्लास। HTML सामग्री को असाइन करके html_body प्रॉपर्टी और सेटिंग is_body_html True पर सेट करने से, आप समृद्ध, स्टाइल्ड संदेश बना सकते हैं।
निम्नलिखित कोड उदाहरण और चरण दिखाते हैं कि कैसे एक HTML ईमेल भेजा जाए:
- का एक इंस्टेंस बनाएं MailMessage क्लास।
- प्रेषक और प्राप्तकर्ता के ईमेल पते सेट करें।
- सेट करें
is_body_html = TrueHTML फॉर्मेटिंग दर्शाने के लिए। - अपने HTML सामग्री को असाइन करें
html_bodyप्रॉपर्टी। - बनाएँ और कॉन्फ़िगर करें SmtpClient इंस्टैंस।
- उपयोग करें
sendसंदेश को प्रसारित करने की मेथड।
ध्यान दें: जबकि यह उदाहरण बुनियादी HTML का उपयोग करता है, आप अधिक जटिल HTML संरचनाओं को शामिल करके प्रतिक्रियात्मक और ब्रांडेड ईमेल लेआउट बना सकते हैं।
HTML ईमेल को plain text वैकल्पिक के साथ भेजें
HTML ईमेल भेजते समय, यह सर्वोत्तम अभ्यास है कि उन प्राप्तकर्ताओं के लिए plain text संस्करण शामिल किया जाए जिनके ईमेल क्लाइंट HTML समर्थन नहीं करते। Aspose.Email for Python via .NET यह सुविधा प्रदान करता है AlternateView क्लास एक ही संदेश में HTML और plain text दोनों सामग्री को शामिल करता है, जिससे संगतता और उपयोगकर्ता अनुभव बढ़ता है।
निम्नलिखित कोड नमूना और चरण दिखाते हैं कि कैसे वैकल्पिक टेक्स्ट सामग्री वाले ईमेल भेजें:
- का एक इंस्टेंस बनाएं MailMessage क्लास।
- प्रेषक और प्राप्तकर्ता के ईमेल पते सेट करें।
- HTML सामग्री को असाइन करें
html_bodyप्रॉपर्टी और सेट करेंis_body_html = True. - उपयोग करके एक plain text AlternateView बनाएं create_alternate_view_from_string.
- वैकल्पिक व्यू को जोड़ें
alternate_viewsसंग्रह MailMessage. - बनाएँ और कॉन्फ़िगर करें SmtpClient इंस्टैंस।
- ईमेल भेजें उपयोग करके
sendविधि।
बड़े पैमाने पर ईमेल कैसे भेजें
बड़े पैमाने पर ईमेल भेजना कई संदेशों को एक साथ भेजने में शामिल है — प्रत्येक संभवतः अलग प्राप्तकर्ता को संबोधित। Aspose.Email इस क्षमता को प्रदान करता है उपयोग करके SmtpClient क्लास।
नीचे दिया गया कोड नमूना दिखाता है कि कैसे एक बार में ईमेल बैच भेजा जाए:
- का एक इंस्टेंस बनाएं SmtpClient क्लास और उसके होस्ट, पोर्ट, क्रेडेंशियल्स, और सुरक्षा सेटिंग्स कॉन्फ़िगर करें।
- एकाधिक बनाएं MailMessage इंस्टेंस — प्रत्येक व्यक्तिगत ईमेल संदेश का प्रतिनिधित्व करता है।
- प्रत्येक ईमेल के लिए प्रेषक, प्राप्तकर्ता, विषय, और संदेश बॉडी निर्दिष्ट करें।
- सभी जोड़ें MailMessage ऑब्जेक्ट्स को एक MailMessageCollection.
- कॉल करें
sendविधि SmtpClient क्लास, पास करते हुए MailMessageCollection एक आर्ग्यूमेंट के रूप में।
import aspose.email as ae
from aspose.email.clients import SmtpClient, SecurityOptions
from aspose.email import MailMessage, MailMessageCollection
# Create individual email messages
message1 = MailMessage("from@gmail.com", "to1@gmail.com", "Bulk Email - Message 1", "Hello, this is message 1.")
message2 = MailMessage("from@gmail.com", "to2@gmail.com", "Bulk Email - Message 2", "Hello, this is message 2.")
message3 = MailMessage("from@gmail.com", "to3@gmail.com", "Bulk Email - Message 3", "Hello, this is message 3.")
# Add messages to a collection
many_messages = MailMessageCollection()
many_messages.append(message1)
many_messages.append(message2)
many_messages.append(message3)
# Configure SMTP client
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO
# Send all messages in bulk
client.send(many_messages)
मल्टी-कनेक्शन समर्थन के साथ ईमेल भेजें
Aspose.Email for Python via .NET आपको ईमेल भेजते समय कई समकालिक कनेक्शन उपयोग करने की अनुमति देता है SmtpClient क्लास। यह सुविधा कई कनेक्शनों में कार्यभार वितरित करके बड़ी मात्रा में ईमेल भेजते समय प्रदर्शन को अनुकूलित करने में मदद कर सकती है। हालांकि, यह ध्यान रखें कि मल्टी-कनेक्शन मोड सक्षम करना सभी परिदृश्यों में प्रदर्शन सुधार की गारंटी नहीं देता — यह सर्वर कॉन्फ़िगरेशन और नेटवर्क स्थितियों पर निर्भर करता है।
मुख्य प्रॉपर्टीज़:
-
use_multi_connection: SMTP क्लाइंट के लिए मल्टी-कनेक्शन मोड को सक्षम या अक्षम करता है। -
connections_quantity: मल्टी-कनेक्शन मोड सक्षम होने पर खोलने वाले कनेक्शनों की संख्या निर्दिष्ट करता है।
निम्नलिखित कोड नमूना दिखाता है कि मल्टी-कनेक्शन मोड कैसे सक्षम किया जाए:
- का एक इंस्टेंस बनाएं और कॉन्फ़िगर करें SmtpClient.
- सर्वर विवरण जैसे होस्ट, पोर्ट, उपयोगकर्ता नाम, पासवर्ड, और एन्क्रिप्शन सेट करें।
- सेट करके मल्टी-कनेक्शन मोड सक्षम करें
use_multi_connection. - के साथ कनेक्शनों की संख्या निर्दिष्ट करें
connections_quantity.
import aspose.email as ae
client = ae.clients.smtp.SmtpClient
client.host = "<HOST>"
client.username = "<USERNAME>"
client.password = "<PASSWORD>"
client.port = 587
client.supported_encryption = ae.clients.base.EncryptionProtocols.TLS
client.security_options = ae.clients.SecurityOptions.SSL_EXPLICIT
client.connections_quantity = 5
client.use_multi_connection = ae.clients.MultiConnectionMode.ENABLE
client.send(messages)
TNEF-फ़ॉर्मेटेड ईमेल भेजें
Transport Neutral Encapsulation Format (TNEF) एक स्वामित्व वाला ईमेल फ़ॉर्मेट है जिसे Microsoft Outlook और Exchange समृद्ध फ़ॉर्मेटिंग, एम्बेडेड ऑब्जेक्ट्स, और मतदान बटन जैसे विशेष फीचर को बनाए रखने के लिए उपयोग करते हैं। मानक ईमेल क्लाइंट्स यह फ़ॉर्मेटिंग सामान्य MIME-आधारित संदेशों के उपयोग पर बनाए नहीं रख सकते।
Aspose.Email for Python via .NET TNEF फ़ॉर्मेट में ईमेल भेजने का समर्थन करता है ताकि सभी उन्नत फ़ॉर्मेटिंग और फीचर संरक्षित रहें। यह सक्षम करके प्राप्त होता है use_tnef की प्रॉपर्टी SmtpClient क्लास।
निम्नलिखित कोड नमूना और चरण दिखाते हैं कि कैसे एक TNEF ईमेल भेजें:
- मौजूदा EML संदेश लोड करें या उपयोग करके एक बनाएं MailMessage क्लास।
- प्रेषक और प्राप्तकर्ता के पते सेट करें।
- सेट करके TNEF फॉर्मेटिंग को सक्षम करें
use_tnef = Trueपर SmtpClient इंस्टैंस। - संदेश भेजें उपयोग करके
send()विधि।
ईमेल द्वारा मीटिंग अनुरोध भेजें
Microsoft Outlook और IBM Lotus Notes जैसे अन्य कैलेंडर-सक्षम ईमेल क्लाइंट उपयोगकर्ताओं को अपने इनबॉक्स से सीधे अपॉइंटमेंट प्रबंधित करने की अनुमति देते हैं। जब कोई उपयोगकर्ता मीटिंग आमंत्रण प्राप्त करता है, तो वह अपने ईमेल क्लाइंट में सीधे स्वीकार या अस्वीकार कर सकता है। Aspose.Email for Python via .NET के साथ, डेवलपर्स प्रोग्रामेटिकली इन मीटिंग आमंत्रणों को iCalendar (RFC 2445) मानक के अनुसार बना और भेज सकते हैं।
ईमेल के माध्यम से मीटिंग आमंत्रण कैसे भेजें
Aspose.Email ईमेल के हिस्से के रूप में iCalendar मीटिंग अनुरोध बनाने और भेजने के लिए अंतर्निहित समर्थन प्रदान करता है। ये अनुरोध लोकप्रिय कैलेंडर क्लाइंट्स के साथ संगत हैं और प्राप्तकर्ताओं को आमंत्रणों का आसानी से उत्तर देने की अनुमति देते हैं।
|ईमेल द्वारा भेजा गया iCalendar मीटिंग अनुरोध| | :- | |
|
निम्नलिखित कोड स्निपेट दिखाता है कि कैसे अनुरोध ईमेल के माध्यम से भेजें:
- एक बनाएं MailMessage इंस्टैंस।
- प्रेषक और प्राप्तकर्ता के ईमेल पते निर्दिष्ट करें।
- एक बनाएं Appointment ऑब्जेक्ट जिसमें स्थान, शुरू/समाप्ति समय, प्रेषक, और प्राप्तकर्ता हों।
- अपॉइंटमेंट का सारांश और विवरण सेट करें।
- ईमेल के साथ अपॉइंटमेंट जोड़ें उपयोग करके
add_alternate_view(). - ईमेल भेजें उपयोग करके SmtpClient.
IBM Lotus Notes के लिए iCalendar समर्थन
Aspose.Email iCalendar फ़ॉर्मेट (RFC 2445) का उपयोग करता है, जो सुनिश्चित करता है कि आपके मीटिंग अनुरोध Microsoft Outlook, IBM Lotus Notes, और किसी भी अन्य क्लाइंट के साथ संगत हों जो इस मानक को समर्थन करता है। वही प्रक्रिया प्राप्तकर्ता के प्लेटफ़ॉर्म की परवाह किए बिना उपयोग की जा सकती है।
SMTP क्लाइंट का उपयोग करके ईमेल फॉरवर्ड करें
ईमेल फॉरवर्ड करना डिजिटल संचार में एक सामान्य कार्य है, अक्सर प्राप्त संदेशों को दूसरों के साथ साझा करने के लिए उपयोग किया जाता है। Aspose.Email for Python via .NET डेवलपर्स को प्रोग्रामेटिकली ईमेल फॉरवर्ड करने की अनुमति देता है उपयोग करके SmtpClient क्लास। फॉरवर्ड मेथड सहेजे या प्राप्त ईमेल संदेशों को नए प्राप्तकर्ताओं को आगे भेजने की अनुमति देता है बिना मूल प्रेषक को शामिल किए।
नीचे कोड नमूना दिखाता है कि कैसे एक ईमेल को फॉरवर्ड किया जाए उपयोग करके MailMessage क्लास:
MailMessage में लोड किए बिना EML फ़ाइलें फॉरवर्ड करें
Aspose.Email सीधे .eml फ़ाइलों को फॉरवर्ड करने का समर्थन भी करता है बिना पहले उन्हें किसी में लोड किए MailMessage ऑब्जेक्ट। यह विशेष रूप से उन परिस्थितियों में उपयोगी है जहाँ सिस्टम मेमोरी उपयोग को न्यूनतम करना आवश्यक है।
नीचे दिया गया कोड नमूना दिखाता है कि कैसे एक EML फ़ाइल को सीधे फॉरवर्ड किया जाए:
import aspose.email as ae
client = ae.clients.smtp.SmtpClient(host, smtp_port, username, password, ae.clients.SecurityOptions.AUTO)
file = open("test.eml", "rb")
client.forward(sender, recipients, file)