Office.AppointmentCompose interface

Режим организатора встреч Office.context.mailbox.item.

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

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

Extends

Свойства

body

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

end

Получает или задает дату и время окончания встречи.

Свойство end представляет собой объект Time, выраженный в виде значения даты и времени в формате UTC. Метод можно использовать для convertToLocalClientTime преобразования end значения свойства в локальные значения даты и времени клиента.

Если вы задаете время окончания с помощью метода Time.setAsync, необходимо использовать метод convertToUtcClientTime для преобразования местного времени на клиенте в формат UTC для сервера.

Важно! В клиенте Windows это свойство нельзя использовать для обновления конца повторения.

itemType

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

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

location

Получает или задает место встречи. Свойство location возвращает объект Location , который предоставляет методы, используемые для получения и задания расположения встречи.

optionalAttendees

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

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

requiredAttendees

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

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

start

Получает или задает дату и время начала встречи.

Свойство start представляет собой объект Time, выраженный в виде значения даты и времени в формате UTC. Метод можно использовать для convertToLocalClientTime преобразования значения в локальные дату и время клиента.

Если вы задаете время начала с помощью метода Time.setAsync, необходимо использовать метод convertToUtcClientTime для преобразования местного времени на клиенте в формат UTC для сервера.

Важно! В клиенте Windows это свойство нельзя использовать для обновления начала повторения.

subject

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

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

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

Методы

addFileAttachmentAsync(uri, attachmentName, options, callback)

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

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

addFileAttachmentAsync(uri, attachmentName, callback)

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

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

addItemAttachmentAsync(itemId, attachmentName, options, callback)

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

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

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

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

addItemAttachmentAsync(itemId, attachmentName, callback)

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

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

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

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

getSelectedDataAsync(coercionType, options, callback)

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

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

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

getSelectedDataAsync(coercionType, callback)

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

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

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

loadCustomPropertiesAsync(callback, userContext)

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

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

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

removeAttachmentAsync(attachmentId, options, callback)

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

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

removeAttachmentAsync(attachmentId, callback)

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

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

setSelectedDataAsync(data, options, callback)

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

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

setSelectedDataAsync(data, callback)

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

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

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

body

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

body: Body;

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

Комментарии

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

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

Применимый режим Outlook: организатор встреч

Примеры

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

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

end

Получает или задает дату и время окончания встречи.

Свойство end представляет собой объект Time, выраженный в виде значения даты и времени в формате UTC. Метод можно использовать для convertToLocalClientTime преобразования end значения свойства в локальные значения даты и времени клиента.

Если вы задаете время окончания с помощью метода Time.setAsync, необходимо использовать метод convertToUtcClientTime для преобразования местного времени на клиенте в формат UTC для сервера.

Важно! В клиенте Windows это свойство нельзя использовать для обновления конца повторения.

end: Time;

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

Комментарии

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

Применимый режим Outlook: организатор встреч

Примеры

// The following example sets the end time of an appointment in compose mode by
// using the `setAsync` method of the `Time` object.
const endTime = new Date("3/14/2015");
const options = {
    // Pass information that can be used in the callback.
    asyncContext: {verb: "Set"}
};
Office.context.mailbox.item.end.setAsync(endTime, options, function(result) {
    if (result.error) {
        console.debug(result.error);
    } else {
        // Access the asyncContext that was passed to the setAsync method.
        console.debug("End Time " + result.asyncContext.verb);
    }
});
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-set-end-appointment-organizer.yaml

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

...

Office.context.mailbox.item.start.getAsync((result) => {
  if (result.status !== Office.AsyncResultStatus.Succeeded) {
    console.error(`Get start date failed with message ${result.error.message}`);
    return;
  }

  const end = result.value; // Set end to current start date and time.
  end.setDate(end.getDate() + 1); // Set end as 1 day later than start date.
  Office.context.mailbox.item.end.setAsync(end, (result) => {
    if (result.status !== Office.AsyncResultStatus.Succeeded) {
      console.error(`Set end date failed with message ${result.error.message}`);
      return;
    }
    console.log(`Successfully set end date and time to ${end}`);
  });
});

itemType

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

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

itemType: MailboxEnums.ItemType | string;

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

Комментарии

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

Применимый режим Outlook: организатор встреч

Примеры

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

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

location

Получает или задает место встречи. Свойство location возвращает объект Location , который предоставляет методы, используемые для получения и задания расположения встречи.

location: Location;

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

Комментарии

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

Применимый режим Outlook: организатор встреч

Примеры

const userContext = { value : 1 };
Office.context.mailbox.item.location.getAsync( { context: userContext}, callback);

function callback(asyncResult) {
    const context = asyncResult.context;
    const location = asyncResult.value;
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-set-location-appointment-organizer.yaml

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

...

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

optionalAttendees

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

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

optionalAttendees: Recipients;

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

Комментарии

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

Применимый режим Outlook: организатор встреч

Примеры

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

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

Office.context.mailbox.item.optionalAttendees.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const apptOptionalAttendees = asyncResult.value;
    for (let i = 0; i < apptOptionalAttendees.length; i++) {
      console.log(
        "Optional attendees: " +
          apptOptionalAttendees[i].displayName +
          " (" +
          apptOptionalAttendees[i].emailAddress +
          ") - response: " +
          apptOptionalAttendees[i].appointmentResponse
      );
    }
  } else {
    console.error(asyncResult.error);
  }
});

...

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

requiredAttendees

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

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

requiredAttendees: Recipients;

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

Комментарии

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

Применимый режим Outlook: организатор встреч

Примеры

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

function callback(asyncResult) {
    const arrayOfRequiredAttendeesRecipients = asyncResult.value;
    console.log(JSON.stringify(arrayOfRequiredAttendeesRecipients));
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-set-required-attendees-appointment-organizer.yaml

Office.context.mailbox.item.requiredAttendees.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const apptRequiredAttendees = asyncResult.value;
    for (let i = 0; i < apptRequiredAttendees.length; i++) {
      console.log(
        "Required attendees: " +
          apptRequiredAttendees[i].displayName +
          " (" +
          apptRequiredAttendees[i].emailAddress +
          ") - response: " +
          apptRequiredAttendees[i].appointmentResponse
      );
    }
  } else {
    console.error(asyncResult.error);
  }
});

...

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

start

Получает или задает дату и время начала встречи.

Свойство start представляет собой объект Time, выраженный в виде значения даты и времени в формате UTC. Метод можно использовать для convertToLocalClientTime преобразования значения в локальные дату и время клиента.

Если вы задаете время начала с помощью метода Time.setAsync, необходимо использовать метод convertToUtcClientTime для преобразования местного времени на клиенте в формат UTC для сервера.

Важно! В клиенте Windows это свойство нельзя использовать для обновления начала повторения.

start: Time;

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

Комментарии

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

Применимый режим Outlook: организатор встреч

Примеры

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

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

...

const start = new Date(); // Represents current date and time.
start.setDate(start.getDate() + 2); // Add 2 days to current date.
Office.context.mailbox.item.start.setAsync(start, (result) => {
  if (result.status !== Office.AsyncResultStatus.Succeeded) {
    console.error(`Action failed with message ${result.error.message}`);
    return;
  }
  console.log(`Successfully set start date and time to ${start}`);
});

subject

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

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

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

subject: Subject;

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

Комментарии

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

Применимый режим Outlook: организатор встреч

Примеры

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

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

...

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

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

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. Если добавить вложение не удастся, объект asyncResult будет содержать объект Error с описанием ошибки.

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

void

Комментарии

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

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

Применимый режим Outlook: организатор встреч

Важно!

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

  • Универсальный код ресурса (URI) присоединяемого файла должен поддерживать кэширование в рабочей среде. Сервер, на котором размещен образ, не должен возвращать заголовок, указывающий Cache-Controlno-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 = $("#attachmentUrl")
  .val()
  .toString();
Office.context.mailbox.item.addFileAttachmentAsync(
  attachmentUrl,
  getFileName(attachmentUrl),
  { isInline: false },
  (result) => {
    console.log(result);
  }
);

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. Если добавить вложение не удастся, объект asyncResult будет содержать объект Error с описанием ошибки.

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

void

Комментарии

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

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

Применимый режим Outlook: организатор встреч

Важно!

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

  • Универсальный код ресурса (URI) присоединяемого файла должен поддерживать кэширование в рабочей среде. Сервер, на котором размещен образ, не должен возвращать заголовок, указывающий Cache-Controlno-cache, no-storeили аналогичные параметры в HTTP-ответе. Однако при разработке надстройки и внесении изменений в файлы кэширование может помешать просмотру изменений. Мы рекомендуем использовать Cache-Control заголовки во время разработки.

  • Вы можете использовать тот же URI с методом removeAttachmentAsync для удаления вложения в том же сеансе.

Ошибки:

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

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

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

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

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

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

void

Комментарии

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

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

Применимый режим Outlook: организатор встреч

Ошибки:

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

Примеры

// The following example adds an existing Outlook item as an attachment
// with the name "My Attachment".
function 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

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

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

void

Комментарии

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

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

Применимый режим Outlook: организатор встреч

Ошибки:

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

getSelectedDataAsync(coercionType, options, callback)

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

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

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

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

Параметры

coercionType

Office.CoercionType | string

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

options
Office.AsyncContextOptions

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

callback

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

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

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

void

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

Комментарии

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

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

Применимый режим Outlook: организатор встреч

Примеры

// Get selected data.
Office.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 Чтобы получить доступ к свойствуsource, из которого происходит выбор, вызовитеasyncResult.value.sourceProperty , который будет иметь значение body или subject.

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

Параметры

coercionType

Office.CoercionType | string

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

callback

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

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

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

void

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

Комментарии

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

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

Применимый режим Outlook: организатор встреч

Примеры

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

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

loadCustomPropertiesAsync(callback, userContext)

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

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

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

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

Параметры

callback

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

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

userContext

any

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

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

void

Комментарии

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

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

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

Применимый режим Outlook: организатор встреч

Примеры

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

Комментарии

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

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

Применимый режим Outlook: организатор встреч

Важно*. Метод 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(
  $("#attachmentId")
    .val()
    .toString(),
  (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

Комментарии

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

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

Применимый режим Outlook: организатор встреч

Важно*. Метод removeAttachmentAsync не удаляет встроенные вложения из почтового элемента. Чтобы удалить встроенное вложение, сначала получите текст элемента, а затем удалите все ссылки на вложение из его содержимого. Используйте API Office.Body , чтобы получить и задать текст элемента.

Ошибки:

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

setSelectedDataAsync(data, options, callback)

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

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

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

Параметры

data

string

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

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

Литерал объекта, содержащий одно или несколько следующих свойств:- asyncContext: разработчики могут предоставить любой объект, к которому они хотят получить доступ в функции обратного вызова. coercionType : если текст, текущий стиль применяется в Outlook в Интернете, в 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

Комментарии

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

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

Применимый режим Outlook: организатор встреч

Ошибки:

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

Примеры

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

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

setSelectedDataAsync(data, callback)

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

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

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

Параметры

data

string

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

callback

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

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

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

void

Комментарии

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

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

Применимый режим Outlook: организатор встреч

Ошибки:

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