Office.MessageCompose interface
Office.context.mailbox.item のメッセージ作成モード。
重要:
これは内部 Outlook オブジェクトであり、既存のインターフェイスを介して直接公開されることはありません。 これは、
Office.context.mailbox.item
のモードとして扱う必要があります。 詳細については、「 オブジェクト モデル 」ページを参照してください。メッセージで
Office.context.mailbox.item
を呼び出すときは、Outlook クライアントの閲覧ウィンドウを有効にする必要があることに注意してください。 閲覧ウィンドウを構成する方法のガイダンスについては、「閲覧 ウィンドウを使用してメッセージをプレビューするように構成する」を参照してください。
親インターフェイス:
- Extends
プロパティ
bcc | メッセージの Bcc (ブラインド カーボン コピー) 行の受信者を取得または更新するメソッドを提供するオブジェクトを取得します。 クライアント/プラットフォーム (Windows、Mac など) によっては、取得または更新できる受信者の数に制限が適用される場合があります。 詳細については、 Recipients オブジェクトを参照してください。 |
body | アイテムの本文を操作するメソッドを提供するオブジェクトを取得します。 |
categories | アイテムのカテゴリを管理するためのメソッドを提供する オブジェクトを取得します。 |
cc | メッセージの CC (カーボン コピー) の受信者へのアクセスを提供します。 オブジェクトの種類とアクセス レベルは、現在の項目のモードによって異なります。
|
conversation |
特定のメッセージが含まれている電子メールの会話の識別子を取得します。 メール アプリを閲覧フォームでアクティブ化するか、新規作成フォームの返信でアクティブ化すると、このプロパティで整数を取得することができます。 その後、ユーザーが返信の件名を変更した場合、その返信の送信時にメッセージの会話 ID が変更され、以前に取得した値は適用されなくなります。 新規作成フォームで新しいアイテムに対してこのプロパティに null を取得します。 ユーザーが件名を設定し、アイテムを保存する場合、 |
delay |
メッセージの遅延配信日時を取得または設定します。
|
from | メッセージの送信者の電子メール アドレスを取得します。
|
in |
現在のメッセージによって返信される元のメッセージのメッセージ ID を取得します。 |
internet |
メッセージのカスタム インターネット ヘッダーを取得または設定します。
詳細については、「 Outlook アドインのメッセージでインターネット ヘッダーを取得して設定する」を参照してください。 |
item |
インスタンスが表しているアイテムの種類を取得します。
|
notification |
アイテムの通知メッセージを取得します。 |
sensitivity |
メッセージの 秘密度ラベル を取得または設定するオブジェクトを取得します。 |
series |
インスタンスが属する系列の ID を取得します。 Outlook on the web、Windows (新規およびクラシック) と Mac では、 |
session |
Compose モードで項目の SessionData を管理します。 重要: SessionData オブジェクト全体は、アドインあたり 50,000 文字に制限されています。 |
subject | アイテムの件名フィールドに示される説明を取得または設定します。
|
to | メッセージの To 行にある受信者へのアクセスを提供します。 オブジェクトの種類とアクセス レベルは、現在の項目のモードによって異なります。
|
メソッド
add |
ファイルを添付ファイルとしてメッセージまたは予定に追加します。
|
add |
ファイルを添付ファイルとしてメッセージまたは予定に追加します。
|
add |
ファイルを添付ファイルとしてメッセージまたは予定に追加します。
その後、 |
add |
ファイルを添付ファイルとしてメッセージまたは予定に追加します。
その後、 |
add |
サポートされているイベントのイベント ハンドラーを追加します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。 サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。 |
add |
サポートされているイベントのイベント ハンドラーを追加します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。 サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。 |
add |
メッセージなどの Exchange アイテムを添付ファイルとして、メッセージまたは予定に追加します。
その後、 Office アドインがOutlook on the webまたは新しい Outlook on Windows で実行されている場合、 |
add |
メッセージなどの Exchange アイテムを添付ファイルとして、メッセージまたは予定に追加します。
その後、 Office アドインがOutlook on the webまたは新しい Outlook on Windows で実行されている場合、 |
close() | 作成中の現在の項目を閉じます。
Outlook on Windows (クラシック) と Mac では、 |
close |
未保存の変更を破棄するオプションで構成されている現在のメッセージを閉じます。 構成されるメッセージには、新しいメッセージ、返信、または既存の下書きを指定できます。 |
close |
構成されている現在の新しいメッセージを閉じます。 構成される新しいメッセージに対する動作は、メッセージに未保存の変更が含まれているかどうかによって異なります。 変更が行われなかった場合、メッセージは保存ダイアログなしで閉じられます。 一方、メッセージに未保存の変更が含まれている場合は、下書きの保存、変更の破棄、操作の取り消しをユーザーに求める保存ダイアログが表示されます。 |
disable |
Outlook クライアント署名を無効にします。 このメソッドの動作は、アドインが実行されているクライアントによって異なります。
|
disable |
Outlook クライアント署名を無効にします。 このメソッドの動作は、アドインが実行されているクライアントによって異なります。
|
get |
メッセージまたは予定から添付ファイルを取得し、
|
get |
メッセージまたは予定から添付ファイルを取得し、
|
get |
項目の添付ファイルを配列として取得します。 |
get |
項目の添付ファイルを配列として取得します。 |
get |
メッセージ作成の種類とその強制型を指定します。 メッセージは、新しいメッセージ、または返信または転送できます。 強制型には、HTML またはプレーン テキストを使用できます。 |
get |
メッセージ作成の種類とその強制型を指定します。 メッセージは、新しいメッセージ、または返信または転送できます。 強制型には、HTML またはプレーン テキストを使用できます。 |
get |
会話スレッド内の現在のメッセージの Base64 でエンコードされた位置を取得します。 |
get |
会話スレッド内の現在のメッセージの Base64 でエンコードされた位置を取得します。 |
get |
アクション可能なメッセージによってアドインがアクティブ化されたときに渡される初期化データを取得します。 |
get |
アクション可能なメッセージによってアドインがアクティブ化されたときに渡される初期化データを取得します。 |
get |
選択したメッセージの Exchange Web Services アイテム クラスを取得します。 |
get |
選択したメッセージの Exchange Web Services アイテム クラスを取得します。 |
get |
保存されたアイテムの Exchange Web Services (EWS) アイテム識別子 を非同期的に取得します。 呼び出されると、このメソッドはコールバック関数を使用して項目 ID を返します。 |
get |
保存されたアイテムの Exchange Web Services (EWS) アイテム識別子 を非同期的に取得します。 呼び出されると、このメソッドはコールバック関数を使用して項目 ID を返します。 |
get |
メッセージの件名または本文から非同期的に選択したデータを返します。 選択範囲がないのにカーソルが本文または件名にある場合、メソッドは選択したデータの空の文字列を返します。 本文または件名以外のフィールドが選択されている場合、 コールバック関数から選択したデータにアクセスするには、 |
get |
メッセージの件名または本文から非同期的に選択したデータを返します。 選択範囲がないのにカーソルが本文または件名にある場合、メソッドは選択したデータの空の文字列を返します。 本文または件名以外のフィールドが選択されている場合、 コールバック関数から選択したデータにアクセスするには、 |
get |
共有フォルダーまたは共有メールボックス内の予定またはメッセージのプロパティを取得します。 この API の使用方法の詳細については、「 Outlook アドインで共有フォルダーと共有メールボックスのシナリオを有効にする」を参照してください。 |
get |
共有フォルダーまたは共有メールボックス内の予定またはメッセージのプロパティを取得します。 この API の使用方法の詳細については、「 Outlook アドインで共有フォルダーと共有メールボックスのシナリオを有効にする」を参照してください。 |
is |
クライアント署名が有効になっているかどうかを取得します。 Outlook on Windows (クラシック) と Mac では、新しいメッセージ、応答、転送の既定の署名が送信 Outlook アカウントのテンプレートに設定されている場合、API 呼び出しは |
is |
クライアント署名が有効になっているかどうかを取得します。 Outlook on Windows (クラシック) と Mac では、新しいメッセージ、応答、転送の既定の署名が送信 Outlook アカウントのテンプレートに設定されている場合、API 呼び出しは |
load |
選択されたアイテムのこのアドインのカスタム プロパティを非同期に読み込みます。 カスタム プロパティは、アプリごとに項目ごとにキーと値のペアとして格納されます。 このメソッドはコールバックで CustomProperties オブジェクトを返します。これにより、現在のアイテムと現在のアドインに固有のカスタム プロパティにアクセスするメソッドが提供されます。 カスタム プロパティはアイテムで暗号化されないため、セキュリティで保護されたストレージとして使用しないでください。 カスタム プロパティは |
remove |
メッセージまたは予定から添付ファイルを削除します。
|
remove |
メッセージまたは予定から添付ファイルを削除します。
|
remove |
サポートされているイベントの種類のイベント ハンドラーを削除します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。 サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。 |
remove |
サポートされているイベントの種類のイベント ハンドラーを削除します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。 サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。 |
save |
現在のメッセージを下書きとして非同期的に保存します。 |
save |
現在のメッセージを下書きとして非同期的に保存します。 |
set |
メッセージの本文または件名に非同期的にデータを挿入します。
|
set |
メッセージの本文または件名に非同期的にデータを挿入します。
|
プロパティの詳細
bcc
メッセージの Bcc (ブラインド カーボン コピー) 行の受信者を取得または更新するメソッドを提供するオブジェクトを取得します。
クライアント/プラットフォーム (Windows、Mac など) によっては、取得または更新できる受信者の数に制限が適用される場合があります。 詳細については、 Recipients オブジェクトを参照してください。
bcc: Recipients;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
Office.context.mailbox.item.bcc.setAsync( ['alice@contoso.com', 'bob@contoso.com'] );
Office.context.mailbox.item.bcc.addAsync( ['jason@contoso.com'] );
Office.context.mailbox.item.bcc.getAsync(callback);
function callback(asyncResult) {
const arrayOfBccRecipients = asyncResult.value;
}
// 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);
}
});
...
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);
}
});
body
アイテムの本文を操作するメソッドを提供するオブジェクトを取得します。
body: Body;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
// This example gets the body of the item as plain text.
Office.context.mailbox.item.body.getAsync(
"text",
{ asyncContext: "This is passed to the callback" },
function callback(result) {
// Do something with the result.
});
// The following is an example of the result parameter passed to the callback function.
{
"value": "TEXT of whole body (including threads below)",
"status": "succeeded",
"asyncContext": "This is passed to the callback"
}
categories
アイテムのカテゴリを管理するためのメソッドを提供する オブジェクトを取得します。
categories: Categories;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
重要: Outlook on the webおよび新しい Outlook on Windows では API を使用して、Compose モードでメッセージのカテゴリを管理することはできません。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/45-categories/work-with-categories.yaml
Office.context.mailbox.item.categories.getAsync(function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
const categories = asyncResult.value;
if (categories && categories.length > 0) {
console.log("Categories assigned to this item:");
console.log(JSON.stringify(categories));
} else {
console.log("There are no categories assigned to this item.");
}
} else {
console.error(asyncResult.error);
}
});
...
// Note: In order for you to successfully add a category,
// it must be in the mailbox categories master list.
Office.context.mailbox.masterCategories.getAsync(function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
const masterCategories = asyncResult.value;
if (masterCategories && masterCategories.length > 0) {
// Grab the first category from the master list.
const categoryToAdd = [masterCategories[0].displayName];
Office.context.mailbox.item.categories.addAsync(categoryToAdd, function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
console.log(`Successfully assigned category '${categoryToAdd}' to item.`);
} else {
console.log("categories.addAsync call failed with error: " + asyncResult.error.message);
}
});
} else {
console.log("There are no categories in the master list on this mailbox. You can add categories using Office.context.mailbox.masterCategories.addAsync.");
}
} else {
console.error(asyncResult.error);
}
});
...
Office.context.mailbox.item.categories.getAsync(function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
const categories = asyncResult.value;
if (categories && categories.length > 0) {
// Grab the first category assigned to this item.
const categoryToRemove = [categories[0].displayName];
Office.context.mailbox.item.categories.removeAsync(categoryToRemove, function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
console.log(`Successfully unassigned category '${categoryToRemove}' from this item.`);
} else {
console.log("categories.removeAsync call failed with error: " + asyncResult.error.message);
}
});
} else {
console.log("There are no categories assigned to this item.");
}
} else {
console.error(asyncResult.error);
}
});
cc
メッセージの CC (カーボン コピー) の受信者へのアクセスを提供します。 オブジェクトの種類とアクセス レベルは、現在の項目のモードによって異なります。
cc
プロパティは、メッセージの Cc 行にある受信者を取得または更新するメソッドを提供する Recipients
オブジェクトを返します。 ただし、クライアント/プラットフォーム (Windows、Mac など) によっては、取得または更新できる受信者の数に制限が適用される場合があります。 詳細については、 Recipients オブジェクトを参照してください。
cc: Recipients;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
Office.context.mailbox.item.cc.setAsync( ['alice@contoso.com', 'bob@contoso.com'] );
Office.context.mailbox.item.cc.addAsync( ['jason@contoso.com'] );
Office.context.mailbox.item.cc.getAsync(callback);
function callback(asyncResult) {
const arrayOfCcRecipients = asyncResult.value;
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-set-cc-message-compose.yaml
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);
}
});
...
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);
}
});
conversationId
特定のメッセージが含まれている電子メールの会話の識別子を取得します。
メール アプリを閲覧フォームでアクティブ化するか、新規作成フォームの返信でアクティブ化すると、このプロパティで整数を取得することができます。 その後、ユーザーが返信の件名を変更した場合、その返信の送信時にメッセージの会話 ID が変更され、以前に取得した値は適用されなくなります。
新規作成フォームで新しいアイテムに対してこのプロパティに null を取得します。 ユーザーが件名を設定し、アイテムを保存する場合、conversationId
プロパティは値を返します。
conversationId: string;
プロパティ値
string
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-conversation-id-message.yaml
console.log(`Conversation ID: ${Office.context.mailbox.item.conversationId}`);
delayDeliveryTime
メッセージの遅延配信日時を取得または設定します。
delayDeliveryTime
プロパティは、メッセージの配信日時を管理するメソッドを提供するDelayDeliveryTime
オブジェクトを返します。
delayDeliveryTime: DelayDeliveryTime;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/delay-message-delivery.yaml
function setDeliveryDate(minutes) {
// This snippet sets the delivery date and time of a message.
const currentTime = new Date().getTime();
const milliseconds = totalDelay * 60000;
const timeDelay = new Date(currentTime + milliseconds);
Office.context.mailbox.item.delayDeliveryTime.setAsync(timeDelay, (asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log(asyncResult.error.message);
return;
}
if (minutes === 1440) {
console.log(`Delayed delivery by an additional one day.`);
} else {
console.log(`Delayed delivery by an additional ${minutes} minutes.`);
}
});
}
from
メッセージの送信者の電子メール アドレスを取得します。
from
プロパティは、値から を取得するメソッドを提供するFrom
オブジェクトを返します。
from: From;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
重要: このプロパティは、Outlook on Android と iOS でサポートされています。 サンプル シナリオについては、「 Outlook モバイル アドインでイベント ベースのアクティブ化を実装する」を参照してください。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-from-message-compose.yaml
Office.context.mailbox.item.from.getAsync(function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
const msgFrom = asyncResult.value;
console.log("Message from: " + msgFrom.displayName + " (" + msgFrom.emailAddress + ")");
} else {
console.error(asyncResult.error);
}
});
inReplyTo
現在のメッセージによって返信される元のメッセージのメッセージ ID を取得します。
inReplyTo: string;
プロパティ値
string
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
重要:
Outlook on Windows では、返信の件名の変更など、ユーザーが行った変更に関係なく、すべての応答で
inReplyTo
値が維持されます。inReplyTo
プロパティは、会議の開催者でもあるユーザーが転送する新しいメッセージと会議出席依頼のnull
を返します。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-in-reply-to.yaml
// This snippet gets the ID of the message being replied to by the current message (PR_IN_REPLY_TO_ID).
// The API call is supported on messages being composed and isn't supported on read items.
const inReplyTo = Office.context.mailbox.item.inReplyTo;
if (inReplyTo) {
console.log("ID of the message being replied to: " + inReplyTo);
} else {
console.log("No InReplyTo property available for this message");
}
internetHeaders
メッセージのカスタム インターネット ヘッダーを取得または設定します。
internetHeaders
プロパティは、メッセージのインターネット ヘッダーを管理するメソッドを提供するInternetHeaders
オブジェクトを返します。
詳細については、「 Outlook アドインのメッセージでインターネット ヘッダーを取得して設定する」を参照してください。
internetHeaders: InternetHeaders;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
重要: インターネット ヘッダー API は、Outlook on Android およびバージョン 4.2405.0 以降の iOS でサポートされています。 モバイル デバイス上の Outlook でサポートされる機能の詳細については、「モバイル デバイスで Outlook でサポートされている Outlook JavaScript API」を参照してください。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/70-mime-headers/manage-custom-internet-headers-message-compose.yaml
Office.context.mailbox.item.internetHeaders.getAsync(
["preferred-fruit", "preferred-vegetable", "best-vegetable", "nonexistent-header"],
function (asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
console.log("Selected headers: " + JSON.stringify(asyncResult.value));
} else {
console.log("Error getting selected headers: " + JSON.stringify(asyncResult.error));
}
}
);
itemType
インスタンスが表しているアイテムの種類を取得します。
itemType
プロパティは、アイテム オブジェクト インスタンスがメッセージか予定かを示す、ItemType
列挙値のいずれかを返します。
itemType: MailboxEnums.ItemType | string;
プロパティ値
Office.MailboxEnums.ItemType | string
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
// 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;
}
notificationMessages
アイテムの通知メッセージを取得します。
notificationMessages: NotificationMessages;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
// 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);
sensitivityLabel
メッセージの 秘密度ラベル を取得または設定するオブジェクトを取得します。
sensitivityLabel: SensitivityLabel;
プロパティ値
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
重要: アドインで秘密度ラベル機能を使用するには、Microsoft 365 E5 サブスクリプションが必要です。
アドインで秘密度ラベルを管理する方法の詳細については、「作成モードでメッセージまたは予定の秘密度ラベルを管理する」を参照してください。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/60-sensitivity-label/sensitivity-label.yaml
// This snippet gets the current mail item's sensitivity label.
Office.context.sensitivityLabelsCatalog.getIsEnabledAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded && asyncResult.value == true) {
Office.context.mailbox.item.sensitivityLabel.getAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
console.log(asyncResult.value);
} else {
console.log("Action failed with error: " + asyncResult.error.message);
}
});
} else {
console.log("Action failed with error: " + asyncResult.error.message);
}
});
seriesId
インスタンスが属する系列の ID を取得します。
Outlook on the web、Windows (新規およびクラシック) と Mac では、seriesId
は、このアイテムが属する親 (シリーズ) アイテムの Exchange Web サービス (EWS) ID を返します。 ただし、iOS と Android では、seriesId は親アイテムの REST ID を返します。
seriesId: string;
プロパティ値
string
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
重要: seriesId
プロパティによって返される識別子は、Exchange Web Services アイテム識別子と同じです。
seriesId
プロパティは、Outlook REST API で使用される Outlook ID と同じではありません。 この値を使用して REST API 呼び出しを行う前に、 Office.context.mailbox.convertToRestId
を使用して変換する必要があります。 詳細については、「 Outlook アドインから Outlook REST API を使用する」を参照してください。
seriesId
プロパティは、単一の予定、系列アイテム、会議出席依頼などの親アイテムを持たないアイテムのnull
を返し、会議出席依頼ではないその他のアイテムのundefined
を返します。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/50-recurrence/get-series-id.yaml
const seriesId = Office.context.mailbox.item.seriesId;
if (seriesId === undefined) {
console.log("This is a message that's not a meeting request.");
} else if (seriesId === null) {
console.log("This is a single appointment, a parent series, or a meeting request for a series or single meeting.");
} else {
console.log("This is an instance belonging to series with ID " + seriesId);
}
sessionData
Compose モードで項目の SessionData を管理します。
重要: SessionData オブジェクト全体は、アドインあたり 50,000 文字に制限されています。
sessionData: SessionData;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/session-data-apis.yaml
Office.context.mailbox.item.sessionData.getAllAsync(function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
console.log("The sessionData is " + JSON.stringify(asyncResult.value));
} else {
console.log("Failed to get all sessionData. Error: " + JSON.stringify(asyncResult.error));
}
});
subject
アイテムの件名フィールドに示される説明を取得または設定します。
subject
プロパティは、電子メール サーバーによって送信されたアイテムの件名全体を取得または設定します。
subject
プロパティは件名を取得および設定するためのメソッドを提供する Subject
オブジェクトを返します。
subject: Subject;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
// 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}`);
});
to
メッセージの To 行にある受信者へのアクセスを提供します。 オブジェクトの種類とアクセス レベルは、現在の項目のモードによって異なります。
to
プロパティは、メッセージの To 行の受信者を取得または更新するメソッドを提供する Recipients
オブジェクトを返します。 ただし、クライアント/プラットフォーム (Windows、Mac など) によっては、取得または更新できる受信者の数に制限が適用される場合があります。 詳細については、 Recipients オブジェクトを参照してください。
to: Recipients;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
Office.context.mailbox.item.to.setAsync( ['alice@contoso.com', 'bob@contoso.com'] );
Office.context.mailbox.item.to.addAsync( ['jason@contoso.com'] );
Office.context.mailbox.item.to.getAsync(callback);
function callback(asyncResult) {
const arrayOfToRecipients = asyncResult.value;
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-set-to-message-compose.yaml
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);
}
});
...
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);
}
});
メソッドの詳細
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 }
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
isInline
: true の場合、添付ファイルはメッセージ本文の画像としてインラインで表示され、添付ファイルの一覧には表示されません。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 成功すると、添付ファイルの識別子が asyncResult.value
プロパティに設定されます。 添付ファイルのアップロードに失敗した場合、asyncResult
オブジェクトには、エラーの説明を提供する Error
オブジェクトが含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
重要:
このメソッドは、Outlook on iOS または Android ではサポートされていません。 Outlook モバイルでサポートされている API の詳細については、「モバイル デバイスで Outlook でサポートされている Outlook JavaScript API」を参照してください。
Windows 上の従来の Outlook の最近のビルドでは、このアクションに
Authorization: Bearer
ヘッダーを誤って追加するバグが導入されました (この API を使用するか、Outlook UI を使用するか)。 この問題を回避するには、要件セット 1.8 で導入されたaddFileAttachmentFromBase64
API を使用します。添付するファイルの URI は、運用環境でのキャッシュをサポートしている必要があります。 イメージをホストしているサーバーは、HTTP 応答で
no-cache
、no-store
、または同様のオプションを指定するCache-Control
ヘッダーを返すべきではありません。 ただし、アドインを開発し、ファイルに変更を加えると、キャッシュによって変更が表示されない可能性があります。 開発中にCache-Control
ヘッダーを使用することをお勧めします。removeAttachmentAsync
メソッドで同じ URI を使用して、同じセッション内の添付ファイルを削除できます。
エラー:
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
型の 1 つのパラメーターで呼び出されます。 成功すると、添付ファイルの識別子が asyncResult.value
プロパティに設定されます。 添付ファイルのアップロードに失敗した場合、asyncResult
オブジェクトには、エラーの説明を提供する Error
オブジェクトが含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
重要:
このメソッドは、Outlook on iOS または Android ではサポートされていません。 Outlook モバイルでサポートされている API の詳細については、「モバイル デバイスで Outlook でサポートされている Outlook JavaScript API」を参照してください。
Windows 上の従来の Outlook の最近のビルドでは、このアクションに
Authorization: Bearer
ヘッダーを誤って追加するバグが導入されました (この API を使用するか、Outlook UI を使用するか)。 この問題を回避するには、要件セット 1.8 で導入されたaddFileAttachmentFromBase64
API を使用します。添付するファイルの URI は、運用環境でのキャッシュをサポートしている必要があります。 イメージをホストしているサーバーは、HTTP 応答で
no-cache
、no-store
、または同様のオプションを指定するCache-Control
ヘッダーを返すべきではありません。 ただし、アドインを開発し、ファイルに変更を加えると、キャッシュによって変更が表示されない可能性があります。 開発中にCache-Control
ヘッダーを使用することをお勧めします。removeAttachmentAsync
メソッドで同じ URI を使用して、同じセッション内の添付ファイルを削除できます。
エラー:
AttachmentSizeExceeded
: 添付ファイルが許可されているよりも大きい。FileTypeNotSupported
: 添付ファイルには、許可されていない拡張機能があります。NumberOfAttachmentsExceeded
: メッセージまたは予定に添付ファイルが多すぎます。
addFileAttachmentFromBase64Async(base64File, attachmentName, options, callback)
ファイルを添付ファイルとしてメッセージまたは予定に追加します。
addFileAttachmentFromBase64Async
メソッドは、Base64 エンコードからファイルをアップロードし、新規作成フォームの項目に添付します。 このメソッドは、 asyncResult.value
オブジェクトの添付ファイル識別子を返します。
その後、removeAttachmentAsync
メソッドで識別子を使用して同じセッションの添付ファイルを削除できます。
addFileAttachmentFromBase64Async(base64File: string, attachmentName: string, options: Office.AsyncContextOptions & { isInline: boolean }, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- base64File
-
string
電子メールまたはイベントに追加するイメージまたはファイルの Base64 でエンコードされたコンテンツ。 エンコードされた文字列の最大長は 27,892,122 文字 (約 25 MB) です。
- attachmentName
-
string
添付ファイルのアップロード時に表示される添付ファイルの名前。 最大の長さは、255 文字です。
- options
-
Office.AsyncContextOptions & { isInline: boolean }
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
isInline
: true の場合、添付ファイルはメッセージ本文の画像としてインラインで表示され、添付ファイルの一覧には表示されません。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、Office.AsyncResult 型の 1 つのパラメーターで呼び出されます。 成功すると、添付ファイルの識別子が asyncResult.value
プロパティに設定されます。 添付ファイルのアップロードに失敗した場合、asyncResult
オブジェクトには、エラーの説明を提供する Error
オブジェクトが含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
重要:
Android および iOS の Outlook では、作成モードでのメッセージへのインライン Base64 ファイルの追加がサポートされています。 Outlook モバイルでサポートされている API の詳細については、「モバイル デバイスで Outlook でサポートされている Outlook JavaScript API」を参照してください。
データ URL API (たとえば、
readAsDataURL
) を使用している場合は、データ URL プレフィックスを取り除き、残りの文字列をこの API に送信する必要があります。 たとえば、完全な文字列がdata:image/svg+xml;base64,<rest of Base64 string>
で表される場合は、data:image/svg+xml;base64,
を削除します。構成されているメッセージまたは予定の本文にインライン Base64 イメージを追加する場合は、
addFileAttachmentFromBase64Async
を使用してイメージを挿入する前に、Office.context.mailbox.item.body.getAsync メソッドを使用して現在のアイテム本文を取得する必要があります。 それ以外の場合、イメージは挿入後に本文にレンダリングされません。 詳細については、「 ファイルのアタッチ」を参照してください。
エラー:
AttachmentSizeExceeded
: 添付ファイルが許可されているよりも大きい。FileTypeNotSupported
: 添付ファイルには、許可されていない拡張機能があります。NumberOfAttachmentsExceeded
: メッセージまたは予定に添付ファイルが多すぎます。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml
const base64String =
"iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsSAAALEgHS3X78AAACRUlEQVRYw82XzXHbMBCFP2F8tzsQc8Ixyh0zoiuIXIGdCsxUYKqC0B04FdiuwMoM7mGOOIXqQGoAymXhgSX+itJM9kIRFLAP+3YXD5Pdbscx5oxaAIW8Ztr6l2PWmQwF4IyaieP53qdfAqQ8CwBn1JU4vpWhrbxXQA5MZfynANmcDIAzKgcy4FKGXsVJFf3nLgKyBQptfT4KQMRz2N0fcbxqmRMDWXflx0VPnrdArq0vekQ1Dv0UeHZGNebHhwjU8AzwKM43RyZnbAf58Q6ghudeWd0Aus0+5EcMIIRi3beua0D3Nm39BEAx3i7HTK4DEBJn5YxKOnaRA5+ErpMBWMpzDvx1RuXCcxOISlufAjfC7zgAsqsvUvMAD0ApPaEtGi9AIlUzKgJo60tt/SyKRkzLrAXERluf7W1gOICWaMyB386oooOWsIHvXbSoHuUSFovtHqicUVnH3EJoeT0aQEf5/XBGlc6otIOWBXAtPeZkAIJ9Bt6cUU9tZautX2nrk3MACHYr1ZKProKRtDw4o8pzAPjWo+NtpXTTvoteDDg8noDAcwbcRedAkGdFXyk2GEDcegVAFp2gyVDHjRQ4o6q2smoqtR5Hd+qMqtoALCWUUymr1m43QMZfOaMK4C0SrMsDANJ2E5FNcbdbjHC+ENl+H0myJFbLtaq4Rt8dyPBYRQV1E40nMv9rl7xrOw3DGb+Whcqu3i/OM6CUOWvgRlufNmnLYy4m77uJI7AXtdNcTDrU71LEyv7v01/N/ovL6bmu5/8A1tNWZldH0W4AAAAASUVORK5CYII=";
Office.context.mailbox.item.addFileAttachmentFromBase64Async(
base64String,
"logo.png",
{ isInline: false },
(result) => {
console.log(result);
}
);
...
// Set the signature for the current item with inline image.
const modIcon1Base64 = "iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpDRDMxMDg1MjBCNDZFMTExODE2MkM1RUI2M0M4MDYxRCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpFMTUxQjgyRjQ2MEQxMUUxODlFMkQwNTYzQ0YwMTUxMiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpFMTUxQjgyRTQ2MEQxMUUxODlFMkQwNTYzQ0YwMTUxMiIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgV2luZG93cyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkQxMzEwODUyMEI0NkUxMTE4MTYyQzVFQjYzQzgwNjFEIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkNEMzEwODUyMEI0NkUxMTE4MTYyQzVFQjYzQzgwNjFEIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+uC/WfAAAAehJREFUeNpilCzfwEAEkAbiECA2A2J1IOaHin8E4ptAfBaIVwLxU0IGMRKw0B6IW4DYhoE4cASIK6E0VsCEQ1wUiNcB8QESLGOAqj0MxBuhZhBloS4QnwHiQAbygR/UDF1CFupCXSjHQDmQg5qli8tCUBBsQUoQ1AD8UDNFsVk4n0o+w+bT+egWglKjNymmeGhLkqLcG2oHAwtUoIuQDj5OVgZPLUmwRe5aEmAxqYqNpFgKssOcCeplM0KqdST5GfpDDRm0JfkYrj3/SE7QguyQY4ImYYLgCtAS10kHGMw6dzNsv/qC7OwCClJXYlR++v6b4er3j5QmIFcmaNlIL6AOslCIjhYKMTHQGTBBqxh6gXcgC6/R0cKbIAv30dHCfaAKGJTxHxJSqS3Fz9DkowNmywpyMcgA8fF7b8D8VWcfM6w8+4gYC+VB+RCk8hSh0gaUD4/dewvlvUWRe/z+GzGWgex4BGtiOAHxXhoHpzMoSGHZAhSPW2lo2VZYWkHOh4nEtLrIAE+hZmNUwK+B2BOIv1PRsu9QM1/jatNcBtVZ0IREKXgENesyoVYbzNIdFFi2A5tl+NqlL6BB4QBNzsSCU1A9nlAzMAALAQMOQl0qB23qWwKxIlIrDBQ394H4OBCvISYqAAIMACVibHDqsO7zAAAAAElFTkSuQmCC";
Office.context.mailbox.item.addFileAttachmentFromBase64Async(
modIcon1Base64,
"myImage.png",
{ isInline: true },
function(result) {
if (result.status == Office.AsyncResultStatus.Succeeded) {
const signature = $("#signature").val() + "<img src='cid:myImage.png'>";
console.log(`Setting signature to "${signature}".`);
Office.context.mailbox.item.body.setSignatureAsync(
signature,
{ coercionType: "html" },
function(asyncResult) {
console.log(`setSignatureAsync: ${asyncResult.status}`);
}
);
} else {
console.error(`addFileAttachmentFromBase64Async: ${result.error}`);
}
}
);
addFileAttachmentFromBase64Async(base64File, attachmentName, callback)
ファイルを添付ファイルとしてメッセージまたは予定に追加します。
addFileAttachmentFromBase64Async
メソッドは、Base64 エンコードからファイルをアップロードし、新規作成フォームの項目に添付します。 このメソッドは、 asyncResult.value
オブジェクトの添付ファイル識別子を返します。
その後、removeAttachmentAsync
メソッドで識別子を使用して同じセッションの添付ファイルを削除できます。
addFileAttachmentFromBase64Async(base64File: string, attachmentName: string, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- base64File
-
string
電子メールまたはイベントに追加するイメージまたはファイルの Base64 でエンコードされたコンテンツ。 エンコードされた文字列の最大長は 27,892,122 文字 (約 25 MB) です。
- attachmentName
-
string
添付ファイルのアップロード時に表示される添付ファイルの名前。 最大の長さは、255 文字です。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、Office.AsyncResult 型の 1 つのパラメーターで呼び出されます。 成功すると、添付ファイルの識別子が asyncResult.value
プロパティに設定されます。 添付ファイルのアップロードに失敗した場合、asyncResult
オブジェクトには、エラーの説明を提供する Error
オブジェクトが含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
重要:
Android および iOS の Outlook では、作成モードでのメッセージへのインライン Base64 ファイルの追加がサポートされています。 Outlook モバイルでサポートされている API の詳細については、「モバイル デバイスで Outlook でサポートされている Outlook JavaScript API」を参照してください。
データ URL API (たとえば、
readAsDataURL
) を使用している場合は、データ URL プレフィックスを取り除き、残りの文字列をこの API に送信する必要があります。 たとえば、完全な文字列がdata:image/svg+xml;base64,<rest of Base64 string>
で表される場合は、data:image/svg+xml;base64,
を削除します。構成されているメッセージまたは予定の本文にインライン Base64 イメージを追加する場合は、
addFileAttachmentFromBase64Async
を使用してイメージを挿入する前に、Office.context.mailbox.item.body.getAsync メソッドを使用して現在のアイテム本文を取得する必要があります。 それ以外の場合、イメージは挿入後に本文にレンダリングされません。 詳細については、「 ファイルのアタッチ」を参照してください。
エラー:
AttachmentSizeExceeded
: 添付ファイルが許可されているよりも大きい。FileTypeNotSupported
: 添付ファイルには、許可されていない拡張機能があります。NumberOfAttachmentsExceeded
: メッセージまたは予定に添付ファイルが多すぎます。
addHandlerAsync(eventType, handler, options, callback)
サポートされているイベントのイベント ハンドラーを追加します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。
サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。
addHandlerAsync(eventType: Office.EventType | string, handler: any, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- eventType
-
Office.EventType | string
ハンドラーを呼び出す必要のあるイベント。
- handler
-
any
イベントを処理する関数。 関数は、オブジェクト リテラルである単一パラメーターを受け入れる必要があります。 パラメーターの type
プロパティは、addHandlerAsync
に渡されるeventType
パラメーターと一致します。
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
function myHandlerFunction(eventarg) {
if (eventarg.attachmentStatus === Office.MailboxEnums.AttachmentStatus.Added) {
const attachment = eventarg.attachmentDetails;
console.log("Event Fired and Attachment Added!");
getAttachmentContentAsync(attachment.id, options, callback);
}
}
Office.context.mailbox.item.addHandlerAsync(Office.EventType.AttachmentsChanged, myHandlerFunction, myCallback);
addHandlerAsync(eventType, handler, callback)
サポートされているイベントのイベント ハンドラーを追加します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。
サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。
addHandlerAsync(eventType: Office.EventType | string, handler: any, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- eventType
-
Office.EventType | string
ハンドラーを呼び出す必要のあるイベント。
- handler
-
any
イベントを処理する関数。 関数は、オブジェクト リテラルである単一パラメーターを受け入れる必要があります。 パラメーターの type
プロパティは、addHandlerAsync
に渡されるeventType
パラメーターと一致します。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
addItemAttachmentAsync(itemId, attachmentName, options, callback)
メッセージなどの Exchange アイテムを添付ファイルとして、メッセージまたは予定に追加します。
addItemAttachmentAsync
メソッドは、指定された Exchange 識別子を持つアイテムを新規作成フォームのアイテムにアタッチします。 コールバック関数を指定した場合、メソッドは、添付ファイル識別子または項目の添付中に発生したエラーを示すコードを含む 1 つのパラメーター asyncResult
で呼び出されます。 必要に応じて、options パラメーターを使用して状態情報をコールバック関数に渡すことができます。
その後、removeAttachmentAsync
メソッドで識別子を使用して同じセッションの添付ファイルを削除できます。
Office アドインがOutlook on the webまたは新しい Outlook on 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
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 成功すると、添付ファイルの識別子が asyncResult.value
プロパティに設定されます。 添付ファイルの追加に失敗した場合、asyncResult
オブジェクトには、エラーの説明を提供する Error
オブジェクトが含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
エラー:
-
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 識別子を持つアイテムを新規作成フォームのアイテムにアタッチします。 コールバック関数を指定した場合、メソッドは、添付ファイル識別子または項目の添付中に発生したエラーを示すコードを含む 1 つのパラメーター asyncResult
で呼び出されます。 必要に応じて、options パラメーターを使用して状態情報をコールバック関数に渡すことができます。
その後、removeAttachmentAsync
メソッドで識別子を使用して同じセッションの添付ファイルを削除できます。
Office アドインがOutlook on the webまたは新しい Outlook on 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
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 成功すると、添付ファイルの識別子が asyncResult.value
プロパティに設定されます。 添付ファイルの追加に失敗した場合、asyncResult
オブジェクトには、エラーの説明を提供する Error
オブジェクトが含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
エラー:
-
NumberOfAttachmentsExceeded
: メッセージまたは予定に添付ファイルが多すぎます。
close()
作成中の現在の項目を閉じます。
close
メソッドの動作は、作成中のアイテムの現在の状態によって異なります。 アイテムに未保存の変更がある場合、クライアントはアクションの保存、破棄、または閉じるようユーザーに求めます。
Outlook on Windows (クラシック) と Mac では、 close
メソッドは閲覧ウィンドウの返信には影響しません。
close(): void;
戻り値
void
注釈
最小アクセス許可レベル: 制限あり
適用できる Outlook モード: メッセージ Compose
重要: Outlook on the webおよび新しい Outlook on Windows ではアイテムが予定であり、以前にsaveAsync
を使用して保存されている場合、アイテムが最後に保存されてから変更が発生しなかった場合でも、ユーザーは保存、破棄、または取り消しを求められます。
ヒント: アドインを次に示す場合は、close
メソッドの代わりに closeAsync メソッドを使用します。
保存ダイアログをユーザーに求めることなく、構成されているメッセージを自動的に破棄します。
ユーザーが、構成中のメッセージの [アイテムの保存] ダイアログを取り消すタイミングを決定します。
閲覧ウィンドウまたは既存の下書きで返信を閉じます。
例
// 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();
closeAsync(options, callback)
未保存の変更を破棄するオプションで構成されている現在のメッセージを閉じます。 構成されるメッセージには、新しいメッセージ、返信、または既存の下書きを指定できます。
closeAsync(options: Office.AsyncContextOptions & { discardItem: boolean }, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- options
-
Office.AsyncContextOptions & { discardItem: boolean }
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
discardItem
: true
場合、構成されている現在のメッセージは閉じられ、保存されていない変更は破棄されます。 パラメーターが宣言されていないか、 false
に設定されている場合は、下書きの保存、変更の破棄、操作の取り消しをユーザーに求める保存ダイアログが表示されます。 この動作は、閲覧ウィンドウからポップアウトされた新しいメッセージと応答に対して発生します。 閲覧ウィンドウまたは既存の下書きで返信を閉じる場合は、 discardItem
を true
に設定する必要があります。 それ以外の場合、呼び出しはエラーを返します。 エラーの詳細については、「解説」セクションを参照してください。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、コールバック パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
エラー:
The operation was cancelled by the user
: ユーザーは[保存] ダイアログから [キャンセル] を選択し、discardItem
プロパティが定義されていないか、false
に設定されています。The operation is not supported
:closeAsync
メソッドは、閲覧ウィンドウまたは既存の下書きで返信を閉じようとし、discardItem
プロパティが定義されていないか、false
に設定されています。
closeAsync(callback)
構成されている現在の新しいメッセージを閉じます。
構成される新しいメッセージに対する動作は、メッセージに未保存の変更が含まれているかどうかによって異なります。 変更が行われなかった場合、メッセージは保存ダイアログなしで閉じられます。 一方、メッセージに未保存の変更が含まれている場合は、下書きの保存、変更の破棄、操作の取り消しをユーザーに求める保存ダイアログが表示されます。
closeAsync(callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、コールバック パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
エラー:
The operation was cancelled by the user
: ユーザーは、[保存] ダイアログから [キャンセル ] を選択します。The operation is not supported
:closeAsync
メソッドは、閲覧ウィンドウまたは既存の下書きで返信を閉じようとします。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/25-item-save-and-close/close-async.yaml
// This snippet closes the current message being composed and discards any unsaved changes when the optional property, discardItem, is set to true.
// The API call works on a new message being composed, a reply, or an existing draft.
// When discardItem is set to false or isn't defined on a new message with unsaved changes, the user is prompted to save a draft, discard the changes, or cancel the close operation.
Office.context.mailbox.item.closeAsync(
{ discardItem: true },
(asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Action failed with error: " + asyncResult.error.message);
return;
}
});
disableClientSignatureAsync(options, callback)
Outlook クライアント署名を無効にします。
このメソッドの動作は、アドインが実行されているクライアントによって異なります。
Outlook on the webおよび新しい Outlook on Windowsでは、新しいメール、返信、転送の署名オプションが無効になっています。 選択されている署名は、 メソッドによっても無効になります。
Outlook on Windows (クラシック) と Mac では、送信アカウントの [新しいメッセージ ] セクションと [ 返信/転送 ] セクションの署名が (なし) に設定されています。
Android および iOS の Outlook では、モバイル デバイスに保存されている署名はクリアされます。
disableClientSignatureAsync(options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、コールバック パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
重要: この方法は、Outlook on Android およびバージョン 4.2352.0 以降の iOS のメッセージ Composeでサポートされています。 Outlook モバイルでサポートされている API の詳細については、「モバイル デバイスで Outlook でサポートされている Outlook JavaScript API」を参照してください。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/work-with-client-signatures.yaml
// Disable the client signature.
Office.context.mailbox.item.disableClientSignatureAsync(function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
console.log("disableClientSignatureAsync succeeded");
} else {
console.error(asyncResult.error);
}
});
disableClientSignatureAsync(callback)
Outlook クライアント署名を無効にします。
このメソッドの動作は、アドインが実行されているクライアントによって異なります。
Outlook on the webおよび新しい Outlook on Windowsでは、新しいメール、返信、転送の署名オプションが無効になっています。 選択されている署名は、 メソッドによっても無効になります。
Outlook on Windows (クラシック) と Mac では、送信アカウントの [新しいメッセージ ] セクションと [ 返信/転送 ] セクションの署名が (なし) に設定されています。
Android および iOS の Outlook では、モバイル デバイスに保存されている署名はクリアされます。
disableClientSignatureAsync(callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、コールバック パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
重要: この方法は、Outlook on Android およびバージョン 4.2352.0 以降の iOS のメッセージ Composeでサポートされています。 Outlook モバイルでサポートされている API の詳細については、「モバイル デバイスで Outlook でサポートされている Outlook JavaScript API」を参照してください。
getAttachmentContentAsync(attachmentId, options, callback)
メッセージまたは予定から添付ファイルを取得し、 AttachmentContent
オブジェクトとして返します。
getAttachmentContentAsync
メソッドは、指定した識別子を持つ添付ファイルをアイテムから取得します。 ベスト プラクティスとして、 getAttachmentsAsync
呼び出しから添付ファイルの識別子を取得し、同じセッションでその識別子を使用して添付ファイルを取得する必要があります。 Outlook on the web、モバイル デバイス、および新しい Outlook on Windows では添付ファイル識別子は同じセッション内でのみ有効です。 ユーザーがアプリを閉じると、またはユーザーがインライン フォームの作成を開始すると、その後フォームがポップアップ表示され、別のウィンドウで続行されます。
getAttachmentContentAsync(attachmentId: string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<AttachmentContent>) => void): void;
パラメーター
- attachmentId
-
string
取得する添付ファイルの識別子。
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<Office.AttachmentContent>) => void
省略可能。 メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。 呼び出しが失敗した場合、 asyncResult.error
プロパティにはエラー コードが含まれます。エラーの理由が示されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
エラー:
AttachmentTypeNotSupported
: 添付ファイルの種類はサポートされていません。 サポートされていない種類には、リッチ テキスト形式の埋め込み画像や、メールや予定表アイテム以外のアイテムの添付ファイルの種類 (連絡先やタスク アイテムなど) が含まれます。InvalidAttachmentId
: 添付ファイル識別子が存在しません。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/get-attachment-content.yaml
// Gets the attachments of the current message or appointment in compose mode.
const options = { asyncContext: { currentItem: item } };
// The getAttachmentsAsync call can only be used in compose mode.
item.getAttachmentsAsync(options, callback);
function callback(result) {
if (result.status === Office.AsyncResultStatus.Failed) {
console.log(result.error.message);
return;
}
if (result.value.length <= 0) {
console.log("Mail item has no attachments.");
return;
}
for (let i = 0; i < result.value.length; i++) {
// Log the attachment type and its contents to the console.
result.asyncContext.currentItem.getAttachmentContentAsync(result.value[i].id, handleAttachmentsCallback);
}
}
getAttachmentContentAsync(attachmentId, callback)
メッセージまたは予定から添付ファイルを取得し、 AttachmentContent
オブジェクトとして返します。
getAttachmentContentAsync
メソッドは、指定した識別子を持つ添付ファイルをアイテムから取得します。 ベスト プラクティスとして、 getAttachmentsAsync
呼び出しから添付ファイルの識別子を取得し、同じセッションでその識別子を使用して添付ファイルを取得する必要があります。 Outlook on the web、モバイル デバイス、および新しい Outlook on Windows では添付ファイル識別子は同じセッション内でのみ有効です。 ユーザーがアプリを閉じると、またはユーザーがインライン フォームの作成を開始すると、その後フォームがポップアップ表示され、別のウィンドウで続行されます。
getAttachmentContentAsync(attachmentId: string, callback?: (asyncResult: Office.AsyncResult<AttachmentContent>) => void): void;
パラメーター
- attachmentId
-
string
取得する添付ファイルの識別子。
- callback
-
(asyncResult: Office.AsyncResult<Office.AttachmentContent>) => void
省略可能。 メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。 呼び出しが失敗した場合、 asyncResult.error
プロパティにはエラー コードが含まれます。エラーの理由が示されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
エラー:
AttachmentTypeNotSupported
: 添付ファイルの種類はサポートされていません。 サポートされていない種類には、リッチ テキスト形式の埋め込み画像や、メールや予定表アイテム以外のアイテムの添付ファイルの種類 (連絡先やタスク アイテムなど) が含まれます。InvalidAttachmentId
: 添付ファイル識別子が存在しません。
getAttachmentsAsync(options, callback)
項目の添付ファイルを配列として取得します。
getAttachmentsAsync(options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<AttachmentDetailsCompose[]>) => void): void;
パラメーター
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<Office.AttachmentDetailsCompose[]>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 呼び出しが失敗した場合、 asyncResult.error
プロパティにはエラー コードが含まれます。エラーの理由が示されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml
Office.context.mailbox.item.getAttachmentsAsync((result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.error(result.error.message);
return;
}
if (result.value.length > 0) {
for (let i = 0; i < result.value.length; i++) {
const attachment = result.value[i];
let attachmentType;
switch (attachment.attachmentType) {
case Office.MailboxEnums.AttachmentType.Cloud:
attachmentType = "Attachment is stored in a cloud location";
break;
case Office.MailboxEnums.AttachmentType.File:
attachmentType = "Attachment is a file";
break;
case Office.MailboxEnums.AttachmentType.Item:
attachmentType = "Attachment is an Exchange item";
break;
}
console.log(
"ID: " +
attachment.id +
"\n" +
"Type: " +
attachmentType +
"\n" +
"Name: " +
attachment.name +
"\n" +
"Size: " +
attachment.size +
"\n" +
"isInline: " +
attachment.isInline
);
}
} else {
console.log("No attachments on this message.");
}
});
getAttachmentsAsync(callback)
項目の添付ファイルを配列として取得します。
getAttachmentsAsync(callback?: (asyncResult: Office.AsyncResult<AttachmentDetailsCompose[]>) => void): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<Office.AttachmentDetailsCompose[]>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 呼び出しが失敗した場合、 asyncResult.error
プロパティにはエラー コードが含まれます。エラーの理由が示されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
getComposeTypeAsync(options, callback)
メッセージ作成の種類とその強制型を指定します。 メッセージは、新しいメッセージ、または返信または転送できます。 強制型には、HTML またはプレーン テキストを使用できます。
getComposeTypeAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<any>) => void): void;
パラメーター
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<any>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 成功すると、 asyncResult.value
プロパティには、アイテムの compose 型と強制型を持つオブジェクトが含まれます。
戻り値
void
メッセージ項目の ComposeType
と CoercionType
列挙値を持つオブジェクト。
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
重要: この方法は、Outlook on Android およびバージョン 4.2352.0 以降の iOS でサポートされています。 Outlook モバイルでサポートされている API の詳細については、「モバイル デバイスで Outlook でサポートされている Outlook JavaScript API」を参照してください。
getComposeTypeAsync(callback)
メッセージ作成の種類とその強制型を指定します。 メッセージは、新しいメッセージ、または返信または転送できます。 強制型には、HTML またはプレーン テキストを使用できます。
getComposeTypeAsync(callback: (asyncResult: Office.AsyncResult<any>) => void): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<any>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 成功すると、 asyncResult.value
プロパティには、アイテムの compose 型と強制型を持つオブジェクトが含まれます。
戻り値
void
メッセージ項目の ComposeType
と CoercionType
列挙値を持つオブジェクト。
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
重要: この方法は、Outlook on Android およびバージョン 4.2352.0 以降の iOS でサポートされています。 Outlook モバイルでサポートされている API の詳細については、「モバイル デバイスで Outlook でサポートされている Outlook JavaScript API」を参照してください。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/work-with-client-signatures.yaml
// Get the compose type of the current message.
Office.context.mailbox.item.getComposeTypeAsync(function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
console.log(
"getComposeTypeAsync succeeded with composeType: " +
asyncResult.value.composeType +
" and coercionType: " +
asyncResult.value.coercionType
);
} else {
console.error(asyncResult.error);
}
});
getConversationIndexAsync(options, callback)
会話スレッド内の現在のメッセージの Base64 でエンコードされた位置を取得します。
getConversationIndexAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。 スレッド内の現在のメッセージの Base64 でエンコードされた位置は、 asyncResult.value
プロパティで返されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
ヒント: 会話インデックスを使用して、会話スレッド内のメッセージを見つけることができます。 次に、その内容を使用して、構成されている現在のメッセージのコンテキストを提供します。
getConversationIndexAsync(callback)
会話スレッド内の現在のメッセージの Base64 でエンコードされた位置を取得します。
getConversationIndexAsync(callback: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。 スレッド内の現在のメッセージの Base64 でエンコードされた位置は、 asyncResult.value
プロパティで返されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
ヒント: 会話インデックスを使用して、会話スレッド内のメッセージを見つけることができます。 次に、その内容を使用して、構成されている現在のメッセージのコンテキストを提供します。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-conversation-index.yaml
// This snippet returns the Base64-encoded position of the current message in a conversation thread (PR_CONVERSATION_INDEX).
// The API call is supported on a message being composed and isn't supported on read items or appointments.
Office.context.mailbox.item.getConversationIndexAsync((result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.log(result.error.message);
return;
}
const conversationIndex = result.value;
if (conversationIndex) {
console.log("Position in the conversation thread: " + conversationIndex);
} else {
console.log("The current message doesn't belong to a conversation thread.");
}
});
getInitializationContextAsync(options, callback)
アクション可能なメッセージによってアドインがアクティブ化されたときに渡される初期化データを取得します。
getInitializationContextAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 成功すると、初期化コンテキスト データは、 asyncResult.value
プロパティの文字列 (または初期化コンテキストがない場合は空の文字列) として提供されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
// Get the initialization context (if present).
Office.context.mailbox.item.getInitializationContextAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
if (asyncResult.value.length > 0) {
// The value is a string, parse to an object.
const context = JSON.parse(asyncResult.value);
// Do something with context.
} else {
// Empty context, treat as no context.
}
} else {
// Handle the error.
}
});
getInitializationContextAsync(callback)
アクション可能なメッセージによってアドインがアクティブ化されたときに渡される初期化データを取得します。
getInitializationContextAsync(callback: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 成功すると、初期化コンテキスト データは、 asyncResult.value
プロパティの文字列 (または初期化コンテキストがない場合は空の文字列) として提供されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
getItemClassAsync(options, callback)
選択したメッセージの Exchange Web Services アイテム クラスを取得します。
getItemClassAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。 メッセージ クラスは、 asyncResult.value
プロパティで返されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
重要:
次の表に、既定のメッセージ クラスを示します。
アイテム クラス | 説明 |
---|---|
IPM.Note | 新しいメッセージとメッセージ応答 |
IPM。Note.SMIME | 署名可能な暗号化されたメッセージ |
IPM。Note.SMIME.MultipartSigned | 暗号化キーが必要です。 |
IPM.Schedule.Meeting.Request | 会議出席依頼 |
IPM.Schedule.Meeting.Canceled | 会議のキャンセル |
IPM。Schedule.Meeting.Resp.Neg | 会議出席依頼に対する辞退の通知 |
IPM。Schedule.Meeting.Resp.Pos | 会議出席依頼を受け入れるための応答 |
IPM。Schedule.Meeting.Resp.Tent | 会議出席依頼に対する仮の受諾の通知 |
getItemClassAsync(callback)
選択したメッセージの Exchange Web Services アイテム クラスを取得します。
getItemClassAsync(callback: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。 メッセージ クラスは、 asyncResult.value
プロパティで返されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
重要:
次の表に、既定のメッセージ クラスを示します。
アイテム クラス | 説明 |
---|---|
IPM.Note | 新しいメッセージとメッセージ応答 |
IPM。Note.SMIME | 署名可能な暗号化されたメッセージ |
IPM。Note.SMIME.MultipartSigned | 暗号化キーが必要です。 |
IPM.Schedule.Meeting.Request | 会議出席依頼 |
IPM.Schedule.Meeting.Canceled | 会議のキャンセル |
IPM。Schedule.Meeting.Resp.Neg | 会議出席依頼に対する辞退の通知 |
IPM。Schedule.Meeting.Resp.Pos | 会議出席依頼を受け入れるための応答 |
IPM。Schedule.Meeting.Resp.Tent | 会議出席依頼に対する仮の受諾の通知 |
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-item-class-async.yaml
// This snippet returns the Exchange Web Services item class property (PR_MESSAGE_CLASS) of the current message.
// The API call is only supported on a message being composed.
Office.context.mailbox.item.getItemClassAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Action failed with error: " + asyncResult.error.message);
return;
}
console.log("Item class of the current message: " + asyncResult.value);
});
getItemIdAsync(options, callback)
保存されたアイテムの Exchange Web Services (EWS) アイテム識別子 を非同期的に取得します。
呼び出されると、このメソッドはコールバック関数を使用して項目 ID を返します。
getItemIdAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 アイテムの EWS アイテム ID は、 asyncResult.value
プロパティで返されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
重要:
返されるアイテム ID は、Outlook エントリ ID または Outlook REST API で使用される ID と同じではありません。 この値を使用して REST API 呼び出しを行う前に、
Office.context.mailbox.convertToRestId
を使用して変換する必要があります。アドインが
getItemIdAsync
を呼び出す場合 (EWS や REST API で使用するアイテム ID を取得する場合など)、Outlook がキャッシュ モードの場合、アイテムがサーバーに同期されるまでに時間がかかる場合があることに注意してください。 アイテムが同期されるまで、アイテム ID は認識されないため、使用するとエラーが返されます。
エラー:
-
ItemNotSaved
: 項目が保存されるまで ID を取得できません。
getItemIdAsync(callback)
保存されたアイテムの Exchange Web Services (EWS) アイテム識別子 を非同期的に取得します。
呼び出されると、このメソッドはコールバック関数を使用して項目 ID を返します。
getItemIdAsync(callback: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 アイテムの EWS アイテム ID は、 asyncResult.value
プロパティで返されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
重要:
返されるアイテム ID は、Outlook エントリ ID または Outlook REST API で使用される ID と同じではありません。 この値を使用して REST API 呼び出しを行う前に、
Office.context.mailbox.convertToRestId
を使用して変換する必要があります。アドインが
getItemIdAsync
を呼び出す場合 (EWS や REST API で使用するアイテム ID を取得する場合など)、Outlook がキャッシュ モードの場合、アイテムがサーバーに同期されるまでに時間がかかる場合があることに注意してください。 アイテムが同期されるまで、アイテム ID は認識されないため、使用するとエラーが返されます。
エラー:
-
ItemNotSaved
: 項目が保存されるまで ID を取得できません。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/item-id-compose.yaml
Office.context.mailbox.item.getItemIdAsync((result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.error(`getItemIdAsync failed with message: ${result.error.message}`);
return;
}
console.log(result.value);
});
getSelectedDataAsync(coercionType, options, callback)
メッセージの件名または本文から非同期的に選択したデータを返します。
選択範囲がないのにカーソルが本文または件名にある場合、メソッドは選択したデータの空の文字列を返します。 本文または件名以外のフィールドが選択されている場合、InvalidSelection
エラーが返されます。
コールバック関数から選択したデータにアクセスするには、 asyncResult.value.data
を呼び出します。 選択範囲のソース プロパティにアクセスするには、 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
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<any>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。
戻り値
void
coercionType
によって決定される形式の文字列として選択されたデータ。
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
// 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
を呼び出します。 選択範囲のソース プロパティにアクセスするには、 asyncResult.value.sourceProperty
を呼び出します。これは、 body
または subject
のいずれかになります。
getSelectedDataAsync(coercionType: Office.CoercionType | string, callback: (asyncResult: Office.AsyncResult<any>) => void): void;
パラメーター
- coercionType
-
Office.CoercionType | string
データの形式を要求します。
Text
場合、メソッドはプレーン テキストを文字列として返し、存在するすべての HTML タグを削除します。
Html
場合、メソッドは選択したテキスト (プレーンテキストまたは HTML) を返します。
- callback
-
(asyncResult: Office.AsyncResult<any>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。
戻り値
void
coercionType
によって決定される形式の文字列として選択されたデータ。
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
// 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);
}
});
getSharedPropertiesAsync(options, callback)
共有フォルダーまたは共有メールボックス内の予定またはメッセージのプロパティを取得します。
この API の使用方法の詳細については、「 Outlook アドインで共有フォルダーと共有メールボックスのシナリオを有効にする」を参照してください。
getSharedPropertiesAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<SharedProperties>) => void): void;
パラメーター
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<Office.SharedProperties>) => void
メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。
asyncResult.value
プロパティは、共有アイテムのプロパティを提供します。
戻り値
void
注釈
[ API セット: 共有フォルダーのサポート用メールボックス 1.8、共有メールボックスサポート用メールボックス 1.13 ]
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
注: この方法は、Outlook on iOS または Android ではサポートされていません。
重要: メッセージ Compose モードでは、次の条件が満たされていない限り、この API はOutlook on the webまたは Windows (新規およびクラシック) ではサポートされません。
a. アクセス/共有フォルダーを委任する
メールボックスの所有者がメッセージを開始します。 これは、新しいメッセージ、返信、転送のいずれかです。
メッセージを保存し、独自の Drafts フォルダーからデリゲートと共有されているフォルダーに移動します。
デリゲートは、共有フォルダーから下書きを開き、作成を続行します。
b. 共有メールボックス (従来の Outlook on Windows にのみ適用)
共有メールボックス ユーザーがメッセージを開始します。 これは、新しいメッセージ、返信、転送のいずれかです。
メッセージを保存し、独自の 下書き フォルダーから共有メールボックス内のフォルダーに移動します。
別の共有メールボックス ユーザーが共有メールボックスから下書きを開き、作成を続行します。
メッセージは共有コンテキストに入り、これらの共有シナリオをサポートするアドインはアイテムの共有プロパティを取得できます。 メッセージが送信されると、通常は送信者の [送信済みアイテム] フォルダーに表示されます。
getSharedPropertiesAsync(callback)
共有フォルダーまたは共有メールボックス内の予定またはメッセージのプロパティを取得します。
この API の使用方法の詳細については、「 Outlook アドインで共有フォルダーと共有メールボックスのシナリオを有効にする」を参照してください。
getSharedPropertiesAsync(callback: (asyncResult: Office.AsyncResult<SharedProperties>) => void): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<Office.SharedProperties>) => void
メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。
asyncResult.value
プロパティは、共有アイテムのプロパティを提供します。
戻り値
void
注釈
[ API セット: 共有フォルダーのサポート用メールボックス 1.8、共有メールボックスサポート用メールボックス 1.13 ]
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
注: この方法は、Outlook on iOS または Android ではサポートされていません。
重要: メッセージ Compose モードでは、次の条件が満たされていない限り、この API はOutlook on the webまたは Windows (新規およびクラシック) ではサポートされません。
a. アクセス/共有フォルダーを委任する
メールボックスの所有者がメッセージを開始します。 これは、新しいメッセージ、返信、転送のいずれかです。
メッセージを保存し、独自の Drafts フォルダーからデリゲートと共有されているフォルダーに移動します。
デリゲートは、共有フォルダーから下書きを開き、作成を続行します。
b. 共有メールボックス (従来の Outlook on Windows にのみ適用)
共有メールボックス ユーザーがメッセージを開始します。 これは、新しいメッセージ、返信、転送のいずれかです。
メッセージを保存し、独自の 下書き フォルダーから共有メールボックス内のフォルダーに移動します。
別の共有メールボックス ユーザーが共有メールボックスから下書きを開き、作成を続行します。
メッセージは共有コンテキストに入り、これらの共有シナリオをサポートするアドインはアイテムの共有プロパティを取得できます。 メッセージが送信されると、通常は送信者の [送信済みアイテム] フォルダーに表示されます。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/65-delegates-and-shared-folders/get-shared-properties.yaml
Office.context.mailbox.item.getSharedPropertiesAsync((result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.error("The current folder or mailbox isn't shared.");
return;
}
const sharedProperties = result.value;
console.log(`Owner: ${sharedProperties.owner}`);
console.log(`Permissions: ${sharedProperties.delegatePermissions}`);
console.log(`Target mailbox: ${sharedProperties.targetMailbox}`);
});
isClientSignatureEnabledAsync(options, callback)
クライアント署名が有効になっているかどうかを取得します。
Outlook on Windows (クラシック) と Mac では、新しいメッセージ、応答、転送の既定の署名が送信 Outlook アカウントのテンプレートに設定されている場合、API 呼び出しは true
を返します。 Outlook on the webおよび新しい Outlook on Windows では、新規作成の種類newMail
、reply
、またはforward
に対して署名が有効になっている場合、API 呼び出しはtrue
を返します。 Outlook on Windows (クラシック) または Mac で設定が "(none)" に設定されているか、Outlook on the webまたは新しい Outlook on Windows で無効になっている場合、API 呼び出しはfalse
を返します。
isClientSignatureEnabledAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<boolean>) => void): void;
パラメーター
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<boolean>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/work-with-client-signatures.yaml
// Check if the client signature is currently enabled.
Office.context.mailbox.item.isClientSignatureEnabledAsync(function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
console.log("isClientSignatureEnabledAsync succeeded with result: " + asyncResult.value);
} else {
console.error(asyncResult.error);
}
});
isClientSignatureEnabledAsync(callback)
クライアント署名が有効になっているかどうかを取得します。
Outlook on Windows (クラシック) と Mac では、新しいメッセージ、応答、転送の既定の署名が送信 Outlook アカウントのテンプレートに設定されている場合、API 呼び出しは true
を返します。 Outlook on the webおよび新しい Outlook on Windows では、新規作成の種類newMail
、reply
、またはforward
に対して署名が有効になっている場合、API 呼び出しはtrue
を返します。 Outlook on Windows (クラシック) または Mac で設定が "(none)" に設定されているか、Outlook on the webまたは新しい Outlook on Windows で無効になっている場合、API 呼び出しはfalse
を返します。
isClientSignatureEnabledAsync(callback: (asyncResult: Office.AsyncResult<boolean>) => void): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<boolean>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
loadCustomPropertiesAsync(callback, userContext)
選択されたアイテムのこのアドインのカスタム プロパティを非同期に読み込みます。
カスタム プロパティは、アプリごとに項目ごとにキーと値のペアとして格納されます。 このメソッドはコールバックで CustomProperties オブジェクトを返します。これにより、現在のアイテムと現在のアドインに固有のカスタム プロパティにアクセスするメソッドが提供されます。 カスタム プロパティはアイテムで暗号化されないため、セキュリティで保護されたストレージとして使用しないでください。
カスタム プロパティは asyncResult.value
プロパティの CustomProperties
オブジェクトとして指定されます。 このオブジェクトを使用して、メール アイテムのカスタム プロパティを取得、設定、保存、および削除できます。
loadCustomPropertiesAsync(callback: (asyncResult: Office.AsyncResult<CustomProperties>) => void, userContext?: any): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<Office.CustomProperties>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。
- userContext
-
any
省略可能。 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。 このオブジェクトには、コールバック関数の asyncResult.asyncContext
プロパティによってアクセスすることができます。
戻り値
void
注釈
カスタム プロパティの詳細については、「 Outlook アドインのアドイン メタデータを取得して設定する」を参照してください。
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
// 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 on the web、モバイル デバイス、および新しい Outlook on Windows では添付ファイル識別子は同じセッション内でのみ有効です。 ユーザーがアプリを閉じると、またはユーザーがインライン フォームの作成を開始すると、その後フォームがポップアップ表示され、別のウィンドウで続行されます。
removeAttachmentAsync(attachmentId: string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- attachmentId
-
string
削除する添付ファイルの識別子。
attachmentId
の最大文字列長は、Outlook on the webおよび Windows (新規およびクラシック) では 200 文字です。
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 添付ファイルの削除に失敗すると、asyncResult.error
プロパティにはエラー コードとエラーの理由が含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
重要*: removeAttachmentAsync
メソッドは、メール アイテムからインライン添付ファイルを削除しません。 インライン添付ファイルを削除するには、まずアイテムの本文を取得し、その内容から添付ファイルの参照を削除します。
Office.Body API を使用して、アイテムの本文を取得および設定します。
エラー:
-
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 on the web、モバイル デバイス、および新しい Outlook on Windows では添付ファイル識別子は同じセッション内でのみ有効です。 ユーザーがアプリを閉じると、またはユーザーがインライン フォームの作成を開始すると、その後フォームがポップアップ表示され、別のウィンドウで続行されます。
removeAttachmentAsync(attachmentId: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- attachmentId
-
string
削除する添付ファイルの識別子。
attachmentId
の最大文字列長は、Outlook on the webおよび Windows (新規およびクラシック) では 200 文字です。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 添付ファイルの削除に失敗すると、asyncResult.error
プロパティにはエラー コードとエラーの理由が含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
重要*: removeAttachmentAsync
メソッドは、メール アイテムからインライン添付ファイルを削除しません。 インライン添付ファイルを削除するには、まずアイテムの本文を取得し、その内容から添付ファイルの参照を削除します。
Office.Body API を使用して、アイテムの本文を取得および設定します。
エラー:
-
InvalidAttachmentId
: 添付ファイル識別子が存在しません。
removeHandlerAsync(eventType, options, callback)
サポートされているイベントの種類のイベント ハンドラーを削除します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。
サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。
removeHandlerAsync(eventType: Office.EventType | string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- eventType
-
Office.EventType | string
ハンドラーを取り消すイベント。
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
removeHandlerAsync(eventType, callback)
サポートされているイベントの種類のイベント ハンドラーを削除します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。
サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。
removeHandlerAsync(eventType: Office.EventType | string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- eventType
-
Office.EventType | string
ハンドラーを取り消すイベント。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用できる Outlook モード: メッセージ Compose
例
Office.context.mailbox.item.removeHandlerAsync(Office.EventType.ItemChanged, (asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.error("Failed to remove event handler: " + asyncResult.error.message);
return;
}
console.log("Event handler removed successfully.");
});
saveAsync(options, callback)
現在のメッセージを下書きとして非同期的に保存します。
saveAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。 EWS メッセージ ID は、 asyncResult.value
プロパティで返されます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
重要:
Outlook on the web、新しい Outlook on Windows、またはオンライン モード (キャッシュなしモード) の従来の Outlook では、アイテムがサーバーに保存されます。 キャッシュ モードの Outlook では、ローカル キャッシュにアイテムが保存されます。
HTML 形式のコンテンツを操作する場合は、Outlook クライアントがコンテンツを変更する可能性があることに注意することが重要です。 つまり、
Body.getAsync
、Body.setAsync
、saveAsync
などのメソッドに対する後続の呼び出しは、同じコンテンツにならない可能性があります。返される識別子は、 Exchange Web Services (EWS) アイテム識別子と同じです。 返されるアイテム ID は、Outlook エントリ ID または Outlook REST API で使用される ID と同じではありません。 この値を使用して REST API 呼び出しを行う前に、
Office.context.mailbox.convertToRestId
を使用して変換する必要があります。アドインが EWS または REST API で使用するアイテム ID を取得するために
saveAsync
を呼び出す場合は、Outlook がキャッシュ モードの場合、アイテムが実際にサーバーに同期されるまでに時間がかかる場合があることに注意してください。 アイテムが同期されるまで、アイテム ID を使用するとエラーが返されます。Outlook on the webおよび新しい Outlook on Windows では、共有メールボックス アカウントから送信されるメッセージに
saveAsync
が呼び出されると、下書きが保存されるメールボックス アカウントが異なります。 送信者が個人用メールボックスから新しいメッセージを作成し、[ 差 出人] フィールドで共有メールボックス アカウントを選択saveAsync
、下書きをユーザーの個人用メールボックスの 下書き フォルダーに保存します。 送信者が別のブラウザー タブ ([別のメールボックスを 開く ] オプションなど) で共有メールボックス アカウントを開き、そこに新しいメッセージを作成saveAsync
場合、下書きは共有メールボックスの 下書き フォルダーに保存されます。
エラー:
-
InvalidAttachmentId
: 添付ファイル識別子が存在しません。
saveAsync(callback)
現在のメッセージを下書きとして非同期的に保存します。
saveAsync(callback: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。 EWS メッセージ ID は、 asyncResult.value
プロパティで返されます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
重要:
Outlook on the web、新しい Outlook on Windows、またはオンライン モード (キャッシュなしモード) の従来の Outlook では、アイテムがサーバーに保存されます。 キャッシュ モードの Outlook では、ローカル キャッシュにアイテムが保存されます。
HTML 形式のコンテンツを操作する場合は、Outlook クライアントがコンテンツを変更する可能性があることに注意することが重要です。 つまり、
Body.getAsync
、Body.setAsync
、saveAsync
などのメソッドに対する後続の呼び出しは、同じコンテンツにならない可能性があります。返される識別子は、 Exchange Web Services (EWS) アイテム識別子と同じです。 返されるアイテム ID は、Outlook エントリ ID または Outlook REST API で使用される ID と同じではありません。 この値を使用して REST API 呼び出しを行う前に、
Office.context.mailbox.convertToRestId
を使用して変換する必要があります。アドインが EWS または REST API で使用するアイテム ID を取得するために
saveAsync
を呼び出す場合は、Outlook がキャッシュ モードの場合、アイテムが実際にサーバーに同期されるまでに時間がかかる場合があることに注意してください。 アイテムが同期されるまで、アイテム ID を使用するとエラーが返されます。Outlook on the webおよび新しい Outlook on Windows では、共有メールボックス アカウントから送信されるメッセージに
saveAsync
が呼び出されると、下書きが保存されるメールボックス アカウントが異なります。 送信者が個人用メールボックスから新しいメッセージを作成し、[ 差 出人] フィールドで共有メールボックス アカウントを選択saveAsync
、下書きをユーザーの個人用メールボックスの 下書き フォルダーに保存します。 送信者が別のブラウザー タブ ([別のメールボックスを 開く ] オプションなど) で共有メールボックス アカウントを開き、そこに新しいメッセージを作成saveAsync
場合、下書きは共有メールボックスの 下書き フォルダーに保存されます。
エラー:
-
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
例外がスローされます。
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
coercionType
: テキストの場合、現在のスタイルは、Outlook on the web、Windows (新規およびクラシック)、および Mac で適用されます。 フィールドが HTML エディターの場合、データが HTML の場合でもテキスト データのみが挿入されます。 データが HTML で、フィールドが HTML をサポートしている場合 (件名はサポートされていません)、現在のスタイルはOutlook on the webおよび新しい Outlook on Windows に適用されます。 既定のスタイルは、Outlook on Windows (クラシック) と Mac で適用されます。 フィールドがテキスト フィールドの場合、InvalidDataFormat
エラーが返されます。
coercionType
が設定されていない場合、結果はフィールドによって変わります。フィールドが HTML の場合は HTML が使用されます。フィールドがテキストの場合はプレーン テキストが使用されます。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
エラー:
-
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
型の 1 つのパラメーターで呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用できる Outlook モード: メッセージ Compose
エラー:
-
InvalidAttachmentId
: 添付ファイル識別子が存在しません。
Office Add-ins