Поделиться через


Календари и веб-службах Exchange

Сведения о календарях, папках и элементах календаря, встречах и собраниях в Exchange.

Вы, вероятно, знакомы со многими функциями календаря в почтовых клиентах, таких как Outlook, которые позволяют отслеживать встречи, планировать собрания, проверять доступность людей, приглашать участников, а также изменять или отменять собрания.

Функции, связанные с календарем, в Exchange немного отличаются от того, что вы видите в клиенте, например Outlook. Вместо отображения информации EWS в Exchange позволяет создавать, хранить, отправлять или изменять информацию. Чтобы использовать EWS для работы с календарями, необходимо ознакомиться с такими понятиями, как хранение информации, время, повторение и поток сообщений. В частности, вам потребуется ознакомиться со следующими сведениями:

  • Папки календаря, элементы календаря и представления календаря

  • Приглашения на собрания, ответы, планирование, участники, ресурсы, комнаты и доступность

  • Продолжительность, часовые пояса, а также время начала и окончания собраний и встреч

  • Повторяющиеся ряды, шаблоны повторений, исключения, встречи и собрания с одним экземпляром

К счастью, EWS и управляемый API EWS предоставляют широкий набор операций и методов, которые позволяют выполнять широкий спектр задач, связанных с календарем. Например, с помощью управляемого API EWS можно создать собрание и отправить приглашения участникам с помощью всего нескольких строк кода, как показано в следующем примере.

            Appointment meeting = new Appointment(service);
            // Set the properties on the meeting object to create the meeting.
            meeting.Subject = "Team building exercise";
            meeting.Body = "Let's learn to really work as a team and then have lunch!";
            meeting.Start = DateTime.Now.AddDays(2);
            meeting.End = meeting.Start.AddHours(2);
            meeting.Location = "Conference Room 12";
            meeting.RequiredAttendees.Add("Mack.Chaves@contoso.com");
            meeting.RequiredAttendees.Add("Sadie.Daniels@contoso.com");
            meeting.OptionalAttendees.Add("Magdalena.Kemp@contoso.com");
            meeting.ReminderMinutesBeforeStart = 60;
            // Send the meeting request
            meeting.Save(SendInvitationsMode.SendToAllAndSaveCopy);

Папки календаря и элементы календаря

Папки календаря содержат элементы календаря. Папки календаря имеют класс папокIPF. Appointment и может включать только элементы, определенные свойством ItemClass EWS Managed API, которое связано с объектом Appointment Class , или элементом EWS CalendarItemType .

Элементы в папке "Календарь" немного отличаются от элементов в других папках почтового ящика, так как вхождения в повторяющемся ряде и исключения из повторяющегося ряда не являются фактическими элементами почтового ящика, а хранятся внутри вложения в повторяющемся главном элементе. Поэтому для получения всех встреч в заданном диапазоне дат необходимо использовать представление календаря. Дополнительные сведения о получении встреч и представлений календаря см. в статье Получение встреч и собраний с помощью EWS в Exchange.

Собрания и встречи

Существенное различие между собраниями и встречами состоит в том, что на собраниях есть участники, а на встречах — нет. Exchange использует внутри один и тот же объект как для собраний, так и для встреч. Для работы с собраниями и встречами используется класс Appointment управляемого API EWS или элемент CalendarItem EWS.

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

Так как собрания включают отправку запросов и обновлений и реагирование на них, они включают не только доступ к элементам в папке Календарь. У них также есть связанный рабочий процесс. Собрания должны планироваться, когда участники доступны, а также могут включать резервирование комнаты для собраний или ресурсов, таких как проектор или другое оборудование.

Рабочий процесс собрания обычно включает следующие действия.

  1. Собрание создается и заполняется такими сведениями, как время начала и окончания, расположение и текст сообщения.
  2. Создается список потенциальных участников, ресурсов и комнат.
  3. Проверяется состояние доступности участников.
  4. Участникам отправляется приглашение на собрание.
  5. Участники отвечают на собрание с намерением присутствовать или нет. Участники могут также предложить новое время для собрания.
  6. Собрания могут быть отменены или обновлены, что обычно инициирует отправку новых сообщений участникам.

Календари и время

Функциональные возможности, связанные с временем, являются неотъемлемой частью календаря. Встречи и собрания имеют время начала и окончания, продолжительность и другие связанные с временем свойства, такие как время создания, отправки и получения сообщения. Существующие встречи и собрания можно получить из папки Calendar в зависимости от времени начала и окончания. Повторяющиеся ряды имеют начало и конец. И встречи происходят в пределах заданного часового пояса, что становится все более важным в мировой экономике.

Время хранится внутри сервера Exchange в формате UTC. Exchange преобразует их в локальный часовой пояс на основе параметров клиента. Свойства DateTime ограничены локальным часовом поясом компьютера.

Повторяющиеся ряды

Повторяющийся ряд встреч или собраний состоит из повторяющегося главного элемента, набора вхождений и при необходимости набора элементов исключений. Сведения о повторении хранятся в повторяющихся главных элементах. Элемент EWS EWS RecurringMasterItemId связан с вхождениями и исключениями в ряде. Для получения повторяющегося главного интерфейса можно использовать метод Appointment.BindToRecurringMaster EWS Managed API. С помощью экземпляра ряда можно найти все элементы и сведения, связанные с рядом.

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

В этом разделе:

См. также