Создание, обновление или удаление задач на сервере MS Exchange в Java

Списки дел используются для отслеживания действий, которые необходимо выполнить. Люди создают такие списки на бумаге, в текстовых редакторах, электронных таблицах и т. д. Microsoft Exchange Server также предоставляет возможность создания списков дел, состоящих из задач, и управления ими. Чтобы работать с этими задачами программно, в этой статье показано, как добавлять, обновлять или удалять задачи на MS Exchange Server в Java.

Java API для управления задачами на сервере MS Exchange

Aspose.Email для Java — это API обработки электронной почты, который используется для создания и отправки электронных писем, а также для реализации клиентских приложений электронной почты. Кроме того, он позволяет беспрепятственно работать с MS Exchange Server. Мы будем использовать этот API для создания и управления задачами на сервере MS Exchange. Вы можете либо скачать 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>

Создать задачу на MS Exchange Server в Java

Ниже приведены шаги для создания задач на сервере MS Exchange в Java.

  • Сначала подключитесь к Exchange Server и получите экземпляр клиента EWS в объект IEWSClient.
  • Затем создайте экземпляр класса ExchangeTask.
  • Установите свойства задач, такие как тема, статус и т. д.
  • Наконец, создайте задачу с помощью метода IEWSClient.createTask(String, ExchangeTask).

В следующем примере кода показано, как создавать задачи на сервере MS Exchange с помощью Java.

// Создайте экземпляр класса EWSClient, предоставив учетные данные
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Создать объект задачи Exchange
ExchangeTask task = new ExchangeTask();

// Установите тему и статус задачи (и другие свойства)
task.setSubject("New-Test");
task.setStatus(ExchangeTaskStatus.InProgress);

// Создать задачу
client.createTask(client.getMailboxInfo().getTasksUri(), task);

Задача обновления на MS Exchange Server в Java

Вы также можете получить доступ к существующим задачам на сервере MS Exchange Server и обновить их программно, используя Java. Ниже приведены шаги для выполнения этой операции.

В следующем примере кода показано, как обновить задачу на сервере MS Exchange в Java.

// Создайте экземпляр класса ExchangeClient, предоставив учетные данные
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Получить всю информацию о задачах из Exchange
ExchangeMessageInfoCollection tasks = client.listMessages(client.getMailboxInfo().getTasksUri());

// Разобрать все информационные объекты задач в списке
for (ExchangeMessageInfo info : (Iterable<ExchangeMessageInfo>) tasks) {
    // Получить задачу из Exchange, используя текущую информацию о задаче
    ExchangeTask task = client.fetchTask(info.getUniqueUri());

    // Обновить статус задачи
    task.setStatus(ExchangeTaskStatus.NotStarted);

    // Установите срок выполнения задачи
    SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
    task.setDueDate(sdf.parse("26/02/2013 00:00:00"));

    // Установить приоритет задачи
    task.setPriority(MailPriority.Low.getValue());

    // Обновление задачи на Exchange
    client.updateTask(task);
}

Удалить задачи на сервере MS Exchange в Java

Ниже приведены шаги для удаления задач на сервере MS Exchange в Java.

В следующем примере кода показано, как удалить задачи из MS Exchange Server в Java.

// Создайте экземпляр класса ExchangeClient, предоставив учетные данные
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// Получить всю информацию о задачах из Exchange
ExchangeMessageInfoCollection tasks = client.listMessages(client.getMailboxInfo().getTasksUri());

// Разобрать все информационные объекты задач в списке
for (ExchangeMessageInfo info : (Iterable<ExchangeMessageInfo>) tasks) {
    // Получить задачу из Exchange, используя текущую информацию о задаче
    ExchangeTask task = client.fetchTask(info.getUniqueUri());

    // Проверить, соответствует ли текущая задача критериям поиска
    if (task.getSubject().equals("test")) {
        // Удалить задачу из Exchange
        client.deleteItem(task.getUniqueUri(), DeletionOptions.getDeletePermanently());
    }
}

Получите бесплатную лицензию API

Вы можете получить бесплатную временную лицензию на использование Aspose.Email для Java без ограничений пробной версии.

Вывод

В этой статье вы узнали, как управлять задачами на сервере Microsoft Exchange. В частности, вы видели, как программно добавлять, обновлять или удалять задачи на сервере MS Exchange на языке Java. Кроме того, вы можете изучить документацию, чтобы узнать больше об Aspose.Email для Java. Также вы можете задать свои вопросы на нашем форуме.

Смотрите также