Office.Recipients interface
アイテムの受信者を表します。 新規作成モードのみです。
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: Compose
メソッド
add |
予定やメッセージの既存の受信者に、受信者のリストを追加します。 |
add |
予定やメッセージの既存の受信者に、受信者のリストを追加します。 |
get |
予定やメッセージの受信者リストを取得します。 |
get |
予定やメッセージの受信者リストを取得します。 |
set |
予定やメッセージの受信者リストを設定します。
|
set |
予定やメッセージの受信者リストを設定します。
|
メソッドの詳細
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
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 受信者の追加に失敗すると、asyncResult.error
プロパティにエラー コードが格納されます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: Compose
重要: addAsync
メソッドを使用すると、Outlook on the web、Windows (新規およびクラシック)、Mac (クラシック UI)、Android、iOS のメール アイテムに最大 100 人の受信者を追加できます。 ただし、次の点に注意してください。
Outlook on the web、Windows (新規およびクラシック) と Mac (クラシック UI) では、ターゲット フィールドに最大 500 人の受信者を設定できます。 メール アイテムに 100 人以上の受信者を追加する必要がある場合は、
addAsync
を繰り返し呼び出すことができますが、フィールドの受信者の制限に注意してください。Outlook on Android および iOS では、
addAsync
メソッドはメッセージ Compose モードではサポートされていません。 予定オーガナイザー モードのみがサポートされています。 Outlook モバイルでサポートされている API の詳細については、「モバイル デバイスで Outlook でサポートされている Outlook JavaScript API」を参照してください。
Outlook on Mac (新しい UI) で addAsync
を呼び出す場合、受信者の制限はありません。
エラー:
-
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
型の 1 つのパラメーターで呼び出されます。 受信者の追加に失敗すると、asyncResult.error
プロパティにエラー コードが格納されます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: Compose
重要: addAsync
メソッドを使用すると、Outlook on the web、Windows (新規およびクラシック)、Mac (クラシック UI)、Android、iOS のメール アイテムに最大 100 人の受信者を追加できます。 ただし、次の点に注意してください。
Outlook on the web、Windows (新規およびクラシック) と Mac (クラシック UI) では、ターゲット フィールドに最大 500 人の受信者を設定できます。 メール アイテムに 100 人以上の受信者を追加する必要がある場合は、
addAsync
を繰り返し呼び出すことができますが、フィールドの受信者の制限に注意してください。Outlook on Android および iOS では、
addAsync
メソッドはメッセージ Compose モードではサポートされていません。 予定オーガナイザー モードのみがサポートされています。 Outlook モバイルでサポートされている API の詳細については、「モバイル デバイスで Outlook でサポートされている Outlook JavaScript API」を参照してください。
Outlook on Mac (新しい UI) で addAsync
を呼び出す場合、受信者の制限はありません。
エラー:
-
NumberOfRecipientsExceeded
: 受信者の数が 100 エントリを超えました。
getAsync(options, callback)
予定やメッセージの受信者リストを取得します。
getAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<EmailAddressDetails[]>) => void): void;
パラメーター
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<Office.EmailAddressDetails[]>) => void
メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
型の 1 つのパラメーターasyncResult
で呼び出されます。 結果の asyncResult.value
プロパティは、 EmailAddressDetails オブジェクトの配列です。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: Compose
重要:
このメソッドによって返される受信者の最大数は、Outlook クライアントによって異なります。
Windows (新規 およびクラシック)、Web ブラウザー、Mac (クラシック UI): 500 受信者
Android、iOS: 100 受信者
Mac (新しい UI): 制限なし
getAsync
メソッドは、Outlook クライアントによって解決された受信者のみを返します。 解決された受信者には、次の特性があります。
受信者が送信者のアドレス帳に保存されたエントリを持っている場合、Outlook は電子メール アドレスを受信者の保存された表示名に解決します。
Teams 会議の状態アイコンは、受信者の名前またはメール アドレスの前に表示されます。
受信者の名前またはメール アドレスの後にセミコロンが表示されます。
受信者の名前または電子メール アドレスは、下線が付いたり、ボックスに囲まれたりします。
メール アドレスがメール アイテムに追加されたら解決するには、送信者が Tab キーを使用するか、自動入力リストから推奨される連絡先またはメール アドレスを選択する必要があります。
Outlook on the webおよび Windows (新規およびクラシック) では、ユーザーが連絡先またはプロファイル カードから連絡先のメール アドレス リンクをアクティブ化して新しいメッセージを作成した場合、アドインのRecipients.getAsync
呼び出しは、連絡先の保存された名前ではなく、関連付けられている EmailAddressDetails オブジェクトのdisplayName
プロパティに連絡先の電子メール アドレスを返します。 詳細については、関連する GitHub の問題に関するページを参照してください。
メール アイテムの作成中に、以前に選択した送信者アカウントとは異なるドメインにある送信者アカウントに切り替えると、既存の受信者の recipientType
プロパティの値は更新されないため、以前に選択したアカウントのドメインに基づいて引き続き使用されます。 アカウントの切り替え後に適切な受信者の種類を取得するには、まず既存の受信者を削除してから、メール アイテムに追加し直す必要があります。
getAsync(callback)
予定やメッセージの受信者リストを取得します。
getAsync(callback: (asyncResult: Office.AsyncResult<EmailAddressDetails[]>) => void): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<Office.EmailAddressDetails[]>) => void
メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
型の 1 つのパラメーターasyncResult
で呼び出されます。 結果の asyncResult.value
プロパティは、 EmailAddressDetails オブジェクトの配列です。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: Compose
重要:
このメソッドによって返される受信者の最大数は、Outlook クライアントによって異なります。
Windows (新規 およびクラシック)、Web ブラウザー、Mac (クラシック UI): 500 受信者
Android、iOS: 100 受信者
Mac (新しい UI): 制限なし
getAsync
メソッドは、Outlook クライアントによって解決された受信者のみを返します。 解決された受信者には、次の特性があります。
受信者が送信者のアドレス帳に保存されたエントリを持っている場合、Outlook は電子メール アドレスを受信者の保存された表示名に解決します。
Teams 会議の状態アイコンは、受信者の名前またはメール アドレスの前に表示されます。
受信者の名前またはメール アドレスの後にセミコロンが表示されます。
受信者の名前または電子メール アドレスは、下線が付いたり、ボックスに囲まれたりします。
メール アドレスがメール アイテムに追加されたら解決するには、送信者が Tab キーを使用するか、自動入力リストから推奨される連絡先またはメール アドレスを選択する必要があります。
Outlook on the webおよび Windows (新規およびクラシック) では、ユーザーが連絡先またはプロファイル カードから連絡先のメール アドレス リンクをアクティブ化して新しいメッセージを作成した場合、アドインのRecipients.getAsync
呼び出しは、連絡先の保存された名前ではなく、関連付けられている EmailAddressDetails オブジェクトのdisplayName
プロパティに連絡先の電子メール アドレスを返します。 詳細については、関連する 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
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 受信者の設定に失敗した場合、asyncResult.error
プロパティには、データの追加時に発生したエラーを示すコードが含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: Compose
重要: setAsync
メソッドでは、Outlook on the web、Windows (新規およびクラシック)、Mac (クラシック UI)、Android、iOS で最大 100 人の受信者を設定できます。 ただし、次の点に注意してください。
Outlook on the web、Windows (新規およびクラシック) と Mac (クラシック UI) では、ターゲット フィールドに最大 500 人の受信者を設定できます。 100 人以上の受信者を設定する必要がある場合は、
setAsync
を繰り返し呼び出すことができますが、フィールドの受信者の制限に注意してください。Outlook on Android および iOS では、
setAsync
メソッドはメッセージ Compose モードではサポートされていません。 予定オーガナイザー モードのみがサポートされています。 Outlook モバイルでサポートされている API の詳細については、「モバイル デバイスで Outlook でサポートされている Outlook JavaScript API」を参照してください。
Outlook on Mac (新しい UI) で setAsync
を呼び出す場合、受信者の制限はありません。
エラー:
-
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
型の 1 つのパラメーターで呼び出されます。 受信者の設定に失敗した場合、asyncResult.error
プロパティには、データの追加時に発生したエラーを示すコードが含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: Compose
重要: setAsync
メソッドでは、Outlook on the web、Windows (新規およびクラシック)、Mac (クラシック UI)、Android、iOS で最大 100 人の受信者を設定できます。 ただし、次の点に注意してください。
Outlook on the web、Windows (新規およびクラシック) と Mac (クラシック UI) では、ターゲット フィールドに最大 500 人の受信者を設定できます。 100 人以上の受信者を設定する必要がある場合は、
setAsync
を繰り返し呼び出すことができますが、フィールドの受信者の制限に注意してください。Outlook on Android および iOS では、
setAsync
メソッドはメッセージ Compose モードではサポートされていません。 予定オーガナイザー モードのみがサポートされています。 Outlook モバイルでサポートされている API の詳細については、「モバイル デバイスで Outlook でサポートされている Outlook JavaScript API」を参照してください。
Outlook on Mac (新しい UI) で setAsync
を呼び出す場合、受信者の制限はありません。
エラー:
-
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);
}
});
Office Add-ins