Надстройка Outlook: событие AppointmentTimeChanged не запускается при изменении времени события

#outlook #outlook-addin #outlook-web-addins #outlook-2010 #outlook-2007

#outlook #надстройка Outlook #outlook-web-addins #outlook-2010 #outlook-2007

Вопрос:

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

 Office.onReady(function() {
  mailboxItem = Office.context.mailbox.item;

  console.log("Added event handler");
  mailboxItem.addHandlerAsync(Office.EventType.AppointmentTimeChanged, args =>
      console.log("AppointmentTimeChanged")
  ),
  args => {
      console.log("Listening");
  };
});
 

Однако это не работает для меня.

Комментарии:

1. Не могли бы вы поделиться, на какой платформе вы видите сбой? Также предоставьте общий доступ к номеру версии клиента.

2. Я использую надстройку в Outlook для Web (outlook.com ) в Chrome в Windows. Версия моего Chrome — 87.0.4280.88

Ответ №1:

AppointmentTimeChanged прослушиватель событий работает только до жизненного цикла надстройки. Если вы используете функции надстройки без пользовательского интерфейса, вы не будете получать уведомления после вашего вызова event.completed() .

Чтобы прослушать изменения, помимо этого, вам нужно будет прослушать изменения с помощью веб-перехватов graph (https://docs.microsoft.com/en-us/graph/webhooks ). Эта подписка на вашу серверную службу позволит вам получать уведомления об изменениях событий даже от других клиентов.

Но в этом есть загвоздка, Outlook для MAC не предоставляет возможности прослушивать эти изменения до отправки события. Чтобы обойти эту проблему, вы можете использовать пользовательские свойства и прослушиватель изменений с помощью этих свойств. Вот документ, объясняющий это: https://docs.microsoft.com/en-us/outlook/troubleshoot/calendars/cannot-save-meeting-as-draft-in-outlook-for-mac.