Office.MessageCompose interface

Режим создания сообщения Office.context.mailbox.item.

Важно! Это внутренний объект Outlook, который не предоставляется напрямую через существующие интерфейсы. Этот режим следует рассматривать как режим Office.context.mailbox.item. Дополнительные сведения см. на странице Объектная модель .

Родительские интерфейсы:

Extends

Свойства

bcc

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

В зависимости от клиента или платформы (например, Windows, Mac и т. д.) могут применяться ограничения на количество получателей, которые можно получить или обновить. Дополнительные сведения см. в объекте Recipients .

body

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

categories

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

Важно! В Outlook в Интернете нельзя использовать API для управления категориями сообщения в режиме создания.

cc

Предоставляет доступ к получателям копии сообщения. Тип объекта и уровень доступа зависят от режима текущего элемента.

Свойство cc возвращает объект Recipients, предоставляющий методы для получения или обновления получателей, которые указаны в строке Копия сообщения. Однако в зависимости от клиента или платформы (например, Windows, Mac и т. д.) могут применяться ограничения на количество получателей, которые можно получить или обновить. Дополнительные сведения см. в объекте Recipients .

conversationId

Получает идентификатор разговора по электронной почте, содержащего конкретное сообщение.

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

Это свойство имеет значение NULL для нового элемента в форме создания. Свойство conversationId вернет значение, если пользователь задаст тему и сохранит элемент.

from

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

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

internetHeaders

Возвращает или задает настраиваемые заголовки сообщения в Интернете.

Свойство internetHeaders возвращает объект, предоставляющий InternetHeaders методы для управления заголовками в Интернете в сообщении.

Дополнительные сведения см . в статье Получение и настройка заголовков в Интернете для сообщения в надстройке Outlook.

itemType

Получает тип элемента, который представляет экземпляр.

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

notificationMessages

Получает сообщения уведомления для элемента.

seriesId

Возвращает идентификатор ряда, к которому принадлежит экземпляр.

В Outlook в Интернете и на настольных клиентах seriesId возвращает идентификатор веб-служб Exchange (EWS) родительского элемента (ряда), к которому принадлежит этот элемент. Однако в iOS и Android seriesId возвращает идентификатор REST родительского элемента.

Примечание. Идентификатор, возвращаемый свойством seriesId , совпадает с идентификатором элемента веб-служб Exchange. Свойство seriesId не идентично идентификаторам Outlook, используемым REST API Outlook. Перед выполнением вызовов REST API с использованием этого значения его следует преобразовать с помощью Office.context.mailbox.convertToRestId. Дополнительные сведения см. в разделе Использование REST API Outlook из надстройки Outlook.

Свойство seriesId возвращает null для элементов, которые не имеют родительских элементов, таких как отдельные встречи, элементы серий или приглашения на собрание, и возвращает для undefined других элементов, которые не являются приглашениями на собрание.

subject

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

Свойство subject получает или задает всю тему элемента для отправки с почтового сервера.

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

to

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

Свойство to возвращает объект Recipients, предоставляющий методы для получения или обновления получателей, которые указаны в строке Кому сообщения. Однако в зависимости от клиента или платформы (например, Windows, Mac и т. д.) могут применяться ограничения на количество получателей, которые можно получить или обновить. Дополнительные сведения см. в объекте Recipients .

Методы

addFileAttachmentAsync(uri, attachmentName, options, callback)

Добавляет файл в сообщение или встречу в качестве вложения.

Метод addFileAttachmentAsync передает файл по указанному универсальному коду ресурса (URI) и вкладывает его в элемент в форме создания.

Идентификатор можно использовать с методом removeAttachmentAsync, чтобы удалить вложение, добавленное во время текущего сеанса.

Важно! В последних сборках Outlook для Windows появилась ошибка, которая неправильно добавляет Authorization: Bearer заголовок к этому действию (с помощью этого API или пользовательского интерфейса Outlook). Чтобы обойти эту проблему, попробуйте использовать API, представленный addFileAttachmentFromBase64 с набором требований 1.8.

addFileAttachmentAsync(uri, attachmentName, callback)

Добавляет файл в сообщение или встречу в качестве вложения.

Метод addFileAttachmentAsync передает файл по указанному универсальному коду ресурса (URI) и вкладывает его в элемент в форме создания.

Идентификатор можно использовать с методом removeAttachmentAsync, чтобы удалить вложение, добавленное во время текущего сеанса.

Важно! В последних сборках Outlook для Windows появилась ошибка, которая неправильно добавляет Authorization: Bearer заголовок к этому действию (с помощью этого API или пользовательского интерфейса Outlook). Чтобы обойти эту проблему, попробуйте использовать API, представленный addFileAttachmentFromBase64 с набором требований 1.8.

addFileAttachmentFromBase64Async(base64File, attachmentName, options, callback)

Добавляет файл в сообщение или встречу в качестве вложения.

Метод addFileAttachmentFromBase64Async передает файл из кодировки Base64 и присоединяет его к элементу в форме создания. Этот метод возвращает идентификатор вложения в объекте asyncResult.value .

Идентификатор можно использовать с методом removeAttachmentAsync, чтобы удалить вложение, добавленное во время текущего сеанса.

addFileAttachmentFromBase64Async(base64File, attachmentName, callback)

Добавляет файл в сообщение или встречу в качестве вложения.

Метод addFileAttachmentFromBase64Async передает файл из кодировки Base64 и присоединяет его к элементу в форме создания. Этот метод возвращает идентификатор вложения в объекте asyncResult.value .

Идентификатор можно использовать с методом removeAttachmentAsync, чтобы удалить вложение, добавленное во время текущего сеанса.

addHandlerAsync(eventType, handler, options, callback)

Добавляет обработчик для поддерживаемого события. Примечание. События доступны только в реализации области задач.

Сведения о поддерживаемых событиях см. в разделе События объектной модели элементов.

addHandlerAsync(eventType, handler, callback)

Добавляет обработчик для поддерживаемого события. Примечание. События доступны только в реализации области задач.

Сведения о поддерживаемых событиях см. в разделе События объектной модели элементов.

addItemAttachmentAsync(itemId, attachmentName, options, callback)

Добавляет к сообщению элемент Exchange, например сообщение, в виде вложения.

С помощью метода addItemAttachmentAsync можно в элемент формы создания вложить элемент с указанным идентификатором Exchange. Если указать функцию обратного вызова, метод вызывается с одним параметром , asyncResultкоторый содержит идентификатор вложения или код, указывающий на любую ошибку, которая произошла при присоединении элемента. Параметр options можно использовать для передачи сведений о состоянии функции обратного вызова, если это необходимо.

Идентификатор можно использовать с методом removeAttachmentAsync, чтобы удалить вложение, добавленное во время текущего сеанса.

Если ваша надстройка Office выполняется в Outlook в Интернете, метод addItemAttachmentAsync обеспечивает вложение элементов в элементы, отличные от редактируемого. Однако это действие не рекомендуется выполнять, так как оно не поддерживается.

addItemAttachmentAsync(itemId, attachmentName, callback)

Добавляет к сообщению элемент Exchange, например сообщение, в виде вложения.

С помощью метода addItemAttachmentAsync можно в элемент формы создания вложить элемент с указанным идентификатором Exchange. Если указать функцию обратного вызова, метод вызывается с одним параметром , asyncResultкоторый содержит идентификатор вложения или код, указывающий на любую ошибку, которая произошла при присоединении элемента. Параметр options можно использовать для передачи сведений о состоянии функции обратного вызова, если это необходимо.

Идентификатор можно использовать с методом removeAttachmentAsync, чтобы удалить вложение, добавленное во время текущего сеанса.

Если ваша надстройка Office выполняется в Outlook в Интернете, метод addItemAttachmentAsync обеспечивает вложение элементов в элементы, отличные от редактируемого. Однако это действие не рекомендуется выполнять, так как оно не поддерживается.

close()

Закрывает текущий создаваемый элемент.

Работа метода close зависит от текущего состояния создаваемого элемента. Если элемент содержит несохраненные изменения, клиент предлагает пользователю сохранить, отменить или закрыть действие.

В классическом клиенте close Outlook метод не влияет на ответ в области чтения.

disableClientSignatureAsync(options, callback)

Отключает подпись клиента Outlook.

Поведение этого метода зависит от того, на каком клиенте выполняется надстройка.

  • В Outlook в Интернете параметр подписи для новых сообщений, ответов и пересылаемых сообщений отключен. Выбранная сигнатура также отключается методом .

  • В Outlook в Windows и на Mac для подписи в разделах Новые сообщения и Ответы и пересылки учетной записи отправки задано значение (нет).

  • В Outlook для Android и iOS сигнатура, сохраненная на мобильном устройстве, очищается.

disableClientSignatureAsync(callback)

Отключает подпись клиента Outlook.

Поведение этого метода зависит от того, на каком клиенте выполняется надстройка.

  • В Outlook в Интернете параметр подписи для новых сообщений, ответов и пересылаемых сообщений отключен. Выбранная сигнатура также отключается методом .

  • В Outlook в Windows и на Mac для подписи в разделах Новые сообщения и Ответы и пересылки учетной записи отправки задано значение (нет).

  • В Outlook для Android и iOS сигнатура, сохраненная на мобильном устройстве, очищается.

getAttachmentContentAsync(attachmentId, options, callback)

Получает вложение из сообщения или встречи и возвращает его в AttachmentContent виде объекта .

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

getAttachmentContentAsync(attachmentId, callback)

Получает вложение из сообщения или встречи и возвращает его в AttachmentContent виде объекта .

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

getAttachmentsAsync(options, callback)

Возвращает вложения элемента в виде массива.

getAttachmentsAsync(callback)

Возвращает вложения элемента в виде массива.

getComposeTypeAsync(options, callback)

Указывает тип создания сообщения и его тип приведения. Сообщение может быть новым или ответным или пересылать. Тип приведения может быть HTML или обычный текст.

getComposeTypeAsync(callback)

Указывает тип создания сообщения и его тип приведения. Сообщение может быть новым или ответным или пересылать. Тип приведения может быть HTML или обычный текст.

getInitializationContextAsync(options, callback)

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

getInitializationContextAsync(callback)

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

getItemIdAsync(options, callback)

Асинхронно получает идентификатор сохраненного элемента.

При вызове этот метод возвращает идентификатор элемента с помощью функции обратного вызова.

Примечание. Если надстройка вызывает getItemIdAsync элемент в режиме создания (например, чтобы получить itemId объект для использования с EWS или REST API), имейте в виду, что когда Outlook находится в кэшированном режиме, может потребоваться некоторое время, прежде чем элемент будет синхронизирован с сервером. Пока элемент не будет синхронизирован, itemId объект не распознается и при его использовании возвращается ошибка.

getItemIdAsync(callback)

Асинхронно получает идентификатор сохраненного элемента.

При вызове этот метод возвращает идентификатор элемента с помощью функции обратного вызова.

Примечание. Если надстройка вызывает getItemIdAsync элемент в режиме создания (например, чтобы получить itemId объект для использования с EWS или REST API), имейте в виду, что когда Outlook находится в кэшированном режиме, может потребоваться некоторое время, прежде чем элемент будет синхронизирован с сервером. Пока элемент не будет синхронизирован, itemId объект не распознается и при его использовании возвращается ошибка.

getSelectedDataAsync(coercionType, options, callback)

Асинхронно возвращает данные, выбранные в теме или тексте сообщения.

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

Чтобы получить доступ к выбранным данным из функции обратного вызова, вызовите .asyncResult.value.data Чтобы получить доступ к свойству источника, из которого происходит выбор, вызовите asyncResult.value.sourceProperty, который будет иметь значение body или subject.

getSelectedDataAsync(coercionType, callback)

Асинхронно возвращает данные, выбранные в теме или тексте сообщения.

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

Чтобы получить доступ к выбранным данным из функции обратного вызова, вызовите .asyncResult.value.data Чтобы получить доступ к свойству источника, из которого происходит выбор, вызовите asyncResult.value.sourceProperty, который будет иметь значение body или subject.

getSharedPropertiesAsync(options, callback)

Возвращает свойства встречи или сообщения в общей папке или общем почтовом ящике.

Дополнительные сведения об использовании этого API см. в статье Включение общих папок и сценариев общих почтовых ящиков в надстройке Outlook.

getSharedPropertiesAsync(callback)

Возвращает свойства встречи или сообщения в общей папке или общем почтовом ящике.

Дополнительные сведения об использовании этого API см. в статье Включение общих папок и сценариев общих почтовых ящиков в надстройке Outlook.

isClientSignatureEnabledAsync(options, callback)

Возвращает значение, если подпись клиента включена.

Для полнофункционированных клиентов Windows и Mac вызов API должен возвращать true , если для подписи по умолчанию для новых сообщений, ответов или пересылаемых сообщений задан шаблон для учетной записи Отправляющего Outlook. Для Outlook в Интернете вызов API должен возвращатьtrue, если сигнатура включена для типов newMailсоздания , replyили forward. Если для многофункциональных клиентов Mac или Windows для параметров задано значение "(none)" или они отключены в Outlook в Интернете, вызов API должен возвращать .false

isClientSignatureEnabledAsync(callback)

Возвращает значение, если подпись клиента включена.

Для полнофункционированных клиентов Windows и Mac вызов API должен возвращать true , если для подписи по умолчанию для новых сообщений, ответов или пересылаемых сообщений задан шаблон для учетной записи Отправляющего Outlook. Для Outlook в Интернете вызов API должен возвращатьtrue, если сигнатура включена для типов newMailсоздания , replyили forward. Если для многофункциональных клиентов Mac или Windows для параметров задано значение "(none)" или они отключены в Outlook в Интернете, вызов API должен возвращать .false

loadCustomPropertiesAsync(callback, userContext)

Асинхронно загружает настраиваемые свойства для надстройки для выбранного элемента.

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

Настраиваемые свойства предоставляются в виде объекта CustomProperties в свойстве asyncResult.value. Этот объект можно использовать для получения, задания, сохранения и удаления настраиваемых свойств из почтового элемента.

removeAttachmentAsync(attachmentId, options, callback)

Удаляет вложение из сообщения или встречи.

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

removeAttachmentAsync(attachmentId, callback)

Удаляет вложение из сообщения или встречи.

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

removeHandlerAsync(eventType, options, callback)

Удаляет обработчиков для поддерживаемого типа события. Примечание. События доступны только в реализации области задач.

Сведения о поддерживаемых событиях см. в разделе События объектной модели элементов.

removeHandlerAsync(eventType, callback)

Удаляет обработчиков для поддерживаемого типа события. Примечание. События доступны только в реализации области задач.

Сведения о поддерживаемых событиях см. в разделе События объектной модели элементов.

saveAsync(options, callback)

Асинхронно сохраняет текущее сообщение в виде черновика.

saveAsync(callback)

Асинхронно сохраняет текущее сообщение в виде черновика.

setSelectedDataAsync(data, options, callback)

Асинхронно вставляет данные в текст или тему сообщения.

Метод setSelectedDataAsync вставляет указанную строку в положение курсора в теме или тексте элемента или, если текст выделен в редакторе, он заменяет выделенный текст. Если курсор не находится в поле текст или тема, возвращается ошибка. После вставки курсор помещается в конец вставленного содержимого.

setSelectedDataAsync(data, callback)

Асинхронно вставляет данные в текст или тему сообщения.

Метод setSelectedDataAsync вставляет указанную строку в положение курсора в теме или тексте элемента или, если текст выделен в редакторе, он заменяет выделенный текст. Если курсор не находится в поле текст или тема, возвращается ошибка. После вставки курсор помещается в конец вставленного содержимого.

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

bcc

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

В зависимости от клиента или платформы (например, Windows, Mac и т. д.) могут применяться ограничения на количество получателей, которые можно получить или обновить. Дополнительные сведения см. в объекте Recipients .

bcc: Recipients;

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

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

Office.context.mailbox.item.bcc.setAsync( ['alice@contoso.com', 'bob@contoso.com'] );
Office.context.mailbox.item.bcc.addAsync( ['jason@contoso.com'] );
Office.context.mailbox.item.bcc.getAsync(callback);

function callback(asyncResult) {
    const arrayOfBccRecipients = asyncResult.value;
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-set-bcc-message-compose.yaml

Office.context.mailbox.item.bcc.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const msgBcc = asyncResult.value;
    console.log("Message being blind-copied to:");
    for (let i = 0; i < msgBcc.length; i++) {
      console.log(msgBcc[i].displayName + " (" + msgBcc[i].emailAddress + ")");
    }
  } else {
    console.error(asyncResult.error);
  }
});

...

const email = $("#emailBcc")
  .val()
  .toString();
const emailArray = [email];
Office.context.mailbox.item.bcc.setAsync(emailArray, function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("Succeeded in setting Bcc field.");
  } else {
    console.error(asyncResult.error);
  }
});

body

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

body: Body;

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

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

// This example gets the body of the item as plain text.
Office.context.mailbox.item.body.getAsync(
    "text",
    { asyncContext: "This is passed to the callback" },
    function callback(result) {
        // Do something with the result.
    });

// The following is an example of the result parameter passed to the callback function.
{
    "value": "TEXT of whole body (including threads below)",
    "status": "succeeded",
    "asyncContext": "This is passed to the callback"
}

categories

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

Важно! В Outlook в Интернете нельзя использовать API для управления категориями сообщения в режиме создания.

categories: Categories;

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

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/45-categories/work-with-categories.yaml

Office.context.mailbox.item.categories.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const categories = asyncResult.value;
    if (categories && categories.length > 0) {
      console.log("Categories assigned to this item:");
      console.log(JSON.stringify(categories));
    } else {
      console.log("There are no categories assigned to this item.");
    }
  } else {
    console.error(asyncResult.error);
  }
});

...

// Note: In order for you to successfully add a category,
// it must be in the mailbox categories master list.

Office.context.mailbox.masterCategories.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const masterCategories = asyncResult.value;
    if (masterCategories && masterCategories.length > 0) {
      // Grab the first category from the master list.
      const categoryToAdd = [masterCategories[0].displayName];
      Office.context.mailbox.item.categories.addAsync(categoryToAdd, function(asyncResult) {
        if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
          console.log(`Successfully assigned category '${categoryToAdd}' to item.`);
        } else {
          console.log("categories.addAsync call failed with error: " + asyncResult.error.message);
        }
      });
    } else {
      console.log("There are no categories in the master list on this mailbox. You can add categories using Office.context.mailbox.masterCategories.addAsync.");
    }
  } else {
    console.error(asyncResult.error);
  }
});

...

Office.context.mailbox.item.categories.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const categories = asyncResult.value;
    if (categories && categories.length > 0) {
      // Grab the first category assigned to this item.
      const categoryToRemove = [categories[0].displayName];
      Office.context.mailbox.item.categories.removeAsync(categoryToRemove, function(asyncResult) {
        if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
          console.log(`Successfully unassigned category '${categoryToRemove}' from this item.`);
        } else {
          console.log("categories.removeAsync call failed with error: " + asyncResult.error.message);
        }
      });
    } else {
      console.log("There are no categories assigned to this item.");
    }
  } else {
    console.error(asyncResult.error);
  }
});

cc

Предоставляет доступ к получателям копии сообщения. Тип объекта и уровень доступа зависят от режима текущего элемента.

Свойство cc возвращает объект Recipients, предоставляющий методы для получения или обновления получателей, которые указаны в строке Копия сообщения. Однако в зависимости от клиента или платформы (например, Windows, Mac и т. д.) могут применяться ограничения на количество получателей, которые можно получить или обновить. Дополнительные сведения см. в объекте Recipients .

cc: Recipients;

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

Комментарии

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

Office.context.mailbox.item.cc.setAsync( ['alice@contoso.com', 'bob@contoso.com'] );
Office.context.mailbox.item.cc.addAsync( ['jason@contoso.com'] );
Office.context.mailbox.item.cc.getAsync(callback);

function callback(asyncResult) {
    const arrayOfCcRecipients = asyncResult.value;
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-set-cc-message-compose.yaml

Office.context.mailbox.item.cc.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const msgCc = asyncResult.value;
    console.log("Message being copied to:");
    for (let i = 0; i < msgCc.length; i++) {
      console.log(msgCc[i].displayName + " (" + msgCc[i].emailAddress + ")");
    }
  } else {
    console.error(asyncResult.error);
  }
});

...

const email = $("#emailCc")
  .val()
  .toString();
const emailArray = [email];
Office.context.mailbox.item.cc.setAsync(emailArray, function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("Succeeded in setting Cc field.");
  } else {
    console.error(asyncResult.error);
  }
});

conversationId

Получает идентификатор разговора по электронной почте, содержащего конкретное сообщение.

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

Это свойство имеет значение NULL для нового элемента в форме создания. Свойство conversationId вернет значение, если пользователь задаст тему и сохранит элемент.

conversationId: string;

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

string

Комментарии

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-conversation-id-message.yaml

console.log(`Conversation ID: ${Office.context.mailbox.item.conversationId}`);

from

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

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

from: From;

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

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Важно! Это свойство поддерживается в Outlook для Android и iOS. Пример сценария см. в разделе Реализация активации на основе событий в мобильных надстройках Outlook.

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-from-message-compose.yaml

Office.context.mailbox.item.from.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const msgFrom = asyncResult.value;
    console.log("Message from: " + msgFrom.displayName + " (" + msgFrom.emailAddress + ")");
  } else {
    console.error(asyncResult.error);
  }
});

internetHeaders

Возвращает или задает настраиваемые заголовки сообщения в Интернете.

Свойство internetHeaders возвращает объект, предоставляющий InternetHeaders методы для управления заголовками в Интернете в сообщении.

Дополнительные сведения см . в статье Получение и настройка заголовков в Интернете для сообщения в надстройке Outlook.

internetHeaders: InternetHeaders;

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

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Важно! API заголовков в Интернете поддерживается в Outlook для Android и iOS, начиная с версии 4.2405.0. Дополнительные сведения о функциях, поддерживаемых в Outlook на мобильных устройствах, см. в статье Api JavaScript Outlook, поддерживаемые в Outlook на мобильных устройствах.

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/70-mime-headers/manage-custom-internet-headers-message-compose.yaml

Office.context.mailbox.item.internetHeaders.getAsync(
  ["preferred-fruit", "preferred-vegetable", "best-vegetable", "nonexistent-header"],
  function (asyncResult) {
    if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
      console.log("Selected headers: " + JSON.stringify(asyncResult.value));
    } else {
      console.log("Error getting selected headers: " + JSON.stringify(asyncResult.error));
    }
  }
);

itemType

Получает тип элемента, который представляет экземпляр.

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

itemType: MailboxEnums.ItemType | string;

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

Комментарии

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-item-type.yaml

const itemType = Office.context.mailbox.item.itemType;
switch (itemType) {
    case Office.MailboxEnums.ItemType.Appointment:
        console.log(`Current item is an ${itemType}.`);
        break;
    case Office.MailboxEnums.ItemType.Message:
        console.log(`Current item is a ${itemType}. A message could be an email, meeting request, meeting response, or meeting cancellation.`);
        break;
}

notificationMessages

Получает сообщения уведомления для элемента.

notificationMessages: NotificationMessages;

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

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/35-notifications/add-getall-remove.yaml

// Adds a progress indicator to the mail item.
const id = $("#notificationId").val().toString();
const details =
  {
    type: Office.MailboxEnums.ItemNotificationMessageType.ProgressIndicator,
    message: "Progress indicator with id = " + id
  };
Office.context.mailbox.item.notificationMessages.addAsync(id, details, handleResult);

...

// Adds an informational notification to the mail item.
const id = $("#notificationId").val().toString();
const details =
  {
    type: Office.MailboxEnums.ItemNotificationMessageType.InformationalMessage,
    message: "Non-persistent informational notification message with id = " + id,
    icon: "icon1",
    persistent: false
  };
Office.context.mailbox.item.notificationMessages.addAsync(id, details, handleResult);

...

// Adds a persistent information notification to the mail item.
const id = $("#notificationId").val().toString();
const details =
  {
    type: Office.MailboxEnums.ItemNotificationMessageType.InformationalMessage,
    message: "Persistent informational notification message with id = " + id,
    icon: "icon1",
    persistent: true
  };
Office.context.mailbox.item.notificationMessages.addAsync(id, details, handleResult);

...

// Gets all the notification messages and their keys for the current mail item.
Office.context.mailbox.item.notificationMessages.getAllAsync((asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log(asyncResult.error.message);
    return;
  }

  console.log(asyncResult.value);
});

...

// Replaces a notification message of a given key with another message.
const id = $("#notificationId").val().toString();
Office.context.mailbox.item.notificationMessages.replaceAsync(
  id,
  {
    type: Office.MailboxEnums.ItemNotificationMessageType.InformationalMessage,
    message: "Notification message with id = " + id + " has been replaced with an informational message.",
    icon: "icon2",
    persistent: false
  },
  handleResult);

...

// Removes a notification message from the current mail item.
const id = $("#notificationId").val().toString();
Office.context.mailbox.item.notificationMessages.removeAsync(id, handleResult);

seriesId

Возвращает идентификатор ряда, к которому принадлежит экземпляр.

В Outlook в Интернете и на настольных клиентах seriesId возвращает идентификатор веб-служб Exchange (EWS) родительского элемента (ряда), к которому принадлежит этот элемент. Однако в iOS и Android seriesId возвращает идентификатор REST родительского элемента.

Примечание. Идентификатор, возвращаемый свойством seriesId , совпадает с идентификатором элемента веб-служб Exchange. Свойство seriesId не идентично идентификаторам Outlook, используемым REST API Outlook. Перед выполнением вызовов REST API с использованием этого значения его следует преобразовать с помощью Office.context.mailbox.convertToRestId. Дополнительные сведения см. в разделе Использование REST API Outlook из надстройки Outlook.

Свойство seriesId возвращает null для элементов, которые не имеют родительских элементов, таких как отдельные встречи, элементы серий или приглашения на собрание, и возвращает для undefined других элементов, которые не являются приглашениями на собрание.

seriesId: string;

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

string

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/50-recurrence/get-series-id.yaml

const seriesId = Office.context.mailbox.item.seriesId;

if (seriesId === undefined) {
  console.log("This is a message that's not a meeting request.");
} else if (seriesId === null) {
  console.log("This is a single appointment, a parent series, or a meeting request for a series or single meeting.");
} else {
  console.log("This is an instance belonging to series with ID " + seriesId);
}

subject

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

Свойство subject получает или задает всю тему элемента для отправки с почтового сервера.

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

subject: Subject;

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

Комментарии

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-set-subject-compose.yaml

Office.context.mailbox.item.subject.getAsync((result) => {
  if (result.status !== Office.AsyncResultStatus.Succeeded) {
    console.error(`Action failed with message ${result.error.message}`);
    return;
  }
  console.log(`Subject: ${result.value}`);
});

...

let subject = "Hello World!";
Office.context.mailbox.item.subject.setAsync(subject, (result) => {
  if (result.status !== Office.AsyncResultStatus.Succeeded) {
    console.error(`Action failed with message ${result.error.message}`);
    return;
  }
  console.log(`Successfully set subject to ${subject}`);
});

to

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

Свойство to возвращает объект Recipients, предоставляющий методы для получения или обновления получателей, которые указаны в строке Кому сообщения. Однако в зависимости от клиента или платформы (например, Windows, Mac и т. д.) могут применяться ограничения на количество получателей, которые можно получить или обновить. Дополнительные сведения см. в объекте Recipients .

to: Recipients;

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

Комментарии

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

Office.context.mailbox.item.to.setAsync( ['alice@contoso.com', 'bob@contoso.com'] );
Office.context.mailbox.item.to.addAsync( ['jason@contoso.com'] );
Office.context.mailbox.item.to.getAsync(callback);

function callback(asyncResult) {
    const arrayOfToRecipients = asyncResult.value;
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-set-to-message-compose.yaml

Office.context.mailbox.item.to.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const msgTo = asyncResult.value;
    console.log("Message being sent to:");
    for (let i = 0; i < msgTo.length; i++) {
      console.log(msgTo[i].displayName + " (" + msgTo[i].emailAddress + ")");
    }
  } else {
    console.error(asyncResult.error);
  }
});

...

const email = $("#emailTo")
  .val()
  .toString();
const emailArray = [email];
Office.context.mailbox.item.to.setAsync(emailArray, function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("Succeeded in setting To field.");
  } else {
    console.error(asyncResult.error);
  }
});

Сведения о методе

addFileAttachmentAsync(uri, attachmentName, options, callback)

Добавляет файл в сообщение или встречу в качестве вложения.

Метод addFileAttachmentAsync передает файл по указанному универсальному коду ресурса (URI) и вкладывает его в элемент в форме создания.

Идентификатор можно использовать с методом removeAttachmentAsync, чтобы удалить вложение, добавленное во время текущего сеанса.

Важно! В последних сборках Outlook для Windows появилась ошибка, которая неправильно добавляет Authorization: Bearer заголовок к этому действию (с помощью этого API или пользовательского интерфейса Outlook). Чтобы обойти эту проблему, попробуйте использовать API, представленный addFileAttachmentFromBase64 с набором требований 1.8.

addFileAttachmentAsync(uri: string, attachmentName: string, options: Office.AsyncContextOptions & { isInline: boolean }, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;

Параметры

uri

string

Универсальный код ресурса (URI), представляющий расположение файла, который нужно вложить в сообщение или встречу. Максимальная длина — 2048 символов.

attachmentName

string

Имя вложения, которое отображается при передаче вложения. Максимальная длина: 255 символов.

options

Office.AsyncContextOptions & { isInline: boolean }

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова. isInline: если значение true, означает, что вложение будет отображаться в тексте сообщения и не должно отображаться в списке вложений.

callback

(asyncResult: Office.AsyncResult<string>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult. После успешного выполнения идентификатор вложения будет представлен в свойстве asyncResult.value. Если добавить вложение не удастся, объект asyncResult будет содержать объект Error с описанием ошибки.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение и запись элемента

Применимый режим Outlook: создание сообщений

Ошибки:

  • AttachmentSizeExceeded: вложение больше допустимого размера.

  • FileTypeNotSupported: вложение имеет расширение, которое запрещено.

  • NumberOfAttachmentsExceeded: сообщение или встреча содержит слишком много вложений.

Примеры

function callback(result) {
    if (result.error) {
        console.log(result.error);
    } else {
        console.log("Attachment added");
    }
}

function addAttachment() {
    // The values in asyncContext can be accessed in the callback.
    const options = { 'asyncContext': { var1: 1, var2: 2 } };

    const attachmentURL = "https://contoso.com/rtm/icon.png";
    Office.context.mailbox.item.addFileAttachmentAsync(attachmentURL, attachmentURL, options, callback);
}
// The following example adds an image file as an inline attachment and
// references the attachment in the message body.
Office.context.mailbox.item.addFileAttachmentAsync(
    "http://i.imgur.com/WJXklif.png",
    "cute_bird.png",
    {
        isInline: true
    },
    function (asyncResult) {
        Office.context.mailbox.item.body.setAsync(
            "<p>Here's a cute bird!</p><img src='cid:cute_bird.png'>",
            {
                "coercionType": "html"
            },
            function (asyncResult) {
                // Do something here.
            });
    });
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml

const attachmentUrl = $("#attachmentUrl").val();
Office.context.mailbox.item.addFileAttachmentAsync(
    attachmentUrl,
    getFileName(attachmentUrl),
    { "asyncContext" : { var1: 1, var2: true } },
    function(result) { console.log(result); });

addFileAttachmentAsync(uri, attachmentName, callback)

Добавляет файл в сообщение или встречу в качестве вложения.

Метод addFileAttachmentAsync передает файл по указанному универсальному коду ресурса (URI) и вкладывает его в элемент в форме создания.

Идентификатор можно использовать с методом removeAttachmentAsync, чтобы удалить вложение, добавленное во время текущего сеанса.

Важно! В последних сборках Outlook для Windows появилась ошибка, которая неправильно добавляет Authorization: Bearer заголовок к этому действию (с помощью этого API или пользовательского интерфейса Outlook). Чтобы обойти эту проблему, попробуйте использовать API, представленный addFileAttachmentFromBase64 с набором требований 1.8.

addFileAttachmentAsync(uri: string, attachmentName: string, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;

Параметры

uri

string

Универсальный код ресурса (URI), представляющий расположение файла, который нужно вложить в сообщение или встречу. Максимальная длина — 2048 символов.

attachmentName

string

Имя вложения, которое отображается при передаче вложения. Максимальная длина: 255 символов.

callback

(asyncResult: Office.AsyncResult<string>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult. После успешного выполнения идентификатор вложения будет представлен в свойстве asyncResult.value. Если добавить вложение не удастся, объект asyncResult будет содержать объект Error с описанием ошибки.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение и запись элемента

Применимый режим Outlook: создание сообщений

Ошибки:

  • AttachmentSizeExceeded: вложение больше допустимого размера.

  • FileTypeNotSupported: вложение имеет расширение, которое запрещено.

  • NumberOfAttachmentsExceeded: сообщение или встреча содержит слишком много вложений.

addFileAttachmentFromBase64Async(base64File, attachmentName, options, callback)

Добавляет файл в сообщение или встречу в качестве вложения.

Метод addFileAttachmentFromBase64Async передает файл из кодировки Base64 и присоединяет его к элементу в форме создания. Этот метод возвращает идентификатор вложения в объекте asyncResult.value .

Идентификатор можно использовать с методом removeAttachmentAsync, чтобы удалить вложение, добавленное во время текущего сеанса.

addFileAttachmentFromBase64Async(base64File: string, attachmentName: string, options: Office.AsyncContextOptions & { isInline: boolean }, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;

Параметры

base64File

string

Содержимое изображения или файла в кодировке Base64, добавляемое в сообщение электронной почты или событие. Максимальная длина закодированной строки составляет 27 892 122 символа (около 25 МБ).

attachmentName

string

Имя вложения, которое отображается при передаче вложения. Максимальная длина: 255 символов.

options

Office.AsyncContextOptions & { isInline: boolean }

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова. isInline: если значение true, означает, что вложение будет отображаться в тексте сообщения и не должно отображаться в списке вложений.

callback

(asyncResult: Office.AsyncResult<string>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult. После успешного выполнения идентификатор вложения будет представлен в свойстве asyncResult.value. Если добавить вложение не удастся, объект asyncResult будет содержать объект Error с описанием ошибки.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение и запись элемента

Применимый режим Outlook: создание сообщений

Важно!

  • Добавление встроенного файла Base64 в сообщение в режиме создания поддерживается в Outlook для Android и iOS. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Для Outlook, поддерживаемые в Outlook на мобильных устройствах.

  • Если вы используете API URL-адреса данных (например, readAsDataURL), необходимо удалить префикс URL-адреса данных, а затем отправить оставшуюся часть строки в этот API. Например, если полная строка представлена , data:image/svg+xml;base64,<rest of Base64 string>удалите data:image/svg+xml;base64,.

  • Если вы добавляете встроенное изображение Base64 в текст создаваемого сообщения или встречи, перед вставкой изображения с помощью метода Office.context.mailbox.item.body.getAsync необходимо сначала получить текст текущего элемента addFileAttachmentFromBase64Asyncс помощью метода Office.context.mailbox.item.body.getAsync. В противном случае изображение не будет отображаться в тексте после вставки. Дополнительные рекомендации см. в разделе Вложение файла.

Ошибки:

  • AttachmentSizeExceeded: вложение больше допустимого размера.

  • FileTypeNotSupported: вложение имеет расширение, которое запрещено.

  • NumberOfAttachmentsExceeded: сообщение или встреча содержит слишком много вложений.

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml

base64String = "iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsSAAALEgHS3X78AAACRUlEQVRYw82XzXHbMBCFP2F8tzsQc8Ixyh0zoiuIXIGdCsxUYKqC0B04FdiuwMoM7mGOOIXqQGoAymXhgSX+itJM9kIRFLAP+3YXD5Pdbscx5oxaAIW8Ztr6l2PWmQwF4IyaieP53qdfAqQ8CwBn1JU4vpWhrbxXQA5MZfynANmcDIAzKgcy4FKGXsVJFf3nLgKyBQptfT4KQMRz2N0fcbxqmRMDWXflx0VPnrdArq0vekQ1Dv0UeHZGNebHhwjU8AzwKM43RyZnbAf58Q6ghudeWd0Aus0+5EcMIIRi3beua0D3Nm39BEAx3i7HTK4DEBJn5YxKOnaRA5+ErpMBWMpzDvx1RuXCcxOISlufAjfC7zgAsqsvUvMAD0ApPaEtGi9AIlUzKgJo60tt/SyKRkzLrAXERluf7W1gOICWaMyB386oooOWsIHvXbSoHuUSFovtHqicUVnH3EJoeT0aQEf5/XBGlc6otIOWBXAtPeZkAIJ9Bt6cUU9tZautX2nrk3MACHYr1ZKProKRtDw4o8pzAPjWo+NtpXTTvoteDDg8noDAcwbcRedAkGdFXyk2GEDcegVAFp2gyVDHjRQ4o6q2smoqtR5Hd+qMqtoALCWUUymr1m43QMZfOaMK4C0SrMsDANJ2E5FNcbdbjHC+ENl+H0myJFbLtaq4Rt8dyPBYRQV1E40nMv9rl7xrOw3DGb+Whcqu3i/OM6CUOWvgRlufNmnLYy4m77uJI7AXtdNcTDrU71LEyv7v01/N/ovL6bmu5/8A1tNWZldH0W4AAAAASUVORK5CYII=";
Office.context.mailbox.item.addFileAttachmentFromBase64Async(
    base64String,
    "logo.png",
    { isInline: false },
    function(result) { console.log(result); });

...

// Set the signature for the current item with inline image.
const modIcon1Base64 = "iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpDRDMxMDg1MjBCNDZFMTExODE2MkM1RUI2M0M4MDYxRCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpFMTUxQjgyRjQ2MEQxMUUxODlFMkQwNTYzQ0YwMTUxMiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpFMTUxQjgyRTQ2MEQxMUUxODlFMkQwNTYzQ0YwMTUxMiIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgV2luZG93cyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkQxMzEwODUyMEI0NkUxMTE4MTYyQzVFQjYzQzgwNjFEIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkNEMzEwODUyMEI0NkUxMTE4MTYyQzVFQjYzQzgwNjFEIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+uC/WfAAAAehJREFUeNpilCzfwEAEkAbiECA2A2J1IOaHin8E4ptAfBaIVwLxU0IGMRKw0B6IW4DYhoE4cASIK6E0VsCEQ1wUiNcB8QESLGOAqj0MxBuhZhBloS4QnwHiQAbygR/UDF1CFupCXSjHQDmQg5qli8tCUBBsQUoQ1AD8UDNFsVk4n0o+w+bT+egWglKjNymmeGhLkqLcG2oHAwtUoIuQDj5OVgZPLUmwRe5aEmAxqYqNpFgKssOcCeplM0KqdST5GfpDDRm0JfkYrj3/SE7QguyQY4ImYYLgCtAS10kHGMw6dzNsv/qC7OwCClJXYlR++v6b4er3j5QmIFcmaNlIL6AOslCIjhYKMTHQGTBBqxh6gXcgC6/R0cKbIAv30dHCfaAKGJTxHxJSqS3Fz9DkowNmywpyMcgA8fF7b8D8VWcfM6w8+4gYC+VB+RCk8hSh0gaUD4/dewvlvUWRe/z+GzGWgex4BGtiOAHxXhoHpzMoSGHZAhSPW2lo2VZYWkHOh4nEtLrIAE+hZmNUwK+B2BOIv1PRsu9QM1/jatNcBtVZ0IREKXgENesyoVYbzNIdFFi2A5tl+NqlL6BB4QBNzsSCU1A9nlAzMAALAQMOQl0qB23qWwKxIlIrDBQ394H4OBCvISYqAAIMACVibHDqsO7zAAAAAElFTkSuQmCC";
Office.context.mailbox.item.addFileAttachmentFromBase64Async(
  modIcon1Base64,
  "myImage.png",
  { isInline: true },
  function(result) {
    if (result.status == Office.AsyncResultStatus.Succeeded) {
      const signature = $("#signature").val() + "<img src='cid:myImage.png'>";
      console.log(`Setting signature to "${signature}".`);
      Office.context.mailbox.item.body.setSignatureAsync(
        signature,
        { coercionType: "html" },
        function(asyncResult) {
          console.log(`setSignatureAsync: ${asyncResult.status}`);
        }
      );
    } else {
      console.error(`addFileAttachmentFromBase64Async: ${result.error}`);
    }
  }
);

addFileAttachmentFromBase64Async(base64File, attachmentName, callback)

Добавляет файл в сообщение или встречу в качестве вложения.

Метод addFileAttachmentFromBase64Async передает файл из кодировки Base64 и присоединяет его к элементу в форме создания. Этот метод возвращает идентификатор вложения в объекте asyncResult.value .

Идентификатор можно использовать с методом removeAttachmentAsync, чтобы удалить вложение, добавленное во время текущего сеанса.

addFileAttachmentFromBase64Async(base64File: string, attachmentName: string, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;

Параметры

base64File

string

Содержимое изображения или файла в кодировке Base64, добавляемое в сообщение электронной почты или событие. Максимальная длина закодированной строки составляет 27 892 122 символа (около 25 МБ).

attachmentName

string

Имя вложения, которое отображается при передаче вложения. Максимальная длина: 255 символов.

callback

(asyncResult: Office.AsyncResult<string>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult. После успешного выполнения идентификатор вложения будет представлен в свойстве asyncResult.value. Если добавить вложение не удастся, объект asyncResult будет содержать объект Error с описанием ошибки.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение и запись элемента

Применимый режим Outlook: создание сообщений

Важно!

  • Добавление встроенного файла Base64 в сообщение в режиме создания поддерживается в Outlook для Android и iOS. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Для Outlook, поддерживаемые в Outlook на мобильных устройствах.

  • Если вы используете API URL-адреса данных (например, readAsDataURL), необходимо удалить префикс URL-адреса данных, а затем отправить оставшуюся часть строки в этот API. Например, если полная строка представлена , data:image/svg+xml;base64,<rest of Base64 string>удалите data:image/svg+xml;base64,.

  • Если вы добавляете встроенное изображение Base64 в текст создаваемого сообщения или встречи, перед вставкой изображения с помощью метода Office.context.mailbox.item.body.getAsync необходимо сначала получить текст текущего элемента addFileAttachmentFromBase64Asyncс помощью метода Office.context.mailbox.item.body.getAsync. В противном случае изображение не будет отображаться в тексте после вставки. Дополнительные рекомендации см. в разделе Вложение файла.

Ошибки:

  • AttachmentSizeExceeded: вложение больше допустимого размера.

  • FileTypeNotSupported: вложение имеет расширение, которое запрещено.

  • NumberOfAttachmentsExceeded: сообщение или встреча содержит слишком много вложений.

addHandlerAsync(eventType, handler, options, callback)

Добавляет обработчик для поддерживаемого события. Примечание. События доступны только в реализации области задач.

Сведения о поддерживаемых событиях см. в разделе События объектной модели элементов.

addHandlerAsync(eventType: Office.EventType | string, handler: any, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Параметры

eventType

Office.EventType | string

Событие, которое должно вызвать обработчик.

handler

any

Функция для обработки события. Функция должна принимать один параметр, представляющий собой объектный литерал. Свойство type параметра будет соответствовать параметру, eventType переданного в addHandlerAsync.

options
Office.AsyncContextOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова.

callback

(asyncResult: Office.AsyncResult<void>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром Office.AsyncResult , asyncResultкоторый является объектом .

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

function myHandlerFunction(eventarg) {
    if (eventarg.attachmentStatus === Office.MailboxEnums.AttachmentStatus.Added) {
        const attachment = eventarg.attachmentDetails;
        console.log("Event Fired and Attachment Added!");
        getAttachmentContentAsync(attachment.id, options, callback);
    }
}

Office.context.mailbox.item.addHandlerAsync(Office.EventType.AttachmentsChanged, myHandlerFunction, myCallback);

addHandlerAsync(eventType, handler, callback)

Добавляет обработчик для поддерживаемого события. Примечание. События доступны только в реализации области задач.

Сведения о поддерживаемых событиях см. в разделе События объектной модели элементов.

addHandlerAsync(eventType: Office.EventType | string, handler: any, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Параметры

eventType

Office.EventType | string

Событие, которое должно вызвать обработчик.

handler

any

Функция для обработки события. Функция должна принимать один параметр, представляющий собой объектный литерал. Свойство type параметра будет соответствовать параметру, eventType переданного в addHandlerAsync.

callback

(asyncResult: Office.AsyncResult<void>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром Office.AsyncResult , asyncResultкоторый является объектом .

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

addItemAttachmentAsync(itemId, attachmentName, options, callback)

Добавляет к сообщению элемент Exchange, например сообщение, в виде вложения.

С помощью метода addItemAttachmentAsync можно в элемент формы создания вложить элемент с указанным идентификатором Exchange. Если указать функцию обратного вызова, метод вызывается с одним параметром , asyncResultкоторый содержит идентификатор вложения или код, указывающий на любую ошибку, которая произошла при присоединении элемента. Параметр options можно использовать для передачи сведений о состоянии функции обратного вызова, если это необходимо.

Идентификатор можно использовать с методом removeAttachmentAsync, чтобы удалить вложение, добавленное во время текущего сеанса.

Если ваша надстройка Office выполняется в Outlook в Интернете, метод addItemAttachmentAsync обеспечивает вложение элементов в элементы, отличные от редактируемого. Однако это действие не рекомендуется выполнять, так как оно не поддерживается.

addItemAttachmentAsync(itemId: any, attachmentName: string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;

Параметры

itemId

any

Идентификатор Exchange для вкладываемого элемента. Максимальная длина — 100 символов.

attachmentName

string

Имя вложения, которое отображается при передаче вложения. Максимальная длина: 255 символов.

options
Office.AsyncContextOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова.

callback

(asyncResult: Office.AsyncResult<string>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult. После успешного выполнения идентификатор вложения будет представлен в свойстве asyncResult.value. Если добавить вложение не удастся, объект asyncResult будет содержать объект Error с описанием ошибки.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение и запись элемента

Применимый режим Outlook: создание сообщений

Ошибки:

  • NumberOfAttachmentsExceeded: сообщение или встреча содержит слишком много вложений.

Примеры

// The following example adds an existing Outlook item as an attachment
// with the name `My Attachment`.
function callback(result) {
    if (result.error) {
        console.log(result.error);
    } else {
        console.log("Attachment added");
    }
}

function addAttachment() {
    // EWS ID of item to attach (shortened for readability).
    const itemId = "AAMkADI1...AAA=";

    // The values in asyncContext can be accessed in the callback.
    const options = { 'asyncContext': { var1: 1, var2: 2 } };

    Office.context.mailbox.item.addItemAttachmentAsync(itemId, "My Attachment", options, callback);
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml

const attachmentItemId = $("#attachmentItemId").val();
Office.context.mailbox.item.addItemAttachmentAsync(
    attachmentItemId,
    "My attachment",
    { "asyncContext" : { var3: 3, var4: false } },
    function(result) { console.log(result); });

addItemAttachmentAsync(itemId, attachmentName, callback)

Добавляет к сообщению элемент Exchange, например сообщение, в виде вложения.

С помощью метода addItemAttachmentAsync можно в элемент формы создания вложить элемент с указанным идентификатором Exchange. Если указать функцию обратного вызова, метод вызывается с одним параметром , asyncResultкоторый содержит идентификатор вложения или код, указывающий на любую ошибку, которая произошла при присоединении элемента. Параметр options можно использовать для передачи сведений о состоянии функции обратного вызова, если это необходимо.

Идентификатор можно использовать с методом removeAttachmentAsync, чтобы удалить вложение, добавленное во время текущего сеанса.

Если ваша надстройка Office выполняется в Outlook в Интернете, метод addItemAttachmentAsync обеспечивает вложение элементов в элементы, отличные от редактируемого. Однако это действие не рекомендуется выполнять, так как оно не поддерживается.

addItemAttachmentAsync(itemId: any, attachmentName: string, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;

Параметры

itemId

any

Идентификатор Exchange для вкладываемого элемента. Максимальная длина — 100 символов.

attachmentName

string

Имя вложения, которое отображается при передаче вложения. Максимальная длина: 255 символов.

callback

(asyncResult: Office.AsyncResult<string>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult. После успешного выполнения идентификатор вложения будет представлен в свойстве asyncResult.value. Если добавить вложение не удастся, объект asyncResult будет содержать объект Error с описанием ошибки.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение и запись элемента

Применимый режим Outlook: создание сообщений

Ошибки:

  • NumberOfAttachmentsExceeded: сообщение или встреча содержит слишком много вложений.

close()

Закрывает текущий создаваемый элемент.

Работа метода close зависит от текущего состояния создаваемого элемента. Если элемент содержит несохраненные изменения, клиент предлагает пользователю сохранить, отменить или закрыть действие.

В классическом клиенте close Outlook метод не влияет на ответ в области чтения.

close(): void;

Возвращаемое значение

void

Комментарии

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

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

Применимый режим Outlook: создание сообщений

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

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/25-item-save-and-close/close.yaml

Office.context.mailbox.item.close();

disableClientSignatureAsync(options, callback)

Отключает подпись клиента Outlook.

Поведение этого метода зависит от того, на каком клиенте выполняется надстройка.

  • В Outlook в Интернете параметр подписи для новых сообщений, ответов и пересылаемых сообщений отключен. Выбранная сигнатура также отключается методом .

  • В Outlook в Windows и на Mac для подписи в разделах Новые сообщения и Ответы и пересылки учетной записи отправки задано значение (нет).

  • В Outlook для Android и iOS сигнатура, сохраненная на мобильном устройстве, очищается.

disableClientSignatureAsync(options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Параметры

options
Office.AsyncContextOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова.

callback

(asyncResult: Office.AsyncResult<void>) => void

Необязательный параметр. После завершения метода функция, переданная в параметре обратного вызова, вызывается с одним параметром Office.AsyncResult , asyncResultкоторый является объектом .

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение и запись элемента

Применимый режим Outlook: создание сообщений

Важно! Этот метод поддерживается в Message Compose в Outlook для Android и iOS, начиная с версии 4.2352.0. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Для Outlook, поддерживаемые в Outlook на мобильных устройствах.

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/work-with-client-signatures.yaml

// Disable the client signature.
Office.context.mailbox.item.disableClientSignatureAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("disableClientSignatureAsync succeeded");
  } else {
    console.error(asyncResult.error);
  }
});

disableClientSignatureAsync(callback)

Отключает подпись клиента Outlook.

Поведение этого метода зависит от того, на каком клиенте выполняется надстройка.

  • В Outlook в Интернете параметр подписи для новых сообщений, ответов и пересылаемых сообщений отключен. Выбранная сигнатура также отключается методом .

  • В Outlook в Windows и на Mac для подписи в разделах Новые сообщения и Ответы и пересылки учетной записи отправки задано значение (нет).

  • В Outlook для Android и iOS сигнатура, сохраненная на мобильном устройстве, очищается.

disableClientSignatureAsync(callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Параметры

callback

(asyncResult: Office.AsyncResult<void>) => void

Необязательный параметр. После завершения метода функция, переданная в параметре обратного вызова, вызывается с одним параметром Office.AsyncResult , asyncResultкоторый является объектом .

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение и запись элемента

Применимый режим Outlook: создание сообщений

Важно! Этот метод поддерживается в Message Compose в Outlook для Android и iOS, начиная с версии 4.2352.0. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Для Outlook, поддерживаемые в Outlook на мобильных устройствах.

getAttachmentContentAsync(attachmentId, options, callback)

Получает вложение из сообщения или встречи и возвращает его в AttachmentContent виде объекта .

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

getAttachmentContentAsync(attachmentId: string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<AttachmentContent>) => void): void;

Параметры

attachmentId

string

Идентификатор вложения, которое требуется получить.

options
Office.AsyncContextOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова.

callback

(asyncResult: Office.AsyncResult<Office.AttachmentContent>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром Office.AsyncResult , asyncResultкоторый является объектом . В случае сбоя asyncResult.error вызова свойство будет содержать код ошибки с причиной сбоя.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Ошибки:

  • AttachmentTypeNotSupported: тип вложения не поддерживается. Неподдерживаемые типы включают внедренные изображения в формате форматированного текста или типы вложений элементов, отличные от сообщений электронной почты или элементов календаря (например, контакт или элемент задачи).

  • InvalidAttachmentId: идентификатор вложения не существует.

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/get-attachment-content.yaml

// Gets the attachments of the current message or appointment in compose mode.
const options = { asyncContext: { currentItem: item } };
// The getAttachmentsAsync call can only be used in compose mode.
item.getAttachmentsAsync(options, callback);

function callback(result) {
  if (result.status === Office.AsyncResultStatus.Failed) {
    console.log(result.error.message);
    return;
  }

  if (result.value.length <= 0) {
    console.log("Mail item has no attachments.");
    return;
  }

  for (let i = 0; i < result.value.length; i++) {
    // Log the attachment type and its contents to the console.
    result.asyncContext.currentItem.getAttachmentContentAsync(result.value[i].id, handleAttachmentsCallback);
  }
}

getAttachmentContentAsync(attachmentId, callback)

Получает вложение из сообщения или встречи и возвращает его в AttachmentContent виде объекта .

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

getAttachmentContentAsync(attachmentId: string, callback?: (asyncResult: Office.AsyncResult<AttachmentContent>) => void): void;

Параметры

attachmentId

string

Идентификатор вложения, которое требуется получить.

callback

(asyncResult: Office.AsyncResult<Office.AttachmentContent>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром Office.AsyncResult , asyncResultкоторый является объектом . В случае сбоя asyncResult.error вызова свойство будет содержать код ошибки с причиной сбоя.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Ошибки:

  • AttachmentTypeNotSupported: тип вложения не поддерживается. Неподдерживаемые типы включают внедренные изображения в формате форматированного текста или типы вложений элементов, отличные от сообщений электронной почты или элементов календаря (например, контакт или элемент задачи).

  • InvalidAttachmentId: идентификатор вложения не существует.

getAttachmentsAsync(options, callback)

Возвращает вложения элемента в виде массива.

getAttachmentsAsync(options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<AttachmentDetailsCompose[]>) => void): void;

Параметры

options
Office.AsyncContextOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова.

callback

(asyncResult: Office.AsyncResult<Office.AttachmentDetailsCompose[]>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult. В случае сбоя asyncResult.error вызова свойство будет содержать код ошибки с причиной сбоя.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml

Office.context.mailbox.item.getAttachmentsAsync(function (result) {
    if (result.status !== Office.AsyncResultStatus.Succeeded) {
        console.error(result.error.message);
    } else {
        if (result.value.length > 0) {
            for (let i = 0; i < result.value.length; i++) {
                const attachment = result.value[i];
                console.log("ID: " + attachment.id + "\n" +
                    "Name: " + attachment.name + "\n" +
                    "Size: " + attachment.size + "\n" +
                    "isInline: " + attachment.isInline);
                switch (attachment.attachmentType) {
                    case Office.MailboxEnums.AttachmentType.Cloud:
                        console.log("Attachment type: Attachment is stored in a cloud location.");
                        break;
                    case Office.MailboxEnums.AttachmentType.File:
                        console.log("Attachment type: Attachment is a file.");
                        break;
                    case Office.MailboxEnums.AttachmentType.Item:
                        console.log("Attachment type: Attachment is an Exchange item.");
                        break;
                }
            }
        }
        else {
            console.log("No attachments on this message.");
        }
    }
});

getAttachmentsAsync(callback)

Возвращает вложения элемента в виде массива.

getAttachmentsAsync(callback?: (asyncResult: Office.AsyncResult<AttachmentDetailsCompose[]>) => void): void;

Параметры

callback

(asyncResult: Office.AsyncResult<Office.AttachmentDetailsCompose[]>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult. В случае сбоя asyncResult.error вызова свойство будет содержать код ошибки с причиной сбоя.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

getComposeTypeAsync(options, callback)

Указывает тип создания сообщения и его тип приведения. Сообщение может быть новым или ответным или пересылать. Тип приведения может быть HTML или обычный текст.

getComposeTypeAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<any>) => void): void;

Параметры

options
Office.AsyncContextOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова.

callback

(asyncResult: Office.AsyncResult<any>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult. При успешном выполнении asyncResult.value свойство содержит объект с типом создания элемента и типом приведения.

Возвращаемое значение

void

Объект со значениями ComposeType перечисления и CoercionType для элемента сообщения.

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Важно! Этот метод поддерживается в Outlook для Android и в iOS, начиная с версии 4.2352.0. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Для Outlook, поддерживаемые в Outlook на мобильных устройствах.

getComposeTypeAsync(callback)

Указывает тип создания сообщения и его тип приведения. Сообщение может быть новым или ответным или пересылать. Тип приведения может быть HTML или обычный текст.

getComposeTypeAsync(callback: (asyncResult: Office.AsyncResult<any>) => void): void;

Параметры

callback

(asyncResult: Office.AsyncResult<any>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult. При успешном выполнении asyncResult.value свойство содержит объект с типом создания элемента и типом приведения.

Возвращаемое значение

void

Объект со значениями ComposeType перечисления и CoercionType для элемента сообщения.

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Важно! Этот метод поддерживается в Outlook для Android и в iOS, начиная с версии 4.2352.0. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Для Outlook, поддерживаемые в Outlook на мобильных устройствах.

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/work-with-client-signatures.yaml

// Get the compose type of the current message.
Office.context.mailbox.item.getComposeTypeAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log(
      "getComposeTypeAsync succeeded with composeType: " +
        asyncResult.value.composeType +
        " and coercionType: " +
        asyncResult.value.coercionType
    );
  } else {
    console.error(asyncResult.error);
  }
});

getInitializationContextAsync(options, callback)

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

getInitializationContextAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<string>) => void): void;

Параметры

options
Office.AsyncContextOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова.

callback

(asyncResult: Office.AsyncResult<string>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult. При успешном выполнении данные контекста инициализации предоставляются в качестве строки (или пустой строки, если контекст инициализации отсутствует) в свойстве asyncResult.value .

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

// Get the initialization context (if present).
Office.context.mailbox.item.getInitializationContextAsync((asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
        if (asyncResult.value.length > 0) {
            // The value is a string, parse to an object.
            const context = JSON.parse(asyncResult.value);
            // Do something with context.
        } else {
            // Empty context, treat as no context.
        }
    } else {
        // Handle the error.
    }
});

getInitializationContextAsync(callback)

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

getInitializationContextAsync(callback: (asyncResult: Office.AsyncResult<string>) => void): void;

Параметры

callback

(asyncResult: Office.AsyncResult<string>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult. При успешном выполнении данные контекста инициализации предоставляются в качестве строки (или пустой строки, если контекст инициализации отсутствует) в свойстве asyncResult.value .

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

getItemIdAsync(options, callback)

Асинхронно получает идентификатор сохраненного элемента.

При вызове этот метод возвращает идентификатор элемента с помощью функции обратного вызова.

Примечание. Если надстройка вызывает getItemIdAsync элемент в режиме создания (например, чтобы получить itemId объект для использования с EWS или REST API), имейте в виду, что когда Outlook находится в кэшированном режиме, может потребоваться некоторое время, прежде чем элемент будет синхронизирован с сервером. Пока элемент не будет синхронизирован, itemId объект не распознается и при его использовании возвращается ошибка.

getItemIdAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<string>) => void): void;

Параметры

options
Office.AsyncContextOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова.

callback

(asyncResult: Office.AsyncResult<string>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Ошибки:

  • ItemNotSaved: идентификатор не может быть получен до сохранения элемента.

getItemIdAsync(callback)

Асинхронно получает идентификатор сохраненного элемента.

При вызове этот метод возвращает идентификатор элемента с помощью функции обратного вызова.

Примечание. Если надстройка вызывает getItemIdAsync элемент в режиме создания (например, чтобы получить itemId объект для использования с EWS или REST API), имейте в виду, что когда Outlook находится в кэшированном режиме, может потребоваться некоторое время, прежде чем элемент будет синхронизирован с сервером. Пока элемент не будет синхронизирован, itemId объект не распознается и при его использовании возвращается ошибка.

getItemIdAsync(callback: (asyncResult: Office.AsyncResult<string>) => void): void;

Параметры

callback

(asyncResult: Office.AsyncResult<string>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Ошибки:

  • ItemNotSaved: идентификатор не может быть получен до сохранения элемента.

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/85-tokens-and-service-calls/item-id-compose.yaml

Office.context.mailbox.item.getItemIdAsync(function (result) {
    if (result.status !== Office.AsyncResultStatus.Succeeded) {
        console.error(`getItemIdAsync failed with message: ${result.error.message}`);
    } else {
        console.log(result.value);
    }
});

getSelectedDataAsync(coercionType, options, callback)

Асинхронно возвращает данные, выбранные в теме или тексте сообщения.

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

Чтобы получить доступ к выбранным данным из функции обратного вызова, вызовите .asyncResult.value.data Чтобы получить доступ к свойству источника, из которого происходит выбор, вызовите asyncResult.value.sourceProperty, который будет иметь значение body или subject.

getSelectedDataAsync(coercionType: Office.CoercionType | string, options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<any>) => void): void;

Параметры

coercionType

Office.CoercionType | string

Запрашивает формат данных. Если Textзадано значение , метод возвращает обычный текст в виде строки, удаляя все присутствующие HTML-теги. Если Htmlзадано значение , метод возвращает выделенный текст, будь то обычный текст или HTML.

options
Office.AsyncContextOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова.

callback

(asyncResult: Office.AsyncResult<any>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult.

Возвращаемое значение

void

Выбранные данные в виде строки с форматом, определенным .coercionType

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

// Get selected data.
Office.initialize = function () {
    Office.context.mailbox.item.getSelectedDataAsync(Office.CoercionType.Text, {}, getCallback);
};

function getCallback(asyncResult) {
    const text = asyncResult.value.data;
    const prop = asyncResult.value.sourceProperty;

    console.log("Selected text in " + prop + ": " + text);
}

getSelectedDataAsync(coercionType, callback)

Асинхронно возвращает данные, выбранные в теме или тексте сообщения.

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

Чтобы получить доступ к выбранным данным из функции обратного вызова, вызовите .asyncResult.value.data Чтобы получить доступ к свойству источника, из которого происходит выбор, вызовите asyncResult.value.sourceProperty, который будет иметь значение body или subject.

getSelectedDataAsync(coercionType: Office.CoercionType | string, callback: (asyncResult: Office.AsyncResult<any>) => void): void;

Параметры

coercionType

Office.CoercionType | string

Запрашивает формат данных. Если Textзадано значение , метод возвращает обычный текст в виде строки, удаляя все присутствующие HTML-теги. Если Htmlзадано значение , метод возвращает выделенный текст, будь то обычный текст или HTML.

callback

(asyncResult: Office.AsyncResult<any>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult.

Возвращаемое значение

void

Выбранные данные в виде строки с форматом, определенным .coercionType

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/get-selected-data.yaml

Office.context.mailbox.item.getSelectedDataAsync(Office.CoercionType.Text, function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const text = asyncResult.value.data;
    const prop = asyncResult.value.sourceProperty;
    console.log("Selected text in " + prop + ": " + text);
  } else {
    console.error(asyncResult.error);
  }
});

getSharedPropertiesAsync(options, callback)

Возвращает свойства встречи или сообщения в общей папке или общем почтовом ящике.

Дополнительные сведения об использовании этого API см. в статье Включение общих папок и сценариев общих почтовых ящиков в надстройке Outlook.

getSharedPropertiesAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<SharedProperties>) => void): void;

Параметры

options
Office.AsyncContextOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова.

callback

(asyncResult: Office.AsyncResult<Office.SharedProperties>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром Office.AsyncResult , asyncResultкоторый является объектом . Свойство asyncResult.value предоставляет свойства общего элемента.

Возвращаемое значение

void

Комментарии

[ Набор API: Почтовый ящик 1.8 для поддержки общих папок, Почтовый ящик 1.13 для поддержки общих почтовых ящиков ]

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примечание. Этот метод не поддерживается в Outlook для iOS или Android.

Важно! В режиме создания сообщений этот API не поддерживается в Outlook в Интернете или Windows, если не выполнены следующие условия.

А. Делегирование доступа или общие папки

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

  2. Они сохраняют сообщение, а затем перемещают его из собственной папки Черновики в папку, к которой предоставлен общий доступ делегату.

  3. Делегат открывает черновик из общей папки, а затем продолжает создание.

Б. Общий почтовый ящик (применяется только к Outlook в Windows)

  1. Пользователь общего почтового ящика запускает сообщение. Это может быть новое сообщение, ответ или пересылка.

  2. Они сохраняют сообщение, а затем перемещают его из собственной папки Черновики в папку в общем почтовом ящике.

  3. Другой пользователь общего почтового ящика открывает черновик из общего почтового ящика, а затем продолжает создавать.

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

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/65-delegates-and-shared-folders/get-shared-properties.yaml

if (!Office.context.mailbox.item.getSharedPropertiesAsync) {
  console.error("Try this sample on a message from a shared folder.");
  return;
}

Office.context.mailbox.getCallbackTokenAsync({ isRest: true }, function(result) {
  if (result.status === Office.AsyncResultStatus.Succeeded && result.value !== "") {
    Office.context.mailbox.item.getSharedPropertiesAsync(
      {
        // Pass auth token along.
        asyncContext: result.value
      },
      function(result2) {
        let sharedProperties = result2.value;
        let delegatePermissions = sharedProperties.delegatePermissions;

        // Determine if user has the appropriate permission to do the operation.
        if ((delegatePermissions & Office.MailboxEnums.DelegatePermissions.Read) != 0) {
          const ewsId = Office.context.mailbox.item.itemId;
          const restId = Office.context.mailbox.convertToRestId(ewsId, Office.MailboxEnums.RestVersion.v2_0);
          let rest_url =
            sharedProperties.targetRestUrl + "/v2.0/users/" + sharedProperties.targetMailbox + "/messages/" + restId;

          $.ajax({
            url: rest_url,
            dataType: "json",
            headers: { Authorization: "Bearer " + result2.asyncContext }
          })
            .done(function(response) {
              console.log(response);
            })
            .fail(function(error) {
              console.error(error);
            });
        }
      }
    );
  }
});

getSharedPropertiesAsync(callback)

Возвращает свойства встречи или сообщения в общей папке или общем почтовом ящике.

Дополнительные сведения об использовании этого API см. в статье Включение общих папок и сценариев общих почтовых ящиков в надстройке Outlook.

getSharedPropertiesAsync(callback: (asyncResult: Office.AsyncResult<SharedProperties>) => void): void;

Параметры

callback

(asyncResult: Office.AsyncResult<Office.SharedProperties>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром Office.AsyncResult , asyncResultкоторый является объектом . Свойство asyncResult.value предоставляет свойства общего элемента.

Возвращаемое значение

void

Комментарии

[ Набор API: Почтовый ящик 1.8 для поддержки общих папок, Почтовый ящик 1.13 для поддержки общих почтовых ящиков ]

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примечание. Этот метод не поддерживается в Outlook для iOS или Android.

Важно! В режиме создания сообщений этот API не поддерживается в Outlook в Интернете или Windows, если не выполнены следующие условия.

А. Делегирование доступа или общие папки

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

  2. Они сохраняют сообщение, а затем перемещают его из собственной папки Черновики в папку, к которой предоставлен общий доступ делегату.

  3. Делегат открывает черновик из общей папки, а затем продолжает создание.

Б. Общий почтовый ящик (применяется только к Outlook в Windows)

  1. Пользователь общего почтового ящика запускает сообщение. Это может быть новое сообщение, ответ или пересылка.

  2. Они сохраняют сообщение, а затем перемещают его из собственной папки Черновики в папку в общем почтовом ящике.

  3. Другой пользователь общего почтового ящика открывает черновик из общего почтового ящика, а затем продолжает создавать.

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

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/65-delegates-and-shared-folders/get-shared-properties.yaml

if (!Office.context.mailbox.item.getSharedPropertiesAsync) {
  console.error("Try this sample on an item from a shared folder.");
  return;
}

Office.context.mailbox.item.getSharedPropertiesAsync(function(result) {
  console.log(result.value);
});

isClientSignatureEnabledAsync(options, callback)

Возвращает значение, если подпись клиента включена.

Для полнофункционированных клиентов Windows и Mac вызов API должен возвращать true , если для подписи по умолчанию для новых сообщений, ответов или пересылаемых сообщений задан шаблон для учетной записи Отправляющего Outlook. Для Outlook в Интернете вызов API должен возвращатьtrue, если сигнатура включена для типов newMailсоздания , replyили forward. Если для многофункциональных клиентов Mac или Windows для параметров задано значение "(none)" или они отключены в Outlook в Интернете, вызов API должен возвращать .false

isClientSignatureEnabledAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<boolean>) => void): void;

Параметры

options
Office.AsyncContextOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова.

callback

(asyncResult: Office.AsyncResult<boolean>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/work-with-client-signatures.yaml

// Check if the client signature is currently enabled.
Office.context.mailbox.item.isClientSignatureEnabledAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("isClientSignatureEnabledAsync succeeded with result: " + asyncResult.value);
  } else {
    console.error(asyncResult.error);
  }
});

isClientSignatureEnabledAsync(callback)

Возвращает значение, если подпись клиента включена.

Для полнофункционированных клиентов Windows и Mac вызов API должен возвращать true , если для подписи по умолчанию для новых сообщений, ответов или пересылаемых сообщений задан шаблон для учетной записи Отправляющего Outlook. Для Outlook в Интернете вызов API должен возвращатьtrue, если сигнатура включена для типов newMailсоздания , replyили forward. Если для многофункциональных клиентов Mac или Windows для параметров задано значение "(none)" или они отключены в Outlook в Интернете, вызов API должен возвращать .false

isClientSignatureEnabledAsync(callback: (asyncResult: Office.AsyncResult<boolean>) => void): void;

Параметры

callback

(asyncResult: Office.AsyncResult<boolean>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

loadCustomPropertiesAsync(callback, userContext)

Асинхронно загружает настраиваемые свойства для надстройки для выбранного элемента.

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

Настраиваемые свойства предоставляются в виде объекта CustomProperties в свойстве asyncResult.value. Этот объект можно использовать для получения, задания, сохранения и удаления настраиваемых свойств из почтового элемента.

loadCustomPropertiesAsync(callback: (asyncResult: Office.AsyncResult<CustomProperties>) => void, userContext?: any): void;

Параметры

callback

(asyncResult: Office.AsyncResult<Office.CustomProperties>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult.

userContext

any

Необязательный параметр. Разработчики могут указать любой объект, к которому необходимо получить доступ, в функции обратного вызова. Доступ к этому объекту можно получить с помощью свойства asyncResult.asyncContext в функции обратного вызова.

Возвращаемое значение

void

Комментарии

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

Дополнительные сведения о пользовательских свойствах см. в статье Получение и настройка метаданных надстройки для надстройки Outlook.

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

Примеры

// The following example shows how to use the loadCustomPropertiesAsync method
// to asynchronously load custom properties that are specific to the current item.
// The example also shows how to use the saveAsync method to save these properties
// back to the server. After loading the custom properties, the example uses the
// get method to read the custom property myProp, the set method to write the
// custom property otherProp, and then finally calls the saveAsync method to save
// the custom properties.
Office.initialize = function () {
    // Checks for the DOM to load using the jQuery ready method.
    $(document).ready(function () {
        // After the DOM is loaded, add-in-specific code can run.
        const mailbox = Office.context.mailbox;
        mailbox.item.loadCustomPropertiesAsync(customPropsCallback);
    });
};

function customPropsCallback(asyncResult) {
    const customProps = asyncResult.value;
    const myProp = customProps.get("myProp");

    customProps.set("otherProp", "value");
    customProps.saveAsync(saveCallback);
}

function saveCallback(asyncResult) {
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/15-item-custom-properties/load-set-get-save.yaml

Office.context.mailbox.item.loadCustomPropertiesAsync(function (result) {
  if (result.status === Office.AsyncResultStatus.Succeeded) {
    console.log("Loaded following custom properties:");
    customProps = result.value;
    const dataKey = Object.keys(customProps)[0];
    const data = customProps[dataKey];
    for (let propertyName in data)
    {
      let propertyValue = data[propertyName];
      console.log(`${propertyName}: ${propertyValue}`);
    }              
  }
  else {
    console.error(`loadCustomPropertiesAsync failed with message ${result.error.message}`);
  }
});

removeAttachmentAsync(attachmentId, options, callback)

Удаляет вложение из сообщения или встречи.

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

removeAttachmentAsync(attachmentId: string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Параметры

attachmentId

string

Идентификатор удаляемого вложения. Максимальная длина attachmentId строки составляет 200 символов в Outlook в Интернете и в Windows.

options
Office.AsyncContextOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова.

callback

(asyncResult: Office.AsyncResult<void>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult. Если удалить вложение не удается, свойство asyncResult.error содержит код ошибки с указанием ее причины.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение и запись элемента

Применимый режим Outlook: создание сообщений

Ошибки:

  • InvalidAttachmentId: идентификатор вложения не существует.

Примеры

// The following code removes an attachment with an identifier of '0'.
Office.context.mailbox.item.removeAttachmentAsync(
    '0',
    { asyncContext : null },
    function (asyncResult)
    {
        console.log(asyncResult.status);
    }
);
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml

Office.context.mailbox.item.removeAttachmentAsync(
    $("#attachmentId").val(),
    { asyncContext : null },
    function(result)
    {
        if (result.status !== Office.AsyncResultStatus.Succeeded) {
            console.error(`${result.error.message}`);
        } else {
            console.log(`Attachment removed successfully.`);
        }
    }
);

removeAttachmentAsync(attachmentId, callback)

Удаляет вложение из сообщения или встречи.

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

removeAttachmentAsync(attachmentId: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Параметры

attachmentId

string

Идентификатор удаляемого вложения. Максимальная длина attachmentId строки составляет 200 символов в Outlook в Интернете и в Windows.

callback

(asyncResult: Office.AsyncResult<void>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult. Если удалить вложение не удается, свойство asyncResult.error содержит код ошибки с указанием ее причины.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение и запись элемента

Применимый режим Outlook: создание сообщений

Ошибки:

  • InvalidAttachmentId: идентификатор вложения не существует.

removeHandlerAsync(eventType, options, callback)

Удаляет обработчиков для поддерживаемого типа события. Примечание. События доступны только в реализации области задач.

Сведения о поддерживаемых событиях см. в разделе События объектной модели элементов.

removeHandlerAsync(eventType: Office.EventType | string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Параметры

eventType

Office.EventType | string

Событие, которое должно отменить обработчик.

options
Office.AsyncContextOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова.

callback

(asyncResult: Office.AsyncResult<void>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром Office.AsyncResult , asyncResultкоторый является объектом .

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

removeHandlerAsync(eventType, callback)

Удаляет обработчиков для поддерживаемого типа события. Примечание. События доступны только в реализации области задач.

Сведения о поддерживаемых событиях см. в разделе События объектной модели элементов.

removeHandlerAsync(eventType: Office.EventType | string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Параметры

eventType

Office.EventType | string

Событие, которое должно отменить обработчик.

callback

(asyncResult: Office.AsyncResult<void>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром Office.AsyncResult , asyncResultкоторый является объектом .

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: создание сообщений

saveAsync(options, callback)

Асинхронно сохраняет текущее сообщение в виде черновика.

saveAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<string>) => void): void;

Параметры

options
Office.AsyncContextOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова.

callback

(asyncResult: Office.AsyncResult<string>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром Office.AsyncResult , asyncResultкоторый является объектом . Идентификатор сообщения возвращается в свойстве asyncResult.value .

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение и запись элемента

Применимый режим Outlook: создание сообщений

Важно!

  • В Outlook в Интернете или интерактивном режиме Outlook этот элемент сохраняется на сервере. В Outlook в режиме кэширования этот элемент сохраняется в локальном кэше.

  • При работе с содержимым в формате HTML важно отметить, что клиент Outlook может изменять содержимое. Это означает, что последующие вызовы таких методов, как Body.getAsync, Body.setAsyncи даже saveAsync могут привести к тому же содержимому.

  • Если надстройка вызывает saveAsync элемент в режиме создания, чтобы получить идентификатор элемента для использования с EWS или REST API, имейте в виду, что когда Outlook находится в кэшированном режиме, может потребоваться некоторое время, прежде чем элемент будет фактически синхронизирован с сервером. Пока элемент не будет синхронизирован, при использовании идентификатора элемента будет возвращена ошибка.

  • В Outlook в Интернете учетная запись почтового ящика, в которую сохраняется черновик, зависит от того, когда saveAsync вызывается для сообщения, которое будет отправлено из учетной записи общего почтового ящика. Если отправитель создает новое сообщение из личного почтового ящика и выбирает учетную запись общего почтового ящика в поле От , saveAsync сохраняет черновик в папке Черновики личного почтового ящика пользователя. Если отправитель открывает учетную запись общего почтового ящика в отдельной вкладке браузера (например, с помощью параметра Открыть другой почтовый ящик ) и создает там новое сообщение, saveAsync черновик сохраняется в папке Черновики общего почтового ящика.

Ошибки:

  • InvalidAttachmentId: идентификатор вложения не существует.

saveAsync(callback)

Асинхронно сохраняет текущее сообщение в виде черновика.

saveAsync(callback: (asyncResult: Office.AsyncResult<string>) => void): void;

Параметры

callback

(asyncResult: Office.AsyncResult<string>) => void

После завершения метода функция, переданная в callback параметре, вызывается с одним параметром Office.AsyncResult , asyncResultкоторый является объектом . Идентификатор сообщения возвращается в свойстве asyncResult.value .

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение и запись элемента

Применимый режим Outlook: создание сообщений

Важно!

  • В Outlook в Интернете или интерактивном режиме Outlook этот элемент сохраняется на сервере. В Outlook в режиме кэширования этот элемент сохраняется в локальном кэше.

  • При работе с содержимым в формате HTML важно отметить, что клиент Outlook может изменять содержимое. Это означает, что последующие вызовы таких методов, как Body.getAsync, Body.setAsyncи даже saveAsync могут привести к тому же содержимому.

  • Если надстройка вызывает saveAsync элемент в режиме создания, чтобы получить идентификатор элемента для использования с EWS или REST API, имейте в виду, что когда Outlook находится в кэшированном режиме, может потребоваться некоторое время, прежде чем элемент будет фактически синхронизирован с сервером. Пока элемент не будет синхронизирован, при использовании идентификатора элемента будет возвращена ошибка.

  • В Outlook в Интернете учетная запись почтового ящика, в которую сохраняется черновик, зависит от того, когда saveAsync вызывается для сообщения, которое будет отправлено из учетной записи общего почтового ящика. Если отправитель создает новое сообщение из личного почтового ящика и выбирает учетную запись общего почтового ящика в поле От , saveAsync сохраняет черновик в папке Черновики личного почтового ящика пользователя. Если отправитель открывает учетную запись общего почтового ящика в отдельной вкладке браузера (например, с помощью параметра Открыть другой почтовый ящик ) и создает там новое сообщение, saveAsync черновик сохраняется в папке Черновики общего почтового ящика.

Ошибки:

  • InvalidAttachmentId: идентификатор вложения не существует.

Примеры

Office.context.mailbox.item.saveAsync(
    function callback(result) {
        // Process the result.
    });

// The following is an example of the
// `result` parameter passed to the
// callback function. The `value`
// property contains the item ID of
// the item.
{
    "value": "AAMkADI5...AAA=",
    "status": "succeeded"
}

setSelectedDataAsync(data, options, callback)

Асинхронно вставляет данные в текст или тему сообщения.

Метод setSelectedDataAsync вставляет указанную строку в положение курсора в теме или тексте элемента или, если текст выделен в редакторе, он заменяет выделенный текст. Если курсор не находится в поле текст или тема, возвращается ошибка. После вставки курсор помещается в конец вставленного содержимого.

setSelectedDataAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Параметры

data

string

Вставляемые данные. Объем данных не должен превышать 1 000 000 символов. Если передано больше 1 000 000 символов, возвращается исключение ArgumentOutOfRange.

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова. coercionType: если текст, текущий стиль применяется в Outlook в Интернете и на настольных клиентах. Если поле представляет собой редактор HTML, вставляются только текстовые данные, даже если они имеют формат HTML. Если html и поле поддерживают HTML (тема не поддерживает), текущий стиль применяется в Outlook в Интернете, а стиль по умолчанию применяется в Outlook для классических клиентов. Если поле является текстовым, возвращается ошибка InvalidDataFormat. Если свойство coercionType не задано, результат зависит от поля: если поле имеет формат HTML, используется текст в формате HTML, а если поле текстовое, применяется обычный текст.

callback

(asyncResult: Office.AsyncResult<void>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение и запись элемента

Применимый режим Outlook: создание сообщений

Ошибки:

  • InvalidAttachmentId: идентификатор вложения не существует.

Примеры

Office.context.mailbox.item.setSelectedDataAsync("<b>Hello World!</b>", { coercionType : "html" });
Office.context.mailbox.item.setSelectedDataAsync("Hello World!");
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/set-selected-data.yaml

Office.context.mailbox.item.setSelectedDataAsync("Replaced", function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("Selected text has been updated successfully.");
  } else {
    console.error(asyncResult.error);
  }
});

setSelectedDataAsync(data, callback)

Асинхронно вставляет данные в текст или тему сообщения.

Метод setSelectedDataAsync вставляет указанную строку в положение курсора в теме или тексте элемента или, если текст выделен в редакторе, он заменяет выделенный текст. Если курсор не находится в поле текст или тема, возвращается ошибка. После вставки курсор помещается в конец вставленного содержимого.

setSelectedDataAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Параметры

data

string

Вставляемые данные. Объем данных не должен превышать 1 000 000 символов. Если передано больше 1 000 000 символов, возвращается исключение ArgumentOutOfRange.

callback

(asyncResult: Office.AsyncResult<void>) => void

Необязательный параметр. После завершения метода функция, переданная в callback параметре, вызывается с одним параметром типа Office.AsyncResult.

Возвращаемое значение

void

Комментарии

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

Минимальный уровень разрешений: чтение и запись элемента

Применимый режим Outlook: создание сообщений

Ошибки:

  • InvalidAttachmentId: идентификатор вложения не существует.