E-mail se často skládá z více zpráv (nebo odpovědí), které tvoří vlákno. V Microsoft Exchange Server jsou tato vlákna označována jako konverzace. Při programové práci s MS Exchange Server budete možná potřebovat přístup a správu konverzací. Abyste toho dosáhli, v tomto článku se dozvíte, jak najít, kopírovat, přesouvat a odstraňovat konverzace na Microsoft Exchange Server v Javě.
- Java API pro práci s konverzacemi na MS Exchange Server
- Najděte konverzaci na MS Exchange Server v Javě
- Zkopírujte konverzaci na MS Exchange Server v Javě
- Přesunout konverzaci na MS Exchange Server v Javě
- Smazat konverzaci na MS Exchange Server v Javě
Java API pro práci s konverzacemi na MS Exchange Server
Pro práci s konverzacemi na Microsoft Exchange Server použijeme Aspose.Email for Java. Je to úžasné API, které poskytuje spoustu funkcí pro práci s MS Exchange Server z aplikací Java. Rozhraní API si můžete stáhnout nebo jej nainstalovat pomocí následujících konfigurací Maven.
úložiště:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
Závislost:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-email</artifactId>
<version>22.2</version>
<classifier>jdk16</classifier>
</dependency>
Najděte konverzace na MS Exchange Server v Javě
Následují kroky k vyhledání konverzací ze složky na MS Exchange Server pomocí Java.
- Nejprve vytvořte a inicializujte objekt NetworkCredential s uživatelským jménem, heslem a doménou.
- Poté inicializujte IEWSClient s URI poštovní schránky a objektem NetworkCredential.
- Zavolejte metodu IEWSClient.findConversations(IEWSClient.getMailboxInfo().getInboxUri()) a získejte konverzace v poli ExchangeConversation.
- Nakonec projděte každý objekt ExchangeConversation v poli a načtěte jeho podrobnosti.
Následující ukázka kódu ukazuje, jak najít konverzace ze složky na MS Exchange Server v Javě.
// Nastavte URI poštovní schránky, uživatelské jméno, heslo, informace o doméně
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");
// Najděte položky konverzace ve složce doručené pošty
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());
// Zobrazit všechny konverzace
for (ExchangeConversation conversation : conversations) {
// Zobrazte vlastnosti konverzace, jako je ID a téma
System.out.println("Topic: " + conversation.getConversationTopic());
System.out.println("Flag Status: " + conversation.getFlagStatus());
System.out.println();
}
Zkopírujte konverzaci na MS Exchange Server v Javě
Můžete také zkopírovat konverzace z jedné složky do druhé. Pojďme se podívat na to, jak zkopírovat konverzace z doručené pošty do složky smazaných položek Exchange Server v Javě.
- Nejprve vytvořte a inicializujte objekt NetworkCredential s uživatelským jménem, heslem a doménou.
- Poté inicializujte IEWSClient s URI poštovní schránky a objektem NetworkCredential.
- Zavolejte metodu IEWSClient.findConversations(IEWSClient.getMailboxInfo().getInboxUri())) a získejte konverzace v poli ExchangeConversation.
- Projděte každý objekt ExchangeConversation v poli a vyfiltrujte požadovaný objekt.
- Nakonec zkopírujte konverzaci pomocí metody IEWSClient.copyConversationItems(ExchangeConversation.getConversationId(), IEWSClient.getMailboxInfo().getDeletedItemsUri()).
Následující ukázka kódu ukazuje, jak zkopírovat konverzaci na MS Exchange Server pomocí Java.
// Nastavte URI poštovní schránky, uživatelské jméno, heslo, informace o doméně
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");
// Najděte položky konverzace ve složce doručené pošty
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());
// Zobrazit všechny konverzace
for (ExchangeConversation conversation : conversations) {
System.out.println("Topic: " + conversation.getConversationTopic());
// Zkopírujte položku konverzace na základě nějaké podmínky
if (conversation.getConversationTopic().contains("test email")) {
client.copyConversationItems(conversation.getConversationId(), client.getMailboxInfo().getDeletedItemsUri());
System.out.println("Copied the conversation item to another folder");
}
}
Přesunout konverzaci na MS Exchange Server v Javě
V předchozí části jsme pouze zkopírovali konverzace z jedné složky do druhé. V určitých případech však může být nutné přesunout konverzaci do konkrétní složky. Následují kroky k přesunutí konverzace na MS Exchange Server v Javě.
- Nejprve vytvořte a inicializujte objekt NetworkCredential s uživatelským jménem, heslem a doménou.
- Poté inicializujte IEWSClient s URI poštovní schránky a objektem NetworkCredential.
- Zavolejte metodu IEWSClient.findConversations(IEWSClient.getMailboxInfo().getInboxUri())) a získejte konverzace v poli ExchangeConversation.
- Projděte každý objekt ExchangeConversation v poli a vyfiltrujte požadovaný objekt.
- Nakonec přesuňte konverzaci pomocí metody IEWSClient.moveConversationItems(ExchangeConversation.getConversationId(), IEWSClient.getMailboxInfo().getDeletedItemsUri()).
Následující ukázka kódu ukazuje, jak přesunout konverzaci na MS Exchange Server pomocí Java.
// Nastavte URI poštovní schránky, uživatelské jméno, heslo, informace o doméně
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");
// Najděte položky konverzace ve složce doručené pošty
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());
// Zobrazit všechny konverzace
for (ExchangeConversation conversation : conversations) {
System.out.println("Topic: " + conversation.getConversationTopic());
// Přesunout položku konverzace na základě nějaké podmínky
if (conversation.getConversationTopic().contains("test email") == true) {
client.moveConversationItems(conversation.getConversationId(), client.getMailboxInfo().getDeletedItemsUri());
System.out.println("Moved the conversation item to another folder");
}
}
Smazat konverzaci na MS Exchange Server v Javě
Nakonec se podívejme, jak odstranit konverzaci z MS Exchange Server v Javě.
- Nejprve vytvořte a inicializujte objekt NetworkCredential s uživatelským jménem, heslem a doménou.
- Poté inicializujte IEWSClient s URI poštovní schránky a objektem NetworkCredential.
- Zavolejte metodu IEWSClient.findConversations(IEWSClient.getMailboxInfo().getInboxUri()) a získejte konverzace v poli ExchangeConversation.
- Projděte každý objekt ExchangeConversation v poli a vyfiltrujte požadovaný objekt.
- Nakonec smažte konverzaci pomocí metody IEWSClient.deleteConversationItems(ExchangeConversation.getConversationId()).
Následující ukázka kódu ukazuje, jak odstranit konverzaci z MS Exchange Server v Javě.
// Nastavte URI poštovní schránky, uživatelské jméno, heslo, informace o doméně
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");
// Najděte položky konverzace ve složce doručené pošty
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());
// Zobrazit všechny konverzace
for (ExchangeConversation conversation : conversations) {
System.out.println("Topic: " + conversation.getConversationTopic());
// Odstraňte položku konverzace na základě určité podmínky
if (conversation.getConversationTopic().contains("test email") == true) {
client.deleteConversationItems(conversation.getConversationId());
System.out.println("Deleted the conversation item");
}
}
Získejte bezplatnou licenci API
Můžete získat bezplatnou dočasnou licenci k používání Aspose.Email pro Java bez omezení hodnocení.
Závěr
V tomto článku jste se naučili, jak spravovat konverzace na Microsoft Exchange Server pomocí Java. Viděli jste, jak najít, zkopírovat, přesunout a odstranit konverzaci na MS Exchange Server programově v Javě. Kromě toho můžete prozkoumat dokumentaci a přečíst si více o Aspose.Email pro Java. Také se můžete ptát na naše fórum.