次の方法で共有


Outlook コンテキスト アドインのアクティブ化ルール

Outlook では、ユーザーが読み取りや作成をしようとしているメッセージまたは予定が、アドインのアクティブ化のルールに準ずる場合に、ある種類のアドインをアクティブにします。 これは、1.1 マニフェストのスキーマを使用するすべてのアドインについて同様です。 ユーザーは、Outlook UI からアドインを選び、現在のアイテムに、そのアドインを起動することができます。

注:

アクティブ化ルールに依存する Outlook アドイン機能は、アドインが Microsoft 365 用の統合アプリ マニフェストを使用する場合はサポートされません。

マニフェストでのアクティブ化ルールの指定

特定の条件に対してアドインをアクティブ化するには、次のいずれかの Rule 要素を使用して、アドイン マニフェストでアクティブ化ルールを指定します。

注:

個々のルールを指定するために使用する Rule 要素は、抽象 Rule 複合型です。 次の各種類の規則は、この抽象を複合型 Rule 拡張します。 したがって、マニフェストで個別のルールを指定するときは、xsi:type 属性を使用してルールの以下の型の 1 つをさらに定義する必要があります。

たとえば、次の規則は ItemIs ルールを定義します。 <Rule xsi:type="ItemIs" ItemType="Message" />

FormType属性はマニフェスト v1.1 のアクティブ化規則に適用されますが、VersionOverrides v1.0 では定義されていません。 そのため、VersionOverrides ノードで ItemIs を使用する場合は使用できません。

次の表は、使用できるルールの種類を示しています。 詳細については、次の表を参照してください。

ルール名 該当するフォーム 説明
ItemIs 読み取り、作成 現在選択されているアイテムは指定された種類のアイテム (メッセージまたは予定) かどうかを調べます。 また、アイテム クラスとフォームの種類、および必要に応じてアイテム メッセージ クラスを確認することもできます。
ItemHasAttachment 読み取り 選択されているアイテムに添付ファイルが含まれるかどうかを調べます。
ItemHasRegularExpressionMatch 読み取り 送信者のメール アドレス、件名、または選択したアイテムの本文に正規表現との一致が含まれているかどうかを確認します。
RuleCollection 読み取り、作成 複数のルールを組み合わせて、より複雑なルールを作成できます。

重要

エンティティベースのコンテキスト Outlook アドインは廃止されました。 別のソリューションとして、コンテキスト アドインに正規表現ルールを実装します。 これらのルールを実装する方法のガイダンスについては、「 コンテキスト Outlook アドイン」を参照してください。

ItemIs ルール

ItemIs複合型は、現在の項目が項目の種類と一致する場合はtrueに評価される規則を定義し、必要に応じて、ルールに指定されている場合はアイテム メッセージ クラスを定義します。

ItemIs ルールのItemType属性に、次のいずれかの項目の種類を指定します。 マニフェストでは、複数の ItemIs ルールを指定できます。 ItemType属性は、Outlook アドインをサポートする Outlook アイテムの種類を定義します。

説明
Appointment Outlook の予定表内のアイテムを指定します。 これには、返信され、開催者と出席者が含まれる会議アイテム、または開催者または出席者を持たない予定が含まれます。これは、予定表上の単なるアイテムです。 これは Outlook の IPM.Appointment メッセージ クラスに対応します。
Message 通常、受信トレイで受信する次の項目のいずれかを指定します。
  • 電子メール メッセージ。 これは Outlook の IPM.Note メッセージ クラスに対応します。

  • 会議出席依頼、返信、または取り消し。 これは、Outlook の次のメッセージ クラスに対応します。

    IPM.Schedule.Meeting.Request

    IPM.Schedule.Meeting.Neg

    IPM.Schedule.Meeting.Pos

    IPM.Schedule.Meeting.Tent

    IPM.Schedule.Meeting.Canceled

FormType属性は、アドインをアクティブにするモード (読み取りまたは作成) を指定するために使用されます。

注:

ItemIs FormType 属性はスキーマ v1.1 以降で定義されていますが、 VersionOverrides v1.0 では定義されていません。 アドイン コマンドを定義するときは、 FormType 属性を含めないでください。

アドインがアクティブ化された後は、 mailbox.item プロパティを使用して Outlook で現在選択されているアイテムを取得し、 item.itemType プロパティを使用して現在のアイテムの種類を取得できます。

必要に応じて、 ItemClass 属性を使用してアイテムのメッセージ クラスを指定し、 IncludeSubClasses 属性を使用して、指定したクラスのサブクラスである場合にルールを true するかどうかを指定できます。

メッセージ クラスの詳細については、「Item Types and Message Classes」をご覧ください。

次の例は、ユーザーがメッセージを読み取るときに Outlook アドインをアクティブにする ItemIs ルールです。

<Rule xsi:type="ItemIs" ItemType="Message" FormType="Read" />

次の例は、ユーザーがメッセージまたは予定を読んでいるときに Outlook アドインをアクティブにする ItemIs ルールです。

<Rule xsi:type="RuleCollection" Mode="Or">
  <Rule xsi:type="ItemIs" ItemType="Message" FormType="Read" />
  <Rule xsi:type="ItemIs" ItemType="Appointment" FormType="Read" />
</Rule>

ItemHasAttachment ルール

ItemHasAttachment複合型は、選択した項目に添付ファイルが含まれているかどうかを確認するルールを定義します。

<Rule xsi:type="ItemHasAttachment" />

ItemHasRegularExpressionMatch ルール

ItemHasRegularExpressionMatch複合型は、正規表現を使用して項目の指定されたプロパティの内容と一致するルールを定義します。 現在選択されている項目を表す オブジェクトの getRegExMatches メソッドまたは getRegExMatchesByName メソッドを使用して、指定した正規表現の一致を取得します。

次の例は、選択した項目の本文に "apple"、"バナナ"、または "ココナッツ" が含まれている場合にアドインをアクティブにする ItemHasRegularExpressionMatch を示しています。大文字と小文字は無視されます。

<Rule xsi:type="ItemHasRegularExpressionMatch" RegExName="fruits" RegExValue="apple|banana|coconut" PropertyName="BodyAsPlaintext" IgnoreCase="true" />

ItemHasRegularExpressionMatch ルールの使用方法の詳細については、「コンテキスト Outlook アドイン」を参照してください。

RuleCollection ルール

RuleCollection複合型は、複数のルールを 1 つのルールに結合します。 Mode属性を使用して、コレクション内のルールを論理 OR または論理 AND と組み合わせる必要があるかどうかを指定できます。

論理 AND を指定する場合、アドインは、コレクション内で指定されているすべてのルールにアイテムが一致する場合にのみ表示されます。 論理 OR を指定すると、コレクション内の指定した規則のいずれかに一致する項目にアドインが表示されます。

RuleCollectionルールを組み合わせて複雑なルールを形成できます。 次の例では、ユーザーが添付ファイルを含む予定またはメッセージを表示しているときにアドインをアクティブにします。

<Rule xsi:type="RuleCollection" Mode="And">
  <Rule xsi:type="RuleCollection" Mode="Or">
    <Rule xsi:type="ItemIs" ItemType="Message" FormType="Read" />
    <Rule xsi:type="ItemIs" ItemType="Appointment" FormType="Read" />
  </Rule>
  <Rule xsi:type="ItemHasAttachment" />
</Rule>

次の例では、ユーザーがメッセージを作成しているとき、またはユーザーが予定を表示していて、その件名に "sales"、"marketing"、または "finance" が含まれている場合にアドインをアクティブにします。

<Rule xsi:type="RuleCollection" Mode="Or">
  <Rule xsi:type="ItemIs" ItemType="Message" FormType="Edit" />
  <Rule xsi:type="RuleCollection" Mode="And">
    <Rule xsi:type="ItemIs" ItemType="Appointment" FormType="Read" />
    <Rule xsi:type="ItemHasRegularExpressionMatch" RegExName="departments" RegExValue="sales|marketing|finance" PropertyName="Subject" IgnoreCase="true" />
  </Rule> 
</Rule>

ルールと正規表現の制約事項

Outlook アドインで満足のいくエクスペリエンスを提供するには、アクティブ化と API の使用に関するガイドラインに従う必要があります。 これらのガイドラインについては、「 ライセンス認証の制限」と「JavaScript API for Outlook アドイン」および「Outlook アドインの アクティブ化のトラブルシューティング」を参照してください。

関連項目