Office.MessageCompose interface
Режим создания сообщений Office.context.mailbox.item.
Важно!
Это внутренний объект Outlook, который не предоставляется напрямую через существующие интерфейсы. Вы должны рассматривать это как модус
Office.context.mailbox.item. Дополнительные сведения см. в статье Модель объектов элементов Outlook.Обратите внимание, что при вызове
Office.context.mailbox.itemсообщения следует помнить, что область чтения в клиенте Outlook должна быть включена. Рекомендации по настройке области чтения см. в статье "Использование и настройка области чтения для предварительного просмотра сообщений".
Родительские интерфейсы:
- Extends
Комментарии
Используется
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml
const attachmentUrl = (document.getElementById("attachmentUrl") as HTMLInputElement).value;
Office.context.mailbox.item.addFileAttachmentAsync(
attachmentUrl,
getFileName(attachmentUrl),
{ isInline: false },
(result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to add attachment: ${result.error.message}.`);
return;
}
console.log(`Added attachment with ID: ${result.value}`);
}
);
Свойства
| bcc | Получает объект, предоставляющий методы для получения или обновления получателей в строке скрытой копии сообщения. В зависимости от клиента/платформы (например, Windows, Mac и т. д.) могут применяться ограничения на количество получателей, которых вы можете получить или обновить. Дополнительные сведения см. в объекте "Получатели ". |
| body | Получает объект, предоставляющий методы для работы с основным текстом элемента. |
| categories | Получает объект, предоставляющий методы для управления категориями элемента. |
| cc | Предоставляет доступ к получателям копии сообщения. Тип объекта и уровень доступа зависят от режима текущего элемента. Свойство |
| conversation |
Получает идентификатор разговора по электронной почте, содержащего конкретное сообщение. Вы можете получить целочисленное значение этого свойства, если ваше почтовое приложение активируется в формах просмотра или формах создания ответов. Если пользователь изменит тему ответа, после его отправки идентификатор беседы будет изменен, и полученное ранее значение будет недействительным. Это свойство имеет значение NULL для нового элемента в форме создания. Свойство |
| delay |
Получает или устанавливает отложенные дату и время доставки сообщения. Свойство |
| from | Получает электронный адрес отправителя сообщения. Свойство |
| in |
Получает идентификатор интернет-сообщения исходного сообщения, на которое отвечает текущее сообщение. |
| internet |
Получает или задает пользовательские интернет-заголовки сообщения. Свойство Дополнительные сведения см. в статье Создание и настройка интернет-заголовков в сообщении в надстройке Outlook. |
| item |
Получает тип элемента, который представляет экземпляр. Свойство |
| notification |
Получает сообщения уведомления для элемента. |
| sensitivity |
Получает объект для получения или настройки метки конфиденциальности сообщения. |
| series |
Получает идентификатор ряда, к которому принадлежит экземпляр. В Outlook в Интернете, в Windows (новой и классической версии) и в Mac |
| session |
Управляет данными сеанса элемента в режиме Compose. Важно! В клиентах Outlook, поддерживающих почтовый ящик 1.15 или более ранних версий, длина всего объекта SessionData для каждого элемента почты ограничена 50 000 символов на надстройку. В клиентах, поддерживающих почтовые ящики версии 1.16 или более поздней версии, максимальная длина одной надстройки составляет 2 621 440 символов. |
| subject | Получает или задает описание, которое отображается в поле темы элемента. Свойство Свойство |
| to | Предоставляет доступ к получателям, указанным в строке Кому сообщения. Тип объекта и уровень доступа зависят от режима текущего элемента. Свойство |
Методы
| add |
Добавляет файл в сообщение или встречу в качестве вложения. Метод |
| add |
Добавляет файл в сообщение или встречу в качестве вложения. Метод |
| add |
Добавляет файл в сообщение или встречу в качестве вложения. Метод Идентификатор можно использовать с методом |
| add |
Добавляет файл в сообщение или встречу в качестве вложения. Метод Идентификатор можно использовать с методом |
| add |
Добавляет обработчик для поддерживаемого события. События доступны только в надстройках области задач. |
| add |
Добавляет обработчик для поддерживаемого события. События доступны только в надстройках области задач. |
| add |
Добавляет к сообщению элемент Exchange, например сообщение, в виде вложения. С помощью метода Идентификатор можно использовать с методом Если надстройка Office работает в Outlook в Интернете или в новой версии Outlook для Windows, этот |
| add |
Добавляет к сообщению элемент Exchange, например сообщение, в виде вложения. С помощью метода Идентификатор можно использовать с методом Если надстройка Office работает в Outlook в Интернете или в новой версии Outlook для Windows, этот |
| close() | Закрывает текущий создаваемый элемент. Работа метода В Outlook для Windows (классическая версия) и на Mac этот |
| close |
Закрывает создаваемое текущее сообщение с возможностью отмены несохраненных изменений. Сообщение может быть новым сообщением, ответом или существующим черновиком. |
| close |
Закрывает создаваемое текущее сообщение. Поведение при составлении нового сообщения зависит от того, содержит ли оно несохраненные изменения. Если изменения не были сделаны, сообщение закрывается без диалогового окна сохранения. С другой стороны, если сообщение содержит несохраненные изменения, появляется диалоговое окно сохранения, предлагающее сохранить черновик, отменить изменения или отменить операцию. |
| disable |
Отключает подпись клиента Outlook. Поведение этого метода зависит от клиента, запущенного надстройкой.
|
| disable |
Отключает подпись клиента Outlook. Поведение этого метода зависит от клиента, запущенного надстройкой.
|
| get |
Получает вложение из сообщения или встречи и возвращает его как |
| get |
Получает вложение из сообщения или встречи и возвращает его как |
| get |
Получает вложения элемента в виде массива. |
| get |
Получает вложения элемента в виде массива. |
| get |
Определяет тип создаваемого сообщения и тип приведения. Сообщение может быть новым, ответным или пересланным. Типом приведения может быть HTML или обычный текст. |
| get |
Определяет тип создаваемого сообщения и тип приведения. Сообщение может быть новым, ответным или пересланным. Типом приведения может быть HTML или обычный текст. |
| get |
Получает позицию текущего сообщения в цепочке беседы в кодировке Base64. |
| get |
Получает позицию текущего сообщения в цепочке беседы в кодировке Base64. |
| get |
Получает данные инициализации, передаваемые при активации надстройки с помощью интерактивного сообщения. |
| get |
Получает данные инициализации, передаваемые при активации надстройки с помощью интерактивного сообщения. |
| get |
Получает класс элемента веб-служб Exchange для выбранного сообщения. |
| get |
Получает класс элемента веб-служб Exchange для выбранного сообщения. |
| get |
Асинхронно получает идентификатор элемента веб-служб Exchange (EWS) сохраненного элемента. При вызове этот метод возвращает идентификатор элемента с помощью функции обратного вызова. |
| get |
Асинхронно получает идентификатор элемента веб-служб Exchange (EWS) сохраненного элемента. При вызове этот метод возвращает идентификатор элемента с помощью функции обратного вызова. |
| get |
Асинхронно возвращает данные, выбранные в теме или тексте сообщения. Если выделения нет, но курсор находится в теле или теме, метод возвращает пустую строку для выбранных данных. Если выбраны не текст и не тема, метод возвращает ошибку Чтобы получить доступ к выбранным данным из функции обратного вызова, вызовите |
| get |
Асинхронно возвращает данные, выбранные в теме или тексте сообщения. Если выделения нет, но курсор находится в теле или теме, метод возвращает пустую строку для выбранных данных. Если выбраны не текст и не тема, метод возвращает ошибку Чтобы получить доступ к выбранным данным из функции обратного вызова, вызовите |
| get |
Получает свойства встречи или сообщения в общей папке или общем почтовом ящике. Дополнительные сведения об использовании этого API см. в статье "Включение общих папок и сценариев почтовых ящиков в надстройке Outlook". |
| get |
Получает свойства встречи или сообщения в общей папке или общем почтовом ящике. Дополнительные сведения об использовании этого API см. в статье "Включение общих папок и сценариев почтовых ящиков в надстройке Outlook". |
| is |
Получает включенную сигнатуру клиента. В Outlook для Windows (классическая версия) и на Mac вызов API возвращается |
| is |
Получает включенную сигнатуру клиента. В Outlook для Windows (классическая версия) и на Mac вызов API возвращается |
| load |
Асинхронно загружает настраиваемые свойства для надстройки для выбранного элемента. Настраиваемые свойства хранятся в виде пар "ключ-значение" для каждого приложения и элемента. Этот метод возвращает объект CustomProperties в обратном вызове, который предоставляет методы для доступа к настраиваемым свойствам, относящимся к текущему элементу и текущей надстройке. Пользовательские свойства элемента не зашифрованы, поэтому его не следует использовать в качестве безопасного хранилища. Настраиваемые свойства предоставляются в виде объекта |
| remove |
Удаляет вложение из сообщения или встречи. Метод |
| remove |
Удаляет вложение из сообщения или встречи. Метод |
| remove |
Удаляет обработчиков для поддерживаемого типа события. События доступны только в надстройках области задач. |
| remove |
Удаляет обработчиков для поддерживаемого типа события. События доступны только в надстройках области задач. |
| save |
Асинхронно сохраняет текущее сообщение как черновик. |
| save |
Асинхронно сохраняет текущее сообщение как черновик. |
| send |
Отправляет создаваемое сообщение. |
| send |
Отправляет создаваемое сообщение. |
| set |
Асинхронно вставляет данные в текст или тему сообщения. Метод |
| set |
Асинхронно вставляет данные в текст или тему сообщения. Метод |
Сведения о свойстве
bcc
Получает объект, предоставляющий методы для получения или обновления получателей в строке скрытой копии сообщения.
В зависимости от клиента/платформы (например, Windows, Mac и т. д.) могут применяться ограничения на количество получателей, которых вы можете получить или обновить. Дополнительные сведения см. в объекте "Получатели ".
bcc: Recipients;
Значение свойства
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примеры
// 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 = (document.getElementById("emailBcc") as HTMLInputElement).value;
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;
Значение свойства
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примеры
// 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
Получает объект, предоставляющий методы для управления категориями элемента.
categories: Categories;
Значение свойства
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно! В Outlook в Интернете и новых Outlook для Windows невозможно использовать API для управления категориями в сообщении в режиме Compose.
Примеры
// 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 и т. д.) могут применяться ограничения на количество получателей, которых вы можете получить или обновить. Дополнительные сведения см. в объекте "Получатели ".
cc: Recipients;
Значение свойства
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примеры
// 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 = (document.getElementById("emailCc") as HTMLInputElement).value;
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: Compose сообщений
Примеры
// 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}`);
delayDeliveryTime
Получает или устанавливает отложенные дату и время доставки сообщения.
Свойство delayDeliveryTimeDelayDeliveryTime возвращает объект, который предоставляет методы для управления датой и временем доставки сообщения.
delayDeliveryTime: DelayDeliveryTime;
Значение свойства
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/delay-message-delivery.yaml
function setDeliveryDate(minutes) {
// This snippet sets the delivery date and time of a message.
const currentTime = new Date().getTime();
const milliseconds = totalDelay * 60000;
const timeDelay = new Date(currentTime + milliseconds);
Office.context.mailbox.item.delayDeliveryTime.setAsync(timeDelay, (asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log(asyncResult.error.message);
return;
}
if (minutes === 1440) {
console.log(`Delayed delivery by an additional one day.`);
} else {
console.log(`Delayed delivery by an additional ${minutes} minutes.`);
}
});
}
from
Получает электронный адрес отправителя сообщения.
Свойство fromFrom возвращает объект, который предоставляет метод для получения значения from.
from: From;
Значение свойства
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно! Это свойство поддерживается в Outlook для Android и iOS. Пример сценария см. в статье "Реализация активации на основе событий в надстройках Outlook Mobile".
Примеры
// 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);
}
});
inReplyTo
Получает идентификатор интернет-сообщения исходного сообщения, на которое отвечает текущее сообщение.
inReplyTo: string;
Значение свойства
string
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно!
В Outlook для Windows значение
inReplyToсохраняется во всех ответах независимо от изменений, внесенных пользователем, например изменения темы в ответе.Свойство
inReplyToвозвращаетnullновые сообщения и приглашения на собрания, пересылаемые пользователем, который также является организатором собрания.
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-in-reply-to.yaml
// This snippet gets the ID of the message being replied to by the current message (PR_IN_REPLY_TO_ID).
// The API call is supported on messages being composed and isn't supported on read items.
const inReplyTo = Office.context.mailbox.item.inReplyTo;
if (inReplyTo) {
console.log("ID of the message being replied to: " + inReplyTo);
} else {
console.log("No InReplyTo property available for this message");
}
internetHeaders
Получает или задает пользовательские интернет-заголовки сообщения.
Свойство internetHeaders возвращает объект, предоставляющий InternetHeaders методы для управления интернет-заголовками сообщения.
Дополнительные сведения см. в статье Создание и настройка интернет-заголовков в сообщении в надстройке Outlook.
internetHeaders: InternetHeaders;
Значение свойства
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно! 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
Получает тип элемента, который представляет экземпляр.
Свойство itemTypeItemType возвращает одно из значений перечисления, указывающее, является ли экземпляр объекта элемента сообщением или встречей.
itemType: MailboxEnums.ItemType | string;
Значение свойства
Office.MailboxEnums.ItemType | string
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примеры
// 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;
Значение свойства
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно! Дополнительные сведения о различных типах уведомлений, которые можно реализовать, см. в статье "Создание уведомлений для надстройки 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 = (document.getElementById("notificationId") as HTMLInputElement).value;
const details =
{
type: Office.MailboxEnums.ItemNotificationMessageType.ProgressIndicator,
message: "Progress indicator with id = " + id
};
Office.context.mailbox.item.notificationMessages.addAsync(id, details, (result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to add progress notification with id = ${id}. Try using a different ID.`);
return;
}
console.log(`Added progress notification with id = ${id}.`);
});
...
// Adds an informational notification to the mail item.
const id = (document.getElementById("notificationId") as HTMLInputElement).value;
const details =
{
type: Office.MailboxEnums.ItemNotificationMessageType.InformationalMessage,
message: "Non-persistent informational notification message with id = " + id,
icon: "PG.Icon.16",
persistent: false
};
Office.context.mailbox.item.notificationMessages.addAsync(id, details, (result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to add informational notification with id = ${id}. Try using a different ID.`);
return;
}
console.log(`Added informational notification with id = ${id}.`);
});
...
// Adds a persistent information notification to the mail item.
const id = (document.getElementById("notificationId") as HTMLInputElement).value;
const details =
{
type: Office.MailboxEnums.ItemNotificationMessageType.InformationalMessage,
message: "Persistent informational notification message with id = " + id,
icon: "PG.Icon.16",
persistent: true
};
Office.context.mailbox.item.notificationMessages.addAsync(id, details, (result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to add persistent informational notification with id = ${id}. Try using a different ID.`);
return;
}
console.log(`Added persistent informational notification with id = ${id}.`);
});
...
// 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(JSON.stringify(asyncResult.value));
});
...
// Replaces a notification message of a given key with another message.
const id = (document.getElementById("notificationId") as HTMLInputElement).value;
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
},
(result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to replace notification with id = ${id}. ${result.error.message}.`);
return;
}
console.log(`Replaced notification with id = ${id}.`);
});
...
// Removes a notification message from the current mail item.
const id = (document.getElementById("notificationId") as HTMLInputElement).value;
Office.context.mailbox.item.notificationMessages.removeAsync(id, (result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to remove notification with id = ${id}. ${result.error.message}.`);
return;
}
console.log(`Removed notification with id = ${id}.`);
});
sensitivityLabel
Получает объект для получения или настройки метки конфиденциальности сообщения.
sensitivityLabel: SensitivityLabel;
Значение свойства
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно! Чтобы использовать функцию меток конфиденциальности в надстройке, необходима подписка на Microsoft 365 E5.
Дополнительные сведения об управлении метками конфиденциальности в надстройке см. в разделе Управление меткой конфиденциальности сообщения или встречи в режиме создания.
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/60-sensitivity-label/sensitivity-label.yaml
// This snippet gets the current mail item's sensitivity label.
Office.context.sensitivityLabelsCatalog.getIsEnabledAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded && asyncResult.value == true) {
Office.context.mailbox.item.sensitivityLabel.getAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
console.log(asyncResult.value);
} else {
console.log("Action failed with error: " + asyncResult.error.message);
}
});
} else {
console.log("Action failed with error: " + asyncResult.error.message);
}
});
seriesId
Получает идентификатор ряда, к которому принадлежит экземпляр.
В Outlook в Интернете, в Windows (новой и классической версии) и в Mac seriesId возвращает идентификатор веб-служб Exchange (EWS) родительского элемента (серии), к которому принадлежит этот элемент. Однако в iOS и Android код seriesId возвращает REST идентификатора родительского элемента.
seriesId: string;
Значение свойства
string
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно! Идентификатор, возвращаемый свойством seriesId , совпадает с идентификатором элемента веб-служб Exchange. Это seriesId свойство не идентично идентификаторам Outlook, используемым REST API Outlook. Перед вызовами REST API с использованием этого значения его следует преобразовать с помощью Office.context.mailbox.convertToRestId. Дополнительные сведения см. в статье Использование Outlook REST API из надстройки Outlook.
Свойство seriesId возвращает null элементы, которые не имеют родительских элементов, таких как отдельные встречи, элементы ряда или приглашения на собрания, и возвращает undefined все другие элементы, не являющиеся приглашениями на собрания.
Примеры
// 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);
}
sessionData
Управляет данными сеанса элемента в режиме Compose.
Важно! В клиентах Outlook, поддерживающих почтовый ящик 1.15 или более ранних версий, длина всего объекта SessionData для каждого элемента почты ограничена 50 000 символов на надстройку. В клиентах, поддерживающих почтовые ящики версии 1.16 или более поздней версии, максимальная длина одной надстройки составляет 2 621 440 символов.
sessionData: SessionData;
Значение свойства
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/session-data-apis.yaml
Office.context.mailbox.item.sessionData.getAllAsync(function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
console.log("The sessionData is " + JSON.stringify(asyncResult.value));
} else {
console.log("Failed to get all sessionData. Error: " + JSON.stringify(asyncResult.error));
}
});
subject
Получает или задает описание, которое отображается в поле темы элемента.
Свойство subject получает или задает всю тему элемента для отправки с почтового сервера.
Свойство subject возвращает объект Subject, который предоставляет методы для получения и задания темы.
subject: Subject;
Значение свойства
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примеры
// 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 и т. д.) могут применяться ограничения на количество получателей, которых вы можете получить или обновить. Дополнительные сведения см. в объекте "Получатели ".
to: Recipients;
Значение свойства
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примеры
// 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 = (document.getElementById("emailTo") as HTMLInputElement).value;
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) и вкладывает его в элемент в форме создания.
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 . Идентификатор может различаться в зависимости от клиента Outlook. В Outlook в Интернете и новом Outlook для Windows возвращается идентификатор веб-служб Exchange (EWS). Если isInline задано значение true, временный идентификатор вложения с префиксом addinId первоначально возвращается во время отправки вложения на сервер. После завершения отправки вложению присваивается идентификатор EWS. Дополнительные сведения см. в примечаниях в разделе "Замечания". В Outlook для Windows (классическая версия) и на Mac индекс вложения возвращается для встроенных и невстроенных вложений. Если отправить вложение не удается, описание ошибки приведено в .asyncResult.error
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно!
Этот способ не поддерживается в Outlook для iOS или Android. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Outlook, поддерживаемые Outlook на мобильных устройствах.
Начиная с 30 марта 2026 г. после завершения вызова
addFileAttachmentAsyncaddFileAttachmentFromBase64AsyncisInlinetrueвстроенным изображениям в Outlook в Интернете и новом Outlook для Windows локально назначается временный идентификатор вложения при их отправке на сервер. Временному идентификатору вложения предназначается префиксaddinId. После загрузки изображений на сервер им назначается идентификатор веб-служб Exchange (EWS) в свойствеid, и ихisServiceAccessibleсвойство имеет значениеtrue. Идентификатор временного вложения поддерживается только в течение текущего сеанса создания сообщения. Дополнительные сведения об обработке встроенных изображений см. в статье Изменения идентификаторов вложений для встроенных изображений в надстройках Outlook.Растровые изображения (BMP) не поддерживаются, если они добавлены в виде встроенных вложений.
В последних сборках классического Outlook для Windows появилась ошибка, из-за которой к этому действию неправильно добавлялся
Authorization: Bearerзаголовок (с помощью этого API или пользовательского интерфейса Outlook). Чтобы обойти эту проблему, используйте API, представленный в набореaddFileAttachmentFromBase64требований 1.8.URI вкладываемого файла должен поддерживать кэширование в рабочей среде. Сервер, на котором размещено изображение, не должен возвращать
Cache-Controlзаголовок, который указываетno-cache,no-storeили аналогичные параметры в HTTP-ответе. Однако при разработке надстройки и внесении изменений в файлы кэширование может скрыть ваши изменения. Мы рекомендуем использоватьCache-Controlзаголовки во время разработки.Вы можете использовать тот же URI с
removeAttachmentAsyncметодом удаления вложения в том же сеансе.
Ошибки:
AttachmentSizeExceeded: размер вложения превышает допустимый.FileTypeNotSupported: вложение имеет недопустимое расширение.NumberOfAttachmentsExceeded: сообщение или встреча содержат слишком много вложений.
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml
const attachmentUrl = (document.getElementById("attachmentUrl") as HTMLInputElement).value;
Office.context.mailbox.item.addFileAttachmentAsync(
attachmentUrl,
getFileName(attachmentUrl),
{ isInline: false },
(result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to add attachment: ${result.error.message}.`);
return;
}
console.log(`Added attachment with ID: ${result.value}`);
}
);
addFileAttachmentAsync(uri, attachmentName, callback)
Добавляет файл в сообщение или встречу в качестве вложения.
Метод addFileAttachmentAsync передает файл по указанному универсальному коду ресурса (URI) и вкладывает его в элемент в форме создания.
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 . Идентификатор может различаться в зависимости от клиента Outlook. В Outlook в Интернете и новом Outlook для Windows возвращается идентификатор веб-служб Exchange (EWS). Если isInline задано значение true, временный идентификатор вложения с префиксом addinId первоначально возвращается во время отправки вложения на сервер. После завершения отправки вложению присваивается идентификатор EWS. Дополнительные сведения см. в примечаниях в разделе "Замечания". В Outlook для Windows (классическая версия) и на Mac индекс вложения возвращается для встроенных и невстроенных вложений. Если отправить вложение не удается, описание ошибки приведено в .asyncResult.error
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно!
Этот способ не поддерживается в Outlook для iOS или Android. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Outlook, поддерживаемые Outlook на мобильных устройствах.
Начиная с 30 марта 2026 г. после завершения вызова
addFileAttachmentAsyncaddFileAttachmentFromBase64AsyncisInlinetrueвстроенным изображениям в Outlook в Интернете и новом Outlook для Windows локально назначается временный идентификатор вложения при их отправке на сервер. Временному идентификатору вложения предназначается префиксaddinId. После загрузки изображений на сервер им назначается идентификатор веб-служб Exchange (EWS) в свойствеid, и ихisServiceAccessibleсвойство имеет значениеtrue. Идентификатор временного вложения поддерживается только в течение текущего сеанса создания сообщения. Дополнительные сведения об обработке встроенных изображений см. в статье Изменения идентификаторов вложений для встроенных изображений в надстройках Outlook.Растровые изображения (BMP) не поддерживаются, если они добавлены в виде встроенных вложений.
В последних сборках классического Outlook для Windows появилась ошибка, из-за которой к этому действию неправильно добавлялся
Authorization: Bearerзаголовок (с помощью этого API или пользовательского интерфейса Outlook). Чтобы обойти эту проблему, используйте API, представленный в набореaddFileAttachmentFromBase64требований 1.8.URI вкладываемого файла должен поддерживать кэширование в рабочей среде. Сервер, на котором размещено изображение, не должен возвращать
Cache-Controlзаголовок, который указываетno-cache,no-storeили аналогичные параметры в HTTP-ответе. Однако при разработке надстройки и внесении изменений в файлы кэширование может скрыть ваши изменения. Мы рекомендуем использоватьCache-Controlзаголовки во время разработки.Вы можете использовать тот же URI с
removeAttachmentAsyncметодом удаления вложения в том же сеансе.
Ошибки:
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, которое должно быть добавлено к сообщению электронной почты или событию. Максимальная длина кодированной строки составляет 34 865 152 символа. Это соответствует максимальному размеру вложения в 25 МБ до кодировки Base64.
- attachmentName
-
string
Имя вложения, которое отображается при передаче вложения. Максимальная длина: 255 символов.
- options
-
Office.AsyncContextOptions & { isInline: boolean }
Объектный литерал, содержащий одно или несколько из следующих свойств:- asyncContext: Разработчики могут предоставить любой объект, к которому они хотят получить доступ, в функции обратного вызова.
isInline
: если значение равно true, вложение будет отображаться в тексте сообщения в виде изображения и не будет отображаться в списке вложений.
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
Необязательный параметр. После завершения метода вызывается функция, переданная в параметре callback , с одним параметром типа Office.AsyncResult. В случае успеха идентификатор вложения предоставляется в свойстве asyncResult.value . Идентификатор может различаться в зависимости от клиента Outlook. В Outlook в Интернете и новом Outlook для Windows возвращается идентификатор веб-служб Exchange (EWS). Если isInline задано значение true, временный идентификатор вложения с префиксом addinId первоначально возвращается во время отправки вложения на сервер. После завершения отправки вложению присваивается идентификатор EWS. Дополнительные сведения см. в примечаниях в разделе "Замечания". В Outlook для Windows (классическая версия) и на Mac индекс вложения возвращается для встроенных и невстроенных вложений. Если отправить вложение не удается, описание ошибки приведено в .asyncResult.error
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно!
Добавление встроенного файла Base64 в сообщение в режиме создания поддерживается в Outlook для Android и в iOS. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Outlook, поддерживаемые Outlook на мобильных устройствах.
Начиная с 30 марта 2026 г. после завершения вызова
addFileAttachmentAsyncaddFileAttachmentFromBase64AsyncisInlinetrueвстроенным изображениям в сообщениях в Outlook в Интернете и новом Outlook для Windows локально назначается временный идентификатор вложения при их отправке на сервер. Временному идентификатору вложения предназначается префиксaddinId. После отправки изображений на сервер им назначается идентификатор веб-служб Exchange (EWS). Идентификатор временного вложения поддерживается только в течение текущего сеанса создания сообщения. Дополнительные сведения об обработке встроенных изображений см. в статье Изменения идентификаторов вложений для встроенных изображений в надстройках Outlook.Если вы используете API URL-адреса данных (например,
readAsDataURL), вам нужно удалить префикс URL-адреса данных, а затем отправить оставшуюся строку в этот API. Например, если полная строка представлена какdata:image/svg+xml;base64,<rest of Base64 string>, удалитеdata:image/svg+xml;base64,.Чтобы добавить встроенное изображение в кодировке Base64 в текст создаваемого сообщения или встречи, используйте методы API Body , такие как
prependAsync,setSignatureAsync, илиsetAsync. Если вы используете дляOffice.context.mailbox.item.body.setAsyncвставки изображение, сначала вызовитеOffice.context.mailbox.item.body.getAsyncполучение текущего текста элемента. В противном случае изображение не будет отображаться в тексте после вставки. Например, см. пример "Добавление встроенного изображения в кодировке Base64 в текст сообщения или встречи (Compose)" в Script Lab.
Ошибки:
AttachmentSizeExceeded: размер вложения превышает допустимый.FileTypeNotSupported: вложение имеет недопустимое расширение.NumberOfAttachmentsExceeded: сообщение или встреча содержат слишком много вложений.
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml
const 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 },
(result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to add attachment from Base64-encoded string: ${result.error.message}.`);
return;
}
console.log(`Added attachment from a Base64-encoded string with ID: ${result.value}`);
}
);
...
// 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 = (document.getElementById("signature") as HTMLInputElement).value + "<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, которое должно быть добавлено к сообщению электронной почты или событию. Максимальная длина кодированной строки составляет 34 865 152 символа. Это соответствует максимальному размеру вложения в 25 МБ до кодировки Base64.
- attachmentName
-
string
Имя вложения, которое отображается при передаче вложения. Максимальная длина: 255 символов.
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
Необязательный параметр. После завершения метода вызывается функция, переданная в параметре callback , с одним параметром типа Office.AsyncResult. В случае успеха идентификатор вложения предоставляется в свойстве asyncResult.value . Идентификатор может различаться в зависимости от клиента Outlook. В Outlook в Интернете и новом Outlook для Windows возвращается идентификатор веб-служб Exchange (EWS). Если isInline задано значение true, временный идентификатор вложения с префиксом addinId первоначально возвращается во время отправки вложения на сервер. После завершения отправки вложению присваивается идентификатор EWS. Дополнительные сведения см. в примечаниях в разделе "Замечания". В Outlook для Windows (классическая версия) и на Mac индекс вложения возвращается для встроенных и невстроенных вложений. Если отправить вложение не удается, описание ошибки приведено в .asyncResult.error
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно!
Добавление встроенного файла Base64 в сообщение в режиме создания поддерживается в Outlook для Android и в iOS. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Outlook, поддерживаемые Outlook на мобильных устройствах.
Начиная с 30 марта 2026 г. после завершения вызова
addFileAttachmentAsyncaddFileAttachmentFromBase64AsyncisInlinetrueвстроенным изображениям в сообщениях в Outlook в Интернете и новом Outlook для Windows локально назначается временный идентификатор вложения при их отправке на сервер. Временному идентификатору вложения предназначается префиксaddinId. После отправки изображений на сервер им назначается идентификатор веб-служб Exchange (EWS). Идентификатор временного вложения поддерживается только в течение текущего сеанса создания сообщения. Дополнительные сведения об обработке встроенных изображений см. в статье Изменения идентификаторов вложений для встроенных изображений в надстройках Outlook.Если вы используете API URL-адреса данных (например,
readAsDataURL), вам нужно удалить префикс URL-адреса данных, а затем отправить оставшуюся строку в этот API. Например, если полная строка представлена какdata:image/svg+xml;base64,<rest of Base64 string>, удалитеdata:image/svg+xml;base64,.Чтобы добавить встроенное изображение в кодировке Base64 в текст создаваемого сообщения или встречи, используйте методы API Body , такие как
prependAsync,setSignatureAsync, илиsetAsync. Если вы используете дляOffice.context.mailbox.item.body.setAsyncвставки изображение, сначала вызовитеOffice.context.mailbox.item.body.getAsyncполучение текущего текста элемента. В противном случае изображение не будет отображаться в тексте после вставки. Например, см. пример "Добавление встроенного изображения в кодировке Base64 в текст сообщения или встречи (Compose)" в Script Lab.
Ошибки:
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 , вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult .
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно! Список событий, поддерживаемых для элемента почты, см. в статье Объектная модель элемента 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 , вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult .
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно! Список событий, поддерживаемых для элемента почты, см. в статье Объектная модель элемента Outlook.
addItemAttachmentAsync(itemId, attachmentName, options, callback)
Добавляет к сообщению элемент Exchange, например сообщение, в виде вложения.
С помощью метода addItemAttachmentAsync можно в элемент формы создания вложить элемент с указанным идентификатором Exchange. Если вы указываете функцию обратного вызова, метод вызывается с одним параметром, который содержит либо идентификатор вложения, либо код, указывающий на любую ошибку, asyncResultвозникшую при прикреплении элемента. При необходимости можно использовать параметр options для передачи сведений о состоянии в функцию обратного вызова.
Идентификатор можно использовать с методом removeAttachmentAsync, чтобы удалить вложение, добавленное во время текущего сеанса.
Если надстройка Office работает в Outlook в Интернете или в новой версии Outlook для Windows, этот 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
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Ошибки:
-
NumberOfAttachmentsExceeded: сообщение или встреча содержат слишком много вложений.
Примеры
// The following example adds an existing Outlook item as an attachment
// with the name "My Attachment".
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, (result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.error("Failed to add attachment: " + result.error.message);
return;
}
console.log("Attachment added successfully.");
console.log("var1: " + result.asyncContext.var1);
console.log("var2: " + result.asyncContext.var2);
});
}
addItemAttachmentAsync(itemId, attachmentName, callback)
Добавляет к сообщению элемент Exchange, например сообщение, в виде вложения.
С помощью метода addItemAttachmentAsync можно в элемент формы создания вложить элемент с указанным идентификатором Exchange. Если вы указываете функцию обратного вызова, метод вызывается с одним параметром, который содержит либо идентификатор вложения, либо код, указывающий на любую ошибку, asyncResultвозникшую при прикреплении элемента. При необходимости можно использовать параметр options для передачи сведений о состоянии в функцию обратного вызова.
Идентификатор можно использовать с методом removeAttachmentAsync, чтобы удалить вложение, добавленное во время текущего сеанса.
Если надстройка Office работает в Outlook в Интернете или в новой версии Outlook для Windows, этот 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
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Ошибки:
-
NumberOfAttachmentsExceeded: сообщение или встреча содержат слишком много вложений.
close()
Закрывает текущий создаваемый элемент.
Работа метода close зависит от текущего состояния создаваемого элемента. Если элемент содержит несохраненные изменения, клиент предлагает пользователю сохранить, отменить или закрыть действие.
В Outlook для Windows (классическая версия) и на Mac этот close метод не влияет на ответ в области чтения.
close(): void;
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: restricted
Применимый режим Outlook: Compose сообщений
Важно! В Outlook в Интернете и новом Outlook для Windows, если элемент является встречей и ранее был сохранен с помощью saveAsync, пользователю предлагается сохранить, отменить или отменить, даже если с момента последнего сохранения элемента не произошло никаких изменений.
Совет. Используйте метод closeAsync вместо метода, close если надстройка должна выполнять следующие задачи:
Автоматически отменять написанное сообщение без запроса пользователя с помощью диалогового окна сохранения.
Определять, когда пользователь отменяет диалоговое окно сохранения элемента в создаваемом сообщении.
Закрытие ответа в области чтения или существующего черновика.
Примеры
// 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();
closeAsync(options, callback)
Закрывает создаваемое текущее сообщение с возможностью отмены несохраненных изменений. Сообщение может быть новым сообщением, ответом или существующим черновиком.
closeAsync(options: Office.AsyncContextOptions & { discardItem: boolean }, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Параметры
- options
-
Office.AsyncContextOptions & { discardItem: boolean }
Объектный литерал, содержащий одно или несколько из следующих свойств:- asyncContext: Разработчики могут предоставить любой объект, к которому они хотят получить доступ, в функции обратного вызова.
discardItem
: Если true, текущее сообщение закрывается, а несохраненные изменения удаляются. Если параметр не объявлен или ему задано значение false, появляется диалоговое окно сохранения, предлагающее сохранить черновик, отменить изменения или отменить операцию. Это поведение возникает для новых сообщений и ответов, всплывающих из области чтения. Если вы хотите закрыть ответ в области чтения или существующий черновик, необходимо установить discardItem значение true. В противном случае вызов вернет ошибку. Дополнительные сведения об ошибке см. в разделе "Замечания".
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Необязательный параметр. Когда метод завершается, функция, переданная в параметре обратного вызова, вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult .
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно!
Этот
closeAsyncметод поддерживается только в реализациях области задач и команд функций. Она не поддерживается в обработчиках на основе событий или в сценариях множественного выбора элементов.closeAsyncКогда метод успешно закрывает и отбрасывает текущее сообщение, надстройка, вызвавшая его, перестает работать.
Ошибки:
The operation was cancelled by the user: пользователь выбирает Отмена в диалоговом окне сохранения, и свойствоdiscardItemне определено или имеет значениеfalse.The operation is not supportedcloseAsync: метод пытается закрыть ответ в области чтения или существующий черновик, но свойствоdiscardItemне определено или имеет значениеfalse.
closeAsync(callback)
Закрывает создаваемое текущее сообщение.
Поведение при составлении нового сообщения зависит от того, содержит ли оно несохраненные изменения. Если изменения не были сделаны, сообщение закрывается без диалогового окна сохранения. С другой стороны, если сообщение содержит несохраненные изменения, появляется диалоговое окно сохранения, предлагающее сохранить черновик, отменить изменения или отменить операцию.
closeAsync(callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Параметры
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Необязательный параметр. Когда метод завершается, функция, переданная в параметре обратного вызова, вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult .
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно!
Этот
closeAsyncметод поддерживается только в реализациях области задач и команд функций. Она не поддерживается в обработчиках на основе событий или в сценариях множественного выбора элементов.closeAsyncКогда метод успешно закрывает и отбрасывает текущее сообщение, надстройка, вызвавшая его, перестает работать.
Ошибки:
The operation was cancelled by the user: пользователь выбирает "Отмена " в диалоговом окне сохранения.The operation is not supportedcloseAsync: метод пытается закрыть ответ в области чтения или существующий черновик.
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/25-item-save-and-close/close-async.yaml
// This snippet closes the current message being composed and discards any unsaved changes when the optional property, discardItem, is set to true.
// The API call works on a new message being composed, a reply, or an existing draft.
// When discardItem is set to false or isn't defined on a new message with unsaved changes, the user is prompted to save a draft, discard the changes, or cancel the close operation.
Office.context.mailbox.item.closeAsync(
{ discardItem: true },
(asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Action failed with error: " + asyncResult.error.message);
return;
}
});
disableClientSignatureAsync(options, callback)
Отключает подпись клиента Outlook.
Поведение этого метода зависит от клиента, запущенного надстройкой.
В Outlook в Интернете и новом Outlook для Windows параметр подписи для новых писем, ответов и пересылаемых сообщений отключен. Выбранная сигнатура также отключается методом.
В 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
Необязательный параметр. Когда метод завершается, функция, переданная в параметре обратного вызова, вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult .
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно! Этот способ поддерживается в функции 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 параметр подписи для новых писем, ответов и пересылаемых сообщений отключен. Выбранная сигнатура также отключается методом.
В Outlook для Windows (классическая версия) и на Mac подпись в разделах " Новые сообщения " и "Ответы/пересылки" отправляющей учетной записи установлена на (нет).
В Outlook для Android и iOS подпись, сохраненная на мобильном устройстве, очищается.
disableClientSignatureAsync(callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Параметры
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Необязательный параметр. Когда метод завершается, функция, переданная в параметре обратного вызова, вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult .
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно! Этот способ поддерживается в функции Compose в Outlook на Android и iOS, начиная с версии 4.2352.0. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Outlook, поддерживаемые Outlook на мобильных устройствах.
getAttachmentContentAsync(attachmentId, options, callback)
Получает вложение из сообщения или встречи и возвращает его как AttachmentContent объект.
getAttachmentContentAsync(attachmentId: string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<AttachmentContent>) => void): void;
Параметры
- attachmentId
-
string
Идентификатор вложения, которое нужно получить. В Outlook в Интернете и новом Outlook для Windows временный идентификатор вложения, локально созданный для встроенных изображений, которые еще не были отправлены на сервер, поддерживается в течение текущего сеанса создания.
- options
- Office.AsyncContextOptions
Объектный литерал, содержащий одно или несколько из следующих свойств:- asyncContext: Разработчики могут предоставить любой объект, к которому они хотят получить доступ, в функции обратного вызова.
- callback
-
(asyncResult: Office.AsyncResult<Office.AttachmentContent>) => void
Необязательный параметр. Когда метод завершается, функция, переданная в параметре callback , вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult . Если вызов завершится с ошибкой, свойство asyncResult.error будет содержать код ошибки с указанием причины сбоя.
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно!
Метод
getAttachmentContentAsyncполучает вложение с указанным идентификатором из элемента. Рекомендуется получить идентификатор вложения изgetAttachmentsAsyncвызова, а затем в том же сеансе использовать этот идентификатор для извлечения вложения.Начиная с 30 марта 2026 г. после завершения вызова
addFileAttachmentAsyncaddFileAttachmentFromBase64AsyncisInlinetrueвстроенным изображениям в сообщениях в Outlook в Интернете и новом Outlook для Windows локально назначается временный идентификатор вложения при их отправке на сервер. Временному идентификатору вложения предназначается префиксaddinId. После отправки изображений на сервер им назначается идентификатор веб-служб Exchange (EWS). Идентификатор временного вложения поддерживается только в течение текущего сеанса создания сообщения. Дополнительные сведения об обработке встроенных изображений см. в статье Изменения идентификаторов вложений для встроенных изображений в надстройках Outlook.В Outlook в Интернете и новом Outlook для Windows не поддерживает вложения,
getAttachmentContentAsyncдобавленные с помощью параметра "Отправка и общий доступ".В Outlook в Интернете, на мобильных устройствах и в новом Outlook для Windows идентификатор вложения действителен только в рамках одного сеанса. Сеанс завершается, когда пользователь закрывает приложение или если пользователь начинает создавать встроенную форму, а затем открывает форму, чтобы продолжить в отдельном окне.
Ошибки:
AttachmentTypeNotSupported: тип вложения не поддерживается. К неподдерживаемым типам относятся встроенные изображения в формате RTF или вложения элементов, отличные от элементов электронной почты или календаря (таких как контакт или задача).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. The getAttachmentsAsync call can only be used in compose mode.
Office.context.mailbox.item.getAttachmentsAsync((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.
Office.context.mailbox.item.getAttachmentContentAsync(result.value[i].id, handleAttachmentsCallback);
}
});
getAttachmentContentAsync(attachmentId, callback)
Получает вложение из сообщения или встречи и возвращает его как AttachmentContent объект.
getAttachmentContentAsync(attachmentId: string, callback?: (asyncResult: Office.AsyncResult<AttachmentContent>) => void): void;
Параметры
- attachmentId
-
string
Идентификатор вложения, которое нужно получить. В Outlook в Интернете и новом Outlook для Windows временный идентификатор вложения, локально созданный для встроенных изображений, которые еще не были отправлены на сервер, поддерживается в течение текущего сеанса создания.
- callback
-
(asyncResult: Office.AsyncResult<Office.AttachmentContent>) => void
Необязательный параметр. Когда метод завершается, функция, переданная в параметре callback , вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult . Если вызов завершится с ошибкой, свойство asyncResult.error будет содержать код ошибки с указанием причины сбоя.
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно!
Метод
getAttachmentContentAsyncполучает вложение с указанным идентификатором из элемента. Рекомендуется получить идентификатор вложения изgetAttachmentsAsyncвызова, а затем в том же сеансе использовать этот идентификатор для извлечения вложения.Начиная с 30 марта 2026 г. после завершения вызова
addFileAttachmentAsyncaddFileAttachmentFromBase64AsyncisInlinetrueвстроенным изображениям в сообщениях в Outlook в Интернете и новом Outlook для Windows локально назначается временный идентификатор вложения при их отправке на сервер. Временному идентификатору вложения предназначается префиксaddinId. После отправки изображений на сервер им назначается идентификатор веб-служб Exchange (EWS). Идентификатор временного вложения поддерживается только в течение текущего сеанса создания сообщения. Дополнительные сведения об обработке встроенных изображений см. в статье Изменения идентификаторов вложений для встроенных изображений в надстройках Outlook.В Outlook в Интернете и новом Outlook для Windows не поддерживает вложения,
getAttachmentContentAsyncдобавленные с помощью параметра "Отправка и общий доступ".В Outlook в Интернете, на мобильных устройствах и в новом Outlook для Windows идентификатор вложения действителен только в рамках одного сеанса. Сеанс завершается, когда пользователь закрывает приложение или если пользователь начинает создавать встроенную форму, а затем открывает форму, чтобы продолжить в отдельном окне.
Ошибки:
AttachmentTypeNotSupported: тип вложения не поддерживается. К неподдерживаемым типам относятся встроенные изображения в формате RTF или вложения элементов, отличные от элементов электронной почты или календаря (таких как контакт или задача).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 будет содержать код ошибки с указанием причины сбоя. Если вызов выполнен успешно, в свойстве asyncResult.value возвращается массив AttachmentDetailsCompose объектов.
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно!
Начиная с 30 марта 2026 г. после завершения вызова
addFileAttachmentAsyncaddFileAttachmentFromBase64AsyncisInlinetrueвстроенным изображениям в сообщениях в Outlook в Интернете и новом Outlook для Windows локально назначается временный идентификатор вложения при их отправке на сервер. Временному идентификатору вложения предназначается префиксaddinId. После отправки изображений на сервер им назначается идентификатор веб-служб Exchange (EWS). Идентификатор временного вложения поддерживается только в течение текущего сеанса создания сообщения. Дополнительные сведения об обработке встроенных изображений см. в статье Изменения идентификаторов вложений для встроенных изображений в надстройках Outlook.В Outlook в Интернете и в новой версии Outlook для Windows пользователи могут выбрать параметр «Отправка и общий доступ», чтобы отправить вложение в OneDrive и включить ссылку на файл в элемент письма. Однако, поскольку включена только ссылка,
getAttachmentsAsyncэто вложение не возвращается.Для вложений типа
Office.MailboxEnums.AttachmentType.Itemразмер и сериализованное содержимое, возвращаемыеgetAttachmentsAsyncобработчиком, могут различаться между вызовами, выполненными из обработчикаOnMessageSendсобытий илиOnAppointmentSend. Чтобы надежно обнаруживать изменения вложения, обработайтеOnMessageAttachmentsChangedвместо этого событие OROnAppointmentAttachmentsChanged.
Примеры
// 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((result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.error(result.error.message);
return;
}
if (result.value.length > 0) {
for (let i = 0; i < result.value.length; i++) {
const attachment = result.value[i];
let attachmentType;
switch (attachment.attachmentType) {
case Office.MailboxEnums.AttachmentType.Cloud:
attachmentType = "Attachment is stored in a cloud location";
break;
case Office.MailboxEnums.AttachmentType.File:
attachmentType = "Attachment is a file";
break;
case Office.MailboxEnums.AttachmentType.Item:
attachmentType = "Attachment is an Exchange item";
break;
}
console.log(
"ID: " +
attachment.id +
"\n" +
"Type: " +
attachmentType +
"\n" +
"Name: " +
attachment.name +
"\n" +
"Size: " +
attachment.size +
"\n" +
"isInline: " +
attachment.isInline
);
}
} 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 будет содержать код ошибки с указанием причины сбоя. Если вызов выполнен успешно, в свойстве asyncResult.value возвращается массив AttachmentDetailsCompose объектов.
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно!
Начиная с 30 марта 2026 г. после завершения вызова
addFileAttachmentAsyncaddFileAttachmentFromBase64AsyncisInlinetrueвстроенным изображениям в сообщениях в Outlook в Интернете и новом Outlook для Windows локально назначается временный идентификатор вложения при их отправке на сервер. Временному идентификатору вложения предназначается префиксaddinId. После отправки изображений на сервер им назначается идентификатор веб-служб Exchange (EWS). Идентификатор временного вложения поддерживается только в течение текущего сеанса создания сообщения. Дополнительные сведения об обработке встроенных изображений см. в статье Изменения идентификаторов вложений для встроенных изображений в надстройках Outlook.В Outlook в Интернете и в новой версии Outlook для Windows пользователи могут выбрать параметр «Отправка и общий доступ», чтобы отправить вложение в OneDrive и включить ссылку на файл в элемент письма. Однако, поскольку включена только ссылка,
getAttachmentsAsyncэто вложение не возвращается.Для вложений типа
Office.MailboxEnums.AttachmentType.Itemразмер и сериализованное содержимое, возвращаемыеgetAttachmentsAsyncобработчиком, могут различаться между вызовами, выполненными из обработчикаOnMessageSendсобытий илиOnAppointmentSend. Чтобы надежно обнаруживать изменения вложения, обработайтеOnMessageAttachmentsChangedвместо этого событие OROnAppointmentAttachmentsChanged.
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 перечислением для элемента сообщения.
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Этот способ поддерживается в 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 перечислением для элемента сообщения.
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: 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
// 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);
}
});
getConversationIndexAsync(options, callback)
Получает позицию текущего сообщения в цепочке беседы в кодировке Base64.
getConversationIndexAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<string>) => void): void;
Параметры
- options
- Office.AsyncContextOptions
Объектный литерал, содержащий одно или несколько из следующих свойств:- asyncContext: Разработчики могут предоставить любой объект, к которому они хотят получить доступ, в функции обратного вызова.
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
Когда метод завершается, функция, переданная в параметре callback , вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult . В свойстве asyncResult.value возвращается позиция текущего сообщения в беседе в кодировке Base64.
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Совет. Индекс беседы можно использовать для поиска сообщения в цепочке беседы. Затем используйте его содержимое, чтобы предоставить контекст для создаваемого сообщения.
getConversationIndexAsync(callback)
Получает позицию текущего сообщения в цепочке беседы в кодировке Base64.
getConversationIndexAsync(callback: (asyncResult: Office.AsyncResult<string>) => void): void;
Параметры
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
Когда метод завершается, функция, переданная в параметре callback , вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult . В свойстве asyncResult.value возвращается позиция текущего сообщения в беседе в кодировке Base64.
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Совет. Индекс беседы можно использовать для поиска сообщения в цепочке беседы. Затем используйте его содержимое, чтобы предоставить контекст для создаваемого сообщения.
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-conversation-index.yaml
// This snippet returns the Base64-encoded position of the current message in a conversation thread (PR_CONVERSATION_INDEX).
// The API call is supported on a message being composed and isn't supported on read items or appointments.
Office.context.mailbox.item.getConversationIndexAsync((result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.log(result.error.message);
return;
}
const conversationIndex = result.value;
if (conversationIndex) {
console.log("Position in the conversation thread: " + conversationIndex);
} else {
console.log("The current message doesn't belong to a conversation thread.");
}
});
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
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примеры
// 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
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
getItemClassAsync(options, callback)
Получает класс элемента веб-служб Exchange для выбранного сообщения.
getItemClassAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<string>) => void): void;
Параметры
- options
- Office.AsyncContextOptions
Объектный литерал, содержащий одно или несколько из следующих свойств:- asyncContext: Разработчики могут предоставить любой объект, к которому они хотят получить доступ, в функции обратного вызова.
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
Когда метод завершается, функция, переданная в параметре callback , вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult . Класс сообщений возвращается в свойстве.asyncResult.value
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно!
В следующей таблице перечислены классы сообщений по умолчанию.
| Класс элемента | Описание |
|---|---|
| IPM.Note | Новые сообщения и ответы на сообщения |
| IPM.Schedule.Meeting.Request | приглашения на собрания; |
| IPM.Schedule.Meeting.Canceled | Отмены собраний |
| IPM.Schedule.Meeting.Resp.Neg | Отклонение приглашений на собрания |
| IPM.Schedule.Meeting.Resp.Pos | Принятие приглашений на собрания |
| IPM.Schedule.Meeting.Resp.Tent | Предварительное принятие приглашений на собрания |
getItemClassAsync(callback)
Получает класс элемента веб-служб Exchange для выбранного сообщения.
getItemClassAsync(callback: (asyncResult: Office.AsyncResult<string>) => void): void;
Параметры
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
Когда метод завершается, функция, переданная в параметре callback , вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult . Класс сообщений возвращается в свойстве.asyncResult.value
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно!
В следующей таблице перечислены классы сообщений по умолчанию.
| Класс элемента | Описание |
|---|---|
| IPM.Note | Новые сообщения и ответы на сообщения |
| IPM.Schedule.Meeting.Request | приглашения на собрания; |
| IPM.Schedule.Meeting.Canceled | Отмены собраний |
| IPM.Schedule.Meeting.Resp.Neg | Отклонение приглашений на собрания |
| IPM.Schedule.Meeting.Resp.Pos | Принятие приглашений на собрания |
| IPM.Schedule.Meeting.Resp.Tent | Предварительное принятие приглашений на собрания |
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-item-class-async.yaml
// This snippet returns the Exchange Web Services item class property (PR_MESSAGE_CLASS) of the current message.
// The API call is only supported on a message being composed.
Office.context.mailbox.item.getItemClassAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Action failed with error: " + asyncResult.error.message);
return;
}
console.log("Item class of the current message: " + asyncResult.value);
});
getItemIdAsync(options, callback)
Асинхронно получает идентификатор элемента веб-служб Exchange (EWS) сохраненного элемента.
При вызове этот метод возвращает идентификатор элемента с помощью функции обратного вызова.
getItemIdAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<string>) => void): void;
Параметры
- options
- Office.AsyncContextOptions
Объектный литерал, содержащий одно или несколько из следующих свойств:- asyncContext: Разработчики могут предоставить любой объект, к которому они хотят получить доступ, в функции обратного вызова.
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
После завершения метода вызывается функция, переданная в параметре callback , с одним параметром типа Office.AsyncResult. Код элемента EWS возвращается в свойстве asyncResult.value .
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно!
Возвращаемый идентификатор элемента не идентичен идентификатору записи Outlook или идентификатору, используемому REST API Outlook. Перед вызовами REST API с использованием этого значения его следует преобразовать с помощью
Office.context.mailbox.convertToRestId.Если ваша надстройка вызывает
getItemIdAsync(например, чтобы получить идентификатор элемента для использования с EWS или REST API), имейте в виду, что когда Outlook находится в режиме кэширования, может потребоваться некоторое время для синхронизации элемента с сервером. Пока элемент не синхронизирован, его идентификатор не будет распознан и при его использовании будет возвращаться ошибка.
Ошибки:
-
ItemNotSaved: идентификатор нельзя получить, пока элемент не сохранен.
getItemIdAsync(callback)
Асинхронно получает идентификатор элемента веб-служб Exchange (EWS) сохраненного элемента.
При вызове этот метод возвращает идентификатор элемента с помощью функции обратного вызова.
getItemIdAsync(callback: (asyncResult: Office.AsyncResult<string>) => void): void;
Параметры
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
После завершения метода вызывается функция, переданная в параметре callback , с одним параметром типа Office.AsyncResult. Код элемента EWS возвращается в свойстве asyncResult.value .
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно!
Возвращаемый идентификатор элемента не идентичен идентификатору записи Outlook или идентификатору, используемому REST API Outlook. Перед вызовами REST API с использованием этого значения его следует преобразовать с помощью
Office.context.mailbox.convertToRestId.Если ваша надстройка вызывает
getItemIdAsync(например, чтобы получить идентификатор элемента для использования с EWS или REST API), имейте в виду, что когда Outlook находится в режиме кэширования, может потребоваться некоторое время для синхронизации элемента с сервером. Пока элемент не синхронизирован, его идентификатор не будет распознан и при его использовании будет возвращаться ошибка.
Ошибки:
-
ItemNotSaved: идентификатор нельзя получить, пока элемент не сохранен.
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/item-id-compose.yaml
Office.context.mailbox.item.getItemIdAsync((result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.error(`getItemIdAsync failed with message: ${result.error.message}`);
return;
}
console.log(result.value);
});
getSelectedDataAsync(coercionType, options, callback)
Асинхронно возвращает данные, выбранные в теме или тексте сообщения.
Если выделения нет, но курсор находится в теле или теме, метод возвращает пустую строку для выбранных данных. Если выбраны не текст и не тема, метод возвращает ошибку InvalidSelection.
Чтобы получить доступ к выбранным данным из функции обратного вызова, вызовите asyncResult.value.data. Чтобы получить доступ к свойству-источнику, из которого сделан выбор, вызовите asyncResult.value.sourceProperty, которое будет иметь значение или bodysubject.
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.
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примеры
// Get selected data.
Office.context.mailbox.item.getSelectedDataAsync(Office.CoercionType.Text, { option1: "option1"}, 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, которое будет иметь значение или bodysubject.
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.
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примеры
// 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 , вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult . Свойство asyncResult.value предоставляет свойства общего элемента.
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примечание. Этот метод не поддерживается в Outlook для iOS или Android.
Важно! В режиме Compose сообщений этот API не поддерживается в Outlook в Интернете и в Windows (новой и классической версиях), если не выполнены следующие условия.
А. Делегирование доступа и общие папки
Владелец почтового ящика начинает писать сообщения. Это может быть новое сообщение, ответ или пересылка.
Они сохраняют сообщение, а затем перемещают его из своей папки "Черновики " в папку, к которой предоставлен общий доступ делегату.
Делегат открывает черновик из общей папки, а затем продолжает его создавать.
Б. Общий почтовый ящик, открытый на той же панели, что и основной почтовый ящик пользователя (веб-версия, классическая версия Windows) или общий почтовый ящик, который не был преобразован в полную учетную запись (новая Windows)
Пользователь общего почтового ящика пишет сообщение. Это может быть новое сообщение, ответ или пересылка.
Они сохраняют сообщение, а затем перемещают его из своей папки " Черновики " в папку общего почтового ящика.
Другой пользователь общего почтового ящика открывает черновик из общего почтового ящика и продолжает его создавать.
После выполнения этих условий сообщение становится доступным в общем контексте, и надстройки, поддерживающие эти общие сценарии, могут получить общие свойства элемента. После отправки сообщение обычно помещается в папку " Отправленные " личного почтового ящика отправителя.
Способ getSharedPropertiesAsync поддерживается на следующих платформах без дополнительных условий.
Когда общий почтовый ящик открыт в отдельной вкладке или окне с помощью параметра "Открыть другой почтовый ящик", Outlook в Интернете.
Новый Outlook в Windows, когда общий почтовый ящик повышен до полной учетной записи.
getSharedPropertiesAsync(callback)
Получает свойства встречи или сообщения в общей папке или общем почтовом ящике.
Дополнительные сведения об использовании этого API см. в статье "Включение общих папок и сценариев почтовых ящиков в надстройке Outlook".
getSharedPropertiesAsync(callback: (asyncResult: Office.AsyncResult<SharedProperties>) => void): void;
Параметры
- callback
-
(asyncResult: Office.AsyncResult<Office.SharedProperties>) => void
Когда метод завершается, функция, переданная в параметре callback , вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult . Свойство asyncResult.value предоставляет свойства общего элемента.
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примечание. Этот метод не поддерживается в Outlook для iOS или Android.
Важно! В режиме Compose сообщений этот API не поддерживается в Outlook в Интернете и в Windows (новой и классической версиях), если не выполнены следующие условия.
А. Делегирование доступа и общие папки
Владелец почтового ящика начинает писать сообщения. Это может быть новое сообщение, ответ или пересылка.
Они сохраняют сообщение, а затем перемещают его из своей папки "Черновики " в папку, к которой предоставлен общий доступ делегату.
Делегат открывает черновик из общей папки, а затем продолжает его создавать.
Б. Общий почтовый ящик, открытый на той же панели, что и основной почтовый ящик пользователя (веб-версия, классическая версия Windows) или общий почтовый ящик, который не был преобразован в полную учетную запись (новая Windows)
Пользователь общего почтового ящика пишет сообщение. Это может быть новое сообщение, ответ или пересылка.
Они сохраняют сообщение, а затем перемещают его из своей папки " Черновики " в папку общего почтового ящика.
Другой пользователь общего почтового ящика открывает черновик из общего почтового ящика и продолжает его создавать.
После выполнения этих условий сообщение становится доступным в общем контексте, и надстройки, поддерживающие эти общие сценарии, могут получить общие свойства элемента. После отправки сообщение обычно помещается в папку " Отправленные " личного почтового ящика отправителя.
Способ getSharedPropertiesAsync поддерживается на следующих платформах без дополнительных условий.
Когда общий почтовый ящик открыт в отдельной вкладке или окне с помощью параметра "Открыть другой почтовый ящик", Outlook в Интернете.
Новый Outlook в Windows, когда общий почтовый ящик повышен до полной учетной записи.
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/65-delegates-and-shared-folders/get-shared-properties.yaml
Office.context.mailbox.item.getSharedPropertiesAsync((result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.error("The current folder or mailbox isn't shared.");
return;
}
const sharedProperties = result.value;
console.log(`Owner: ${sharedProperties.owner}`);
console.log(`Permissions: ${sharedProperties.delegatePermissions}`);
console.log(`Target mailbox: ${sharedProperties.targetMailbox}`);
});
isClientSignatureEnabledAsync(options, callback)
Получает включенную сигнатуру клиента.
В Outlook для Windows (классическая версия) и на Mac вызов API возвращается true , если в качестве подписи по умолчанию для новых сообщений, ответов или пересылаемых сообщений задан шаблон для отправляющей учетной записи Outlook. В Outlook в Интернете и новом Outlook в Windows вызов API возвращаетсяtrue, включена ли подпись для типовnewMail создания ,reply или .forward Если в Outlook для Windows (классическая версия) или для Mac задано значение "(нет)" либо отключено в Outlook в Интернете или новой версии Outlook для Windows, вызов 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
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примеры
// 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)
Получает включенную сигнатуру клиента.
В Outlook для Windows (классическая версия) и на Mac вызов API возвращается true , если в качестве подписи по умолчанию для новых сообщений, ответов или пересылаемых сообщений задан шаблон для отправляющей учетной записи Outlook. В Outlook в Интернете и новом Outlook в Windows вызов API возвращаетсяtrue, включена ли подпись для типовnewMail создания ,reply или .forward Если в Outlook для Windows (классическая версия) или для Mac задано значение "(нет)" либо отключено в Outlook в Интернете или новой версии Outlook для Windows, вызов API возвращает false.
isClientSignatureEnabledAsync(callback: (asyncResult: Office.AsyncResult<boolean>) => void): void;
Параметры
- callback
-
(asyncResult: Office.AsyncResult<boolean>) => void
После завершения метода вызывается функция, переданная в параметре callback , с одним параметром типа Office.AsyncResult.
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
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
Комментарии
Дополнительные сведения о настраиваемых свойствах см. в статье Получение и настройка метаданных надстройки для надстройки Outlook.
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Примеры
// 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((result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.error(`loadCustomPropertiesAsync failed with message ${result.error.message}`);
return;
}
customProps = result.value;
console.log("Loaded the CustomProperties object.");
});
removeAttachmentAsync(attachmentId, options, callback)
Удаляет вложение из сообщения или встречи.
Метод removeAttachmentAsync удаляет из элемента вложение с указанным идентификатором. Идентификатор вложения рекомендуется использовать для удаления вложения, только если оно добавлено тем же почтовым приложением в ходе текущего сеанса. В Outlook в Интернете, на мобильных устройствах и в новом Outlook для Windows идентификатор вложения действителен только в рамках одного сеанса. Сеанс завершается, когда пользователь закрывает приложение или если пользователь начинает создавать встроенную форму, а затем открывает форму, чтобы продолжить в отдельном окне.
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
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно! ЭтотremoveAttachmentAsync метод не удаляет встроенные вложения из элемента письма. Чтобы удалить встроенное вложение, сначала получите его основную часть, а затем удалите ссылки на вложение из его содержимого. С помощью интерфейсов API Office.Body можно получить и настроить текст элемента.
Ошибки:
-
InvalidAttachmentId: идентификатор вложения не существует.
Примеры
// 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(
(document.getElementById("attachmentId") as HTMLInputElement).value,
(result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.error(result.error.message);
return;
}
console.log(`Attachment removed successfully.`);
}
);
removeAttachmentAsync(attachmentId, callback)
Удаляет вложение из сообщения или встречи.
Метод removeAttachmentAsync удаляет из элемента вложение с указанным идентификатором. Идентификатор вложения рекомендуется использовать для удаления вложения, только если оно добавлено тем же почтовым приложением в ходе текущего сеанса. В Outlook в Интернете, на мобильных устройствах и в новом Outlook для Windows идентификатор вложения действителен только в рамках одного сеанса. Сеанс завершается, когда пользователь закрывает приложение или если пользователь начинает создавать встроенную форму, а затем открывает форму, чтобы продолжить в отдельном окне.
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
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно! ЭтотremoveAttachmentAsync метод не удаляет встроенные вложения из элемента письма. Чтобы удалить встроенное вложение, сначала получите его основную часть, а затем удалите ссылки на вложение из его содержимого. С помощью интерфейсов API Office.Body можно получить и настроить текст элемента.
Ошибки:
-
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 , вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult .
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно! Список событий, поддерживаемых для элемента почты, см. в статье Объектная модель элемента 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 , вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult .
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: чтение элемента
Применимый режим Outlook: Compose сообщений
Важно! Список событий, поддерживаемых для элемента почты, см. в статье Объектная модель элемента Outlook.
Примеры
Office.context.mailbox.item.removeHandlerAsync(Office.EventType.ItemChanged, (asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.error("Failed to remove event handler: " + asyncResult.error.message);
return;
}
console.log("Event handler removed successfully.");
});
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 , вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult . Идентификатор сообщения EWS возвращается в свойстве.asyncResult.value
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно!
В Outlook в Интернете, новом Outlook для Windows или классическом Outlook в Windows в сетевом режиме (без кэширования) элемент сохраняется на сервере. В Outlook в режиме кэширования этот элемент сохраняется в локальном кэше.
При работе с содержимым в формате HTML важно учитывать, что клиент Outlook может изменять содержимое. Это означает, что последующие вызовы таких методов, как
Body.getAsync,Body.setAsync, и дажеsaveAsyncмогут не приводить к тому же содержимому.Возвращаемый идентификатор совпадает с идентификатором элемента веб-служб Exchange (EWS). Возвращаемый идентификатор элемента не идентичен идентификатору записи Outlook или идентификатору, используемому REST API Outlook. Перед вызовами REST API с использованием этого значения его следует преобразовать с помощью
Office.context.mailbox.convertToRestId.Если ваша надстройка вызывает
saveAsyncполучение кода элемента для использования с EWS или REST API, имейте в виду, что когда Outlook находится в режиме кэширования, может потребоваться некоторое время для фактической синхронизации элемента с сервером. Пока элемент не будет синхронизирован, использование кода элемента будет возвращать ошибку.В Outlook в Интернете и новом Outlook для Windows учетная запись почтового ящика, в которую сохраняется черновик, зависит от
saveAsyncвызова в сообщении, отправляемом из общей учетной записи почтового ящика. Если отправитель создает новое сообщение из своего личного почтового ящика и выбирает учетную запись общего почтового ящика в поле "От ",saveAsyncчерновик сохраняется в папке "Черновики " личного почтового ящика пользователя. Если отправитель открывает учетную запись общего почтового ящика в отдельной вкладке браузера (например, с помощью параметра " Открыть другой почтовый ящик ") и создает там новое сообщение,saveAsyncсохраняет черновик в папке "Черновики " общего почтового ящика.
Ошибки:
-
InvalidAttachmentId: идентификатор вложения не существует.
saveAsync(callback)
Асинхронно сохраняет текущее сообщение как черновик.
saveAsync(callback: (asyncResult: Office.AsyncResult<string>) => void): void;
Параметры
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
Когда метод завершается, функция, переданная в параметре callback , вызывается с единственным параметром, asyncResultкоторый является объектом Office.AsyncResult . Идентификатор сообщения EWS возвращается в свойстве.asyncResult.value
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно!
В Outlook в Интернете, новом Outlook для Windows или классическом Outlook в Windows в сетевом режиме (без кэширования) элемент сохраняется на сервере. В Outlook в режиме кэширования этот элемент сохраняется в локальном кэше.
При работе с содержимым в формате HTML важно учитывать, что клиент Outlook может изменять содержимое. Это означает, что последующие вызовы таких методов, как
Body.getAsync,Body.setAsync, и дажеsaveAsyncмогут не приводить к тому же содержимому.Возвращаемый идентификатор совпадает с идентификатором элемента веб-служб Exchange (EWS). Возвращаемый идентификатор элемента не идентичен идентификатору записи Outlook или идентификатору, используемому REST API Outlook. Перед вызовами REST API с использованием этого значения его следует преобразовать с помощью
Office.context.mailbox.convertToRestId.Если ваша надстройка вызывает
saveAsyncполучение кода элемента для использования с EWS или REST API, имейте в виду, что когда Outlook находится в режиме кэширования, может потребоваться некоторое время для фактической синхронизации элемента с сервером. Пока элемент не будет синхронизирован, использование кода элемента будет возвращать ошибку.В Outlook в Интернете и новом Outlook для Windows учетная запись почтового ящика, в которую сохраняется черновик, зависит от
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"
}
sendAsync(options, callback)
Отправляет создаваемое сообщение.
sendAsync(options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Параметры
- options
- Office.AsyncContextOptions
Объектный литерал, содержащий свойство asyncContext . Используйте это свойство asyncContext для указания любого объекта, к которому вы хотите получить доступ в функции обратного вызова.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Необязательный параметр. Когда метод завершается, функция, переданная в параметре callback , вызывается с единственным параметром asyncResult. Параметр asyncResult является объектом Office.AsyncResult .
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: почтовый ящик для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно!
Этот
sendAsyncметод поддерживается только в реализациях области задач и команд функций. Она не поддерживается в обработчиках на основе событий или в сценариях множественного выбора элементов.В реализации команды функции возвращаемое значение
asyncResult.statusможет не отражать успешную отправку составляемой встречи. Это связано с тем, что методsendAsyncявляется асинхронным API, и события, находящиеся вне управления надстройки (например, события, обрабатываемые отдельно установленной надстройкой Smart Alerts), могут блокировать отправку элемента. Поскольку вы не можете полагаться на состояние, возвращенное вasyncResult.statusвыполнении определенных операций, вы должны вызывать только метод event.completed в функции обратного вызова. Этотevent.completedвызов сигнализирует о том, что обработка надстройки завершена. Выполнение другого кода в функции обратного вызова, кроме этого вызова, не гарантируется. Перед вызовомsendAsyncрекомендуется обработать другие операции .В реализации области задач любой код, включенный для выполнения
asyncResult.statusOffice.AsyncResultStatus.Success, не гарантируется обработкой. Это связано с тем, что элемент мог быть уже отправлен и надстройка завершила обработку. Перед вызовомsendAsyncрекомендуется обработать другие операции .Выполнение любого кода, включенного после вызова
sendAsync, не гарантируется, поскольку обработка надстройки завершается после вызоваsendAsync.Этот
sendAsyncметод доступен для ознакомления в Outlook на Mac, начиная с версии 16.105 (сборка 25121117). Чтобы протестировать эту функцию, присоединитесь к программе предварительной оценки Microsoft 365 и выберите бета-канал для доступа к бета-версиям сборок Office.
sendAsync(callback)
Отправляет создаваемое сообщение.
sendAsync(callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Параметры
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Необязательный параметр. Когда метод завершается, функция, переданная в параметре callback , вызывается с единственным параметром asyncResult. Параметр asyncResult является объектом Office.AsyncResult .
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: почтовый ящик для чтения и записи
Применимый режим Outlook: Compose сообщений
Важно!
Этот
sendAsyncметод поддерживается только в реализациях области задач и команд функций. Она не поддерживается в обработчиках на основе событий или в сценариях множественного выбора элементов.В реализации команды функции возвращаемое значение
asyncResult.statusможет не отражать успешную отправку составляемой встречи. Это связано с тем, что методsendAsyncявляется асинхронным API, и события, находящиеся вне управления надстройки (например, события, обрабатываемые отдельно установленной надстройкой Smart Alerts), могут блокировать отправку элемента. Поскольку вы не можете полагаться на состояние, возвращенное вasyncResult.statusвыполнении определенных операций, вы должны вызывать только метод event.completed в функции обратного вызова. Этотevent.completedвызов сигнализирует о том, что обработка надстройки завершена. Выполнение другого кода в функции обратного вызова, кроме этого вызова, не гарантируется. Перед вызовомsendAsyncрекомендуется обработать другие операции .В реализации области задач любой код, включенный для выполнения
asyncResult.statusOffice.AsyncResultStatus.Success, не гарантируется обработкой. Это связано с тем, что элемент мог быть уже отправлен и надстройка завершила обработку. Перед вызовомsendAsyncрекомендуется обработать другие операции .Выполнение любого кода, включенного после вызова
sendAsync, не гарантируется, поскольку обработка надстройки завершается после вызоваsendAsync.Этот
sendAsyncметод доступен для ознакомления в Outlook на Mac, начиная с версии 16.105 (сборка 25121117). Чтобы протестировать эту функцию, присоединитесь к программе предварительной оценки Microsoft 365 и выберите бета-канал для доступа к бета-версиям сборок Office.
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/send-async.yaml
// This snippet sends the current message or appointment being composed.
Office.context.mailbox.item.sendAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Action failed with error: " + asyncResult.error.message);
return;
}
});
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.
Объектный литерал, содержащий одно или несколько из следующих свойств:- asyncContext: Разработчики могут предоставить любой объект, к которому они хотят получить доступ, в функции обратного вызова.
coercionType
. Если текст, текущий стиль применяется в Outlook в Интернете, в Windows (новой и классической) и на компьютере Mac. Если поле представляет собой редактор HTML, вставляются только текстовые данные, даже если они имеют формат HTML. Если данные представлены в формате HTML, а поле поддерживает HTML (тема не поддерживает), текущий стиль применяется в Outlook в Интернете и в новом Outlook для Windows. Стиль по умолчанию применяется в Outlook для Windows (классическая версия) и Mac. Если поле является текстовым, возвращается ошибка InvalidDataFormat. Если свойство coercionType не задано, результат зависит от поля: если поле имеет формат HTML, используется текст в формате HTML, а если поле текстовое, применяется обычный текст.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Необязательный параметр. После завершения метода вызывается функция, переданная в параметре callback , с одним параметром типа Office.AsyncResult.
Возвращаемое значение
void
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Ошибки:
-
InvalidAttachmentId: идентификатор вложения не существует.
Примеры
// 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
Комментарии
Минимальный уровень разрешений: элемент для чтения и записи
Применимый режим Outlook: Compose сообщений
Ошибки:
-
InvalidAttachmentId: идентификатор вложения не существует.