Керування елементами розмови
Aspose.Email для Java може бути використаний для керування елементами розмов на Exchange Server за допомогою EWSClient клас. Цей клас використовує Exchange Web Services, які доступні лише в Exchange Server 2007 і пізніших випусків. У цій статті показано, як знайти, скопіювати, перемістити і видалити елементи розмов на Exchange Server 2010. Потрібен Microsoft Exchange Server 2010 Service Pack 1 для всіх функцій, включених у цей розділ.
Пошук розмов
Щоб отримати інформацію про розмову з конкретної папки на Exchange Server:
- Підключіться до Exchange Server за допомогою класу IEWSClient.
- Викличте метод IEWSClient.findConversations(), щоб знайти всі елементи розмови у папці.
- Відобразіть властивості елементу розмови, такі як ID, тема розмови та статус прапора.
Наступний фрагмент коду показує, як знайти розмови.
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
System.out.println("Connected to Exchange 2010");
// Find Conversation Items in the Inbox folder
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());
// Show all conversations
for (ExchangeConversation conversation : conversations) {
// Display conversation properties like Id and Topic
System.out.println("Topic: " + conversation.getConversationTopic());
System.out.println("Flag Status: " + conversation.getFlagStatus());
System.out.println();
}
Копіювання розмов
Щоб скопіювати розмови з однієї папки в іншу:
- Підключіться до Exchange Server за допомогою класу IEWSClient.
- Викличте метод IEWSClient.copyConversationItems(), щоб скопіювати елемент розмови з вихідної папки в цільову папку.
Наступний фрагмент коду показує, як копіювати розмови.
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
System.out.println("Connected to Exchange 2010");
// Find those Conversation Items in the Inbox folder which we want to copy
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());
for (ExchangeConversation conversation : conversations) {
System.out.println("Topic: " + conversation.getConversationTopic());
// Copy the conversation item based on some condition
if (conversation.getConversationTopic().contains("test email")) {
client.copyConversationItems(conversation.getConversationId(), client.getMailboxInfo().getDeletedItemsUri());
System.out.println("Copied the conversation item to another folder");
}
}
Переміщення розмов
Щоб перемістити розмови з однієї папки в іншу:
- Підключіться до Exchange Server за допомогою класу IEWSClient.
- Викличте метод IEWSClient.moveConversationItems(), щоб перемістити розмову з вихідної папки в цільову папку.
Наступний фрагмент коду показує, як переміщати розмови.
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
System.out.println("Connected to Exchange 2010");
// Find those Conversation Items in the Inbox folder which we want to move
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());
for (ExchangeConversation conversation : conversations) {
System.out.println("Topic: " + conversation.getConversationTopic());
// Move the conversation item based on some condition
if (conversation.getConversationTopic().contains("test email") == true) {
client.moveConversationItems(conversation.getConversationId(), client.getMailboxInfo().getDeletedItemsUri());
System.out.println("Moved the conversation item to another folder");
}
}
Видалення розмов
Щоб видалити розмови з папки:
- Підключіться до Exchange Server за допомогою класу IEWSClient.
- Викличте метод IEWSClient.deleteConversationItems(), щоб видалити елемент розмови з вихідної папки.
Наступний фрагмент коду показує, як видалити розмови.
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);
System.out.println("Connected to Exchange 2010");
// Find those Conversation Items in the Inbox folder which we want to delete
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());
for (ExchangeConversation conversation : conversations) {
System.out.println("Topic: " + conversation.getConversationTopic());
// Delete the conversation item based on some condition
if (conversation.getConversationTopic().contains("test email") == true) {
client.deleteConversationItems(conversation.getConversationId());
System.out.println("Deleted the conversation item");
}
}