Office.SmartAlertsEventCompletedOptions interface

Определяет поведение надстройки "Интеллектуальные оповещения" после завершения обработки OnMessageSend события или OnAppointmentSend события.

Комментарии

Набор API: почтовый ящик 1.12

Минимальный уровень разрешений (Outlook):ограниченный

Применимый режим Outlook: Compose

Используется

Примеры

// The following example checks whether a location is specified in an appointment before it's sent.
function onAppointmentSendHandler(event) {
    Office.context.mailbox.item.location.getAsync({ asyncContext: event }, asyncResult => {
        const event = asyncResult.asyncContext;
        if (asyncResult.status === Office.AsyncResultStatus.Failed) {
            console.log(asyncResult.error.message);
            // If the add-in is unable to retrieve the appointment's location, the appointment isn't sent.
            event.completed({ allowEvent: false, errorMessage: "Failed to get the appointment's location." });
            return;
        }

        if (asyncResult.value === "") {
            // If no location is specified, the appointment isn't sent and the user is alerted to include a location.
            event.completed(
                {
                    allowEvent: false,
                    cancelLabel: "Add a location",
                    commandId: "msgComposeOpenPaneButton",
                    contextData: JSON.stringify({ a: "aValue", b: "bValue" }),
                    errorMessage: "Don't forget to add a meeting location.",
                    errorMessageMarkdown: "Don't forget to add a meeting location.\n\n**Tip**: For a list of locations, see [Meeting Locations]("https://www.contoso.com/meeting-locations).",
                    sendModeOverride: Office.MailboxEnums.SendModeOverride.PromptUser
                }
            );
        } else {
            // If a location is specified, the appointment is sent.
            event.completed({ allowEvent: true });
        }
    });
}

Свойства

allowEvent

Когда вы используете метод completed , чтобы сообщить о завершении обработки события, это значение указывает, следует ли продолжить выполнение обработанного события или оно должно быть отменено. Например, надстройка, обрабатывающая OnMessageSend событие ИЛИ, OnAppointmentSend может быть настроена allowEvent на false отмену отправки элемента. Полный пример см. в пошаговом руководстве по интеллектуальным оповещениям.

cancelLabel

Когда вы используете метод completed , чтобы сообщить о завершении обработки события, и задаете для его allowEvent свойства значение false, это свойство настраивает текст кнопки в диалоговом окне Smart Alerts. Пользовательский текст должен содержать не более 20 символов.

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

commandId

Если метод completed используется для оповещения о завершении обработки события и его свойство имеет allowEvent значение false, это свойство определяет идентификатор области задач или функции, выполняемой кнопкой в диалоговом окне "Интеллектуальные оповещения".

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

contextData

Когда вы используете метод completed , чтобы сообщить о завершении обработки события, и задаете для его allowEvent свойства значение false, это свойство определяет любые данные JSON, передаваемые надстройке для обработки при нажатии соответствующей кнопки в диалоговом окне Smart Alerts.

errorMessage

Когда вы используете метод completed , чтобы сообщить о завершении обработки события, и задаете его allowEvent свойству значение false, это свойство устанавливает сообщение об ошибке, отображаемое для пользователя. Пример см. в пошаговом руководстве по интеллектуальным оповещениям.

errorMessageMarkdown

Когда вы используете метод completed , чтобы сообщить о завершении обработки события, и задаете его allowEvent свойству значение false, это свойство устанавливает сообщение об ошибке, отображаемое для пользователя. Сообщение об ошибке отформатировано с использованием Markdown. Пример см. в пошаговом руководстве по интеллектуальным оповещениям.

sendModeOverride

Когда вы используете метод completed , чтобы сообщить о завершении обработки события, и устанавливаете для его allowEvent свойства значение false, это свойство переопределяет параметр режима отправки, указанный в манифесте во время выполнения.

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

Сведения о свойстве

allowEvent

Когда вы используете метод completed , чтобы сообщить о завершении обработки события, это значение указывает, следует ли продолжить выполнение обработанного события или оно должно быть отменено. Например, надстройка, обрабатывающая OnMessageSend событие ИЛИ, OnAppointmentSend может быть настроена allowEvent на false отмену отправки элемента. Полный пример см. в пошаговом руководстве по интеллектуальным оповещениям.

allowEvent?: boolean;

Значение свойства

boolean

Комментарии

Набор API: почтовый ящик 1.12

Минимальный уровень разрешений (Outlook):ограниченный

Применимый режим Outlook: Compose

cancelLabel

Когда вы используете метод completed , чтобы сообщить о завершении обработки события, и задаете для его allowEvent свойства значение false, это свойство настраивает текст кнопки в диалоговом окне Smart Alerts. Пользовательский текст должен содержать не более 20 символов.

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

cancelLabel?: string;

Значение свойства

string

Комментарии

Набор API: почтовый ящик 1.14

Минимальный уровень разрешений (Outlook):ограниченный

Применимый режим Outlook: Compose

Важно!

Настраиваемая кнопка в диалоговом окне интеллектуальных оповещений зависит от клиента Outlook и его версии.

  • В Outlook в Интернете на компьютерах Mac (предварительная версия начиная с версии 16.105 (сборка 25121117)), новый Outlook для Windows и классический Outlook для Windows начиная с версии 2412 (сборка 18324.20000) свойство cancelLabel настраивает текст кнопки принятия действия. Кнопка "Принять действие " отображается в диалоговом окне "Интеллектуальные оповещения", только если этот commandId параметр настроен в вызове event.completed . Этот параметр необходимо настроить, если вы хотите настроить текст кнопки диалогового окна. В этом случае кнопка "Не отправлять " отменяет отправляемый элемент. Ее текст и функции нельзя настроить. Если вы ранее настроили текст кнопки " Не отправлять", не назначив ей область задач или функциональную команду, он не будет применен в последних версиях клиента Outlook. Если вы ранее назначили область задач или команду функции для кнопки "Не отправлять ", никаких дополнительных действий для реализации кнопки "Принять действие " в последних версиях не требуется. Стандартная или настраиваемая кнопка "Принять действие " автоматически появится при следующем открытии диалогового окна смарт-оповещений. Хотя никаких изменений реализации не требуется, рекомендуем уведомить пользователей об этом обновленном интерфейсе.

  • В классической версии Outlook для Windows (до версии 2412 (сборка 18324.20000) и Outlook для Mac (до версии 16.105 (сборка 25121117)) свойство cancelLabel настраивает текст кнопки " Не отправлять ". Кнопка "Не отправлять " отменяет отправленный элемент.

commandId

Если метод completed используется для оповещения о завершении обработки события и его свойство имеет allowEvent значение false, это свойство определяет идентификатор области задач или функции, выполняемой кнопкой в диалоговом окне "Интеллектуальные оповещения".

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

commandId?: string;

Значение свойства

string

Комментарии

Набор API: Почтовый ящик 1.14 (поддержка области задач), Почтовый ящик 1.15 (поддержка команд функций)

Минимальный уровень разрешений (Outlook):ограниченный

Применимый режим Outlook: Compose

Важно!

Значение commandId должно совпадать с идентификатором области задач или функции, указанным в манифесте надстройки. Разметка зависит от типа манифеста, используемого надстройкой.

  • Манифест только для надстроек: атрибут id элемента управления , представляющий область задач или функцию.

  • Единый манифест для Microsoft 365: свойство "id" области задач или команды функции в массиве "controls".

Кнопка в диалоговом окне "Интеллектуальные оповещения", открывающая область задач или выполняющая функцию, зависит от клиента и версии Outlook. В Outlook в Интернете на компьютерах Mac (предварительная версия начиная с версии 16.105 (сборка 25121117)), новый Outlook для Windows и классический Outlook для Windows, начиная с версии 2412 (сборка 18324.20000), кнопка "Принять действие" открывает область задач или запускает функцию. В этом случае кнопка "Не отправлять " отменяет отправляемый элемент. Ее текст и функции нельзя настроить. В более ранних поддерживаемых версиях классического Outlook для Windows (версии до версии 2412 (сборка 18324.20000), поддерживающих набор требований к почтовому ящику 1.14) и Outlook для Mac кнопка "Не отправлять " открывает область задач или запускает функцию.

Если вы уже настроили текст и функции кнопки "Не отправлять" в надстройке "Смарт-оповещения" до версии 2412 (сборка 18324.20000) классического приложения Outlook для Windows или до версии 16.105 (сборка 25121117) Outlook для Mac, никаких дополнительных действий не требуется. Стандартная или настраиваемая кнопка "Принять действие " автоматически появится при следующем открытии диалогового окна смарт-оповещений. Хотя никаких изменений реализации не требуется, рекомендуем уведомить пользователей об этом обновленном интерфейсе.

Если указать несуществующий идентификатор команды, в зависимости от клиента Outlook кнопка "Принять меры " или " Не отправлять " просто отменит отправляемый элемент.

Если вы указываете опцию в вызове contextDataevent.completed , вы также должны назначить ей идентификатор commandId области задач или функции. В противном случае назначенные contextData данные JSON игнорируются.

При настройке кнопки в диалоговом окне "Интеллектуальные оповещения" для запуска функции, соответствующая кнопка также добавляется на ленту или панель действий клиента Outlook. Используйте параметр, contextData чтобы отличить, когда пользователь запускает функцию, от диалогового окна "Интеллектуальные оповещения".

Программирование кнопки в диалоговом окне "Интеллектуальные оповещения" для запуска функции доступно для предварительного просмотра в Outlook на Mac, начиная с версии 16.105 (сборка 25121117). Чтобы протестировать эту функцию, присоединитесь к программе предварительной оценки Microsoft 365 и выберите бета-канал для доступа к бета-версиям сборок Office.

contextData

Когда вы используете метод completed , чтобы сообщить о завершении обработки события, и задаете для его allowEvent свойства значение false, это свойство определяет любые данные JSON, передаваемые надстройке для обработки при нажатии соответствующей кнопки в диалоговом окне Smart Alerts.

contextData?: any;

Значение свойства

any

Комментарии

Набор API: почтовый ящик 1.14

Минимальный уровень разрешений (Outlook):ограниченный

Применимый режим Outlook: Compose

Важно!

  • В Outlook для Windows этот any тип поддерживается начиная с версии 2402 (сборка 17308.20000). В более ранних версиях Outlook для Windows поддерживается только этот string тип.

  • Если вы указываете опцию в вызове contextDataevent.completed , вы также должны назначить ей идентификатор commandId области задач или функции. В противном случае назначенные contextData данные JSON игнорируются.

  • Кнопка диалогового окна, передающая contextData значение надстройке, зависит от клиента Outlook и его версии. Дополнительные сведения см. в статье Настройка текста и функций кнопки в диалоговом окне.

  • Чтобы получить значение contextData свойства, необходимо вызвать Office.context.mailbox.item.getInitializationContextAsync реализацию области задач в JavaScript. Если вы создаете строку JSON с помощью JSON.stringify() свойства и назначаете ее contextData свойству, необходимо проанализировать строку с помощью одного JSON.parse() извлечения.

  • При настройке кнопки в диалоговом окне "Интеллектуальные оповещения" для запуска функции, соответствующая кнопка также добавляется на ленту или панель действий клиента Outlook. Используйте параметр, contextData чтобы отличить, когда пользователь запускает функцию, от диалогового окна "Интеллектуальные оповещения".

  • Чтобы предотвратить перезапуск области задач надстройки "Интеллектуальные оповещения", если она уже открыта, реализуйте обработчик для Office.EventType.InitializationContextChanged события. Затем можно передать аргументы события в свойство contextData .

errorMessage

Когда вы используете метод completed , чтобы сообщить о завершении обработки события, и задаете его allowEvent свойству значение false, это свойство устанавливает сообщение об ошибке, отображаемое для пользователя. Пример см. в пошаговом руководстве по интеллектуальным оповещениям.

errorMessage?: string;

Значение свойства

string

Комментарии

Набор API: почтовый ящик 1.12

Минимальный уровень разрешений (Outlook):ограниченный

Применимый режим Outlook: Compose

Важно!

  • Допустимая длина сообщения об ошибке не должна превышать 500 символов.

  • Если не указать сообщение в свойствеerrorMessage, вместо него будет отображаться следующее сообщение по умолчанию: "<Имя> надстройки препятствует отправке этого сообщения".

errorMessageMarkdown

Когда вы используете метод completed , чтобы сообщить о завершении обработки события, и задаете его allowEvent свойству значение false, это свойство устанавливает сообщение об ошибке, отображаемое для пользователя. Сообщение об ошибке отформатировано с использованием Markdown. Пример см. в пошаговом руководстве по интеллектуальным оповещениям.

errorMessageMarkdown?: string;

Значение свойства

string

Комментарии

Набор API: Почтовый ящик 1.15

Минимальный уровень разрешений (Outlook):ограниченный

Применимый режим Outlook: Compose

Важно!

  • Это errorMessageMarkdown свойство доступно для предварительного просмотра в Outlook на Mac, начиная с версии 16.103 (сборка 25102433). Чтобы протестировать свойство, присоединитесь к программе предварительной оценки Microsoft 365 и выберите вариант бета-канала , чтобы получить доступ к бета-сборкам Office.

  • Отформатированное сообщение об ошибке должно содержать не более 500 символов.

  • Рекомендации по поддерживаемым элементам Markdown см. в статье Ограничения форматирования диалогового сообщения с использованием Markdown.

  • Если вы отформатировали диалоговое сообщение с помощью errorMessageMarkdown свойства, рекомендуется также добавить версию сообщения в формате обычного текста с помощью этого errorMessage свойства. Это гарантирует, что сообщение будет правильно отображаться в клиентах Outlook, которые не поддерживают Markdown.

sendModeOverride

Когда вы используете метод completed , чтобы сообщить о завершении обработки события, и устанавливаете для его allowEvent свойства значение false, это свойство переопределяет параметр режима отправки, указанный в манифесте во время выполнения.

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

sendModeOverride?: MailboxEnums.SendModeOverride | string;

Значение свойства

Комментарии

Набор API: почтовый ящик 1.14

Минимальный уровень разрешений (Outlook):ограниченный

Применимый режим Outlook: Compose

Важно! sendModeOverride В настоящее время можно задать только параметр запроса пользователя .