Управление элементами календаря с помощью Exchange Web Services (EWS)

Отправка запросов на встречи

В этой статье показано, как отправить запрос на встречу нескольким получателям с помощью Exchange Web Services и Aspose.Email.

  1. Создайте запрос на собрание, используя Appointment класс и задайте место, время и участников.
  2. Создать экземпляр MailMessage класс и установите встречу, используя MailMessage.AddAlternateView() метод.
  3. Подключитесь к серверу Exchange и отправьте запрос на собрание, используя Send(MailMessage) метод.

Этот EWSClient Класс может использоваться для подключения к серверу Exchange с поддержкой Exchange Web Services (EWS). Для этого сервер должен быть Exchange Server 2007 или новее. Ниже приведён фрагмент кода, показывающий, как использовать EWS для отправки запросов на встречи.

Управление элементами календаря через EWS

Aspose.Email предоставляет возможность добавлять, обновлять и отменять встречи с использованием клиента Exchange Web Service (EWS). IEWSClient CreateAppointment, UpdateAppointment, and CancelAppointment методы позволяют управлять элементами календаря с помощью EWS. Эта статья предоставляет подробный пример кода работы с элементами календаря. Ниже приведён пример кода, показывающий как:

  1. Создать встречу.
  2. Обновить встречу.
  3. Удалить/отменить встречу.

Список встреч с поддержкой постраничного вывода

Метод ListAppointments, предоставляемый IEWSClient API получает полный список встреч с сервера Exchange. Это может занять время, если на сервере Exchange большое количество встреч. API предоставляет перегруженные методы ListAppointments метод, который предоставляет поддержку постраничного вывода для операции. Его также можно использовать в различных комбинациях с функцией запросов. Ниже приведены перегруженные методы для вывода списка встреч с сервера Exchange с поддержкой постраничного вывода.

  • AppointmentCollection IEWSClient.ListAppointments(int itemsPerPage).
  • AppointmentCollection IEWSClient.ListAppointments(string folderUri, int itemsPerPage).
  • AppointmentCollection IEWSClient.ListAppointments(MailQuery query, int itemsPerPage).
  • AppointmentCollection IEWSClient.ListAppointments(string folderUri, MailQuery query, int itemsPerPage).
  • AppointmentCollection IEWSClient.ListAppointments(int itemsPerPage, int itemOffset).
  • AppointmentCollection IEWSClient.ListAppointments(string folderUri, int itemsPerPage, int itemOffset).
  • AppointmentCollection IEWSClient.ListAppointments(MailQuery query, int itemsPerPage, int itemOffset).
  • AppointmentCollection IEWSClient.ListAppointments(string folderUri, MailQuery query, int itemsPerPage, int itemOffset).

Следующий фрагмент кода показывает, как вывести список встреч с поддержкой постраничного вывода.

Добавить событие во вторичный каталог календаря

API Aspose.Email позволяет создать вторичный каталог Календаря на сервере Exchange с помощью IEWSClient. Затем встречи можно добавлять, обновлять или отменять во вторичном календаре с помощью CreateAppointment, UpdateAppointment и CancelAppointment методы. Ниже приведены API‑методы и свойства, использованные в примерах кода, чтобы продемонстрировать функциональность этой возможности. Обратите внимание, что данная возможность поддерживается Aspose.Email for .NET начиная с версии 6.5.0.

  • Метод IEWSClient.CancelAppointment(Appointment, String).
  • Метод IEWSClient.CancelAppointment(String, String).
  • Метод IEWSClient.CreateAppointment(Appointment, String).
  • Метод IEWSClient.CreateFolder(String, String, ExchangeFolderPermissionCollection, String).
  • Метод IEWSClient.FetchAppointment(String, String).
  • Метод IEWSClient.UpdateAppointment(Appointment, String).
  • Свойство IEWSClient.CurrentCalendarFolderUri.

Следующий фрагмент кода показывает, как добавить событие во вторичный каталог календаря на сервере Exchange.

Поделиться приглашением в календаре

Сервер Microsoft Exchange предоставляет возможность делиться календарями, отправляя приглашения другим пользователям, зарегистрированным на том же сервере Exchange. API Aspose.Email предоставляет ту же возможность, позволяя делиться календарём с помощью API EWS.

Получить расширенные атрибуты

Возврат повторяющихся элементов календаря

EWSClient поддерживает возврат повторяющихся элементов календаря в диапазоне, указанном параметрами StartDate и EndDate. AppointmentQueryBuilder.SetCalendarView Метод используется для определения определённого диапазона дат и ограничения количества возвращаемых встреч, чтобы получить релевантную информацию. Установив следующие параметры, вы можете получить встречи, соответствующие указанным критериям.

  • startDate: Начальная дата просмотра календаря. Встречи, начинающиеся с этой даты, будут включены в результат запроса.

  • endDate: Конечная дата просмотра календаря. Встречи, завершающиеся до этой даты или в её день, будут включены в результат запроса.

  • maxEntriesReturned: Максимальное количество встреч, которое будет возвращено в результате запроса. Значение -1 указывает, что конкретного ограничения нет.

ExchangeQueryBuilder builder = new ExchangeQueryBuilder();
builder.Appointment.SetCalendarView(DateTime.Now, DateTime.Now.AddMonths(1), -1);

Appointment[] appointments = client.ListAppointments(builder.GetQuery());

Фильтровать встречи

Этот IEWSClient предоставляет возможность фильтровать встречи с сервера Exchange, используя ExchangeQueryBuilder. Встречи можно фильтровать по:

  • Даты
  • Повторения

Фильтровать встречи по датам

Фильтровать встречи по повторяющимся событиям