Filter Email dari Server Mail

Filter Pesan berdasarkan Pengirim, Penerima, atau Tanggal

The Pop3Client kelas, dijelaskan dalam Sambungkan ke Server POP3, menyediakan ListMessages() metode yang mengambil semua pesan dari kotak surat. Untuk hanya mendapatkan pesan yang cocok dengan beberapa kondisi, gunakan overload ListMessages() metode yang mengambil MailQuery sebagai argumen. The MailQuery kelas menyediakan berbagai properti untuk menentukan kondisi kueri, misalnya, tanggal, subjek, pengirim, penerima, dan sebagainya. The MailQueryBuilder kelas digunakan untuk membangun ekspresi pencarian. Pertama, semua kondisi dan batasan diatur dan kemudian MailQuery diisi dengan kueri yang dikembangkan oleh MailQueryBuilder. The MailQuery objek kelas digunakan oleh Pop3Client untuk mengekstrak informasi yang difilter dari server. Artikel ini menunjukkan cara memfilter pesan email dari kotak surat. Contoh pertama menggambarkan cara memfilter pesan berdasarkan tanggal dan subjek. Kami juga menunjukkan cara memfilter berdasarkan kriteria lain dan cara membangun kueri yang lebih kompleks. Artikel ini juga menunjukkan penerapan filter Tanggal dan Waktu untuk mengambil email tertentu dari kotak surat. Selain itu, juga ditunjukkan cara menerapkan penyaringan yang memperhatikan huruf besar/kecil.

Filter Pesan dari Kotak Surat

Untuk menyaring pesan dari kotak surat:

  1. Terhubung ke server POP3.
  2. Buat sebuah instance dari MailQuery dan mengatur properti yang diinginkan.
  3. Panggil Pop3Client.ListMessages(MailQuery query) metode dan melewatkan MailQuery dalam parameter untuk hanya mendapatkan pesan yang disaring.

Potongan kode berikut menunjukkan cara terhubung ke kotak surat POP3 dan mengambil pesan yang tiba hari ini serta memiliki kata "newsletter" dalam subjek.

Mendapatkan Pesan berdasarkan Kriteria Spesifik

Contoh kode di atas menunjukkan cara Anda dapat memfilter pesan berdasarkan subjek email dan tanggal. Kami dapat menggunakan properti lain untuk mengatur kondisi yang didukung juga. Di bawah ini beberapa contoh pengaturan kondisi menggunakan MailQuery.

Potongan kode berikut menunjukkan cara menyaring email berdasarkan kriteria lain:

  • Temukan email yang dikirim hari ini.
  • Temukan email yang diterima dalam rentang tertentu.
  • Temukan email dari pengirim tertentu.
  • Temukan email yang dikirim dari domain tertentu.
  • Temukan email yang dikirim ke penerima tertentu.

Tanggal Hari Ini

Potongan kode berikut menunjukkan cara menemukan email yang dikirim hari ini.

Rentang Tanggal

Potongan kode berikut menunjukkan cara menemukan email yang diterima dalam rentang tertentu.

Pengirim Khusus

Potongan kode berikut menunjukkan cara menemukan email dari pengirim tertentu.

Domain Khusus

Potongan kode berikut menunjukkan cara menemukan email yang dikirim dari domain tertentu.

Penerima Khusus

Potongan kode berikut menunjukkan cara menemukan email yang dikirim ke penerima tertentu.

Membangun Kueri Kompleks

Jika berbeda MailQueryBuilder properti diatur dalam pernyataan terpisah, maka semua kondisi akan cocok. Misalnya, jika kita ingin mendapatkan pesan antara rentang tanggal dan dari host tertentu, kita perlu menulis tiga pernyataan.

Gabungkan Kueri dengan AND

Potongan kode berikut menunjukkan cara menggabungkan kueri dengan AND.

Gabungkan Kueri dengan OR

MailQueryBuilder menyediakan Or() metode yang mengambil dua MailQuery instance sebagai parameter. Ini mengambil pesan yang cocok dengan salah satu dari dua kondisi yang ditentukan. Potongan kode berikut menunjukkan cara memfilter pesan yang memiliki "test" dalam subjek atau "noreply@host.com" sebagai pengirim. Potongan kode berikut menunjukkan cara menggabungkan kueri dengan OR.

Filter Sensitif Huruf Besar/Kecil

API juga menyediakan kemampuan untuk menyaring email dari kotak surat berdasarkan kriteria sensitif huruf besar/kecil. Metode berikut menyediakan kemampuan untuk mencari email dengan menentukan flag sensitif huruf besar/kecil.

  • Method Aspose.Email.StringComparisonField.Contains(string value, bool ignoreCase)
  • Method Aspose.Email.StringComparisonField.Equals(string value, bool ignoreCase)
  • Method Aspose.Email.StringComparisonField.NotContains(string value, bool ignoreCase)
  • Method Aspose.Email.StringComparisonField.NotEquals(string value, bool ignoreCase)