قوانین صندوق ورودی را در سرور Exchange در جاوا مدیریت کنید

هنگام استفاده از خدمات Microsoft Exchange Server، ممکن است لازم باشد قوانین مختلفی را برای پوشه صندوق ورودی تعریف کنید. این قوانین برای پیام‌هایی مانند انتقال پیام به پوشه، حذف پیام و غیره اعمال می‌شوند. یک قانون صندوق ورودی شامل شرایط و اقداماتی است که باید در صورت برآورده شدن شرایط انجام شوند. در این مقاله با نحوه ایجاد و به روز رسانی قوانین صندوق ورودی در MS Exchange Server در جاوا آشنا می شوید.

Java API برای مدیریت قوانین صندوق ورودی در سرور Exchange

برای کار با قوانین صندوق ورودی در MS Exchange Server، از Aspose.Email for Java استفاده خواهیم کرد. API برای کار یکپارچه با MS Exchange Server و مدیریت خدمات آن طراحی شده است. می توانید API را دانلود یا با استفاده از تنظیمات Maven زیر نصب کنید.

مخزن:

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

وابستگی:

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

یک قانون Inbox در سرور Exchange در جاوا ایجاد کنید

Aspose.Email برای جاوا از سرویس های وب Exchange (EWS) برای کار با قوانین صندوق ورودی در سرور Exchange استفاده می کند. مراحل زیر برای ایجاد یک قانون صندوق ورودی در Exchange Server در جاوا آمده است.

  • ابتدا به Exchange Server متصل شوید و نمونه مشتری EWS را در یک شی IEWSClient وارد کنید.
  • سپس، یک شی از کلاس InboxRule ایجاد کنید.
  • نام قانون را با استفاده از روش InboxRule.setDisplayName() تنظیم کنید.
  • یک نمونه از کلاس RulePredicates ایجاد کنید و شرایط را مشخص کنید.
  • با استفاده از روش InboxRule.setConditions() نمونه RulePredicates را اختصاص دهید.
  • یک نمونه از کلاس RuleActions ایجاد کنید و اقدامات را تنظیم کنید.
  • با استفاده از روش InboxRule.setActions() نمونه RuleAction را اختصاص دهید.
  • در نهایت، برای ایجاد قانون، IEWSClient.createInboxRule(InboxRule) را فراخوانی کنید.

نمونه کد زیر نحوه ایجاد یک قانون صندوق ورودی در Exchange Server در جاوا را نشان می دهد.

// به Exchange Server متصل شوید
IEWSClient client = EWSClient.getEWSClient(mailboxURI, credential);
System.out.println("Connected to Exchange server");

// یک قانون جدید ایجاد کنید
InboxRule rule = new InboxRule();
rule.setDisplayName("Message from client ABC");

// شرایط را اضافه کنید
RulePredicates newRules = new RulePredicates();
// مجموعه موضوع شامل رشته "ABC" و اضافه کردن شرایط است
newRules.containsSubjectStrings().addItem("ABC");
newRules.getFromAddresses().addMailAddress(new MailAddress("administrator@ex2010.local", true));
rule.setConditions(newRules);

// اقدامات را اضافه کنید و پیام را به یک پوشه منتقل کنید
RuleActions newActions = new RuleActions();
newActions.setMoveToFolder("120:AAMkADFjMjNjMmNjLWE3NzgtNGIzNC05OGIyLTAwNTgzNjRhN2EzNgAuAAAAAABbwP+Tkhs0TKx1GMf0D/cPAQD2lptUqri0QqRtJVHwOKJDAAACL5KNAAA=AQAAAA==");
rule.setActions(newActions);

// قانون ایجاد کنید
client.createInboxRule(rule);

یک قانون صندوق ورودی را در سرور Exchange در جاوا به روز کنید

مراحل زیر برای واکشی و به‌روزرسانی یک قانون صندوق ورودی موجود در Exchange Server در جاوا آمده است.

  • ابتدا به Exchange Server متصل شوید و نمونه مشتری EWS را در یک شی IEWSClient وارد کنید.
  • سپس، متد IEWSClient.getInboxRules() را فراخوانی کنید تا تمام قوانین موجود در آرایه InboxRule را دریافت کنید.
  • از طریق هر InboxRule در آرایه حلقه بزنید.
  • قوانین مورد نیاز را بر اساس برخی شرایط فیلتر کنید.
  • شرایط یا اقدامات قانون را به روز کنید.
  • در نهایت، روش IEWSClient.updateInboxRule(InboxRule) را برای به‌روزرسانی قانون صندوق ورودی فراخوانی کنید.

نمونه کد زیر نحوه به روز رسانی یک قانون صندوق ورودی را در MS Exchange Server در جاوا نشان می دهد.

// به Exchange Server متصل شوید
IEWSClient client = EWSClient.getEWSClient(mailboxURI, credential);
System.out.println("Connected to Exchange server");

// همه قوانین صندوق ورودی را دریافت کنید
InboxRule[] inboxRules = client.getInboxRules();

// از طریق هر قانون حلقه بزنید
for (InboxRule inboxRule : inboxRules) {
    if ("Message from client ABC".equals(inboxRule.getDisplayName())) {
        // قانون به روز رسانی
        inboxRule.getConditions().getFromAddresses().set_Item(0, new MailAddress("administrator@ex2010.local", true));
        client.updateInboxRule(inboxRule);
    }
}

مجوز API رایگان دریافت کنید

می‌توانید برای استفاده از Aspose.Email برای جاوا بدون محدودیت ارزیابی، مجوز موقت رایگان دریافت کنید.

نتیجه

در این مقاله نحوه کار با قوانین صندوق ورودی مایکروسافت اکسچنج سرور را از داخل برنامه های جاوا یاد گرفتید. نحوه افزودن یا به روز رسانی قانون صندوق ورودی را در Exchange Server در جاوا مشاهده کرده اید. علاوه بر این، می‌توانید ویژگی‌های Aspose.Email برای جاوا را با استفاده از مستندات کاوش کنید. همچنین، در صورت داشتن هر گونه سوال، می توانید به [تالار گفتمان17 ما ارسال کنید.

همچنین ببینید