Bekerja dengan Percakapan di MS Exchange Server di Java

Seringkali, email terdiri dari beberapa pesan (atau balasan) yang membentuk utas. Di Microsoft Exchange Server, utas ini disebut sebagai percakapan. Saat bekerja dengan MS Exchange Server secara terprogram, Anda mungkin perlu mengakses dan mengelola percakapan. Untuk melakukannya, dalam artikel ini, Anda akan mempelajari cara menemukan, menyalin, memindahkan, dan menghapus percakapan di Microsoft Exchange Server di Java.

Java API untuk Bekerja dengan Percakapan di MS Exchange Server

Untuk bekerja dengan percakapan di Microsoft Exchange Server, kami akan menggunakan Aspose.Email for Java. Ini adalah API luar biasa yang menyediakan banyak fitur untuk bekerja dengan MS Exchange Server dari dalam aplikasi Java. Anda dapat mengunduh API atau menginstalnya menggunakan konfigurasi Maven berikut.

Gudang:

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

Ketergantungan:

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

Temukan Percakapan di MS Exchange Server di Java

Berikut adalah langkah-langkah untuk menemukan percakapan dari folder di MS Exchange Server menggunakan Java.

Contoh kode berikut menunjukkan cara menemukan percakapan dari folder di MS Exchange Server di Java.

// Setel URI kotak surat, nama pengguna, kata sandi, informasi domain
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");

// Temukan item percakapan di folder kotak masuk
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());

// Tampilkan semua percakapan
for (ExchangeConversation conversation : conversations) {
	// Menampilkan properti percakapan seperti Id dan Topik
	System.out.println("Topic: " + conversation.getConversationTopic());
	System.out.println("Flag Status: " + conversation.getFlagStatus());
	System.out.println();
}

Salin Percakapan di MS Exchange Server di Java

Anda juga dapat menyalin percakapan dari satu folder ke folder lain. Mari kita lihat cara menyalin percakapan dari kotak masuk ke folder item yang dihapus dari Exchange Server di Java.

Contoh kode berikut menunjukkan cara menyalin percakapan di MS Exchange Server menggunakan Java.

// Setel URI kotak surat, nama pengguna, kata sandi, informasi domain
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");

// Temukan item percakapan di folder kotak masuk
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());

// Tampilkan semua percakapan
for (ExchangeConversation conversation : conversations) {
	System.out.println("Topic: " + conversation.getConversationTopic());
    
	// Salin item percakapan berdasarkan beberapa kondisi
    if (conversation.getConversationTopic().contains("test email")) {
        client.copyConversationItems(conversation.getConversationId(), client.getMailboxInfo().getDeletedItemsUri());
        System.out.println("Copied the conversation item to another folder");
    }
}

Pindahkan Percakapan di MS Exchange Server di Java

Di bagian sebelumnya, kita hanya menyalin percakapan dari satu folder ke folder lainnya. Namun, dalam kasus tertentu, Anda mungkin perlu memindahkan percakapan ke folder tertentu. Berikut adalah langkah-langkah untuk memindahkan percakapan di MS Exchange Server di Java.

Contoh kode berikut menunjukkan cara memindahkan percakapan di MS Exchange Server menggunakan Java.

// Setel URI kotak surat, nama pengguna, kata sandi, informasi domain
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");

// Temukan item percakapan di folder kotak masuk
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());

// Tampilkan semua percakapan
for (ExchangeConversation conversation : conversations) {
	System.out.println("Topic: " + conversation.getConversationTopic());
    
	// Pindahkan item percakapan berdasarkan beberapa kondisi
    if (conversation.getConversationTopic().contains("test email") == true) {
        client.moveConversationItems(conversation.getConversationId(), client.getMailboxInfo().getDeletedItemsUri());
        System.out.println("Moved the conversation item to another folder");
    }
}

Hapus Percakapan di MS Exchange Server di Java

Terakhir, mari kita lihat cara menghapus percakapan dari MS Exchange Server di Java.

Contoh kode berikut menunjukkan cara menghapus percakapan dari MS Exchange Server di Java.

// Setel URI kotak surat, nama pengguna, kata sandi, informasi domain
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");

// Temukan item percakapan di folder kotak masuk
ExchangeConversation[] conversations = client.findConversations(client.getMailboxInfo().getInboxUri());

// Tampilkan semua percakapan
for (ExchangeConversation conversation : conversations) {
	System.out.println("Topic: " + conversation.getConversationTopic());
    
	// Hapus item percakapan berdasarkan beberapa kondisi
    if (conversation.getConversationTopic().contains("test email") == true) {
        client.deleteConversationItems(conversation.getConversationId());
        System.out.println("Deleted the conversation item");
    }
}

Dapatkan Lisensi API Gratis

Anda bisa mendapatkan lisensi sementara gratis untuk menggunakan Aspose.Email for Java tanpa batasan evaluasi.

Kesimpulan

Pada artikel ini, Anda telah mempelajari cara mengelola percakapan di Microsoft Exchange Server menggunakan Java. Anda telah melihat cara menemukan, menyalin, memindahkan, dan menghapus percakapan di MS Exchange Server secara terprogram di Java. Selain itu, Anda dapat menjelajahi dokumentasi untuk membaca lebih lanjut tentang Aspose.Email for Java. Selain itu, Anda dapat mengajukan pertanyaan melalui forum kami.

Lihat juga