فیلتر ایمیلها از سرور ایمیل
فیلتر پیامها بر اساس فرستنده، گیرنده یا تاریخ
این Pop3Client کلاس، شرح داده شده در اتصال به سرور POP3، ارائه میدهد ListMessages() متد تمام پیامهای یک صندوقپست را دریافت میکند. برای دریافت تنها پیامهایی که با شرطی مطابقت دارند، از نسخهٔ بارگذاریشدهٔ ListMessages() متدی که میگیرد MailQuery بهعنوان آرگومان. این MailQuery کلاس ویژگیهای متنوعی برای تعیین شرایط جستجو فراهم میکند، برای مثال تاریخ، موضوع، فرستنده، گیرنده و غیره. این MailQueryBuilder کلاس برای ساخت عبارت جستجو استفاده میشود. ابتدا همه شرایط و محدودیتها تنظیم میشوند و سپس MailQuery با پرسوجویی که توسط MailQueryBuilder. این MailQuery شیء کلاس توسط Pop3Client برای استخراج اطلاعات فیلتر شده از سرور. این مقاله نشان میدهد چگونه پیامهای ایمیل را از یک صندوق پست فیلتر کنیم. مثال اول نحوه فیلتر پیامها بر اساس تاریخ و موضوع را نمایش میدهد. همچنین نحوه فیلتر بر معیارهای دیگر و ساخت پرسوجوهای پیچیدهتر را نشان میدهد. همچنین کاربرد فیلتر تاریخ و زمان برای بازیابی ایمیلهای خاص از صندوق پست را نشان میدهد. علاوه بر این، نحوه اعمال فیلتر حساس به حروف کوچک و بزرگ را نیز نمایش میدهد.
فیلتر پیامها از صندوق پست
برای فیلتر کردن پیامها از یک صندوقپست:
- اتصال به سرور POP3.
- یک نمونه از MailQuery و ویژگیهای موردنظر را تنظیم کنید.
- متد را فراخوانی کنید Pop3Client.ListMessages(MailQuery query) متد و پاس دهید MailQuery در پارامترها فقط پیامهای فیلترشده را دریافت کنید.
قطعه کد زیر نشان میدهد چگونه به یک صندوقپست POP3 متصل شده و پیامهایی که امروز رسیدهاند و واژه "newsletter" در موضوع دارند را دریافت کنیم.
بازیابی پیامها بر اساس معیارهای خاص
نمونههای کد فوق نشان میدهد چگونه میتوانید پیامها را بر اساس موضوع ایمیل و تاریخ فیلتر کنید. میتوانیم از ویژگیهای دیگر برای تنظیم شرایط پشتیبانیشده نیز استفاده کنیم. در ادامه چند مثال از تنظیم شرایط با استفاده از MailQuery.
قطعههای کد زیر نشان میدهند چگونه ایمیلها را بر اساس معیارهای دیگر فیلتر کنیم:
- یافتن ایمیلهای تحویلشده امروز.
- یافتن ایمیلهای دریافتشده در یک بازه.
- یافتن ایمیلهای ارسالشده از یک فرستنده خاص.
- یافتن ایمیلهای ارسالشده از یک دامنه خاص.
- یافتن ایمیلهای ارسالشده به یک گیرنده خاص.
تاریخ امروز
قطعه کد زیر نشان میدهد چگونه ایمیلهای تحویلدادهشده امروز را پیدا کنیم.
بازه تاریخ
قطعه کد زیر نشان میدهد چگونه ایمیلهای دریافتشده در یک بازه زمانی را پیدا کنیم.
فرستنده خاص
قطعه کد زیر نشان میدهد چگونه ایمیلهای ارسالشده از یک فرستنده خاص را پیدا کنیم.
دامنه خاص
قطعه کد زیر نشان میدهد چگونه ایمیلهای ارسالشده از یک دامنه خاص را پیدا کنیم.
گیرنده خاص
قطعه کد زیر نشان میدهد چگونه ایمیلهای ارسالشده به یک گیرنده خاص را پیدا کنیم.
ساخت پرسوجوهای پیچیده
اگر متفاوت MailQueryBuilder ویژگیها در عبارتهای جداگانه تنظیم میشوند، سپس تمام شرایط مطابقت مییابند. برای مثال، اگر بخواهیم پیامها را بین یک بازه زمانی و از یک میزبان خاص دریافت کنیم، باید سه عبارت بنویسیم.
ترکیب پرسوجوها با AND
قطعه کد زیر نشان میدهد چگونه پرسوجوها را با AND ترکیب کنید.
ترکیب پرسوجوها با OR
MailQueryBuilder ارائه میدهد Or() متد که دو MailQuery بهعنوان پارامترها. پیامهایی را که با هر یک از دو شرط مشخص شده مطابقت دارند، دریافت میکند. قطعه کد زیر نشان میدهد چگونه پیامهایی را فیلتر کنید که یا در موضوع «test» دارند یا فرستنده آنها "noreply@host.com" است. قطعه کد زیر نشان میدهد چگونه پرسوجوها را با OR ترکیب کنید.
فیلترهای حساس به حروف
API همچنین قابلیت فیلتر کردن ایمیلها از صندوقپست بر اساس معیار حساس به حروف کوچک و بزرگ را فراهم میکند. متدهای زیر امکان جستجوی ایمیلها با پرچم حساس به حروف را ارائه میدهند.
- متد Aspose.Email.StringComparisonField.Contains(string value, bool ignoreCase)
- متد Aspose.Email.StringComparisonField.Equals(string value, bool ignoreCase)
- متد Aspose.Email.StringComparisonField.NotContains(string value, bool ignoreCase)
- متد Aspose.Email.StringComparisonField.NotEquals(string value, bool ignoreCase)