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


Office.Recipients interface

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

Комментарии

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

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

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

Методы

addAsync(recipients, options, callback)

Добавляет список получателей к существующим получателям для встречи или сообщения.

addAsync(recipients, callback)

Добавляет список получателей к существующим получателям для встречи или сообщения.

getAsync(options, callback)

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

getAsync(callback)

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

setAsync(recipients, options, callback)

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

Метод setAsync перезаписывает текущий список получателей.

setAsync(recipients, callback)

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

Метод setAsync перезаписывает текущий список получателей.

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

addAsync(recipients, options, callback)

Добавляет список получателей к существующим получателям для встречи или сообщения.

addAsync(recipients: Array<string | EmailUser | EmailAddressDetails>, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Параметры

recipients

Array<string | Office.EmailUser | Office.EmailAddressDetails>

Получатели, которых нужно добавить в список получателей. Массив получателей может содержать строки адресов электронной почты SMTP, объектов EmailUser или EmailAddressDetails .

options
Office.AsyncContextOptions

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

callback

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

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

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

void

Комментарии

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

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

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

Важно! С помощью addAsync метода можно добавить не более 100 получателей к почтовому элементу в Outlook в Интернете, в Windows (новая и классическая версия), в Mac (классический пользовательский интерфейс), в Android и в iOS. Однако обратите внимание на следующее:

  • В Outlook в Интернете, в Windows (новая и классическая версия) и в Mac (классический пользовательский интерфейс) в целевом поле может быть не более 500 получателей. Если необходимо добавить более 100 получателей в почтовый элемент, вы можете позвонить addAsync повторно, но помните об ограничении получателя поля.

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

При вызове addAsync Outlook на Mac (новый пользовательский интерфейс) ограничение на получателей не ограничено.

Ошибки:

  • NumberOfRecipientsExceeded : число получателей превысило 100 записей.

Примеры

// The following example creates an array of EmailUser objects
// and adds them to the To recipients of the message.
const newRecipients = [
    {
        "displayName": "Allie Bellew",
        "emailAddress": "allieb@contoso.com"
    },
    {
        "displayName": "Alex Darrow",
        "emailAddress": "alexd@contoso.com"
    }
];

Office.context.mailbox.item.to.addAsync(newRecipients, function(result) {
    if (result.error) {
        console.log(result.error);
    } else {
        console.log("Recipients added");
    }
});

addAsync(recipients, callback)

Добавляет список получателей к существующим получателям для встречи или сообщения.

addAsync(recipients: Array<string | EmailUser | EmailAddressDetails>, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Параметры

recipients

Array<string | Office.EmailUser | Office.EmailAddressDetails>

Получатели, которых нужно добавить в список получателей. Массив получателей может содержать строки адресов электронной почты SMTP, объектов EmailUser или EmailAddressDetails .

callback

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

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

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

void

Комментарии

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

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

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

Важно! С помощью addAsync метода можно добавить не более 100 получателей к почтовому элементу в Outlook в Интернете, в Windows (новая и классическая версия), в Mac (классический пользовательский интерфейс), в Android и в iOS. Однако обратите внимание на следующее:

  • В Outlook в Интернете, в Windows (новая и классическая версия) и в Mac (классический пользовательский интерфейс) в целевом поле может быть не более 500 получателей. Если необходимо добавить более 100 получателей в почтовый элемент, вы можете позвонить addAsync повторно, но помните об ограничении получателя поля.

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

При вызове addAsync Outlook на Mac (новый пользовательский интерфейс) ограничение на получателей не ограничено.

Ошибки:

  • NumberOfRecipientsExceeded : число получателей превысило 100 записей.

getAsync(options, callback)

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

getAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<EmailAddressDetails[]>) => void): void;

Параметры

options
Office.AsyncContextOptions

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

callback

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

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

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

void

Комментарии

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

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

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

Важно!

Максимальное число получателей, возвращаемых этим методом, зависит от клиента Outlook.

  • Windows (новая и классическая версия), веб-браузер, Mac (классический пользовательский интерфейс): 500 получателей

  • Android, iOS: 100 получателей

  • Mac (новый пользовательский интерфейс): без ограничений

В классическом Outlook для Windows организатор встречи включается в объект, возвращаемый методом getAsync при создании новой встречи или изменении существующей. В Outlook в Интернете и новом Outlook в Windows организатор включается в возвращаемый объект только при редактировании существующей встречи.

Метод getAsync возвращает только получателей, разрешенных клиентом Outlook. Разрешенный получатель имеет следующие характеристики.

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

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

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

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

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

В Outlook в Интернете и в Windows (новые и классические), если пользователь создает новое сообщение путем активации ссылки на адрес электронной почты контакта из своего контакта или профиля карта, вызов надстройки Recipients.getAsync возвращает адрес электронной почты контакта в displayName свойстве связанного объекта EmailAddressDetails вместо сохраненного имени контакта. Дополнительные сведения см. в статье о проблеме с GitHub.

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

getAsync(callback)

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

getAsync(callback: (asyncResult: Office.AsyncResult<EmailAddressDetails[]>) => void): void;

Параметры

callback

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

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

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

void

Комментарии

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

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

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

Важно!

Максимальное число получателей, возвращаемых этим методом, зависит от клиента Outlook.

  • Windows (новая и классическая версия), веб-браузер, Mac (классический пользовательский интерфейс): 500 получателей

  • Android, iOS: 100 получателей

  • Mac (новый пользовательский интерфейс): без ограничений

Метод getAsync возвращает только получателей, разрешенных клиентом Outlook. Разрешенный получатель имеет следующие характеристики.

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

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

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

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

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

В Outlook в Интернете и в Windows (новые и классические), если пользователь создает новое сообщение путем активации ссылки на адрес электронной почты контакта из своего контакта или профиля карта, вызов надстройки Recipients.getAsync возвращает адрес электронной почты контакта в displayName свойстве связанного объекта EmailAddressDetails вместо сохраненного имени контакта. Дополнительные сведения см. в статье о проблеме с GitHub.

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

Примеры

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

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

...

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

...

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

...

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

...

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

setAsync(recipients, options, callback)

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

Метод setAsync перезаписывает текущий список получателей.

setAsync(recipients: Array<string | EmailUser | EmailAddressDetails>, options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<void>) => void): void;

Параметры

recipients

Array<string | Office.EmailUser | Office.EmailAddressDetails>

Получатели, которых нужно добавить в список получателей. Массив получателей может содержать строки адресов электронной почты SMTP, объектов EmailUser или EmailAddressDetails .

options
Office.AsyncContextOptions

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

callback

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

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

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

void

Комментарии

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

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

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

Важно! С помощью setAsync метода можно задать не более 100 получателей в Outlook в Интернете, Windows (новая и классическая версия), Mac (классический пользовательский интерфейс), Android и iOS. Однако обратите внимание на следующее:

  • В Outlook в Интернете, в Windows (новая и классическая версия) и в Mac (классический пользовательский интерфейс) в целевом поле может быть не более 500 получателей. Если вам нужно задать более 100 получателей, можно звонить setAsync повторно, но помните об ограничении получателей поля.

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

При вызове setAsync Outlook на Mac (новый пользовательский интерфейс) ограничение на получателей не ограничено.

Ошибки:

  • NumberOfRecipientsExceeded : число получателей превысило 100 записей.

setAsync(recipients, callback)

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

Метод setAsync перезаписывает текущий список получателей.

setAsync(recipients: Array<string | EmailUser | EmailAddressDetails>, callback: (asyncResult: Office.AsyncResult<void>) => void): void;

Параметры

recipients

Array<string | Office.EmailUser | Office.EmailAddressDetails>

Получатели, которых нужно добавить в список получателей. Массив получателей может содержать строки адресов электронной почты SMTP, объектов EmailUser или EmailAddressDetails .

callback

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

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

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

void

Комментарии

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

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

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

Важно! С помощью setAsync метода можно задать не более 100 получателей в Outlook в Интернете, Windows (новая и классическая версия), Mac (классический пользовательский интерфейс), Android и iOS. Однако обратите внимание на следующее:

  • В Outlook в Интернете, в Windows (новая и классическая версия) и в Mac (классический пользовательский интерфейс) в целевом поле может быть не более 500 получателей. Если вам нужно задать более 100 получателей, можно звонить setAsync повторно, но помните об ограничении получателей поля.

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

При вызове setAsync Outlook на Mac (новый пользовательский интерфейс) ограничение на получателей не ограничено.

Ошибки:

  • NumberOfRecipientsExceeded : число получателей превысило 100 записей.

Примеры

// The following example creates an array of EmailUser objects and
// replaces the CC recipients of the message with the array.
const newRecipients = [
    {
        "displayName": "Allie Bellew",
        "emailAddress": "allieb@contoso.com"
    },
    {
        "displayName": "Alex Darrow",
        "emailAddress": "alexd@contoso.com"
    }
];

Office.context.mailbox.item.cc.setAsync(newRecipients, function(result) {
    if (result.error) {
        console.log(result.error);
    } else {
        console.log("Recipients overwritten");
    }
});
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-set-bcc-message-compose.yaml

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

...

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

...

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

...

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

...

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