Office.MessageRead interface

Office.context.mailbox.item のメッセージ読み取りモード。

重要:

  • これは内部の Outlook オブジェクトであり、既存のインターフェイスを通じて直接公開されることはありません。 これを Office.context.mailbox.item モードとして扱う必要があります。 詳細については、「 Outlook アイテム オブジェクト モデル」を参照してください。

  • メッセージで Office.context.mailbox.item を呼び出すときは、Outlook クライアントの閲覧ウィンドウがオンになっている必要があることに注意してください。 閲覧ウィンドウを構成する方法については、「 閲覧ウィンドウを使用してメッセージをプレビューする」を参照してください。

親インターフェイス:

Extends

注釈

使用元

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/get-attachments-read.yaml

const item = Office.context.mailbox.item;

if (item.attachments.length > 0) {
    for (let i = 0; i < item.attachments.length; i++) {
        const attachment = item.attachments[i];
        console.log(`${i+1}. Name: ${attachment.name}`);
        console.log(`ID: ${attachment.id}`);
        console.log(`Type: ${attachment.attachmentType}`);
        console.log(`Inline content: ${attachment.isInline}`);
        console.log(`Size: ${attachment.size}`);
    }
} else {
    console.log("This mail item doesn't contain any attachments.");
}

プロパティ

attachments

アイテムの添付ファイルを配列として取得します。

body

アイテムの本文を操作するメソッドを提供するオブジェクトを取得します。

categories

項目のカテゴリを管理するためのメソッドを提供するオブジェクトを取得します。

cc

メッセージの CC (カーボン コピー) の受信者へのアクセスを提供します。 オブジェクトのタイプとアクセス レベルは、現在の項目のモードによって異なります。

cc プロパティは、メッセージの CC 行に記載されている各受信者の EmailAddressDetails オブジェクトを含む配列を返します。 返される受信者の最大数は、Outlook クライアントごとに異なります。

  • Windows (クラシック - メールボックス 1.15 以前): 500 人の受信者

  • Windows (クラシック - メールボックス 1.16 以降): 1,000 人の受信者

  • Android、従来の Mac UI、iOS: 100 人の受信者

  • Web ブラウザー、Windows (新規): 受信者 20 人 (折りたたみ表示)、受信者 1,000 人 (展開表示)

  • 新しい Mac UI: 制限なし

conversationId

特定のメッセージが含まれている電子メールの会話の識別子を取得します。

メール アプリを閲覧フォームでアクティブ化するか、新規作成フォームの返信でアクティブ化すると、このプロパティで整数を取得することができます。 その後、ユーザーが返信の件名を変更した場合、その返信の送信時にメッセージの会話 ID が変更され、以前に取得した値は適用されなくなります。

新規作成フォームで新しいアイテムに対してこのプロパティに null を取得します。 ユーザーが件名を設定し、アイテムを保存する場合、conversationId プロパティは値を返します。

dateTimeCreated

アイテムが作成された日時を取得します。

dateTimeModified

アイテムが最後に変更された日時を取得します。

display

オブジェクトを取得して、メッセージの本文または件名に表示されるコンテンツを一時的に読み取りモードに設定します。

end

予定を終了する日時を取得します。

end プロパティは、協定世界時 (UTC) の日付と時刻の値として表されるDate オブジェクトです。 convertToLocalClientTime メソッドを使用すると、end プロパティ値をクライアントのローカル日付と時刻に変換できます。

Time.setAsync メソッドを使用して終了時刻を設定する場合、convertToUtcClientTime メソッドを使用して、クライアント上のローカルの時刻をサーバーの UTC に変換する必要があります。

from

メッセージの送信者の電子メール アドレスを取得します。

from プロパティは EmailAddressDetails オブジェクトを返します。

internetMessageId

電子メール メッセージのインターネット メッセージ識別子を取得します。

itemClass

選択したメッセージの Exchange Web サービス項目クラスを取得します。

itemId

現在のアイテムの Exchange Web サービス (EWS) アイテム識別子 を取得します。

itemType

インスタンスが表しているアイテムの種類を取得します。

itemType プロパティは、アイテム オブジェクト インスタンスがメッセージか予定かを示す、ItemType列挙値のいずれかを返します。

location

会議出席依頼の場所を取得します。

location プロパティは、予定の場所を格納した文字列を返します。

normalizedSubject

すべてのプレフィックス (RE: と FWD:を含む) を削除したアイテムの件名を取得します。

normalizedSubject プロパティは、メール プログラムによって追加された標準のプレフィックス (RE: や FW:など) と共に、アイテムの件名を取得します。 これらのプレフィックスが付いたままの状態でアイテムの件名を取得するには、subject プロパティを使用します。

notificationMessages

アイテムの通知メッセージを取得します。

recurrence

予定の繰り返しパターンを取得します。 会議出席依頼の定期的なパターンを取得します。 予定アイテムの読み取りおよび作成モード。 会議出席依頼アイテムの読み取りモード。

アイテムが系列または系列内のインスタンスである場合、 recurrence プロパティは定期的な予定または会議出席依頼の Recurrence オブジェクトを返します。 null は、1 つの予定および 1 つの予定の会議出席依頼に対して返されます。 undefined 会議出席依頼ではないメッセージに対して返されます。

: 会議出席依頼の itemClass 値は IPM.Schedule.Meeting.Request です。

: recurrence オブジェクトが null の場合は、オブジェクトが 1 つの予定または 1 つの予定の会議出席依頼であり、一連のオブジェクトの一部ではないことを示します。

sender

電子メール メッセージの送信者の電子メール アドレスを取得します。

seriesId

インスタンスが属するシリーズの ID を取得します。

Outlook on the web、Windows (新規およびクラシック)、および Mac では、seriesIdは、このアイテムが属する親 (系列) アイテムの Exchange Web サービス (EWS) ID を返します。 ただし、Android および iOS 上の Outlook では、 seriesId は親アイテムの REST ID を返します。

: seriesId プロパティによって返される識別子は、Exchange Web サービスの項目識別子と同じです。 seriesId プロパティは、Outlook REST API で使用される Outlook ID と同じではありません。 この値を使用して REST API 呼び出しを行う前に、 Office.context.mailbox.convertToRestId を使用して変換する必要があります。 詳細については、「Outlook アドインから Outlook REST API を使用する」を参照してください。

seriesId プロパティは、単一の予定、系列アイテム、会議出席依頼など、親アイテムを持たないアイテムのnullを返し、会議出席依頼ではない他のアイテムのundefinedを返します。

start

予定を開始する日時を取得します。

start プロパティは、協定世界時 (UTC) の日付と時刻の値として表されるDate オブジェクトです。 convertToLocalClientTime メソッドを使用すると、値をクライアントのローカル日付と時刻に変換できます。

subject

アイテムの [件名] フィールドに表示される説明を取得します。

subject プロパティは、電子メール サーバーによって送信されたアイテムの件名全体を取得または設定します。

subject プロパティは文字列を返します。 normalizedSubject プロパティを使用して、件名から先頭プレフィックス (RE: や FW: など) を引いた値を取得します。

to

メッセージの To 行にある受信者へのアクセスを提供します。 オブジェクトのタイプとアクセス レベルは、現在の項目のモードによって異なります。

to プロパティは、メッセージの [宛先] 行に一覧表示された各受信者の EmailAddressDetails オブジェクトを含む配列を返します。 返される受信者の最大数は、Outlook クライアントごとに異なります。

  • Windows (クラシック - メールボックス 1.15 以前): 500 人の受信者

  • Windows (クラシック - メールボックス 1.16 以降): 1,000 人の受信者

  • Android、従来の Mac UI、iOS: 100 人の受信者

  • Web ブラウザー、Windows (新規): 受信者 20 人 (折りたたみ表示)、受信者 1,000 人 (展開表示)

  • 新しい Mac UI: 制限なし

メソッド

addHandlerAsync(eventType, handler, options, callback)

サポートされているイベントのイベント ハンドラーを追加します。 イベントは、作業ウィンドウのアドインでのみ使用できます。

addHandlerAsync(eventType, handler, callback)

サポートされているイベントのイベント ハンドラーを追加します。 イベントは、作業ウィンドウのアドインでのみ使用できます。

displayReplyAllForm(formData)

選択したメッセージの送信者とすべての受信者、または選択した予定の開催者とすべての出席者を含む返信フォームを表示します。

displayReplyAllFormAsync(formData, options, callback)

選択したメッセージの送信者とすべての受信者、または選択した予定の開催者とすべての出席者を含む返信フォームを表示します。

displayReplyAllFormAsync(formData, callback)

選択したメッセージの送信者とすべての受信者、または選択した予定の開催者とすべての出席者を含む返信フォームを表示します。

displayReplyForm(formData)

選択したメッセージの送信者のみ、または選択した予定の開催者のみを含む回答フォームが表示されます。

displayReplyFormAsync(formData, options, callback)

選択したメッセージの送信者のみ、または選択した予定の開催者のみを含む回答フォームが表示されます。

displayReplyFormAsync(formData, callback)

選択したメッセージの送信者のみ、または選択した予定の開催者のみを含む回答フォームが表示されます。

getAllInternetHeadersAsync(options, callback)

メッセージのすべてのインターネット ヘッダーを文字列として取得します。

詳細については、「Outlook アドインでメッセージのインターネット ヘッダーを取得して設定する」を参照してください。

getAllInternetHeadersAsync(callback)

メッセージのすべてのインターネット ヘッダーを文字列として取得します。

詳細については、「Outlook アドインでメッセージのインターネット ヘッダーを取得して設定する」を参照してください。

getAsFileAsync(options, callback)

Base64 でエンコードされた EML 形式で現在のメッセージを取得します。

getAsFileAsync(callback)

Base64 でエンコードされた EML 形式で現在のメッセージを取得します。

getAttachmentContentAsync(attachmentId, options, callback)

メッセージまたは予定から添付ファイルを取得し、 AttachmentContent オブジェクトとして返します。

getAttachmentContentAsync(attachmentId, callback)

メッセージまたは予定から添付ファイルを取得し、 AttachmentContent オブジェクトとして返します。

getEntities()

選択したアイテムの本文にあるエンティティを取得します。

警告: エンティティ ベースのコンテキスト Outlook アドインは廃止されました。 ただし、正規表現のルールは引き続きサポートされています。 代替ソリューションとして正規表現ルールを使用するように、コンテキスト アドインを更新することをお勧めします。 これらのルールの実装方法のガイダンスについては、「 Outlook のコンテキスト アドイン」を参照してください。

getEntitiesByType(entityType)

選択したアイテムの本文内で検出された指定のエンティティ型のすべてのエンティティを含む配列を取得します。

警告: エンティティ ベースのコンテキスト Outlook アドインは廃止されました。 ただし、正規表現のルールは引き続きサポートされています。 代替ソリューションとして正規表現ルールを使用するように、コンテキスト アドインを更新することをお勧めします。 これらのルールの実装方法のガイダンスについては、「 Outlook のコンテキスト アドイン」を参照してください。

getFilteredEntitiesByName(name)

アドイン専用のマニフェスト ファイルで定義されている名前付きフィルターに合格した、選択した項目内の既知のエンティティを返します。

警告: エンティティ ベースのコンテキスト Outlook アドインは廃止されました。 ただし、正規表現のルールは引き続きサポートされています。 代替ソリューションとして正規表現ルールを使用するように、コンテキスト アドインを更新することをお勧めします。 これらのルールの実装方法のガイダンスについては、「 Outlook のコンテキスト アドイン」を参照してください。

getInitializationContextAsync(options, callback)

アクション可能なメッセージによってアドインがアクティブ化されたときに渡される初期化データを取得します

getInitializationContextAsync(callback)

アクション可能なメッセージによってアドインがアクティブ化されたときに渡される初期化データを取得します

getRegExMatches()

アドイン専用のマニフェスト ファイルで定義されている正規表現と一致する、選択した項目の文字列値を返します。

getRegExMatchesByName(name)

アドイン専用のマニフェスト ファイルで定義されている名前付き正規表現と一致する、選択した項目の文字列値を返します。

getSelectedEntities()

強調表示された一致内で見つかったユーザーが選択しているエンティティを取得します。 強調表示された一致は、コンテキスト アドインに適用されます。

警告: エンティティ ベースのコンテキスト Outlook アドインは廃止されました。 ただし、正規表現のルールは引き続きサポートされています。 代替ソリューションとして正規表現ルールを使用するように、コンテキスト アドインを更新することをお勧めします。 これらのルールの実装方法のガイダンスについては、「 Outlook のコンテキスト アドイン」を参照してください。

getSelectedRegExMatches()

アドイン専用のマニフェスト ファイルで定義されている正規表現に一致する、強調表示された一致の文字列値を返します。 強調表示された一致は、コンテキスト アドインに適用されます。

getSharedPropertiesAsync(options, callback)

共有フォルダーまたは共有メールボックス内の予定またはメッセージのプロパティを取得します。

この API の使用方法の詳細については、「Outlook アドインで共有フォルダーと共有メールボックスのシナリオを有効にする」を参照してください

getSharedPropertiesAsync(callback)

共有フォルダーまたは共有メールボックス (現在プレビュー中) 内の予定またはメッセージのプロパティを取得します。

この API の使用方法の詳細については、「Outlook アドインで共有フォルダーと共有メールボックスのシナリオを有効にする」を参照してください

loadCustomPropertiesAsync(callback, userContext)

選択されたアイテムのこのアドインのカスタム プロパティを非同期に読み込みます。

カスタム プロパティは、アプリごと、アイテムごとにキーと値のペアとして格納されます。 このメソッドはコールバックで CustomProperties オブジェクトを返します。このオブジェクトには、現在の項目と現在のアドインに固有のカスタム プロパティにアクセスするメソッドが用意されています。 カスタム プロパティはアイテムで暗号化されていないため、これをセキュリティで保護されたストレージとして使用しないでください。

カスタム プロパティは asyncResult.value プロパティの CustomProperties オブジェクトとして指定されます。 このオブジェクトを使用して、メール アイテムからカスタム プロパティを取得、設定、保存、および削除できます。

removeHandlerAsync(eventType, options, callback)

サポートされているイベントの種類のイベント ハンドラーを削除します。 イベントは、作業ウィンドウのアドインでのみ使用できます。

removeHandlerAsync(eventType, callback)

サポートされているイベントの種類のイベント ハンドラーを削除します。 イベントは、作業ウィンドウのアドインでのみ使用できます。

プロパティの詳細

attachments

アイテムの添付ファイルを配列として取得します。

attachments: AttachmentDetails[];

プロパティ値

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要:

  • セキュリティ上の問題がある可能性があるため、特定の種類のファイルは Outlook によってブロックされるので、返されません。 詳細については、「Outlook でブロックされる添付ファイル」を参照してください。

  • [アップロードして共有] オプションを使用して追加した添付ファイルは返されません。

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/get-attachments-read.yaml

const item = Office.context.mailbox.item;

if (item.attachments.length > 0) {
    for (let i = 0; i < item.attachments.length; i++) {
        const attachment = item.attachments[i];
        console.log(`${i+1}. Name: ${attachment.name}`);
        console.log(`ID: ${attachment.id}`);
        console.log(`Type: ${attachment.attachmentType}`);
        console.log(`Inline content: ${attachment.isInline}`);
        console.log(`Size: ${attachment.size}`);
    }
} else {
    console.log("This mail item doesn't contain any attachments.");
}

body

アイテムの本文を操作するメソッドを提供するオブジェクトを取得します。

body: Body;

プロパティ値

注釈

API セット: メールボックス 1.1

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

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

// The following is an example of 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;

プロパティ値

注釈

API セット: メールボックス 1.8

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

// 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 行に記載されている各受信者の EmailAddressDetails オブジェクトを含む配列を返します。 返される受信者の最大数は、Outlook クライアントごとに異なります。

  • Windows (クラシック - メールボックス 1.15 以前): 500 人の受信者

  • Windows (クラシック - メールボックス 1.16 以降): 1,000 人の受信者

  • Android、従来の Mac UI、iOS: 100 人の受信者

  • Web ブラウザー、Windows (新規): 受信者 20 人 (折りたたみ表示)、受信者 1,000 人 (展開表示)

  • 新しい Mac UI: 制限なし

cc: EmailAddressDetails[];

プロパティ値

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

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

const msgCc = Office.context.mailbox.item.cc;
console.log("Message copied to:");
for (let i = 0; i < msgCc.length; i++) {
  console.log(msgCc[i].displayName + " (" + msgCc[i].emailAddress + ")");
}

conversationId

特定のメッセージが含まれている電子メールの会話の識別子を取得します。

メール アプリを閲覧フォームでアクティブ化するか、新規作成フォームの返信でアクティブ化すると、このプロパティで整数を取得することができます。 その後、ユーザーが返信の件名を変更した場合、その返信の送信時にメッセージの会話 ID が変更され、以前に取得した値は適用されなくなります。

新規作成フォームで新しいアイテムに対してこのプロパティに null を取得します。 ユーザーが件名を設定し、アイテムを保存する場合、conversationId プロパティは値を返します。

conversationId: string;

プロパティ値

string

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

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

dateTimeCreated

アイテムが作成された日時を取得します。

dateTimeCreated: Date;

プロパティ値

Date

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

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

console.log(`Creation date and time: ${Office.context.mailbox.item.dateTimeCreated}`);

dateTimeModified

アイテムが最後に変更された日時を取得します。

dateTimeModified: Date;

プロパティ値

Date

注釈

API セット: メールボックス 1.1

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: 予定の出席者

重要: このプロパティは Outlook on Android または iOS ではサポートされていません。 Outlook Mobile でサポートされている API の詳細については、「モバイル デバイスの Outlook でサポートされている Outlook JavaScript API」を参照してください

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

console.log(`Date and time item last modified: ${Office.context.mailbox.item.dateTimeModified}`);

display

注意

この API は開発者向けにプレビューとして提供されており、寄せられたフィードバックにもとづいて変更される場合があります。 この API は運用環境で使用しないでください。

オブジェクトを取得して、メッセージの本文または件名に表示されるコンテンツを一時的に読み取りモードに設定します。

display: Display;

プロパティ値

注釈

API セット: メールボックスのプレビュー

最小アクセス許可レベル: 項目の読み取り/書き込み

適用可能な Outlook モード: メッセージの読み取り

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/99-preview-apis/set-displayed-body-subject.yaml

// This snippet temporarily sets the content displayed in the body of a message in read mode.
// The set content will remain visible until the user switches to a different message in the Reading Pane or closes the window of the current message.
const bodyText = (document.getElementById("body-text-field") as HTMLInputElement).value;
Office.context.mailbox.item.display.body.setAsync(bodyText, (asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log(`Action failed with error: ${asyncResult.error.message}`);
    return;
  }

  console.log("Temporarily set the content displayed in the body.");
});

end

予定を終了する日時を取得します。

end プロパティは、協定世界時 (UTC) の日付と時刻の値として表されるDate オブジェクトです。 convertToLocalClientTime メソッドを使用すると、end プロパティ値をクライアントのローカル日付と時刻に変換できます。

Time.setAsync メソッドを使用して終了時刻を設定する場合、convertToUtcClientTime メソッドを使用して、クライアント上のローカルの時刻をサーバーの UTC に変換する必要があります。

end: Date;

プロパティ値

Date

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

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

const time = Office.context.mailbox.item.end;
const localTime = Office.context.mailbox.convertToLocalClientTime(time);
console.log(`Appointment ends (local): ${localTime.month + 1}/${localTime.date}/${localTime.year}, ${localTime.hours}:${localTime.minutes}:${localTime.seconds}`);

from

メッセージの送信者の電子メール アドレスを取得します。

from プロパティは EmailAddressDetails オブジェクトを返します。

from: EmailAddressDetails;

プロパティ値

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要:

  • from プロパティと sender プロパティは、メッセージが代理送信アクセス許可を持つ代理人によって送信される場合を除き、同一ユーザーを表します。 この場合、 from プロパティはメールボックスの所有者または共有メールボックスの電子メール アドレスを返し、 sender プロパティは代理人のアドレスを返します。 代理人に [代理送信 ] アクセス許可と [送信者] アクセス許可の両方がある場合は、[ 送信者] アクセス許可が適用されます。 メールボックスの委任の詳細については、「Exchange Online で受信者のアクセス許可を管理する」を参照してください。

  • from プロパティの EmailAddressDetails オブジェクトの recipientType プロパティが未定義です。

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

const msgFrom = Office.context.mailbox.item.from;
console.log("Message received from: " + msgFrom.displayName + " (" + msgFrom.emailAddress + ")");

internetMessageId

電子メール メッセージのインターネット メッセージ識別子を取得します。

internetMessageId: string;

プロパティ値

string

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要: [ 送信済みアイテム ] フォルダーでは、最近送信したアイテムの internetMessageId がまだ利用できない場合があります。 その場合は、Exchange 環境に応じて、次のいずれかのオプションを使用することをお勧めします。

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

console.log(`Internet message ID: ${Office.context.mailbox.item.internetMessageId}`);

itemClass

選択したメッセージの Exchange Web サービス項目クラスを取得します。

itemClass: string;

プロパティ値

string

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要:

次の表に、メッセージの既定のアイテム クラスを示します。

アイテム クラス 説明
IPM.Note 新しいメッセージとメッセージ返信
IPM.Schedule.Meeting.Request 会議出席依頼
IPM.Schedule.Meeting.Canceled 会議のキャンセル
IPM.Schedule.Meeting.Resp.Neg 会議出席依頼に対する辞退の通知
IPM.Schedule.Meeting.Resp.Pos 会議出席依頼を承諾するための応答
IPM.Schedule.Meeting.Resp.Tent 会議出席依頼に対する仮の受諾の通知

既定の項目クラスを拡張するカスタム クラスを作成できます。 たとえば、「 IPM.Note.Contoso」と入力します。

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

console.log(`Item class: ${Office.context.mailbox.item.itemClass}`);

itemId

現在のアイテムの Exchange Web サービス (EWS) アイテム識別子 を取得します。

itemId: string;

プロパティ値

string

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要:

  • itemId プロパティは作成モードでは使用できません。 アイテム識別子が必要な場合は、 Office.context.mailbox.item.saveAsync メソッドを使用してストアにアイテムを保存できます。ストアでは、コールバック関数の asyncResult.value パラメーターでアイテム識別子が返されます。 アイテムが既に保存されている場合は、代わりに Office.context.mailbox.item.getItemIdAsync メソッドを呼び出すことができます。

  • 返されるアイテム ID が、Outlook エントリ ID または Outlook REST API で使用される ID と同じではありません。 この値を使用して REST API 呼び出しを行う前に、 Office.context.mailbox.convertToRestId を使用して変換する必要があります。

// The following code checks for the presence of an item
// identifier. If the `itemId` property returns `null` or
// `undefined`, it saves the item to the store and gets the
// item identifier from the asynchronous result.
// **Important**: `saveAsync` was introduced with requirement set 1.3
// so you can't get the `itemId` in Compose mode in earlier sets.
let itemId = Office.context.mailbox.item.itemId;
if (itemId === null || itemId == undefined) {
    Office.context.mailbox.item.saveAsync(function(result) {
        itemId = result.value;
    });
}

itemType

インスタンスが表しているアイテムの種類を取得します。

itemType プロパティは、アイテム オブジェクト インスタンスがメッセージか予定かを示す、ItemType列挙値のいずれかを返します。

itemType: MailboxEnums.ItemType | string;

プロパティ値

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

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

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

location

会議出席依頼の場所を取得します。

location プロパティは、予定の場所を格納した文字列を返します。

location: string;

プロパティ値

string

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

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

console.log(`Appointment location: ${Office.context.mailbox.item.location}`);

normalizedSubject

すべてのプレフィックス (RE: と FWD:を含む) を削除したアイテムの件名を取得します。

normalizedSubject プロパティは、メール プログラムによって追加された標準のプレフィックス (RE: や FW:など) と共に、アイテムの件名を取得します。 これらのプレフィックスが付いたままの状態でアイテムの件名を取得するには、subject プロパティを使用します。

normalizedSubject: string;

プロパティ値

string

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

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

console.log(`Normalized subject: ${Office.context.mailbox.item.normalizedSubject}`);

notificationMessages

アイテムの通知メッセージを取得します。

notificationMessages: NotificationMessages;

プロパティ値

注釈

API セット: メールボックス 1.3

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要: 実装できるさまざまな種類の通知メッセージの詳細については、「 Outlook アドインの通知を作成する」を参照してください。

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

// Adds a progress indicator to the mail item.
const id = (document.getElementById("notificationId") as HTMLInputElement).value;
const details =
  {
    type: Office.MailboxEnums.ItemNotificationMessageType.ProgressIndicator,
    message: "Progress indicator with id = " + id
  };
Office.context.mailbox.item.notificationMessages.addAsync(id, details, (result) => {
  if (result.status === Office.AsyncResultStatus.Failed) {
    console.log(`Failed to add progress notification with id = ${id}. Try using a different ID.`);
    return;
  }
  console.log(`Added progress notification with id = ${id}.`);
});

...

// Adds an informational notification to the mail item.
const id = (document.getElementById("notificationId") as HTMLInputElement).value;
const details =
  {
    type: Office.MailboxEnums.ItemNotificationMessageType.InformationalMessage,
    message: "Non-persistent informational notification message with id = " + id,
    icon: "PG.Icon.16",
    persistent: false
  };
Office.context.mailbox.item.notificationMessages.addAsync(id, details, (result) => {
  if (result.status === Office.AsyncResultStatus.Failed) {
    console.log(`Failed to add informational notification with id = ${id}. Try using a different ID.`);
    return;
  }
  console.log(`Added informational notification with id = ${id}.`);
});

...

// Adds a persistent information notification to the mail item.
const id = (document.getElementById("notificationId") as HTMLInputElement).value;
const details =
  {
    type: Office.MailboxEnums.ItemNotificationMessageType.InformationalMessage,
    message: "Persistent informational notification message with id = " + id,
    icon: "PG.Icon.16",
    persistent: true
  };
Office.context.mailbox.item.notificationMessages.addAsync(id, details, (result) => {
  if (result.status === Office.AsyncResultStatus.Failed) {
    console.log(`Failed to add persistent informational notification with id = ${id}. Try using a different ID.`);
    return;
  }
  console.log(`Added persistent informational notification with id = ${id}.`);
});

...

// 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(JSON.stringify(asyncResult.value));
});

...

// Replaces a notification message of a given key with another message.
const id = (document.getElementById("notificationId") as HTMLInputElement).value;
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
  },
  (result) => {
    if (result.status === Office.AsyncResultStatus.Failed) {
      console.log(`Failed to replace notification with id = ${id}. ${result.error.message}.`);
      return;
    }
    console.log(`Replaced notification with id = ${id}.`);
  });

...

// Removes a notification message from the current mail item.
const id = (document.getElementById("notificationId") as HTMLInputElement).value;
Office.context.mailbox.item.notificationMessages.removeAsync(id, (result) => {
  if (result.status === Office.AsyncResultStatus.Failed) {
    console.log(`Failed to remove notification with id = ${id}. ${result.error.message}.`);
    return;
  }
  console.log(`Removed notification with id = ${id}.`);
});

recurrence

予定の繰り返しパターンを取得します。 会議出席依頼の定期的なパターンを取得します。 予定アイテムの読み取りおよび作成モード。 会議出席依頼アイテムの読み取りモード。

アイテムが系列または系列内のインスタンスである場合、 recurrence プロパティは定期的な予定または会議出席依頼の Recurrence オブジェクトを返します。 null は、1 つの予定および 1 つの予定の会議出席依頼に対して返されます。 undefined 会議出席依頼ではないメッセージに対して返されます。

: 会議出席依頼の itemClass 値は IPM.Schedule.Meeting.Request です。

: recurrence オブジェクトが null の場合は、オブジェクトが 1 つの予定または 1 つの予定の会議出席依頼であり、一連のオブジェクトの一部ではないことを示します。

recurrence: Recurrence;

プロパティ値

注釈

API セット: メールボックス 1.7

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/50-recurrence/get-recurrence-read.yaml

const recurrence = Office.context.mailbox.item.recurrence;

if (recurrence === undefined) {
  console.log("This item is a message but not a meeting request.");
} else if (recurrence === null) {
  console.log("This is a single appointment.");
} else {
  console.log(JSON.stringify(recurrence));
}

sender

電子メール メッセージの送信者の電子メール アドレスを取得します。

sender: EmailAddressDetails;

プロパティ値

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要:

  • from プロパティと sender プロパティは、メッセージが代理送信アクセス許可を持つ代理人によって送信される場合を除き、同一ユーザーを表します。 この場合、 from プロパティはメールボックスの所有者または共有メールボックスの電子メール アドレスを返し、 sender プロパティは代理人のアドレスを返します。 代理人に [代理送信 ] アクセス許可と [送信者] アクセス許可の両方がある場合は、[ 送信者] アクセス許可が適用されます。 メールボックスの委任の詳細については、「Exchange Online で受信者のアクセス許可を管理する」を参照してください。

  • sender プロパティの EmailAddressDetails オブジェクトの recipientType プロパティが未定義です。

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

const msgSender = Office.context.mailbox.item.sender;
console.log("Sender: " + msgSender.displayName + " (" + msgSender.emailAddress + ")");

seriesId

インスタンスが属するシリーズの ID を取得します。

Outlook on the web、Windows (新規およびクラシック)、および Mac では、seriesIdは、このアイテムが属する親 (系列) アイテムの Exchange Web サービス (EWS) ID を返します。 ただし、Android および iOS 上の Outlook では、 seriesId は親アイテムの REST ID を返します。

: seriesId プロパティによって返される識別子は、Exchange Web サービスの項目識別子と同じです。 seriesId プロパティは、Outlook REST API で使用される Outlook ID と同じではありません。 この値を使用して REST API 呼び出しを行う前に、 Office.context.mailbox.convertToRestId を使用して変換する必要があります。 詳細については、「Outlook アドインから Outlook REST API を使用する」を参照してください。

seriesId プロパティは、単一の予定、系列アイテム、会議出席依頼など、親アイテムを持たないアイテムのnullを返し、会議出席依頼ではない他のアイテムのundefinedを返します。

seriesId: string;

プロパティ値

string

注釈

API セット: メールボックス 1.7

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

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

start

予定を開始する日時を取得します。

start プロパティは、協定世界時 (UTC) の日付と時刻の値として表されるDate オブジェクトです。 convertToLocalClientTime メソッドを使用すると、値をクライアントのローカル日付と時刻に変換できます。

start: Date;

プロパティ値

Date

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

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

const time = Office.context.mailbox.item.start;
const localTime = Office.context.mailbox.convertToLocalClientTime(time);
console.log(`Appointment starts (local): ${localTime.month + 1}/${localTime.date}/${localTime.year}, ${localTime.hours}:${localTime.minutes}:${localTime.seconds}`);

subject

アイテムの [件名] フィールドに表示される説明を取得します。

subject プロパティは、電子メール サーバーによって送信されたアイテムの件名全体を取得または設定します。

subject プロパティは文字列を返します。 normalizedSubject プロパティを使用して、件名から先頭プレフィックス (RE: や FW: など) を引いた値を取得します。

subject: string;

プロパティ値

string

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

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

console.log(`Subject: ${Office.context.mailbox.item.subject}`);

to

メッセージの To 行にある受信者へのアクセスを提供します。 オブジェクトのタイプとアクセス レベルは、現在の項目のモードによって異なります。

to プロパティは、メッセージの [宛先] 行に一覧表示された各受信者の EmailAddressDetails オブジェクトを含む配列を返します。 返される受信者の最大数は、Outlook クライアントごとに異なります。

  • Windows (クラシック - メールボックス 1.15 以前): 500 人の受信者

  • Windows (クラシック - メールボックス 1.16 以降): 1,000 人の受信者

  • Android、従来の Mac UI、iOS: 100 人の受信者

  • Web ブラウザー、Windows (新規): 受信者 20 人 (折りたたみ表示)、受信者 1,000 人 (展開表示)

  • 新しい Mac UI: 制限なし

to: EmailAddressDetails[];

プロパティ値

注釈

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

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

const msgTo = Office.context.mailbox.item.to;
const distributionLists = [];
const externalRecipients = [];
const internalRecipients = [];
const otherRecipients = [];
for (let i = 0; i < msgTo.length; i++) {
    switch (msgTo[i].recipientType) {
    case Office.MailboxEnums.RecipientType.DistributionList:
        distributionLists.push(msgTo[i]);
        break;
    case Office.MailboxEnums.RecipientType.ExternalUser:
        externalRecipients.push(msgTo[i]);
        break;
    case Office.MailboxEnums.RecipientType.User:
        internalRecipients.push(msgTo[i]);
        break;
    case Office.MailboxEnums.RecipientType.Other:
        otherRecipients.push(msgTo[i]);
    }
}

if (distributionLists.length > 0) {
    console.log("Distribution Lists:");
    distributionLists.forEach((recipient) => console.log(`${recipient.displayName}, ${recipient.emailAddress}`));
}

if (externalRecipients.length > 0) {
    console.log("External Recipients:");
    externalRecipients.forEach((recipient) => console.log(`${recipient.displayName}, ${recipient.emailAddress}`));
}

if (internalRecipients.length > 0) {
    console.log("Internal Recipients:");
    internalRecipients.forEach((recipient) => console.log(`${recipient.displayName}, ${recipient.emailAddress}`));
}

if (otherRecipients.length > 0) {
    console.log("Other Recipients:");
    otherRecipients.forEach((recipient) => console.log(`${recipient.displayName}, ${recipient.emailAddress}`));
}

メソッドの詳細

addHandlerAsync(eventType, handler, options, callback)

サポートされているイベントのイベント ハンドラーを追加します。 イベントは、作業ウィンドウのアドインでのみ使用できます。

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 parameterと一致します。

options
Office.AsyncContextOptions

次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext: 開発者は、コールバック関数でアクセスしたいオブジェクトを指定できます。

callback

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

省略可能。 メソッドが完了すると、callback パラメーターで渡された関数が、Office.AsyncResult オブジェクトである 1 つのパラメーター asyncResult を指定して呼び出されます。

返品

void

注釈

API セット: メールボックス 1.7

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要: メール アイテムでサポートされているイベントの一覧については、「 Outlook アイテム オブジェクト モデル」を参照してください。

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)

サポートされているイベントのイベント ハンドラーを追加します。 イベントは、作業ウィンドウのアドインでのみ使用できます。

addHandlerAsync(eventType: Office.EventType | string, handler: any, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

パラメーター

eventType

Office.EventType | string

ハンドラーを呼び出す必要のあるイベント。

handler

any

イベントを処理する関数。 関数は、オブジェクト リテラルである単一パラメーターを受け入れる必要があります。 パラメーターの type プロパティは、addHandlerAsync に渡される eventType parameterと一致します。

callback

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

省略可能。 メソッドが完了すると、callback パラメーターで渡された関数が、Office.AsyncResult オブジェクトである 1 つのパラメーター asyncResult を指定して呼び出されます。

返品

void

注釈

API セット: メールボックス 1.7

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要: メール アイテムでサポートされているイベントの一覧については、「 Outlook アイテム オブジェクト モデル」を参照してください。

displayReplyAllForm(formData)

選択したメッセージの送信者とすべての受信者、または選択した予定の開催者とすべての出席者を含む返信フォームを表示します。

displayReplyAllForm(formData: string | ReplyFormData): void;

パラメーター

formData

string | Office.ReplyFormData

回答フォームの本文を表すテキストと HTML が含まれる文字列。 文字列は 32 KB に制限されています。または、本文または添付ファイル データとコールバック関数を含む ReplyFormData オブジェクトを指定してください。

返品

void

注釈

API セット: メールボックス 1.1

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: 予定の出席者

重要:

  • Outlook on the web および新しい Outlook on Windows では、返信フォームは、3 列ビューではポップアップ フォーム、2 列または 1 列ビューではポップアップ フォームとして表示されます。

  • 文字列パラメーターのいずれかが制限値を超えると、displayReplyAllForm は例外をスローします。

  • formData.attachments パラメーターで添付ファイルが指定されている場合、Outlook はすべての添付ファイルをダウンロードして、返信フォームに添付しようとします。 添付ファイルの追加に失敗すると、フォーム UI でエラーが表示されます。 表示できない場合、エラー メッセージはスローされません。

  • この方法は、Android または iOS の Outlook ではサポートされていません。 Outlook Mobile でサポートされている API の詳細については、「モバイル デバイスの Outlook でサポートされている Outlook JavaScript API」を参照してください

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/55-display-items/display-reply-forms.yaml

Office.context.mailbox.item.displayReplyAllForm("This is a reply ALL with <b>some bold text</b>.");

...

// Define attachments.
const base64Attachment = {
  base64file:
    "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",
  inLine: true,
  name: "script_lab.png",
  type: Office.MailboxEnums.AttachmentType.Base64
};
const fileAttachment = {
  inLine: true,
  name: "dog.jpg",
  type: Office.MailboxEnums.AttachmentType.File,
  url: "https://i.imgur.com/9S36xvA.jpg"
};
const itemAttachment = {
  itemId: Office.context.mailbox.item.itemId,
  name: "test_email.msg",
  type: Office.MailboxEnums.AttachmentType.Item
};

// Create the reply with attachments.
Office.context.mailbox.item.displayReplyAllForm({
  htmlBody:
    "This is a reply with an inline Base64-encoded attachment, an inline image, and an item attachment.<br><img src='cid:script_lab.png'><br><img src='cid:dog.jpg'>",
  attachments: [base64Attachment, fileAttachment, itemAttachment],
  callback: (result) => {
    if (result.status === Office.AsyncResultStatus.Failed) {
      console.error(`Action failed with message ${result.error.message}`);
      return;
    }

    console.log("Created a reply-all form with attachments.");
  }
});

displayReplyAllFormAsync(formData, options, callback)

選択したメッセージの送信者とすべての受信者、または選択した予定の開催者とすべての出席者を含む返信フォームを表示します。

displayReplyAllFormAsync(formData: string | ReplyFormData, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

パラメーター

formData

string | Office.ReplyFormData

回答フォームの本文を表すテキストと HTML が含まれる文字列。 文字列は 32 KB に制限されています。または、本文または添付ファイル データとコールバック関数を含む ReplyFormData オブジェクトを指定してください。

options
Office.AsyncContextOptions

次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext: 開発者は、コールバック関数でアクセスしたいオブジェクトを指定できます。

callback

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

省略可能。 メソッドが完了すると、callback パラメーターで渡された関数が、Office.AsyncResult オブジェクトである 1 つのパラメーター asyncResult を指定して呼び出されます。

返品

void

注釈

API セット: メールボックス 1.9

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要:

  • Outlook on the web および新しい Outlook on Windows では、返信フォームは、3 列ビューではポップアップ フォーム、2 列または 1 列ビューではポップアップ フォームとして表示されます。

  • 文字列パラメーターのいずれかが制限値を超えると、displayReplyAllFormAsync は例外をスローします。

  • formData.attachments パラメーターで添付ファイルが指定されている場合、Outlook はすべての添付ファイルをダウンロードして、返信フォームに添付しようとします。 添付ファイルの追加に失敗すると、フォーム UI でエラーが表示されます。 表示できない場合、エラー メッセージはスローされません。

  • この方法は、Android または iOS の Outlook ではサポートされていません。 Outlook Mobile でサポートされている API の詳細については、「モバイル デバイスの Outlook でサポートされている Outlook JavaScript API」を参照してください

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/55-display-items/display-reply-forms.yaml

Office.context.mailbox.item.displayReplyAllFormAsync("This is a reply ALL with <b>some bold text</b>.", function(
  asyncResult
) {
  console.log(JSON.stringify(asyncResult));
});

...

// Define attachments.
const base64Attachment = {
  base64file:
    "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",
  inLine: true,
  name: "script_lab.png",
  type: Office.MailboxEnums.AttachmentType.Base64
};
const fileAttachment = {
  inLine: true,
  name: "dog.jpg",
  type: Office.MailboxEnums.AttachmentType.File,
  url: "https://i.imgur.com/9S36xvA.jpg"
};
const itemAttachment = {
  itemId: Office.context.mailbox.item.itemId,
  name: "test_email.msg",
  type: Office.MailboxEnums.AttachmentType.Item
};

// The async version was introduced in requirement set 1.9.
// It provides a callback when the new appointment form has been created.
Office.context.mailbox.item.displayReplyAllFormAsync(
  {
    htmlBody:
      "This is a reply with an inline Base64-encoded attachment, an inline image, and an item attachment.<br><img src='cid:script_lab.png'><br><img src='cid:dog.jpg'>",
    attachments: [base64Attachment, fileAttachment, itemAttachment]
  },
  (asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Failed) {
      console.error(`Action failed with message ${asyncResult.error.message}`);
      return;
    }

    console.log("Created a reply-all form with attachments.");
  }
);

displayReplyAllFormAsync(formData, callback)

選択したメッセージの送信者とすべての受信者、または選択した予定の開催者とすべての出席者を含む返信フォームを表示します。

displayReplyAllFormAsync(formData: string | ReplyFormData, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

パラメーター

formData

string | Office.ReplyFormData

回答フォームの本文を表すテキストと HTML が含まれる文字列。 文字列は 32 KB に制限されています。または、本文または添付ファイル データとコールバック関数を含む ReplyFormData オブジェクトを指定してください。

callback

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

省略可能。 メソッドが完了すると、callback パラメーターで渡された関数が、Office.AsyncResult オブジェクトである 1 つのパラメーター asyncResult を指定して呼び出されます。

返品

void

注釈

API セット: メールボックス 1.9

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要:

  • Outlook on the web および新しい Outlook on Windows では、返信フォームは、3 列ビューではポップアップ フォーム、2 列または 1 列ビューではポップアップ フォームとして表示されます。

  • 文字列パラメーターのいずれかが制限値を超えると、displayReplyAllFormAsync は例外をスローします。

  • formData.attachments パラメーターで添付ファイルが指定されている場合、Outlook はすべての添付ファイルをダウンロードして、返信フォームに添付しようとします。 添付ファイルの追加に失敗すると、フォーム UI でエラーが表示されます。 表示できない場合、エラー メッセージはスローされません。

  • この方法は、Android または iOS の Outlook ではサポートされていません。 Outlook Mobile でサポートされている API の詳細については、「モバイル デバイスの Outlook でサポートされている Outlook JavaScript API」を参照してください

displayReplyForm(formData)

選択したメッセージの送信者のみ、または選択した予定の開催者のみを含む回答フォームが表示されます。

displayReplyForm(formData: string | ReplyFormData): void;

パラメーター

formData

string | Office.ReplyFormData

回答フォームの本文を表すテキストと HTML が含まれる文字列。 文字列は 32 KB に制限されています。または、本文または添付ファイル データとコールバック関数を含む ReplyFormData オブジェクトを指定してください。

返品

void

注釈

API セット: メールボックス 1.1

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要:

  • Outlook on the web および新しい Outlook on Windows では、返信フォームは、3 列ビューではポップアップ フォーム、2 列または 1 列ビューではポップアップ フォームとして表示されます。

  • 文字列パラメーターのいずれかが制限値を超えると、displayReplyForm は例外をスローします。

  • formData.attachments パラメーターで添付ファイルが指定されている場合、Outlook はすべての添付ファイルをダウンロードして、返信フォームに添付しようとします。 添付ファイルの追加に失敗すると、フォーム UI でエラーが表示されます。 表示できない場合、エラー メッセージはスローされません。

  • この方法は、Android または iOS の Outlook ではサポートされていません。 Outlook Mobile でサポートされている API の詳細については、「モバイル デバイスの Outlook でサポートされている Outlook JavaScript API」を参照してください

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/55-display-items/display-reply-forms.yaml

Office.context.mailbox.item.displayReplyForm("This is a reply with <i>some text in italics</i>.");

...

// Define attachments.
const base64Attachment = {
  base64file:
    "iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAIAAABt+uBvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAACxEAAAsRAX9kX5EAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTM0A1t6AAAF3klEQVR4Xt2aMcolRRSFdQUuwSW4AAMzU8ENzAIMDA1NzHUBgqmZkbG4ADGVQRgGZBBElAERRPg9eC+PQ73qc6u66lZ3v48bzH+7uqr6VN/T1f3mjafT8Pr7b37+8G3En99+5akTcAqB/n7+48uP3vvp3TdvgT//+uE7P3woBwv07+s/Xn32jKXhwKF/Xr3wpgdxpEC/ffnp8/ffKkQpAg3QDDr6Ocs5RiCzm0ILEQca02qB7u2mPQ4xpnUCabtBWDWFdbfYmBYJ1HLZN6PBP3794uOiAcdKY0oXKLQbFE71jkBS33FrjClRoNBuXjx7J/QUNNCdZBtTikAtdtO1+JBA34Z5xjRfIG03I/YBTYVMScY0U6DQbsbXGdevF2C6Mc0RKLQbHEUbbz0MZNKPuYnGNCpQaDdY0iQTDR9zU4xpSCB9t+PQ719/7k3T0P49bkw7BQrtZnBajTS+uIwYU7dA4ZzynrhMWF/3sc+YOgQK7WaiNQpCh9bRu36tAmm7wT2MovOmaUAaPY3G6DKmWCBtNzaYN80EJjIuDUejMSmBUC/abnCrL3Di8IEwErhAvUGrCxRa4C+ffLDAicMVmhW42K2VLgUK67zlFXwcqL9GmltseUXlDirOvMXIbqKdHc/vieGTIJoE6rL93djNWwy9OHwqRCyQqM+J6LpeFj4bIhZoTWVdWCCLBbvkY93HwqdCdJg0AheQ/XRf9mivhk+C6BMIscawUdR5m0MRPjzRLZAFZMo2pnBHlhE+NhELJGa5YNO42Jh8VCIWCBnMEu8WRf4WC147sAxYjGLcjPDxiCaBDMxS+MKCF1cUdXbF+UhEh0CGqDjksz9CZ++2fRiiWyCgKw532QJjEhMYCR+A2COQoStuwcYyw5i8a2K/QIZ+Ei/YWM41Ju+UGBUI6Bses4eIqf6Nzkc+43N4j8QEgQxdcZApe2OJdRp/R/G+iGkCGbriFmws9TqF4b0QkwUC4SNmwcYSu419xuTnE/MFMrCSRT9FZG8s9xmTn0xkCQSKfu4Di5y9sew1Jj+NOFIgC1hG9q+y7b+s+QnE8QJZYJ0n/g+rKvoBYuFNibMIZJG9sYQx6Y8n3o44l0AILDKWOtW/xf/g8RbE6QSygGVkbyyrxuTHiJMKZLHgjbcY0bPEqQWySN1YFmN5lriAQBZJxlSM4lniMgIhMjaWxRCeJa4kkAWcdaIxFZ17lrieQBazNpZFt54lriqQBXZ9g8ZUdOhZ4toCIWxj6UP2U/TmWSJRoDU/9V1YIIDdcONr9L64dond2P19T8QjmDSDdUYhTJHpcR7z90Am/bVBx6NtFLcIv+pXAzfgo71qaFAmWx9linjYl9UWIJN4zD3454527ncD+DP7g5nBgyI8S5xCIIMHzbCbKjwowrPESQXyVD48aHXcWCDc7dm/Wxk8qKcymfZN2gJ+mfqDDODhPJUDLmTrAeotiFaBLJI2IwYP5KnZ2IaeByrC2xEVgdCFeCfIqzgexVNT0T9Ab30VqAgEwneCjIrj/j01CVFTFuKrQF0gQ/wCaQHJJ1Yc9+ypYcKawgXqrwJKIEPfmRMrjrv11BhTZh4LZGAdhDFNqTju0FN70TW1ZTdVWgUCoTFh1JGK46481U9YU70fITsEMrQxjVQc9+OpTnRNhXZTpVsgI5zKjorjHjzVjK6pkWXbKZCBm1kYU2/F8bmeakDXVJfdVBkSCGB+wpi6lo5P9FSEvpF77abKqECGNqbGiuNTPLWNrikc2mE3VeYIZOj1DCuOG3uqhq6pEbupMlMgA7PfMiY9e27pqTvEGozbTZX5AgFtTFsVx208ReiammI3VVIEMrQxYbWLS+KjnvofXVMT7aZKokCGKIqi4viQp3pOTyJdIAO3wJYx3SqOk/hT1FSS3VRZJBDQxlQUkaipPLupsk4gQxuTjmy7qbJaIEM4SzXW2E2VYwQyhDHdYqXdVDlSIKCNabHdVDlYIOPemA6xmyqnEMgwYzrQbio8Pf0HxndUxitiwgUAAAAASUVORK5CYII=",
  inLine: true,
  name: "script_lab.png",
  type: Office.MailboxEnums.AttachmentType.Base64
};
const fileAttachment = {
  inLine: true,
  name: "dog.jpg",
  type: Office.MailboxEnums.AttachmentType.File,
  url: "https://i.imgur.com/9S36xvA.jpg"
};
const itemAttachment = {
  itemId: Office.context.mailbox.item.itemId,
  name: "test_email.msg",
  type: Office.MailboxEnums.AttachmentType.Item
};

// Create the reply with attachments.
Office.context.mailbox.item.displayReplyForm({
  htmlBody:
    "This is a reply with an inline Base64-encoded attachment, an inline image, and an item attachment.<br><img src='cid:script_lab.png'><br><img src='cid:dog.jpg'>",
  attachments: [base64Attachment, fileAttachment, itemAttachment],
  callback: (result) => {
    if (result.status === Office.AsyncResultStatus.Failed) {
      console.error(`Action failed with message ${result.error.message}`);
      return;
    }

    console.log("Created a reply with attachments.");
  }
});

displayReplyFormAsync(formData, options, callback)

選択したメッセージの送信者のみ、または選択した予定の開催者のみを含む回答フォームが表示されます。

displayReplyFormAsync(formData: string | ReplyFormData, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

パラメーター

formData

string | Office.ReplyFormData

回答フォームの本文を表すテキストと HTML が含まれる文字列。 文字列は 32 KB に制限されています。または、本文または添付ファイル データとコールバック関数を含む ReplyFormData オブジェクトを指定してください。

options
Office.AsyncContextOptions

次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext: 開発者は、コールバック関数でアクセスしたいオブジェクトを指定できます。

callback

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

省略可能。 メソッドが完了すると、callback パラメーターで渡された関数が、Office.AsyncResult オブジェクトである 1 つのパラメーター asyncResult を指定して呼び出されます。

返品

void

注釈

API セット: メールボックス 1.9

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要:

  • Outlook on the web および新しい Outlook on Windows では、返信フォームは、3 列ビューではポップアップ フォーム、2 列または 1 列ビューではポップアップ フォームとして表示されます。

  • 文字列パラメーターのいずれかが制限値を超えると、displayReplyFormAsync は例外をスローします。

  • formData.attachments パラメーターで添付ファイルが指定されている場合、Outlook はすべての添付ファイルをダウンロードして、返信フォームに添付しようとします。 添付ファイルの追加に失敗すると、フォーム UI でエラーが表示されます。 表示できない場合、エラー メッセージはスローされません。

  • この方法は、Android または iOS の Outlook ではサポートされていません。 Outlook Mobile でサポートされている API の詳細については、「モバイル デバイスの Outlook でサポートされている Outlook JavaScript API」を参照してください

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/55-display-items/display-reply-forms.yaml

Office.context.mailbox.item.displayReplyFormAsync("This is a reply with <i>some text in italics</i>.", function(
  asyncResult
) {
  console.log(JSON.stringify(asyncResult));
});

...

// Define attachments.
const base64Attachment = {
  base64file:
    "iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAIAAABt+uBvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAACxEAAAsRAX9kX5EAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTM0A1t6AAAF3klEQVR4Xt2aMcolRRSFdQUuwSW4AAMzU8ENzAIMDA1NzHUBgqmZkbG4ADGVQRgGZBBElAERRPg9eC+PQ73qc6u66lZ3v48bzH+7uqr6VN/T1f3mjafT8Pr7b37+8G3En99+5akTcAqB/n7+48uP3vvp3TdvgT//+uE7P3woBwv07+s/Xn32jKXhwKF/Xr3wpgdxpEC/ffnp8/ffKkQpAg3QDDr6Ocs5RiCzm0ILEQca02qB7u2mPQ4xpnUCabtBWDWFdbfYmBYJ1HLZN6PBP3794uOiAcdKY0oXKLQbFE71jkBS33FrjClRoNBuXjx7J/QUNNCdZBtTikAtdtO1+JBA34Z5xjRfIG03I/YBTYVMScY0U6DQbsbXGdevF2C6Mc0RKLQbHEUbbz0MZNKPuYnGNCpQaDdY0iQTDR9zU4xpSCB9t+PQ719/7k3T0P49bkw7BQrtZnBajTS+uIwYU7dA4ZzynrhMWF/3sc+YOgQK7WaiNQpCh9bRu36tAmm7wT2MovOmaUAaPY3G6DKmWCBtNzaYN80EJjIuDUejMSmBUC/abnCrL3Di8IEwErhAvUGrCxRa4C+ffLDAicMVmhW42K2VLgUK67zlFXwcqL9GmltseUXlDirOvMXIbqKdHc/vieGTIJoE6rL93djNWwy9OHwqRCyQqM+J6LpeFj4bIhZoTWVdWCCLBbvkY93HwqdCdJg0AheQ/XRf9mivhk+C6BMIscawUdR5m0MRPjzRLZAFZMo2pnBHlhE+NhELJGa5YNO42Jh8VCIWCBnMEu8WRf4WC147sAxYjGLcjPDxiCaBDMxS+MKCF1cUdXbF+UhEh0CGqDjksz9CZ++2fRiiWyCgKw532QJjEhMYCR+A2COQoStuwcYyw5i8a2K/QIZ+Ei/YWM41Ju+UGBUI6Bses4eIqf6Nzkc+43N4j8QEgQxdcZApe2OJdRp/R/G+iGkCGbriFmws9TqF4b0QkwUC4SNmwcYSu419xuTnE/MFMrCSRT9FZG8s9xmTn0xkCQSKfu4Di5y9sew1Jj+NOFIgC1hG9q+y7b+s+QnE8QJZYJ0n/g+rKvoBYuFNibMIZJG9sYQx6Y8n3o44l0AILDKWOtW/xf/g8RbE6QSygGVkbyyrxuTHiJMKZLHgjbcY0bPEqQWySN1YFmN5lriAQBZJxlSM4lniMgIhMjaWxRCeJa4kkAWcdaIxFZ17lrieQBazNpZFt54lriqQBXZ9g8ZUdOhZ4toCIWxj6UP2U/TmWSJRoDU/9V1YIIDdcONr9L64dond2P19T8QjmDSDdUYhTJHpcR7z90Am/bVBx6NtFLcIv+pXAzfgo71qaFAmWx9linjYl9UWIJN4zD3454527ncD+DP7g5nBgyI8S5xCIIMHzbCbKjwowrPESQXyVD48aHXcWCDc7dm/Wxk8qKcymfZN2gJ+mfqDDODhPJUDLmTrAeotiFaBLJI2IwYP5KnZ2IaeByrC2xEVgdCFeCfIqzgexVNT0T9Ab30VqAgEwneCjIrj/j01CVFTFuKrQF0gQ/wCaQHJJ1Yc9+ypYcKawgXqrwJKIEPfmRMrjrv11BhTZh4LZGAdhDFNqTju0FN70TW1ZTdVWgUCoTFh1JGK46481U9YU70fITsEMrQxjVQc9+OpTnRNhXZTpVsgI5zKjorjHjzVjK6pkWXbKZCBm1kYU2/F8bmeakDXVJfdVBkSCGB+wpi6lo5P9FSEvpF77abKqECGNqbGiuNTPLWNrikc2mE3VeYIZOj1DCuOG3uqhq6pEbupMlMgA7PfMiY9e27pqTvEGozbTZX5AgFtTFsVx208ReiammI3VVIEMrQxYbWLS+KjnvofXVMT7aZKokCGKIqi4viQp3pOTyJdIAO3wJYx3SqOk/hT1FSS3VRZJBDQxlQUkaipPLupsk4gQxuTjmy7qbJaIEM4SzXW2E2VYwQyhDHdYqXdVDlSIKCNabHdVDlYIOPemA6xmyqnEMgwYzrQbio8Pf0HxndUxitiwgUAAAAASUVORK5CYII=",
  inLine: true,
  name: "script_lab.png",
  type: Office.MailboxEnums.AttachmentType.Base64
};
const fileAttachment = {
  inLine: true,
  name: "dog.jpg",
  type: Office.MailboxEnums.AttachmentType.File,
  url: "https://i.imgur.com/9S36xvA.jpg"
};
const itemAttachment = {
  itemId: Office.context.mailbox.item.itemId,
  name: "test_email.msg",
  type: Office.MailboxEnums.AttachmentType.Item
};

// The async version was introduced in requirement set 1.9.
// It provides a callback when the new appointment form has been created.
Office.context.mailbox.item.displayReplyFormAsync(
  {
    htmlBody:
      "This is a reply with an inline Base64-encoded attachment, an inline image, and an item attachment.<br><img src='cid:script_lab.png'><br><img src='cid:dog.jpg'>",
    attachments: [base64Attachment, fileAttachment, itemAttachment]
  },
  (asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Failed) {
      console.error(`Action failed with message ${asyncResult.error.message}`);
      return;
    }

    console.log("Created reply with attachments.");
  }
);

displayReplyFormAsync(formData, callback)

選択したメッセージの送信者のみ、または選択した予定の開催者のみを含む回答フォームが表示されます。

displayReplyFormAsync(formData: string | ReplyFormData, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

パラメーター

formData

string | Office.ReplyFormData

回答フォームの本文を表すテキストと HTML が含まれる文字列。 文字列は 32 KB に制限されています。または、本文または添付ファイル データとコールバック関数を含む ReplyFormData オブジェクトを指定してください。

callback

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

省略可能。 メソッドが完了すると、callback パラメーターで渡された関数が、Office.AsyncResult オブジェクトである 1 つのパラメーター asyncResult を指定して呼び出されます。

返品

void

注釈

API セット: メールボックス 1.9

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要:

  • Outlook on the web および新しい Outlook on Windows では、返信フォームは、3 列ビューではポップアップ フォーム、2 列または 1 列ビューではポップアップ フォームとして表示されます。

  • 文字列パラメーターのいずれかが制限値を超えると、displayReplyFormAsync は例外をスローします。

  • formData.attachments パラメーターで添付ファイルが指定されている場合、Outlook はすべての添付ファイルをダウンロードして、返信フォームに添付しようとします。 添付ファイルの追加に失敗すると、フォーム UI でエラーが表示されます。 表示できない場合、エラー メッセージはスローされません。

  • この方法は、Android または iOS の Outlook ではサポートされていません。 Outlook Mobile でサポートされている API の詳細については、「モバイル デバイスの Outlook でサポートされている Outlook JavaScript API」を参照してください

getAllInternetHeadersAsync(options, callback)

メッセージのすべてのインターネット ヘッダーを文字列として取得します。

詳細については、「Outlook アドインでメッセージのインターネット ヘッダーを取得して設定する」を参照してください。

getAllInternetHeadersAsync(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 プロパティに提供されます。 返される文字列値の書式設定情報については、 RFC 2183 を参照してください。 呼び出しが失敗した場合、 asyncResult.error プロパティにはエラーの理由を含むエラー コードが含まれます。

返品

void

注釈

API セット: メールボックス 1.8

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/70-mime-headers/get-internet-headers-message-read.yaml

Office.context.mailbox.item.getAllInternetHeadersAsync(function (asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("Internet headers received successfully");
    if (asyncResult.value.match(/preferred-fruit:.*/gim)) {
      console.log("Sender's preferred fruit: " + asyncResult.value.match(/preferred-fruit:.*/gim)[0].slice(17));
    } else {
      console.log("Didn't receive header with sender's preferred fruit");
    }
    if (asyncResult.value.match(/preferred-vegetable:.*/gim)) {
      console.log(
        "Sender's preferred vegetable: " + asyncResult.value.match(/preferred-vegetable:.*/gim)[0].slice(21)
      );
    } else {
      console.log("Didn't receive header with sender's preferred vegetable");
    }
  } else {
    console.log("Error getting internet headers: " + JSON.stringify(asyncResult.error));
  }
});

getAllInternetHeadersAsync(callback)

メッセージのすべてのインターネット ヘッダーを文字列として取得します。

詳細については、「Outlook アドインでメッセージのインターネット ヘッダーを取得して設定する」を参照してください。

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

パラメーター

callback

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

省略可能。 メソッドが完了すると、callback パラメーターで渡された関数が、Office.AsyncResult オブジェクトである 1 つのパラメーター asyncResult を指定して呼び出されます。 成功すると、インターネット ヘッダー データは文字列として asyncResult.value プロパティに提供されます。 返される文字列値の書式設定情報については、 RFC 2183 を参照してください。 呼び出しが失敗した場合、 asyncResult.error プロパティにはエラーの理由を含むエラー コードが含まれます。

返品

void

注釈

API セット: メールボックス 1.8

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

getAsFileAsync(options, callback)

Base64 でエンコードされた EML 形式で現在のメッセージを取得します。

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

パラメーター

options
Office.AsyncContextOptions

次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext: 開発者は、コールバック関数でアクセスしたいオブジェクトを指定できます。

callback

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

メソッドが完了すると、コールバック パラメーターに渡された関数が、Office.AsyncResult オブジェクトである 1 つのパラメーター asyncResult を使用して呼び出されます。 asyncResult.value プロパティでは、Base64 でエンコードされたメッセージの EML 形式が返されます。 発生したエラーはすべて asyncResult.error プロパティで返されます。

返品

void

注釈

API セット: メールボックス 1.14

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

getAsFileAsync(callback)

Base64 でエンコードされた EML 形式で現在のメッセージを取得します。

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

パラメーター

callback

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

メソッドが完了すると、コールバック パラメーターに渡された関数が、Office.AsyncResult オブジェクトである 1 つのパラメーター asyncResult を使用して呼び出されます。 asyncResult.value プロパティでは、Base64 でエンコードされたメッセージの EML 形式が返されます。 発生したエラーはすべて asyncResult.error プロパティで返されます。

返品

void

注釈

API セット: メールボックス 1.14

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

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

Office.context.mailbox.item.getAsFileAsync((asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log(`Error encountered during processing: ${asyncResult.error.message}`);
    return;
  }

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

getAttachmentContentAsync(attachmentId, options, callback)

メッセージまたは予定から添付ファイルを取得し、 AttachmentContent オブジェクトとして返します。

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

注釈

API セット: メールボックス 1.8

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要:

  • getAttachmentContentAsync メソッドは、指定された識別子を持つ添付ファイルをアイテムから取得します。 ベスト プラクティスとして、 item.attachments 呼び出しから添付ファイルの識別子を取得し、同じセッションでその識別子を使用して添付ファイルを取得する必要があります。

  • Outlook on the web と新しい Outlook on Windows では、[アップロードして共有] オプションを使用して追加された添付ファイルはgetAttachmentContentAsyncサポートされません。

  • Outlook on the web、モバイル デバイス、および新しい Outlook on Windows では、添付ファイル識別子は同じセッション内でのみ有効です。 ユーザーがアプリを閉じるか、ユーザーがインライン フォームの作成を開始した後、フォームをポップアウトして別のウィンドウで続行すると、セッションは終了です。

エラー:

  • 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 read mode. The item.attachments call can only be used in read mode.
const item = Office.context.mailbox.item;
const attachments = item.attachments;
if (attachments.length <= 0) {
  console.log("Mail item has no attachments.");
  return;
}

for (let i = 0; i < attachments.length; i++) {
  // Log the attachment type and its contents to the console.
  item.getAttachmentContentAsync(attachments[i].id, handleAttachmentsCallback);
}

getAttachmentContentAsync(attachmentId, callback)

メッセージまたは予定から添付ファイルを取得し、 AttachmentContent オブジェクトとして返します。

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

注釈

API セット: メールボックス 1.8

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要:

  • getAttachmentContentAsync メソッドは、指定された識別子を持つ添付ファイルをアイテムから取得します。 ベスト プラクティスとして、 item.attachments 呼び出しから添付ファイルの識別子を取得し、同じセッションでその識別子を使用して添付ファイルを取得する必要があります。

  • Outlook on the web と新しい Outlook on Windows では、[アップロードして共有] オプションを使用して追加された添付ファイルはgetAttachmentContentAsyncサポートされません。

  • Outlook on the web、モバイル デバイス、および新しい Outlook on Windows では、添付ファイル識別子は同じセッション内でのみ有効です。 ユーザーがアプリを閉じるか、ユーザーがインライン フォームの作成を開始した後、フォームをポップアウトして別のウィンドウで続行すると、セッションは終了です。

エラー:

  • AttachmentTypeNotSupported : 添付ファイルの種類はサポートされていません。 サポートされていない種類には、埋め込み画像 (リッチ テキスト形式) や、メールや予定表アイテム以外のアイテム添付ファイルの種類 (連絡先やタスク アイテムなど) が含まれます。

  • InvalidAttachmentId : 添付ファイル識別子は存在しません。

getEntities()

警告

この API は非推奨になりました。

Use regular expression rules instead.

選択したアイテムの本文にあるエンティティを取得します。

警告: エンティティ ベースのコンテキスト Outlook アドインは廃止されました。 ただし、正規表現のルールは引き続きサポートされています。 代替ソリューションとして正規表現ルールを使用するように、コンテキスト アドインを更新することをお勧めします。 これらのルールの実装方法のガイダンスについては、「 Outlook のコンテキスト アドイン」を参照してください。

getEntities(): Entities;

返品

注釈

API セット: メールボックス 1.1

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: 予定の出席者

getEntitiesByType(entityType)

警告

この API は非推奨になりました。

Use regular expression rules instead.

選択したアイテムの本文内で検出された指定のエンティティ型のすべてのエンティティを含む配列を取得します。

警告: エンティティ ベースのコンテキスト Outlook アドインは廃止されました。 ただし、正規表現のルールは引き続きサポートされています。 代替ソリューションとして正規表現ルールを使用するように、コンテキスト アドインを更新することをお勧めします。 これらのルールの実装方法のガイダンスについては、「 Outlook のコンテキスト アドイン」を参照してください。

getEntitiesByType(entityType: MailboxEnums.EntityType | string): Array<string | Contact | MeetingSuggestion | PhoneNumber | TaskSuggestion>;

パラメーター

entityType

Office.MailboxEnums.EntityType | string

EntityType列挙値の 1 つ。

返品

entityType に渡された値が EntityType 列挙の有効なメンバーではない場合、メソッドは null を返します。 指定した型のエンティティがアイテムの本文に存在しない場合、メソッドは空の配列を返します。 それ以外の場合は、返される配列内のオブジェクトの型は、entityType パラメーター内の要求されたエンティティの型によって異なります。

注釈

API セット: メールボックス 1.1

最小アクセス許可レベル: 制限付き

適用可能な Outlook モード: メッセージの読み取り

getFilteredEntitiesByName(name)

警告

この API は非推奨になりました。

Use regular expression rules instead.

アドイン専用のマニフェスト ファイルで定義されている名前付きフィルターに合格した、選択した項目内の既知のエンティティを返します。

警告: エンティティ ベースのコンテキスト Outlook アドインは廃止されました。 ただし、正規表現のルールは引き続きサポートされています。 代替ソリューションとして正規表現ルールを使用するように、コンテキスト アドインを更新することをお勧めします。 これらのルールの実装方法のガイダンスについては、「 Outlook のコンテキスト アドイン」を参照してください。

getFilteredEntitiesByName(name: string): Array<string | Contact | MeetingSuggestion | PhoneNumber | TaskSuggestion>;

パラメーター

name

string

一致するフィルターを定義する ItemHasKnownEntity ルール要素の名前。

返品

指定された FilterName 要素値を持つアドイン マニフェスト ファイルの ItemHasKnownEntity ルール要素で定義された正規表現に一致するエンティティ。 name パラメーターに一致する FilterName 要素値を持つItemHasKnownEntity要素がマニフェストにない場合、メソッドは null を返します。 name パラメーターがマニフェスト内のItemHasKnownEntity要素と一致するが、現在の項目に一致するエンティティがない場合、メソッドは空の配列を返します。

注釈

API セット: メールボックス 1.1

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: 予定の出席者

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

注釈

API セット: メールボックス 1.8

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

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

注釈

API セット: メールボックス 1.8

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

getRegExMatches()

アドイン専用のマニフェスト ファイルで定義されている正規表現と一致する、選択した項目の文字列値を返します。

getRegExMatches(): any;

返品

any

アドイン マニフェスト ファイルで定義されている正規表現に一致する文字列の配列を含むオブジェクト。 各配列の名前は、一致する ItemHasRegularExpressionMatch ルールの RegExName 属性の対応する値と等しくなります。 ItemHasRegularExpressionMatch ルールの場合、一致する文字列は、そのルールで指定されたアイテムのプロパティに存在する必要があります。 単純型は、サポートされるプロパティを定義します。

注釈

API セット: メールボックス 1.1

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: 予定の出席者

重要:

  • エンティティベースのコンテキスト Outlook アドインは廃止されました。 ただし、正規表現のルールは引き続きサポートされています。 代替ソリューションとして正規表現ルールを使用するように、コンテキスト アドインを更新することをお勧めします。 これらのルールの実装方法のガイダンスについては、「 Outlook のコンテキスト アドイン」を参照してください。

  • このメソッドは、Outlook アドイン のアクティブ化ルール機能と一緒に使用しますが、これは Microsoft 365 の統合マニフェストでサポートされていません。

  • 項目の body プロパティに ItemHasRegularExpressionMatch ルールを指定する場合、正規表現は本文をさらにフィルター処理し、項目の本文全体を返そうとしないでください。 .* などの正規表現を使用して項目の本文全体を取得すると、常に期待どおりの結果が返されるとは限りません。 この場合、代わりに Body.getAsync メソッドを使用して本文全体を取得します。

  • この方法は、Android または iOS の Outlook ではサポートされていません。 Outlook Mobile でサポートされている API の詳細については、「モバイル デバイスの Outlook でサポートされている Outlook JavaScript API」を参照してください

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/75-regex-matches/contextual.yaml

// This API only works when you click on the highlighted word "ScriptLab".
console.log(Office.context.mailbox.item.getRegExMatches());

getRegExMatchesByName(name)

アドイン専用のマニフェスト ファイルで定義されている名前付き正規表現と一致する、選択した項目の文字列値を返します。

getRegExMatchesByName(name: string): string[];

パラメーター

name

string

一致するフィルターを定義する ItemHasRegularExpressionMatch ルール要素の名前。

返品

string[]

アドイン マニフェスト ファイルの ItemHasRegularExpressionMatch ルール要素で定義された正規表現に一致する文字列を、指定された RegExName 要素値で格納する配列。

注釈

API セット: メールボックス 1.1

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: 予定の出席者

重要:

  • エンティティベースのコンテキスト Outlook アドインは廃止されました。 ただし、正規表現のルールは引き続きサポートされています。 代替ソリューションとして正規表現ルールを使用するように、コンテキスト アドインを更新することをお勧めします。 これらのルールの実装方法のガイダンスについては、「 Outlook のコンテキスト アドイン」を参照してください。

  • このメソッドは、Outlook アドイン のアクティブ化ルール機能と一緒に使用しますが、これは Microsoft 365 の統合マニフェストでサポートされていません。

  • 項目の body プロパティに ItemHasRegularExpressionMatch ルールを指定する場合、正規表現は本文をさらにフィルター処理し、項目の本文全体を返そうとしないでください。 .* などの正規表現を使用して項目の本文全体を取得すると、常に期待どおりの結果が返されるとは限りません。 この場合、代わりに Body.getAsync メソッドを使用して本文全体を取得します。

  • この方法は、Android または iOS の Outlook ではサポートされていません。 Outlook Mobile でサポートされている API の詳細については、「モバイル デバイスの Outlook でサポートされている Outlook JavaScript API」を参照してください

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/75-regex-matches/contextual.yaml

// This API only works when you click on the highlighted word "ScriptLab".
console.log(Office.context.mailbox.item.getRegExMatchesByName("sampleRegexName"));

getSelectedEntities()

警告

この API は非推奨になりました。

Use regular expression rules instead.

強調表示された一致内で見つかったユーザーが選択しているエンティティを取得します。 強調表示された一致は、コンテキスト アドインに適用されます。

警告: エンティティ ベースのコンテキスト Outlook アドインは廃止されました。 ただし、正規表現のルールは引き続きサポートされています。 代替ソリューションとして正規表現ルールを使用するように、コンテキスト アドインを更新することをお勧めします。 これらのルールの実装方法のガイダンスについては、「 Outlook のコンテキスト アドイン」を参照してください。

getSelectedEntities(): Entities;

返品

注釈

API セット: メールボックス 1.6

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

getSelectedRegExMatches()

アドイン専用のマニフェスト ファイルで定義されている正規表現に一致する、強調表示された一致の文字列値を返します。 強調表示された一致は、コンテキスト アドインに適用されます。

getSelectedRegExMatches(): any;

返品

any

アドイン マニフェスト ファイルで定義されている正規表現に一致する文字列の配列を含むオブジェクト。 各配列の名前は、一致するItemHasRegularExpressionMatchルールの RegExName 属性の対応する値と等しくなります。 ItemHasRegularExpressionMatch ルールの場合、一致する文字列は、そのルールで指定されたアイテムのプロパティに存在する必要があります。 単純型は、サポートされるプロパティを定義します。

注釈

API セット: メールボックス 1.6

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要:

  • エンティティベースのコンテキスト Outlook アドインは廃止されました。 ただし、正規表現のルールは引き続きサポートされています。 代替ソリューションとして正規表現ルールを使用するように、コンテキスト アドインを更新することをお勧めします。 これらのルールの実装方法のガイダンスについては、「 Outlook のコンテキスト アドイン」を参照してください。

  • このメソッドは、Outlook アドイン のアクティブ化ルール機能と一緒に使用しますが、これは Microsoft 365 の統合マニフェストでサポートされていません。

  • この方法は、iOS 版または Android 版 Outlook ではサポートされていません。 Outlook Mobile でサポートされている API の詳細については、「モバイル デバイスの Outlook でサポートされている Outlook JavaScript API」を参照してください

  • 項目の body プロパティに ItemHasRegularExpressionMatch ルールを指定する場合、正規表現は本文をさらにフィルター処理し、項目の本文全体を返そうとしないでください。 .* などの正規表現を使用して項目の本文全体を取得すると、常に期待どおりの結果が返されるとは限りません。 この場合、代わりに Body.getAsync メソッドを使用して本文全体を取得します。

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/75-regex-matches/contextual.yaml

const matches = Office.context.mailbox.item.getSelectedRegExMatches();
if (matches) {
    console.log(matches);
} else {
    console.error("Open add-in by clicking on a highlighted regex match, for this API to return something useful.");
}

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 モード: メッセージの読み取り

: この方法は、iOS 版または Android 版 Outlook ではサポートされていません。

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 モード: メッセージの読み取り

: この方法は、iOS 版または Android 版 Outlook ではサポートされていません。

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

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

注釈

API セット: メールボックス 1.1

カスタム プロパティの詳細については、「Outlook アドインのアドイン メタデータを取得して設定する」を参照してください

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/15-item-custom-properties/load-set-get-save.yaml

Office.context.mailbox.item.loadCustomPropertiesAsync((result) => {
  if (result.status === Office.AsyncResultStatus.Failed) {
    console.error(`loadCustomPropertiesAsync failed with message ${result.error.message}`);
    return;
  }

  customProps = result.value;
  console.log("Loaded the CustomProperties object.");
});

removeHandlerAsync(eventType, options, callback)

サポートされているイベントの種類のイベント ハンドラーを削除します。 イベントは、作業ウィンドウのアドインでのみ使用できます。

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

注釈

API セット: メールボックス 1.7

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要: メール アイテムでサポートされているイベントの一覧については、「 Outlook アイテム オブジェクト モデル」を参照してください。

removeHandlerAsync(eventType, callback)

サポートされているイベントの種類のイベント ハンドラーを削除します。 イベントは、作業ウィンドウのアドインでのみ使用できます。

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

注釈

API セット: メールボックス 1.7

最小アクセス許可レベル: 項目の読み取り

適用可能な Outlook モード: メッセージの読み取り

重要: メール アイテムでサポートされているイベントの一覧については、「 Outlook アイテム オブジェクト モデル」を参照してください。

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