Обновление сообщения с действиями при открытии пользователем

Важно!

Подключение новых поставщиков сообщений с действиями с глобальной область временно приостановлено до 30 июня 2024 г. из-за обновления служб. Существующие глобальные поставщики и подключение поставщиков область для организации и тестирования не затрагиваются. Дополнительные сведения см. в разделе Часто задаваемые вопросы о сообщениях с действиями.

Интерактивные сообщения позволяют пользователям быстро выполнять действия с сообщением электронной почты, часто на основе данных, представленных в карта. Однако иногда данные изменяются после отправки сообщения с действиями. Например, служба может отправить несколько утверждающих сообщение с просьбой утвердить или отклонить запрос. Один утверждающий утверждает запрос, но сообщение в почтовом ящике другого утверждающего по-прежнему запрашивает утверждение. Теперь, используя autoInvokeAction свойство для сообщений с действиями, вы можете предоставить конечную точку HTTP для получения актуальных полезных данных адаптивной карточки с последними сведениями, когда пользователь открывает сообщение электронной почты в Outlook.

Важно!

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

Требования к регистрации

Службы сообщений с действиями, зарегистрированные на панели мониторинга разработчика с помощью тестового область пользователей или организации, могут использовать эту функцию сразу после утверждения. Если ваша служба зарегистрирована в Глобальной область, необходимо обратиться onboardoam@microsoft.com за этой функцией.

Использование autoInvokeAction

Чтобы использовать эту функцию, карта должны использовать формат адаптивной карточки. Свойство autoInvokeAction — это свойство Outlook, добавляемое к типу AdaptiveCard. Значением этого свойства является действие Action.Http с параметром methodPOST. Свойство url указывает конечную точку веб-API в службе, которая будет предоставлять обновленные полезные данные адаптивной карточки.

{
  "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
  "type": "AdaptiveCard",
  "version": "1.0",
  "body": [...],
  "actions": [...],
  "autoInvokeAction": {
    "method": "POST",
    "url": "https://actionablemessages.contoso.com/api/getupdatedcard",
    "body": "",
    "type": "Action.Http"
  }
}

Создание начальной адаптивной карточки

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

  • Не отправляйте пустой начальный карта только autoInvokeActionс . Такие карточки будут отклонены платформой actionable Message.
  • Не отправляйте начальное карта, которое является просто заполнителем, который просит пользователя подождать.
  • Отправьте начальную карта, которая отображает сведения в текущем состоянии, даже если это означает, что пользователь может увидеть устаревшие данные к моменту открытия сообщения.

Реализация веб-API

Действие Action.Http , указанное в свойстве autoInvokeAction , работает точно так же, как и любое другое Action.Http действие. Дополнительные сведения о реализации конечной точки для этого действия см. в разделе Реализация веб-API.

Конечная точка для autoInvokeAction также должна соответствовать следующим дополнительным требованиям.

  • Запросы должны вернуться в течение 2 секунд.
  • Запросы, которые занимают больше времени, будут игнорироваться клиентом, а исходные карта будут по-прежнему отображаться. Сообщение будет по-прежнему обновляться на сервере.
  • Успешные ответы должны включать заголовок CARD-UPDATE-IN-BODY со значением true и полезные данные JSON адаптивной карточки.

После успешного выполнения возвращенная адаптивная карточка полностью заменит существующие карта в сообщении электронной почты. Если URL-адрес возвращает ошибку или время ожидания, существующие карта будут отображаться по-прежнему.

Пример сценария утверждения

Рассмотрим этот пример запроса на отпуск карта, созданного средством запроса на отпуск и отправленного руководителю сотрудника.

Совет

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

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

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

Включив autoInvokeAction свойство в сообщение с действиями, созданное средством, карта с исходными данными заменяется новым карта с новыми данными при его открытии менеджером. URL-адрес, указанный в , autoInvokeAction возвращает те же полезные данные JSON с новыми значениями для запрошенных дат отпуска.

Сообщение о запросе на отпуск с обновленными значениями запрошенных дат.