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


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 , который предоставляет методы, используемые для получения и задания расположения встречи.

notificationMessages

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

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 метод может вложить элементы в элементы, отличные от того, который вы редактируйте. Однако это не поддерживается и не рекомендуется.

close()

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

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

В Outlook в Windows (классической) и на Mac close метод не влияет на ответ в области чтения.

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 идентификатор вложения действителен только в рамках одного сеанса. Сеанс завершается, когда пользователь закрывает приложение или если пользователь начинает создавать встроенную форму, затем открывает форму для продолжения в отдельном окне.

saveAsync(options, callback)

Асинхронно сохраняет элемент.

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

saveAsync(callback)

Асинхронно сохраняет элемент.

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

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}`);
});

notificationMessages

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

notificationMessages: NotificationMessages;

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

Комментарии

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

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

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

Примеры

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

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

...

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

...

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

...

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

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

...

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

...

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

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 в Windows (классическая версия) и mac, почтовый ящик 1.8 для Outlook в Интернете и новый Outlook в Windows ]

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

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

Важно!

  • Этот метод не поддерживается в Outlook для iOS или Android. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Для Outlook, поддерживаемые в 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 в Windows (классическая версия) и mac, почтовый ящик 1.8 для Outlook в Интернете и новый Outlook в Windows ]

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

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

Важно!

  • Этот метод не поддерживается в Outlook для iOS или Android. Дополнительные сведения о поддерживаемых API в Outlook Mobile см. в статье API JavaScript Для Outlook, поддерживаемые в 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 : сообщение или встреча содержит слишком много вложений.

close()

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

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

В Outlook в Windows (классической) и на Mac close метод не влияет на ответ в области чтения.

close(): void;

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

void

Комментарии

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

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

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

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

Примеры

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

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

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 : идентификатор вложения не существует.

saveAsync(options, callback)

Асинхронно сохраняет элемент.

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

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

Параметры

options
Office.AsyncContextOptions

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

callback

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

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

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

void

Комментарии

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

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

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

Важно!

  • В Outlook в Интернете, новый Outlook в Windows или классический Outlook в Windows в режиме "в сети" (без кэшированного режима) элемент сохраняется на сервере. В Outlook в режиме кэширования этот элемент сохраняется в локальном кэше.

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

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

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

  • В Outlook для Mac только версии 16.35 (20030802) и более поздних поддерживает сохранение собрания. В противном случае метод завершается ошибкой saveAsync при вызове из собрания в режиме создания. Обходной путь см. в статье Не удается сохранить собрание в виде черновика в Outlook для Mac с помощью API JS Office.

Ошибки:

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

Примеры

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

Office.context.mailbox.item.saveAsync(function (result) {
  if (result.status === Office.AsyncResultStatus.Succeeded) {
    console.log(`saveAsync succeeded, itemId is ${result.value}`);
  }
  else {
    console.error(`saveAsync failed with message ${result.error.message}`);
  }
});

saveAsync(callback)

Асинхронно сохраняет элемент.

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

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

Параметры

callback

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

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

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

void

Комментарии

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

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

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

Важно!

  • В Outlook в Интернете, новый Outlook в Windows или классический Outlook в Windows в режиме "в сети" (без кэшированного режима) элемент сохраняется на сервере. В Outlook в режиме кэширования этот элемент сохраняется в локальном кэше.

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

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

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

  • В Outlook для Mac только версии 16.35 (20030802) и более поздних поддерживает сохранение собрания. В противном случае метод завершается ошибкой saveAsync при вызове из собрания в режиме создания. Обходной путь см. в статье Не удается сохранить собрание в виде черновика в Outlook для Mac с помощью API JS Office.

Ошибки:

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

Примеры

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

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

setSelectedDataAsync(data, options, callback)

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

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

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

Параметры

data

string

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

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

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