IMAP एक्सटेंशन सक्षम करें
IMAP एक्सटेंशन समर्थन
Aspose.Email API कई IMAP प्रोटोकॉल एक्सटेंशन के समर्थन प्रदान करता है। ये एक्सटेंशन उन्नत संचालन सक्षम करते हैं जैसे क्लाइंट एप्लीकेशन की पहचान करना और विस्तृत मेलबॉक्स मेटाडाटा प्राप्त करना। जबकि सभी ईमेल सर्वर इन सुविधाओं को समर्थन नहीं देते, कई लोकप्रिय सेवाएँ जैसे Gmail यह समर्थन करती हैं।
यह लेख दर्शाता है कि निम्नलिखित IMAP एक्सटेंशन को कैसे उपयोग किया जाए। ImapClient Aspose.Email में क्लास:
-
IMAP ID कमांड
-
IMAP LIST-EXTENDED कमांड
IMAP ID कमांड का उपयोग करना
यह कमांड यह प्रतिक्रिया देता है कि सर्वर IMAP ID एक्सटेंशन का समर्थन करता है या नहीं और सर्वर से संरचित पहचान विवरण लौटाता है। यह लॉगिंग, निदान और सर्वर व्यवहार कस्टमाइज़ेशन के लिए उपयोगी हो सकता है।
निम्नलिखित कोड उदाहरण दर्शाता है कि Aspose.Email लाइब्रेरी का उपयोग करके IMAP सर्वर के साथ कैसे इंटरैक्ट किया जाए, विशेष रूप से ID कमांड का उपयोग करके सर्वर पहचान सूचना प्राप्त करने के लिए:
import aspose.email as ae
with ae.clients.imap.ImapClient("imap.gmail.com", 993, "username", "password") as client:
# Set security options
client.security_options = ae.clients.SecurityOptions.AUTO
# Check if ID command is supported
print(client.id_supported)
# Send identification info to the server
server_identification_info1 = client.introduce_client()
server_identification_info2 = client.introduce_client(ae.clients.imap.ImapIdentificationInfo.default_value)
# Display server response
print(server_identification_info1)
print(server_identification_info2)
print(server_identification_info1.name)
print(server_identification_info1.vendor)
print(server_identification_info1.support_url)
print(server_identification_info1.version)
IMAP LIST-EXTENDED कमांड का उपयोग करना
IMAP LIST-EXTENDED कमांड (RFC 5258 में परिभाषित) क्लाइंट्स को विस्तृत फ़ोल्डर हायरार्की और मेटाडाटा प्राप्त करने की अनुमति देता है, जैसे कि क्या फ़ोल्डरों में चाइल्ड फ़ोल्डर हैं। यह जटिल मेलबॉक्स संरचनाओं का प्रबंधन करने वाले क्लाइंट्स के लिए विशेष रूप से उपयोगी है।
निम्नलिखित कोड उदाहरण दिखाता है कि विस्तारित LIST कमांड का उपयोग करके Gmail में फ़ोल्डर कैसे सूचीबद्ध करें और यह सत्यापित करें कि कौन से फ़ोल्डर में सबफ़ोल्डर हैं:
import aspose.email as ae
with ae.clients.imap.ImapClient("imap.gmail.com", 993, "username", "password") as client:
folder_info_col = client.list_folders("*")
print("Extended List Supported:", client.extended_list_supported)
for folder_info in folder_info_col:
folder_name = folder_info.name
if folder_name == "[Gmail]/All Mail":
print("Has Children:", folder_info.has_children)
elif folder_name == "[Gmail]/Bin":
print("Bin has children?", folder_info.has_children)
elif folder_name == "[Gmail]/Drafts":
print("Drafts has children?", folder_info.has_children)
elif folder_name == "[Gmail]/Important":
print("Important has Children?", folder_info.has_children)
elif folder_name == "[Gmail]/Sent Mail":
print("Sent Mail has Children?", folder_info.has_children)
elif folder_name == "[Gmail]/Spam":
print("Spam has Children?", folder_info.has_children)
elif folder_name == "[Gmail]/Starred":
print("Starred has Children?", folder_info.has_children)