Поделиться через


Office.Body interface

Основной объект предоставляет методы для добавления и обновления содержимого сообщения или встречи. Он возвращается в свойстве body выбранного элемента.

Комментарии

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

Известная проблема с цветами границ таблицы HTML

Outlook в Windows. Если в html-таблице в режиме Compose заданы разные цвета границ ячеек, границы ячейки могут не отражать ожидаемый цвет. Сведения об известном поведении см . в статье OfficeDev/office-js issue No 1818.

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

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

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/add-inline-base64-image.yaml

const mailItem = Office.context.mailbox.item;
const base64String =
  "iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAMAAADVRocKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAnUExURQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN0S+bUAAAAMdFJOUwAQIDBAUI+fr7/P7yEupu8AAAAJcEhZcwAADsMAAA7DAcdvqGQAAAF8SURBVGhD7dfLdoMwDEVR6Cspzf9/b20QYOthS5Zn0Z2kVdY6O2WULrFYLBaLxd5ur4mDZD14b8ogWS/dtxV+dmx9ysA2QUj9TQRWv5D7HyKwuIW9n0vc8tkpHP0W4BOg3wQ8wtlvA+PC1e8Ao8Ld7wFjQtHvAiNC2e8DdqHqKwCrUPc1gE1AfRVgEXBfB+gF0lcCWoH2tYBOYPpqQCNwfT3QF9i+AegJfN8CtAWhbwJagtS3AbIg9o2AJMh9M5C+SVGBvx6zAfmT0r+Bv8JMwP4kyFPir+cswF5KL3WLv14zAFBCLf56Tw9cparFX4upgaJUtPhrOS1QlY5W+vWTXrGgBFB/b72ev3/0igUdQPppP/nfowfKUUEFcP207y/yxKmgAYQ+PywoAFOfCH3A2MdCFzD3kdADBvq10AGG+pXQBgb7pdAEhvuF0AIc/VtoAK7+JciAs38KIuDugyAC/v4hiMCE/i7IwLRBsh68N2WQjMVisVgs9i5bln8LGScNcCrONQAAAABJRU5ErkJggg==";

// Get the current body of the message or appointment.
mailItem.body.getAsync(Office.CoercionType.Html, (bodyResult) => {
  if (bodyResult.status === Office.AsyncResultStatus.Succeeded) {
    // Insert the Base64-encoded image to the beginning of the body.
    const options = { isInline: true, asyncContext: bodyResult.value };
    mailItem.addFileAttachmentFromBase64Async(base64String, "sample.png", options, (attachResult) => {
      if (attachResult.status === Office.AsyncResultStatus.Succeeded) {
        let body = attachResult.asyncContext;
        body = body.replace("<p class=MsoNormal>", `<p class=MsoNormal><img src="cid:sample.png">`);

        mailItem.body.setAsync(body, { coercionType: Office.CoercionType.Html }, (setResult) => {
          if (setResult.status === Office.AsyncResultStatus.Succeeded) {
            console.log("Inline Base64-encoded image added to the body.");
          } else {
            console.log(setResult.error.message);
          }
        });
      } else {
        console.log(attachResult.error.message);
      }
    });
  } else {
    console.log(bodyResult.error.message);
  }
});

Методы

appendOnSendAsync(data, options, callback)

Добавляет при отправке указанного содержимого в конец текста элемента после любой сигнатуры.

Чтобы использовать appendOnSendAsync, необходимо указать дополнительное разрешение в манифесте. Сведения зависят от типа манифеста. См. раздел Общие сведения о разрешениях надстроек Outlook. Дополнительные сведения о добавлении при отправке и его конфигурации см. в статье Реализация добавления при отправке в надстройке Outlook.

appendOnSendAsync(data, callback)

Добавляет при отправке указанного содержимого в конец текста элемента после любой сигнатуры.

Чтобы использовать appendOnSendAsync, необходимо указать дополнительное разрешение в манифесте. Сведения зависят от типа манифеста. См. раздел Общие сведения о разрешениях надстроек Outlook. Дополнительные сведения о добавлении при отправке и его конфигурации см. в статье Реализация добавления при отправке в надстройке Outlook.

getAsync(coercionType, options, callback)

Возвращает текущий текст в указанном формате.

Этот метод возвращает весь текущий текст в формате, заданном параметром coercionType.

getAsync(coercionType, callback)

Возвращает текущий текст в указанном формате.

Этот метод возвращает весь текущий текст в формате, заданном параметром coercionType.

getTypeAsync(options, callback)

Получает значение, указывающее формат содержимого: HTML или текст.

getTypeAsync(callback)

Получает значение, указывающее формат содержимого: HTML или текст.

prependAsync(data, options, callback)

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

prependAsync(data, callback)

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

prependOnSendAsync(data, options, callback)

Добавляет HTML-код или обычный текст к началу сообщения или текста встречи при отправке почтового элемента.

Чтобы использовать prependOnSendAsync, необходимо указать дополнительное разрешение в манифесте. Сведения зависят от типа манифеста. Рекомендации см. в статье Общие сведения о разрешениях надстройки Outlook.

prependOnSendAsync(data, callback)

Добавляет HTML-код или обычный текст к началу сообщения или текста встречи при отправке почтового элемента.

Чтобы использовать prependOnSendAsync, необходимо указать дополнительное разрешение в манифесте. Сведения зависят от типа манифеста. Рекомендации см. в статье Общие сведения о разрешениях надстройки Outlook.

setAsync(data, options, callback)

Заменяет весь текст указанным текстом.

setAsync(data, callback)

Заменяет весь текст указанным текстом.

setSelectedDataAsync(data, options, callback)

Заменяет выделенный фрагмент в основном тексте на заданный текст.

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

setSelectedDataAsync(data, callback)

Заменяет выделенный фрагмент в основном тексте на заданный текст.

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

setSignatureAsync(data, options, callback)

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

setSignatureAsync(data, callback)

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

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

appendOnSendAsync(data, options, callback)

Добавляет при отправке указанного содержимого в конец текста элемента после любой сигнатуры.

Чтобы использовать appendOnSendAsync, необходимо указать дополнительное разрешение в манифесте. Сведения зависят от типа манифеста. См. раздел Общие сведения о разрешениях надстроек Outlook. Дополнительные сведения о добавлении при отправке и его конфигурации см. в статье Реализация добавления при отправке в надстройке Outlook.

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

Параметры

data

string

Строка, добавляемая в конец текста. Строка ограничена 5000 символами.

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

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

callback

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

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

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

void

Комментарии

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

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

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

Рекомендуется: вызовите getTypeAsync, а затем передайте его возвращенное значение в options.coercionType параметр .

Важно!

  • Если пользователь запускает надстройки, которые реализуют функцию при отправке , используя ItemSend в манифесте, функция добавления при отправке выполняется перед функцией при отправке.

  • Если надстройка реализует функцию при отправке и вызывает appendOnSendAsync в ItemSend обработчике appendOnSendAsync , вызов возвращает ошибку, так как этот сценарий не поддерживается.

  • Чтобы очистить данные из предыдущего appendOnSendAsync вызова, можно вызвать его еще раз с параметром nulldata.

  • ФАЙЛЫ SVG не поддерживаются. Вместо этого используйте файлы JPG или PNG.

  • Метод appendOnSendAsync не поддерживает встроенный CSS. Вместо этого используйте внутренний или внешний CSS.

Ошибки:

  • DataExceedsMaximumSize data: параметр длиннее 5000 символов.

  • InvalidFormatError options.coercionType: параметр имеет значение , Office.CoercionType.Html но текст сообщения содержит обычный текст.

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/append-text-on-send.yaml

// This snippet appends text to the end of the message or appointment's body once it's sent.
const text = $("#text-field").val();

// It's recommended to call getTypeAsync and pass its returned value to the options.coercionType parameter of the appendOnSendAsync call.
Office.context.mailbox.item.body.getTypeAsync((asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log("Action failed with error: " + asyncResult.error.message);
    return;
  }

  const bodyFormat = asyncResult.value;
  Office.context.mailbox.item.body.appendOnSendAsync(text, { coercionType: bodyFormat }, (asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Failed) {
      console.log("Action failed with error: " + asyncResult.error.message);
      return;
    }

    console.log(`"${text}" will be appended to the body once the message or appointment is sent. Send the mail item to test this feature.`);
  });
});

appendOnSendAsync(data, callback)

Добавляет при отправке указанного содержимого в конец текста элемента после любой сигнатуры.

Чтобы использовать appendOnSendAsync, необходимо указать дополнительное разрешение в манифесте. Сведения зависят от типа манифеста. См. раздел Общие сведения о разрешениях надстроек Outlook. Дополнительные сведения о добавлении при отправке и его конфигурации см. в статье Реализация добавления при отправке в надстройке Outlook.

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

Параметры

data

string

Строка, добавляемая в конец текста. Строка ограничена 5000 символами.

callback

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

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

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

void

Комментарии

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

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

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

Рекомендуется: вызовите getTypeAsync, а затем передайте его возвращенное значение в options.coercionType параметр .

Важно!

  • Если пользователь запускает надстройки, которые реализуют функцию при отправке , используя ItemSend в манифесте, функция добавления при отправке выполняется перед функцией при отправке.

  • Если надстройка реализует функцию при отправке и вызывает appendOnSendAsync в ItemSend обработчике appendOnSendAsync , вызов возвращает ошибку, так как этот сценарий не поддерживается.

  • Чтобы очистить данные из предыдущего appendOnSendAsync вызова, можно вызвать его еще раз с параметром nulldata.

  • ФАЙЛЫ SVG не поддерживаются. Вместо этого используйте файлы JPG или PNG.

  • Метод appendOnSendAsync не поддерживает встроенный CSS. Вместо этого используйте внутренний или внешний CSS.

Ошибки:

  • DataExceedsMaximumSize data: параметр длиннее 5000 символов.

  • InvalidFormatError options.coercionType: параметр имеет значение , Office.CoercionType.Html но текст сообщения содержит обычный текст.

getAsync(coercionType, options, callback)

Возвращает текущий текст в указанном формате.

Этот метод возвращает весь текущий текст в формате, заданном параметром coercionType.

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

Параметры

coercionType

Office.CoercionType | string

Формат возвращаемого текста.

options
Office.AsyncContextOptions

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

callback

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

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

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

void

Комментарии

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

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

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

Важно!

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

  • В Outlook в Интернете и новом Outlook в Windows, если текст содержит форматированные элементы, такие как таблицы, списки и ссылки, укажите Office.CoercionType.Html в вызовеgetAsync. В противном случае может появилось непредвиденное значение, например пустая строка.

Примеры

// 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"
}

getAsync(coercionType, callback)

Возвращает текущий текст в указанном формате.

Этот метод возвращает весь текущий текст в формате, заданном параметром coercionType.

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

Параметры

coercionType

Office.CoercionType | string

Формат возвращаемого текста.

callback

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

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

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

void

Комментарии

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

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

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

Важно!

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

  • В Outlook в Интернете и новом Outlook в Windows, если текст содержит форматированные элементы, такие как таблицы, списки и ссылки, укажите Office.CoercionType.Html в вызовеgetAsync. В противном случае может появилось непредвиденное значение, например пустая строка.

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/add-inline-base64-image.yaml

const mailItem = Office.context.mailbox.item;
const base64String =
  "iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAMAAADVRocKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAnUExURQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN0S+bUAAAAMdFJOUwAQIDBAUI+fr7/P7yEupu8AAAAJcEhZcwAADsMAAA7DAcdvqGQAAAF8SURBVGhD7dfLdoMwDEVR6Cspzf9/b20QYOthS5Zn0Z2kVdY6O2WULrFYLBaLxd5ur4mDZD14b8ogWS/dtxV+dmx9ysA2QUj9TQRWv5D7HyKwuIW9n0vc8tkpHP0W4BOg3wQ8wtlvA+PC1e8Ao8Ld7wFjQtHvAiNC2e8DdqHqKwCrUPc1gE1AfRVgEXBfB+gF0lcCWoH2tYBOYPpqQCNwfT3QF9i+AegJfN8CtAWhbwJagtS3AbIg9o2AJMh9M5C+SVGBvx6zAfmT0r+Bv8JMwP4kyFPir+cswF5KL3WLv14zAFBCLf56Tw9cparFX4upgaJUtPhrOS1QlY5W+vWTXrGgBFB/b72ev3/0igUdQPppP/nfowfKUUEFcP207y/yxKmgAYQ+PywoAFOfCH3A2MdCFzD3kdADBvq10AGG+pXQBgb7pdAEhvuF0AIc/VtoAK7+JciAs38KIuDugyAC/v4hiMCE/i7IwLRBsh68N2WQjMVisVgs9i5bln8LGScNcCrONQAAAABJRU5ErkJggg==";

// Get the current body of the message or appointment.
mailItem.body.getAsync(Office.CoercionType.Html, (bodyResult) => {
  if (bodyResult.status === Office.AsyncResultStatus.Succeeded) {
    // Insert the Base64-encoded image to the beginning of the body.
    const options = { isInline: true, asyncContext: bodyResult.value };
    mailItem.addFileAttachmentFromBase64Async(base64String, "sample.png", options, (attachResult) => {
      if (attachResult.status === Office.AsyncResultStatus.Succeeded) {
        let body = attachResult.asyncContext;
        body = body.replace("<p class=MsoNormal>", `<p class=MsoNormal><img src="cid:sample.png">`);

        mailItem.body.setAsync(body, { coercionType: Office.CoercionType.Html }, (setResult) => {
          if (setResult.status === Office.AsyncResultStatus.Succeeded) {
            console.log("Inline Base64-encoded image added to the body.");
          } else {
            console.log(setResult.error.message);
          }
        });
      } else {
        console.log(attachResult.error.message);
      }
    });
  } else {
    console.log(bodyResult.error.message);
  }
});

getTypeAsync(options, callback)

Получает значение, указывающее формат содержимого: HTML или текст.

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

Параметры

options
Office.AsyncContextOptions

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

callback

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

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

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

void

Комментарии

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

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

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

Важно! В Outlook для Android и в iOS этот метод не поддерживается в режиме Compose сообщений. Поддерживается только режим организатора встреч. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Для Outlook, поддерживаемые в Outlook на мобильных устройствах.

Примеры

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

// Get the mail item's body format (plain text or HTML) and log it to the console.
Office.context.mailbox.item.body.getTypeAsync((asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log("Action failed with error: " + asyncResult.error.message);
    return;
  }

  console.log("Body format: " + asyncResult.value);
});

getTypeAsync(callback)

Получает значение, указывающее формат содержимого: HTML или текст.

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

Параметры

callback

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

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

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

void

Комментарии

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

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

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

Важно! В Outlook для Android и в iOS этот метод не поддерживается в режиме Compose сообщений. Поддерживается только режим организатора встреч. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Для Outlook, поддерживаемые в Outlook на мобильных устройствах.

prependAsync(data, options, callback)

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

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

Параметры

data

string

Строка, добавляемая в начало основного текста. Максимальная длина — 1 000 000 символов.

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

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

callback

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

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

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

void

Комментарии

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

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

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

Рекомендуется: вызовите getTypeAsync, а затем передайте возвращенное значение в options.coercionType параметр .

Важно!

  • После добавления содержимого положение курсора зависит от клиента, на котором выполняется надстройка. В Outlook в Интернете и в Windows (новые и классические) положение курсора остается неизменным в уже существовавом содержимом текста. Например, если курсор был расположен в начале текста перед вызовом prependAsync , он будет отображаться между предопределенным содержимым и ранее существовающим содержимым текста после вызова. В Outlook на Mac положение курсора не сохраняется. Курсор исчезает после prependAsync вызова и появляется только тогда, когда пользователь выбирает что-то в тексте почтового элемента.

  • При работе с текстами в формате HTML важно отметить, что клиент может изменить значение, переданное prependAsync в, чтобы сделать его эффективно отрисовки с помощью обработчика отрисовки. Это означает, что значение, возвращаемое при последующем вызове Body.getAsync метода (появившемся в почтовом ящике 1.3), не обязательно будет содержать точное значение, переданное в предыдущем prependAsync вызове.

  • При добавлении ссылок в разметку HTML можно отключить предварительный просмотр веб-ссылок, установив для атрибута id в привязке (<a>) значение "LPNoLP" (пример см. в разделе Примеры).

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

  • ФАЙЛЫ SVG не поддерживаются. Вместо этого используйте файлы JPG или PNG.

  • Метод prependAsync не поддерживает встроенный CSS. Вместо этого используйте внутренний или внешний CSS.

Ошибки:

  • DataExceedsMaximumSize : параметр данных длиннее 1 000 000 символов.

Примеры

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

/* This snippet adds text to the beginning of the message or appointment's body. 
  
  When prepending a link in HTML markup to the body, you can disable the online link preview by setting the anchor tag's id attribute to "LPNoLP". For example, '<a id="LPNoLP" href="https://www.contoso.com">Click here!</a>'.
*/
const text = $("#text-field").val().toString();

// It's recommended to call getTypeAsync and pass its returned value to the options.coercionType parameter of the prependAsync call.
Office.context.mailbox.item.body.getTypeAsync((asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log("Action failed with error: " + asyncResult.error.message);
    return;
  }

  const bodyFormat = asyncResult.value;
  Office.context.mailbox.item.body.prependAsync(text, { coercionType: bodyFormat }, (asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Failed) {
      console.log("Action failed with error: " + asyncResult.error.message);
      return;
    }

    console.log(`"${text}" prepended to the body.`);
  });
});

prependAsync(data, callback)

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

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

Параметры

data

string

Строка, добавляемая в начало основного текста. Максимальная длина — 1 000 000 символов.

callback

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

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

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

void

Комментарии

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

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

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

Рекомендуется: вызовите getTypeAsync, а затем передайте возвращенное значение в options.coercionType параметр .

Важно!

  • После добавления содержимого положение курсора зависит от клиента, на котором выполняется надстройка. В Outlook в Интернете и в Windows (новые и классические) положение курсора остается неизменным в уже существовавом содержимом текста. Например, если курсор был расположен в начале текста перед вызовом prependAsync , он будет отображаться между предопределенным содержимым и ранее существовающим содержимым текста после вызова. В Outlook на Mac положение курсора не сохраняется. Курсор исчезает после prependAsync вызова и появляется только тогда, когда пользователь выбирает что-то в тексте почтового элемента.

  • При работе с текстами в формате HTML важно отметить, что клиент может изменить значение, переданное prependAsync в, чтобы сделать его эффективно отрисовки с помощью обработчика отрисовки. Это означает, что значение, возвращаемое при последующем вызове Body.getAsync метода (появившемся в почтовом ящике 1.3), не обязательно будет содержать точное значение, переданное в предыдущем prependAsync вызове.

  • При добавлении ссылок в разметку HTML можно отключить предварительный просмотр веб-ссылок, установив для атрибута id в привязке (<a>) значение "LPNoLP" (пример см. в разделе Примеры).

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

  • ФАЙЛЫ SVG не поддерживаются. Вместо этого используйте файлы JPG или PNG.

  • Метод prependAsync не поддерживает встроенный CSS. Вместо этого используйте внутренний или внешний CSS.

Ошибки:

  • DataExceedsMaximumSize : параметр данных длиннее 1 000 000 символов.

prependOnSendAsync(data, options, callback)

Добавляет HTML-код или обычный текст к началу сообщения или текста встречи при отправке почтового элемента.

Чтобы использовать prependOnSendAsync, необходимо указать дополнительное разрешение в манифесте. Сведения зависят от типа манифеста. Рекомендации см. в статье Общие сведения о разрешениях надстройки Outlook.

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

Параметры

data

string

Строка, которая должна быть добавлена в начало сообщения или текста встречи. Строка ограничена 5000 символами.

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

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

callback

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

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

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

void

Комментарии

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

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

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

Рекомендуется: вызовите getTypeAsync, а затем передайте его возвращенное значение в options.coercionType параметр .

Важно! При реализации prependOnSendAsyncучитывайте следующее.

  • В надстройке смарт-оповещений сначала запускается функция prepend-on-send.

  • После предустановленного содержимого добавляется новая строка.

  • Если несколько активных надстроек вызывают prependOnSendAsync, порядок вставленного содержимого зависит от порядка, в котором выполняется надстройка. Содержимое последней запускаемой надстройки отображается выше ранее предопределенного содержимого.

  • Если надстройка пытается вставить HTML в текст обычного текста, содержимое не будет добавлено. И наоборот, обычный текст будет вставлен в текст HTML.

  • ФАЙЛЫ SVG не поддерживаются. Вместо этого используйте файлы JPG или PNG.

  • Метод prependOnSendAsync не поддерживает встроенный CSS. Вместо этого используйте внутренний или внешний CSS.

Ошибки:

  • DataExceedsMaximumSize data: параметр превышает 5000 символов.

  • InvalidFormatError options.coercionType: параметр имеет значение Office.CoercionType.Html, но текст элемента имеет формат обычного текста.

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/prepend-text-on-send.yaml

// This snippet prepends text to the beginning of the message or appointment's body once it's sent.
const text = $("#text-field").val().toString();

// It's recommended to call getTypeAsync and pass its returned value to the options.coercionType parameter of the prependOnSendAsync call.
Office.context.mailbox.item.body.getTypeAsync((asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log("Action failed with error: " + asyncResult.error.message);
    return;
  }

  const bodyFormat = asyncResult.value;
  Office.context.mailbox.item.body.prependOnSendAsync(text, { coercionType: bodyFormat }, (asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Failed) {
      console.log("Action failed with error: " + asyncResult.error.message);
      return;
    }

    console.log(`"${text}" will be prepended to the body once the message or appointment is sent. Send the mail item to test this feature.`);
  });
});

prependOnSendAsync(data, callback)

Добавляет HTML-код или обычный текст к началу сообщения или текста встречи при отправке почтового элемента.

Чтобы использовать prependOnSendAsync, необходимо указать дополнительное разрешение в манифесте. Сведения зависят от типа манифеста. Рекомендации см. в статье Общие сведения о разрешениях надстройки Outlook.

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

Параметры

data

string

Строка, которая должна быть добавлена в начало сообщения или текста встречи. Строка ограничена 5000 символами.

callback

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

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

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

void

Комментарии

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

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

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

Рекомендуется: вызовите getTypeAsync, а затем передайте его возвращенное значение в options.coercionType параметр .

Важно! При реализации prependOnSendAsyncучитывайте следующее.

  • В надстройке смарт-оповещений сначала запускается функция prepend-on-send.

  • После предустановленного содержимого добавляется новая строка.

  • Если несколько активных надстроек вызывают prependOnSendAsync, порядок вставленного содержимого зависит от порядка, в котором выполняется надстройка. Содержимое последней запускаемой надстройки отображается выше ранее предопределенного содержимого.

  • Если надстройка пытается вставить HTML в текст обычного текста, содержимое не будет добавлено. И наоборот, обычный текст будет вставлен в текст HTML.

  • ФАЙЛЫ SVG не поддерживаются. Вместо этого используйте файлы JPG или PNG.

  • Метод prependOnSendAsync не поддерживает встроенный CSS. Вместо этого используйте внутренний или внешний CSS.

Ошибки:

  • DataExceedsMaximumSize data: параметр превышает 5000 символов.

  • InvalidFormatError options.coercionType: параметр имеет значение Office.CoercionType.Html, но текст элемента имеет формат обычного текста.

setAsync(data, options, callback)

Заменяет весь текст указанным текстом.

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

Параметры

data

string

Строка, которая заменяет существующий текст. Максимальная длина — 1 000 000 символов.

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

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

callback

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

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

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

void

Комментарии

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

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

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

Рекомендуется: вызовите getTypeAsync, а затем передайте возвращенное значение в options.coercionType параметр .

Важно!

  • После замены текста указанным содержимым положение курсора зависит от того, на каком клиенте выполняется надстройка. В классическом Outlook в Windows курсор отображается в начале текста почтового элемента. В Outlook в Интернете и новом Outlook в Windows курсор отображается в конце текста почтового элемента. В Outlook на Mac положение курсора не сохраняется. Курсор исчезает после prependAsync вызова и появляется только тогда, когда пользователь выбирает что-то в тексте почтового элемента.

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

  • При добавлении ссылок в разметку HTML можно отключить предварительный просмотр веб-ссылок, установив для атрибута id в привязке (<a>) значение "LPNoLP" (пример см. в разделе Примеры).

  • В Outlook в Windows и на Mac пользователь надстройки не может отменить изменения это действие с помощью команды Отменить.

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

  • ФАЙЛЫ SVG не поддерживаются. Вместо этого используйте файлы JPG или PNG.

  • Метод setAsync не поддерживает встроенный CSS. Вместо этого используйте внутренний или внешний CSS.

Ошибки:

  • DataExceedsMaximumSize : параметр данных длиннее 1 000 000 символов.

  • InvalidFormatError options.coercionType: для параметра задано значение , Office.CoercionType.Html а текст сообщения — в виде обычного текста.

Примеры

// When including links in HTML markup, you can disable online link preview
// by setting the id attribute on the anchor (<a>) to "LPNoLP".
Office.context.mailbox.item.body.setAsync(
    '<a id="LPNoLP" href="http://www.contoso.com">Click here!</a>',
    { 
        coercionType: Office.CoercionType.Html,
        asyncContext: "This is passed to the callback"
    },
    (result) => {
        // Process the result.
    }
);

// The following is an example of the result parameter passed to the callback function.
{
    "value": null,
    "status": "succeeded",
    "asyncContext": "This is passed to the callback"
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/add-inline-base64-image.yaml

const mailItem = Office.context.mailbox.item;
const base64String =
  "iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAMAAADVRocKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAnUExURQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN0S+bUAAAAMdFJOUwAQIDBAUI+fr7/P7yEupu8AAAAJcEhZcwAADsMAAA7DAcdvqGQAAAF8SURBVGhD7dfLdoMwDEVR6Cspzf9/b20QYOthS5Zn0Z2kVdY6O2WULrFYLBaLxd5ur4mDZD14b8ogWS/dtxV+dmx9ysA2QUj9TQRWv5D7HyKwuIW9n0vc8tkpHP0W4BOg3wQ8wtlvA+PC1e8Ao8Ld7wFjQtHvAiNC2e8DdqHqKwCrUPc1gE1AfRVgEXBfB+gF0lcCWoH2tYBOYPpqQCNwfT3QF9i+AegJfN8CtAWhbwJagtS3AbIg9o2AJMh9M5C+SVGBvx6zAfmT0r+Bv8JMwP4kyFPir+cswF5KL3WLv14zAFBCLf56Tw9cparFX4upgaJUtPhrOS1QlY5W+vWTXrGgBFB/b72ev3/0igUdQPppP/nfowfKUUEFcP207y/yxKmgAYQ+PywoAFOfCH3A2MdCFzD3kdADBvq10AGG+pXQBgb7pdAEhvuF0AIc/VtoAK7+JciAs38KIuDugyAC/v4hiMCE/i7IwLRBsh68N2WQjMVisVgs9i5bln8LGScNcCrONQAAAABJRU5ErkJggg==";

// Get the current body of the message or appointment.
mailItem.body.getAsync(Office.CoercionType.Html, (bodyResult) => {
  if (bodyResult.status === Office.AsyncResultStatus.Succeeded) {
    // Insert the Base64-encoded image to the beginning of the body.
    const options = { isInline: true, asyncContext: bodyResult.value };
    mailItem.addFileAttachmentFromBase64Async(base64String, "sample.png", options, (attachResult) => {
      if (attachResult.status === Office.AsyncResultStatus.Succeeded) {
        let body = attachResult.asyncContext;
        body = body.replace("<p class=MsoNormal>", `<p class=MsoNormal><img src="cid:sample.png">`);

        mailItem.body.setAsync(body, { coercionType: Office.CoercionType.Html }, (setResult) => {
          if (setResult.status === Office.AsyncResultStatus.Succeeded) {
            console.log("Inline Base64-encoded image added to the body.");
          } else {
            console.log(setResult.error.message);
          }
        });
      } else {
        console.log(attachResult.error.message);
      }
    });
  } else {
    console.log(bodyResult.error.message);
  }
});

setAsync(data, callback)

Заменяет весь текст указанным текстом.

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

Параметры

data

string

Строка, которая заменяет существующий текст. Максимальная длина — 1 000 000 символов.

callback

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

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

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

void

Комментарии

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

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

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

Рекомендуется: вызовите getTypeAsync, а затем передайте возвращенное значение в options.coercionType параметр .

Важно!

  • После замены текста указанным содержимым положение курсора зависит от того, на каком клиенте выполняется надстройка. В классическом Outlook в Windows курсор отображается в начале текста почтового элемента. В Outlook в Интернете и новом Outlook в Windows курсор отображается в конце текста почтового элемента. В Outlook на Mac положение курсора не сохраняется. Курсор исчезает после prependAsync вызова и появляется только тогда, когда пользователь выбирает что-то в тексте почтового элемента.

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

  • При добавлении ссылок в разметку HTML можно отключить предварительный просмотр веб-ссылок, установив для атрибута id в привязке (<a>) значение "LPNoLP" (пример см. в разделе Примеры).

  • В Outlook в Windows и на Mac пользователь надстройки не может отменить изменения это действие с помощью команды Отменить.

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

  • ФАЙЛЫ SVG не поддерживаются. Вместо этого используйте файлы JPG или PNG.

  • Метод setAsync не поддерживает встроенный CSS. Вместо этого используйте внутренний или внешний CSS.

Ошибки:

  • DataExceedsMaximumSize : параметр данных длиннее 1 000 000 символов.

  • InvalidFormatError options.coercionType: для параметра задано значение , Office.CoercionType.Html а текст сообщения — в виде обычного текста.

setSelectedDataAsync(data, options, callback)

Заменяет выделенный фрагмент в основном тексте на заданный текст.

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

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

Параметры

data

string

Строка, которая заменяет существующий текст. Максимальная длина — 1 000 000 символов.

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

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

callback

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

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

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

void

Комментарии

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

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

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

Рекомендуется: вызовите getTypeAsync , а затем передайте возвращаемое значение в options.coercionType параметр .

* Важно!

  • При добавлении ссылок в разметку HTML можно отключить предварительный просмотр веб-ссылок, установив для атрибута id в привязке (<a>) значение "LPNoLP" (пример см. в разделе Примеры).

  • ФАЙЛЫ SVG не поддерживаются. Вместо этого используйте файлы JPG или PNG.

  • Метод setSelectedDataAsync не поддерживает встроенный CSS. Вместо этого используйте внутренний или внешний CSS.

Ошибки:

  • DataExceedsMaximumSize data: параметр длиннее 1 000 000 символов.

  • InvalidFormatError options.coercionType: для параметра задано значение , Office.CoercionType.Html а текст сообщения — в виде обычного текста.

Примеры

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

/* This snippet replaces selected text in a message or appointment's body with specified text.
  
  If you want to use a link in HTML markup as a value of the setSelectedDataAsync call's data parameter, you can disable online link preview by setting the anchor tag's id attribute to "LPNoLP". For example, '<a id="LPNoLP" href="https://www.contoso.com">Click here!</a>'.
*/
const text = $("#text-field").val().toString();

// It's recommended to call getTypeAsync and pass its returned value to the options.coercionType parameter of the prependAsync call.
Office.context.mailbox.item.body.getTypeAsync((asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log("Action failed with error: " + asyncResult.error.message);
    return;
  }

  const bodyFormat = asyncResult.value;
  Office.context.mailbox.item.body.setSelectedDataAsync(text, { coercionType: bodyFormat }, (asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Failed) {
      console.log("Action failed with error: " + asyncResult.error.message);
      return;
    }

    console.log(`Replaced selected text with "${text}".`);
  });
});

setSelectedDataAsync(data, callback)

Заменяет выделенный фрагмент в основном тексте на заданный текст.

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

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

Параметры

data

string

Строка, которая заменяет существующий текст. Максимальная длина — 1 000 000 символов.

callback

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

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

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

void

Комментарии

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

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

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

Рекомендуется: вызовите getTypeAsync , а затем передайте возвращаемое значение в options.coercionType параметр .

* Важно!

  • При добавлении ссылок в разметку HTML можно отключить предварительный просмотр веб-ссылок, установив для атрибута id в привязке (<a>) значение "LPNoLP" (пример см. в разделе Примеры).

  • ФАЙЛЫ SVG не поддерживаются. Вместо этого используйте файлы JPG или PNG.

  • Метод setSelectedDataAsync не поддерживает встроенный CSS. Вместо этого используйте внутренний или внешний CSS.

Ошибки:

  • DataExceedsMaximumSize data: параметр длиннее 1 000 000 символов.

  • InvalidFormatError options.coercionType: для параметра задано значение , Office.CoercionType.Html а текст сообщения — в виде обычного текста.

setSignatureAsync(data, options, callback)

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

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

Параметры

data

string

Строка, представляющая сигнатуру, которая должна быть задана в тексте сообщения. Эта строка ограничена 30 000 символами.

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

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

callback

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

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

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

void

Комментарии

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

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

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

Важно!

Ошибки:

  • DataExceedsMaximumSize data: параметр длиннее 30 000 символов.

  • InvalidFormatError options.coercionType: для параметра задано значение , Office.CoercionType.Html а текст сообщения — в виде обычного текста.

Примеры

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

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

...

// Set the signature for the current item.
const signature = $("#signature").val();
console.log(`Setting signature to "${signature}".`);
Office.context.mailbox.item.body.setSignatureAsync(signature, function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("setSignatureAsync succeeded");
  } else {
    console.error(asyncResult.error);
  }
});

setSignatureAsync(data, callback)

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

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

Параметры

data

string

Строка, представляющая сигнатуру, которая должна быть задана в тексте сообщения. Эта строка ограничена 30 000 символами.

callback

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

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

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

void

Комментарии

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

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

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

Важно!

Ошибки:

  • DataExceedsMaximumSize data: параметр длиннее 30 000 символов.

  • InvalidFormatError options.coercionType: для параметра задано значение , Office.CoercionType.Html а текст сообщения — в виде обычного текста.