العمل مع المحادثات على MS Exchange Server في Java

غالبًا ما تتكون رسالة البريد الإلكتروني من عدة رسائل (أو ردود) تشكل سلسلة محادثات. في Microsoft Exchange Server ، يتم تسمية مؤشرات الترابط هذه بالمحادثات. أثناء العمل مع MS Exchange Server برمجيًا ، قد تحتاج إلى الوصول إلى المحادثات وإدارتها. لتحقيق ذلك ، ستتعلم في هذه المقالة كيفية البحث عن المحادثات ونسخها ونقلها وحذفها على Microsoft Exchange Server في Java.

Java API للعمل مع المحادثات على MS Exchange Server

للعمل مع المحادثات على Microsoft Exchange Server ، سنستخدم Aspose.Email for Java. إنها واجهة برمجة تطبيقات مذهلة توفر مجموعة من الميزات للعمل مع MS Exchange Server من داخل تطبيقات Java. يمكنك إما تنزيل API أو تثبيته باستخدام تكوينات Maven التالية.

مخزن:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>

الاعتماد:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-email</artifactId>
    <version>22.2</version>
    <classifier>jdk16</classifier>
</dependency>

البحث عن محادثات على خادم تبادل مايكروسوفت في جافا

فيما يلي خطوات البحث عن محادثات من مجلد في MS Exchange Server باستخدام Java.

يوضح نموذج التعليمات البرمجية التالي كيفية البحث عن محادثات من مجلد في MS Exchange Server في Java.

// تعيين صندوق البريد URI واسم المستخدم وكلمة المرور ومعلومات المجال
String mailboxUri = "https://ex2010/ews/exchange.asmx";
String username = "test.exchange";
String password = "pwd";
String domain = "ex2010.local";
NetworkCredential credentials = new NetworkCredential(username, password, domain);

IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
System.out.println("Connected to Exchange");

// ابحث عن عناصر المحادثة في مجلد البريد الوارد
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());

// عرض كل المحادثات
for (ExchangeConversation conversation : conversations) {
	// عرض خصائص المحادثة مثل المعرف والموضوع
	System.out.println("Topic: " + conversation.getConversationTopic());
	System.out.println("Flag Status: " + conversation.getFlagStatus());
	System.out.println();
}

انسخ محادثة على MS Exchange Server في Java

يمكنك أيضًا نسخ المحادثات من مجلد إلى آخر. دعونا نلقي نظرة على كيفية نسخ المحادثات من البريد الوارد إلى مجلد العناصر المحذوفة من Exchange Server في Java.

يوضح نموذج التعليمات البرمجية التالي كيفية نسخ محادثة في MS Exchange Server باستخدام Java.

// تعيين صندوق البريد URI واسم المستخدم وكلمة المرور ومعلومات المجال
String mailboxUri = "https://ex2010/ews/exchange.asmx";
String username = "test.exchange";
String password = "pwd";
String domain = "ex2010.local";
NetworkCredential credentials = new NetworkCredential(username, password, domain);

IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
System.out.println("Connected to Exchange");

// ابحث عن عناصر المحادثة في مجلد البريد الوارد
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());

// عرض كل المحادثات
for (ExchangeConversation conversation : conversations) {
	System.out.println("Topic: " + conversation.getConversationTopic());
    
	// انسخ عنصر المحادثة بناءً على بعض الشروط
    if (conversation.getConversationTopic().contains("test email")) {
        client.copyConversationItems(conversation.getConversationId(), client.getMailboxInfo().getDeletedItemsUri());
        System.out.println("Copied the conversation item to another folder");
    }
}

انقل محادثة على MS Exchange Server في Java

في القسم السابق ، قمنا فقط بنسخ المحادثات من مجلد إلى آخر. ومع ذلك ، في بعض الحالات ، قد تحتاج إلى نقل محادثة إلى مجلد معين. فيما يلي خطوات نقل محادثة في MS Exchange Server في Java.

يوضح نموذج التعليمات البرمجية التالي كيفية نقل محادثة في MS Exchange Server باستخدام Java.

// تعيين صندوق البريد URI واسم المستخدم وكلمة المرور ومعلومات المجال
String mailboxUri = "https://ex2010/ews/exchange.asmx";
String username = "test.exchange";
String password = "pwd";
String domain = "ex2010.local";
NetworkCredential credentials = new NetworkCredential(username, password, domain);

IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
System.out.println("Connected to Exchange");

// ابحث عن عناصر المحادثة في مجلد البريد الوارد
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());

// عرض كل المحادثات
for (ExchangeConversation conversation : conversations) {
	System.out.println("Topic: " + conversation.getConversationTopic());
    
	// انقل عنصر المحادثة بناءً على بعض الشروط
    if (conversation.getConversationTopic().contains("test email") == true) {
        client.moveConversationItems(conversation.getConversationId(), client.getMailboxInfo().getDeletedItemsUri());
        System.out.println("Moved the conversation item to another folder");
    }
}

حذف محادثة على MS Exchange Server في Java

في النهاية ، دعنا نلقي نظرة على كيفية حذف محادثة من MS Exchange Server في Java.

يوضح نموذج التعليمات البرمجية التالي كيفية حذف محادثة من MS Exchange Server في Java.

// تعيين صندوق البريد URI واسم المستخدم وكلمة المرور ومعلومات المجال
String mailboxUri = "https://ex2010/ews/exchange.asmx";
String username = "test.exchange";
String password = "pwd";
String domain = "ex2010.local";
NetworkCredential credentials = new NetworkCredential(username, password, domain);

IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
System.out.println("Connected to Exchange");

// ابحث عن عناصر المحادثة في مجلد البريد الوارد
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());

// عرض كل المحادثات
for (ExchangeConversation conversation : conversations) {
	System.out.println("Topic: " + conversation.getConversationTopic());
    
	// احذف عنصر المحادثة بناءً على بعض الشروط
    if (conversation.getConversationTopic().contains("test email") == true) {
        client.deleteConversationItems(conversation.getConversationId());
        System.out.println("Deleted the conversation item");
    }
}

احصل على ترخيص API مجاني

يمكنك الحصول على ترخيص مؤقت مجاني لاستخدام Aspose.Email لجافا دون قيود تقييم.

استنتاج

في هذه المقالة ، تعلمت كيفية إدارة المحادثات في Microsoft Exchange Server باستخدام Java. لقد رأيت كيفية البحث عن محادثة ونسخها ونقلها وحذفها على MS Exchange Server برمجيًا في Java. بالإضافة إلى ذلك ، يمكنك استكشاف التوثيق لقراءة المزيد عن Aspose.Email لجافا. يمكنك أيضًا طرح أسئلتك عبر المنتدى.

أنظر أيضا