Adobe Campaign でオファーを管理するには、効率的に運用するための慎重な管理が必要です。問題を回避するには、コンタクト先の数と、オファーカテゴリおよびオファーの数のバランスを取る必要があります。
この節では、実施要件ルール、事前定義済みフィルター、ワークフローアクティビティ、データベースオプションなど、Adobe Campaign でインタラクションモジュールを管理するためのベストプラクティスを紹介します。
インタラクションを実装および設定する際には、次の推奨事項に注意する必要があります。
以下に、実施要件ルールを扱う際のベストプラクティスをいくつか示します。
以下に、提案テーブルに関するいくつかのベストプラクティスを示します。
この節では、Adobe Campaign におけるオファーの管理とインタラクションモジュールの使用に関する詳しいアドバイスを提供しています。
配信にオファーを含める場合、一般に、そのオファーは、「エンリッチメント」ワークフローアクティビティ(または他の類似アクティビティ)を通じてキャンペーンワークフローのアップストリームで選択されます。
「エンリッチメント」アクティビティでオファーを選択する際は、使用するオファースペースを選択できます。ただし、選択したオファースペースに関係なく、配信のカスタマイズメニューは、配信で設定したオファースペースに依存します。
以下の例では、配信で選択されたオファースペースはメール(環境 - 受信者)です。
配信で選択したオファースペースに HTML レンダリング関数が設定されていない場合、配信メニューに表示されず、選択できません。これは、「エンリッチメント」アクティビティで選択されたオファースペースとは無関係です。
以下の例では、配信で選択されたオファースペースにレンダリング関数があるので、HTML レンダリング関数をドロップダウンリストで使用できます。
この関数は、<%@ include proposition="targetData.proposition" view="rendering/html" %>
のようなコードを挿入します。
提案を選択すると、ビュー属性の値は、以下のようになります。
単一のメール配信に複数のオファースペースを含める際に、一部にレンダリング関数があり、一部にレンダリング関数がない場合は、どのオファーがどのオファースペースを使用し、どのオファースペースにレンダリング関数があるかを覚えておく必要があります。
そのため、問題を回避するために、オファースペースが HTML コンテンツのみを必要とする場合でも、すべてのオファースペースに HTML レンダリング関数を定義することをお勧めします。
オファースペースには、提案が生成または許可された場合に、提案テーブルにデータを保存する機能があります。
ただし、これはインバウンドインタラクションにのみ適用されます。
アウトバウンドインタラクションを使用する場合、およびインタラクションモジュールを使用せずにアウトバウンドオファーを使用する場合は、提案テーブルに追加データを保存することもできます。
ワークフローの一時テーブルのフィールドのうち、提案テーブル内のフィールド名と名前が一致するフィールドは、提案テーブル内の同じフィールドにコピーされます。
例えば、「エンリッチメント」ワークフローアクティビティでオファーを手動(インタラクションなし)で選択する場合、標準フィールドは次のように定義されます。
@rank
フィールドなど、フィールドをさらに追加できます。
@rank
という名前の提案テーブルにフィールドがあるので、ワークフローの一時テーブルの値がコピーされます。
提案テーブルへの追加フィールドの格納について詳しくは、この節を参照してください。
インタラクションを含むアウトバウンドオファーの場合、これは、複数のオファーが選択され、メールに表示される順序を記録する場合に役立ちます。
また、現在の支出レベルなど、追加のメタデータを提案テーブルに直接保存して、オファーが生成された時点の支出に関する履歴記録を保持することもできます。
アウトバウンドインタラクションを使用する場合、上記の例のように @rank
フィールドを追加できますが、その値はインタラクションから返される順序に基づいて自動的に設定されます。例えば、インタラクションを使用して 3 つのオファーを選択する場合、@rank
フィールドには 1、2 および 3 の値が返されます。
インタラクションを使用して手動でオファーを選択する場合、両方のアプローチを組み合わせることができます。例えば、手動で選択したオファーの @rank
フィールドを手動で 1 に設定し、インタラクションから返されるオファーに "1 + @rank"
などの式を使用できます。インタラクションが 3 つのオファーを選択すると仮定すると、両方のアプローチで返されるオファーは 1~4 にランク付けされます。
nms:offer スキーマを拡張する場合、既に設定済みの標準の構造に従っていることを確認します。
<element name="view">
の下にコンテンツストレージ用の新しいフィールドを定義します。
それぞれの新しいフィールドは、2 回ずつ定義する必要があります。1 回は通常の XML フィールドとして、もう 1 回は名前に「_jst」が付いた CDATA XML フィールドとして定義します。次に例を示します。
<element label="Price" name="price" type="long" xml="true"/>
<element advanced="true" label="Script price" name="price_jst" type="CDATA" xml="true"/>
トラッキングする URL を含むフィールドは、<element name="view" >
の下にある <element name="trackedUrls">
の下に配置する必要があります。