При использовании служб Microsoft Exchange Server вам может потребоваться определить другие правила для папки «Входящие». Эти правила применяются к сообщениям, таким как перемещение сообщения в папку, удаление сообщения и т. д. Правило для папки «Входящие» состоит из условий и действий, которые должны выполняться при выполнении условий. В этой статье вы узнаете, как создавать и обновлять правила для папки «Входящие» на сервере MS Exchange в Java.
- API для управления правилами папки «Входящие» на сервере Exchange
- Создание правил для папки “Входящие” на сервере Exchange
- Обновление правил для папки “Входящие” на сервере Exchange
API Java для управления правилами папки “Входящие” на сервере Exchange
Для работы с правилами почтового ящика на сервере MS Exchange мы будем использовать 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>
Создайте правило для папки «Входящие» на Exchange Server в Java
Aspose.Email для Java использует веб-службы Exchange (EWS) для работы с правилами для входящих сообщений на сервере Exchange. Ниже приведены шаги по созданию правила для папки «Входящие» на Exchange Server в Java.
- Сначала подключитесь к Exchange Server и получите экземпляр клиента EWS в объект IEWSClient.
- Затем создайте объект класса InboxRule.
- Задайте имя правила с помощью метода InboxRule.setDisplayName().
- Создайте экземпляр класса RulePredicates и укажите условия.
- Назначьте экземпляр RulePredicates с помощью метода InboxRule.setConditions().
- Создайте экземпляр класса RuleActions и установите действия.
- Назначьте экземпляр RuleAction, используя метод InboxRule.setActions().
- Наконец, вызовите IEWSClient.createInboxRule(InboxRule), чтобы создать правило.
В следующем примере кода показано, как создать правило для папки “Входящие” на Exchange Server в Java.
// Подключиться к серверу обмена
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();
// Set Subject содержит строку «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 Server в Java
Ниже приведены шаги для извлечения и обновления существующего правила для папки «Входящие» на сервере Exchange в Java.
- Сначала подключитесь к Exchange Server и получите экземпляр клиента EWS в объект IEWSClient.
- Затем вызовите метод IEWSClient.getInboxRules(), чтобы получить все правила в массиве InboxRule.
- Прокрутите все InboxRule в массиве.
- Отфильтруйте необходимые правила на основе некоторых условий.
- Обновите условия или действия правила.
- Наконец, вызовите метод IEWSClient.updateInboxRule(InboxRule), чтобы обновить правило для папки “Входящие”.
В следующем примере кода показано, как обновить правило для папки “Входящие” на MS Exchange Server в Java.
// Подключиться к серверу обмена
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 для Java без ограничений на пробную версию.
Вывод
В этой статье вы узнали, как работать с правилами для папки «Входящие» на сервере Microsoft Exchange Server из приложений Java. Вы видели, как добавить или обновить правило для папки “Входящие” на Exchange Server в Java. Кроме того, вы можете изучить возможности Aspose.Email для Java с помощью документации. Кроме того, если у вас возникнут вопросы, вы можете задать их на нашем форуме.