次の方法で共有


Outlook でメッセージまたは予定の本文を取得または設定する

メッセージまたは予定で Body API を呼び出して、コンテンツの取得、その形式の決定、またはコンテンツの更新を行います。 使用できる Body メソッドを使用すると、メール アイテムの受信者に応じて署名をカスタマイズしたり、法的な目的で免責事項を追加したりできます。

該当するタブを選択して、メール アイテムの本文を取得または設定する方法を確認します。

メッセージまたは予定の本文は、読み取りモードと新規作成モードの両方で取得できます。 メール アイテムの本文を取得するには、 Office.context.mailbox.item.body.getAsync を呼び出します。 getAsync メソッドを呼び出す場合は、coercionType パラメーターで返される本文の形式を指定する必要があります。 たとえば、本文を HTML 形式またはプレーン テキスト形式で取得できます。

次の例では、アイテムの本文を HTML 形式で取得します。

// Get the current body of the message or appointment.
Office.context.mailbox.item.body.getAsync(Office.CoercionType.Html, (bodyResult) => {
  if (bodyResult.status === Office.AsyncResultStatus.Failed) {
    console.log(`Failed to get body: ${bodyResult.error.message}`);
    return;
  }

  const body = bodyResult.value;

  // Perform additional operations here.
});

Outlook on the webまたは新しい Outlook on Windows でメッセージ応答の本文を取得する

Outlook on the webおよび新しい Outlook on Windows では、ユーザーは[設定]、[>メール]、[レイアウト]>、[メッセージ] > [メッセージ] organizationでメッセージを会話または個々のメッセージとして整理できます。 この設定は、特に複数のメッセージを含む会話スレッドで、ユーザーに表示されるメッセージの本文の量に影響します。 設定に応じて、会話スレッド全体または現在のメッセージの内容が表示されます。 [メッセージ組織] 設定の詳細については、「Outlook でのメッセージ一覧の表示方法を変更する」を参照してください。

メッセージ応答で Office.context.mailbox.item.body.getAsync を呼び出すと、会話スレッドの本文全体が返されます。 返された本文にユーザーのメッセージ組織設定を反映させる場合は、getAsync呼び出しで bodyMode オプションを指定できます。 次の表に、 bodyMode 構成に応じて返される本文の一部を示します。

bodyMode 構成 本文への影響
bodyMode は、 getAsync 呼び出しで指定されていません 会話スレッドの本文全体が返されます。
bodyMode が に設定されている Office.MailboxEnums.BodyMode.FullBody 会話スレッドの本文全体が返されます。
bodyMode が に設定されている Office.MailboxEnums.BodyMode.HostConfig [メッセージの編成] が [メッセージのグループ化] に設定されている場合>選択した会話からのメッセージをすべて表示するか>メッセージ交換でグループ化されたメールを表示する/最下部に [新しい] を選択すると、現在の返信の本文のみが返されます。

[メッセージ編成] が [個々のメッセージ] に設定されている場合: メッセージをグループ化しないでください>単一のメッセージまたは個別のメッセージとしてメールを表示する場合は、会話スレッドの本文全体が返されます。

注:

bodyMode オプションは、Outlook on Windows (クラシック)、Mac、モバイル デバイスでは無視されます。

次の例では、ユーザーのメッセージ設定を受け入 bodyMode オプションを指定します。

Office.context.mailbox.item.body.getAsync(
  Office.CoercionType.Html,
  { bodyMode: Office.MailboxEnums.BodyMode.HostConfig },
  (bodyResult) => {
    if (bodyResult.status === Office.AsyncResultStatus.Failed) {
      console.log(`Failed to get body: ${bodyResult.error.message}`);
      return;
    }

    const body = bodyResult.value;

    // Perform additional operations here.
  }
);

Script Labでコード サンプルを試す

Outlook アドインのScript Labを取得し、アイテム本文のコード サンプルを試して、動作している API の取得と設定を確認します。 Script Lab の詳細については、「Script Lab を使用して Office JavaScript API を探索する」を参照してください。

関連項目