Skip navigation.

対話管理ガイド

  前 次 前と次、目次/インデックス/pdf を分けるコロン 目次  

キャンペーン

キャンペーンはパーソナライゼーション用の強力なツールであり、特定の条件およびきめ細かなルールに基づいて、ユーザを特定の Web コンテンツ、電子メール、および割引の対象にすることができます。

次のトピックでは、キャンペーンを作成するプロセスを手順を追って説明します。

 


キャンペーンの概要

キャンペーンでは、各ユーザに以下の機能を提供することができます。

キャンペーンではコードを変更せずにビジネス ロジックを作成できるので、高い柔軟性を発揮します。たとえば、キャンペーンでは、プレースホルダと呼ばれる JSP タグ (<ph:placeholder name="myPlaceholder1"/>) を使用して Web コンテンツを表示します。JSP プレースホルダ タグ (「name」属性によってユニークに識別される) は、ポータルの JSP のどこに追加してもかまいません。追加したら、既存のプレースホルダを使用するキャンペーンを定義して、各プレースホルダでキャンペーンおよび個々のユーザに対してユニークなコンテンツを表示できます。キャンペーンの変更および追加が発生しても、JSP コードを変更する必要はありません。必要なプレースホルダは、現状のまま維持されます。

高度な柔軟性とパーソナライゼーションに加えて、キャンペーンはその名前が示すように、特定の時期に開始し、特定の目標が達成されたかどうか、または期限切れになったかどうかにかかわらず、条件が満たされた時点で終了します。各訪問者に対して 1 回だけ実行されるようにキャンペーンを設定することもできます。

構造上、キャンペーンは 1 つまたは複数のシナリオで構成され、各シナリオは 1 つまたは複数のアクションで構成されます。シナリオのアクションは、パーソナライズされたコンテンツを表示したり、自動電子メールを送信したり、パーソナライズされた割引を提供したりします。シナリオをアクションのコンテナとして使用すると、シナリオのアクションを提供するときにユーザ セグメントを使用して資格のあるユーザを決定できるという利点があります (ただし、ユーザ セグメントをシナリオに割り当てる必要はありません)。たとえば、2 つのシナリオを含むキャンペーンを作成し、1 つのシナリオでは男性だけにアクションを適用し、もう 1 つのシナリオでは女性だけにアクションを適用することができます。女性を対象にしたシナリオでは、次のようにロジックが展開されます。

あなたは「女性」ユーザ セグメントのメンバーですか?

キャンペーンの例

次のシナリオは、多彩で幅広い用途があるキャンペーンの例を示しています。

現時点では、追跡の対象外である匿名ユーザに対するキャンペーンと行動追跡はサポートされていません。『ユーザ管理ガイド』の「匿名ユーザ」 (http://edocs.beasys.co.jp/e-docs/wlp/docs81/users/anonymous.html) を参照してください。

キャンペーンをトリガする方法

キャンペーンのシナリオ ルールは、キャンペーン サービスがリスンしている 1 つのイベントが発生したときにのみ評価されます。

注意 : デフォルトでは、キャンペーンをトリガしないイベントは、DisplayContentEvent、DisplayProductEvent、BuyEvent、SessionBeginEvent、および SessionEndEvent だけです。これらのイベントは、<PortalApplication>/wps.jar/com/bea/campaign/internal/listeners.properties で表示されます。

キャンペーンの条件でリクエスト、セッション、またはイベントのプロパティを使用した場合、リスンしているイベントがトリガされるとこれらのプロパティが取得されます。イベントは、現在のセッション プロパティ、1 つのリクエスト プロパティ (セッションに含まれる)、イベント プロパティ (リクエストに含まれる) のスナップショットを作成します。スナップショットはリクエスト オブジェクトの形式で作成され、評価のためにキャンペーン サービスに渡されます。スナップショットの値をキャンペーン アクションのルールと照合し、結果が真であれば、キャンペーンのアクションがトリガされます。

セッション、リクエスト、およびイベントのプロパティを使用して、キャンペーンのアクションが期待どおりにトリガされない場合は、一般に次の 1 つまたは複数の原因が考えられます。

WebLogic Workshop で次のキャンペーン アクション ルールが作成されたと考えてください。

全ての条件が適用された場合 :

訪問者の HTTP リクエストが以下の特性を持っている :

RequestPropertyOne が右に等しい 'success'

以下のいずれかのイベントが発生した :

SessionLoginEvent

以下を実行する [コンテンツ アクション、電子メール アクション、または割引アクション]

ルールが評価されるのは、キャンペーン サービスがリスンしているイベントが発生した場合だけです (このイベントをキャンペーン ルールで直接使用する必要はありません)。たとえば、キャンペーン サービスが BEA 提供の UserRegistrationEvent をリスンするようにコンフィグレーションされている場合 (デフォルトの設定)、UserRegistrationEvent が発生すると、このイベントによってリクエスト オブジェクトのスナップショットが作成され、キャンペーン ルールが評価されます。

前述のキャンペーン アクション ルールは、次のような方法で評価されます。

ルールのすべての条件が真になる必要がありますが、キャンペーン サービスを起動してリクエスト オブジェクトのスナップショットを作成したのは UserRegistrationEvent であるため、キャンペーン アクションはトリガされません。SessionLoginEvent ルールは偽です (キャンペーン サービスを起動したのは UserRegistrationEvent です)。

ルールの定義が異なり、すべての条件ではなく、いずれかの条件が真の場合にアクションをトリガすると定義されていた場合、リクエスト プロパティが真であればキャンペーン アクションがトリガされます。

注意 : キャンペーンで電子メールを使用している場合は、バッチ モードとリアルタイムのどちらで電子メールを送信するかを選択できます (バッチ モードがデフォルトです)。バッチ モードでは、キャンペーンを実行またはテストするときに、電子メールは送信されません。バッチ モードの電子メールの送信方法については、「一括電子メール メッセージの設定」を参照してください。メール送信の動作をリアルタイムに変更する方法については、「キャンペーンの作成」を参照してください。

 


キャンペーンの使用準備

キャンペーンを作成するには、最初に以下の適切な手順を実行する必要があります。

注意 : 現時点では、追跡の対象外である匿名ユーザに対するキャンペーンと行動追跡はサポートされていません。『ユーザ管理ガイド』の「匿名ユーザ」 (http://edocs.beasys.co.jp/e-docs/wlp/docs81/users/anonymous.html) を参照してください。

1. ポータル アプリケーションを作成する

WebLogic Workshop ヘルプ システムの「ポータル アプリケーションおよびポータル Web プロジェクトを作成する」を参照してください。

2. コンテンツを設定する

キャンペーンでコンテンツ ルールを使用してパーソナライズされたコンテンツを表示する場合は、BEA の仮想コンテンツ リポジトリからコンテンツを取得し、プレースホルダで表示します。キャンペーンに必要な機能および役に立つ機能を有効にするためにコンテンツに追加できるプロパティが数多くあります。たとえば、プレースホルダに特定のコンテンツ項目が表示される機会を増やすために、コンテンツ項目の adWeight プロパティを (整数として) 作成します。コンテンツ項目に対して入力した adWeight 値が大きいほど、そのコンテンツがクエリによって取得された場合にプレースホルダで表示される可能性が高くなります。

対話管理で使用するコンテンツの設定の詳細については、このガイドの「コンテンツの設定」を参照してください。

WebLogic Portal のコンテンツ管理の使用方法については、e-docs ホーム ページ (http://edocs.beasys.co.jp/e-docs/wlp/docs81/index.html) の「コンテンツ管理」のトピック リストから選択してください。

目標設定のパフォーマンス

キャンペーンの目標設定を使用して、コンテンツ項目が表示された回数、またはクリックされた回数、あるいはその両方の回数に基づいてキャンペーンを終了する場合は、次の値を設定できます。

3. プレースホルダを作成する

キャンペーンでは、プレースホルダを使用してパーソナライズされた Web コンテンツを表示します。キャンペーンを使用してパーソナライズされたコンテンツを表示する場合は、キャンペーン クエリを挿入して Web コンテンツを表示するプレースホルダを作成します。

プレースホルダの詳細については、このガイドの「プレースホルダ」を参照してください。特に、「プレースホルダでのデフォルト クエリとキャンペーン クエリの併用」の節を参照してください。

4. ユーザ セグメントを作成する

特定の特性に応じて動的にユーザをグループ化し、ユーザ グループに基づいてキャンペーン シナリオをトリガする場合は、ユーザ セグメントを作成します。ユーザ セグメントの詳細については、このガイドの「対話管理の概要」および WebLogic Workshop ヘルプ システムの「ユーザ セグメントを作成する」 (http://edocs.beasys.co.jp/e-docs/workshop/docs81/doc/ja_JP/portal/buildportals/CreatingSegments.html) を参照してください。

5. プロパティ セットを作成する

ユーザ、イベント、HTTP セッション、または HTTP リクエストのプロパティに基づいてキャンペーンをトリガする場合は、WebLogic Workshop ヘルプ システムにある以下の関連手順を実行します。

対話管理でのこれらのプロパティの使用方法の詳細については、このガイドの「対話管理の概要」を参照してください。

6. 電子メール メッセージを設定する

キャンペーンで電子メールを自動送信する場合は、以下の操作が完了していることを確認してください。

  1. 電子メール アドレス プロパティの定義 - ユーザ プロファイル プロパティ セットに、ユーザの電子メール アドレスを格納するプロパティを作成します。たとえば、デフォルトの CustomerProperties.usr プロパティ セットには、電子メール アドレスを単値かつ制限なしの String 値として格納できる Email プロパティがあります。
  2. Campaign Service の設定 - ユーザに電子メールを自動送信するには、電子メール アドレスの取得先をキャンペーン サービスに指定する必要があります。WebLogic Administration Portal で、[サービス管理Campaign Service] をクリックします。前の手順で設定したプロパティ セットおよび電子メール プロパティの名前を入力します。
  3. ユーザが受信を希望した場合にのみ、電子メールを自動送信するように指定することもできます。これを指定するには、単値かつ制限付きの値の true および false を使用してユーザ プロファイル プロパティを定義します。定義したら、Campaign Service のコンフィグレーションで、[電子メール オプトイン プロパティ名] および [オプトイン プロパティの所属先プロパティ セット名] フィールドに、該当するプリファレンスが含まれているプロパティ セットおよびプロパティ名を入力します。プロパティ値が false に設定されたユーザには電子メールが送信されません。

  4. 送信メールの SMTP の設定 - WebLogic Administration Portal のサーバ管理ツールで、[サービス管理Mail Service] を選択します。[SMTP ホスト名] フィールドに、電子メール サーバの送信メール用のホスト名を設定します。
  5. 電子メール メッセージの作成 - 定義済みの電子メール メッセージを作成します。電子メール メッセージは、TXT、HTML、JSP、または XML (スタイル シート使用) のいずれかの形式で作成できます。作成した電子メール メッセージを <PortalWebProject>/campaigns/emails に格納します。別のディレクトリに電子メール ファイルを格納する場合は、次の手順に従います。
  6. キャンペーンで電子メールを使用している場合は、バッチ モードとリアルタイムのどちらで電子メールを送信するかを選択できます (バッチ モードがデフォルトです)。バッチ モードでは、キャンペーンを実行またはテストするときに、電子メールは送信されません。メール送信の動作をリアルタイムに変更する方法については、「一括電子メール メッセージの設定」を参照してください。

  7. 電子メール セキュリティの設定 - 以下の情報を使用して電子メール メッセージへの不正なアクセスを防止します。
  8. キャンペーンで電子メールを自動送信する場合は、ポータル Web プロジェクト内のファイル システムに格納された定義済み電子メール メッセージが使用されます。デフォルトでは、電子メール ファイルが <PortalWebProject>/campaigns/emails に格納されている場合は、それらのファイルに不正にアクセスできないように設定されています。デフォルトの電子メール セキュリティ コンフィグレーションを変更する必要がある場合は、以下の情報を使用してください。

    電子メール ファイルは、以下のデプロイメント記述子によって保護されています。

一括電子メール メッセージの設定

コマンドを使用して、JSP が WebLogic Portal データ リポジトリに格納するバッチ電子メールを定期的に送信する必要があります。cron またはオペレーティング システムでサポートされているその他のスケジューラを使用して、send-mail コマンドを発行することもできます。

Windows の場合、send-mail コマンドは .bat ファイル ラッパー スクリプト内にあります。UNIX の場合、send-mail コマンドは .sh ファイル内にあります。以下の節では、.bat ファイルを参照します。UNIX ユーザは、.bat.sh で置換する必要があります。

注意 : キャンペーン電子メールを送信する場合、デフォルトはバッチ モード操作を使用する true に設定されます。バッチ モードでは、<root>/weblogic81/portal/bin ディレクトリから mailmanager.bat ファイルを実行して、SMTP サーバを通じて電子メールを送信する必要があります。WebLogic Workshop 8.1.x では、キャンペーン電子メールをリアルタイムで送信するように batch flagfalse に変更するためのパッチを要求できます。

この節の内容は以下のとおりです。

send-mail ラッパー スクリプトでは、send-mail リクエストを処理する WebLogic Portal ホストの名前とリスン ポートを指定します。デフォルトでは、ラッパー スクリプトはホスト名とリスン ポートに localhost:7501 を指定します。ただし、localhost:7501 は、単一ノード環境で WebLogic Portal ホストにログインしているときにスクリプトを実行する場合のみ (また、デフォルトのリスン ポートを変更していない場合のみ) 有効です。send-mail スクリプトを他のコンフィグレーションから使用する場合は、スクリプトを変更する必要があります。

リモート ホストから動作するように Send-Mail スクリプトを変更する

次の手順を実行して、リモート ホスト (WebLogic Portal ホスト以外のコンピュータ) から send-mail スクリプトを実行します。

  1. 次のファイルをテキスト エディタで開きます。
  2. PORTAL_HOME\bin\mailmanager.bat (Windows)
    または
    PORTAL_HOME/bin/mailmanager.sh (UNIX)

  3. mailmanager スクリプトで、SET HOST= 行を探します。localhost を WebLogic Portal ホストの名前で置換します。
  4. ホストで 7501 以外のリスン ポートを使用する場合は、SET PORT= 行の 7501 を適切なリスン ポートで置換します。
  5. mailmanager スクリプトを保存します。

クラスタ化環境から動作するように Send-Mail スクリプトを変更する

クラスタ化環境で作業している場合は、send-mail ラッパー スクリプトを変更してクラスタ内のホストの名前を指定する必要があります。デフォルトの localhost 値は、クラスタ化環境の Mail Service に対して有効ではありません。

注意 : 次の手順は、スクリプトを実行する各ホストで実行する必要があります。

クラスタ化環境で send-mail スクリプトを使用するには、各ホストで次の手順を実行します。

  1. 次のファイルをテキスト エディタで開きます。
  2. PORTAL_HOME\bin\mailmanager.bat (Windows)
    または
    PORTAL_HOME/bin/mailmanager.sh (UNIX)

  3. mailmanager スクリプトで、SET HOST= 行の localhost を WebLogic Portal ホストの名前で置換します。クラスタ内の各ホストは、電子メール メッセージを格納するデータ リポジトリにアクセスできるため、クラスタ内の任意のホストの名前を指定できます。
  4. ホストで 7501 以外のリスン ポートを使用する場合は、SET PORT= 行の 7501 を適切なリスン ポートで置換します。
  5. mailmanager スクリプトを保存します。

Mailmanager コマンドの使用

mailmanager コマンドは、jav.com.bea.p13n.mail.MailManager クラスを使用するラッパー スクリプトです。

次のコマンド構文を使用します。

mailmanager.bat [ appName ] [ list | send | send-delete | delete ]
batch-name ]
(UNIX では mailmanager.sh)

appName 引数のみ指定した場合、mailmanager コマンドは、アプリケーション内のすべての電子メール バッチと各バッチ内の電子メール数を標準出力に出力します。

表 5-1 に、コマンド引数のリストを示します。

表 5-1 Mailmanager コマンドの引数

コマンド引数

説明

appName

電子メール バッチを生成したエンタープライズ アプリケーションの名前。

list

データ リポジトリ内のすべての電子メール バッチおよび各バッチ内の電子メール数を標準出力に出力する。

list batch-name

指定したバッチ内のすべての電子メールの件名と受信者を標準出力に出力する。

send batch-name

指定したバッチ内のすべての電子メールを送信する。

send-delete batch-name

指定したバッチ内のすべての電子メールを送信してから、バッチをデータ リポジトリから削除する。

delete batch-name

指定したバッチ内の電子メールを削除する。

batch-name

mailmanager list から返されるバッチの名前。この引数ではワイルドカードはサポートされない。

s

表 5-2 に、mailmanager コマンドの例を示します。

表 5-2 Mailmanager コマンドの例

コマンド例

説明

mailmanager.bat list batch-name

使用可能なすべてのバッチをリストする。

mailmanager.bat wlcsApp list /campaigns/campaign1.cam

wlcsApp アプリケーションで生成された /campaigns/campaign1.cam という名前のバッチの内容をリストする。

mailmanager.bat wlcsApp send-delete /campaigns/campaign1.cam


campaign1.cam バッチを送信し、その後で削除する。

mailmanager.bat wlcsApp delete /campaigns/campaign1.cam

campaign1.cam バッチを削除する。

s

電子メールを一括送信する

次の手順を実行して、WebLogic Portal ホストにログインしているシェルから電子メールを一括して送信します。

  1. WebLogic Server を起動します。
  2. データ リポジトリ内の電子メール バッチの名前とコンテンツを判断するには、次のコマンドを入力します。
  3. mailmanager.bat appName list (Windows)

    appName は、電子メール バッチを生成したエンタープライズ アプリケーションの名前です。コマンドは標準出力に出力します。シェル コマンドを使用して出力をファイルに送ることができます。

  4. バッチを送信し、そのバッチをデータ リポジトリから削除するには、次のコマンドを入力します。
  5. mailmanager.bat appName send-delete batch-name

注意 : キャンペーンで電子メールを使用している場合は、バッチ モードとリアルタイムのどちらで電子メールを送信するかを選択できます (バッチ モードがデフォルトです)。バッチ モードでは、キャンペーンを実行またはテストするときに、電子メールは送信されません。バッチ モードの電子メールの送信方法およびメール送信の動作をリアルタイムに変更する方法については、「一括電子メール メッセージの設定」を参照してください。

電子メールの一括配信をスケジュールする

スケジューリング ユーティリティを使用して、データ リポジトリ内の電子メール バッチを送信できます。mailmanager コマンドを使用してメールを送信する場合はバッチの名前を指定する必要があるため、各キャンペーン シナリオのメール送信は個別にスケジュールする必要があります。バッチの名前は、シナリオの containerId に対応します。containerId は、シナリオが属するキャンペーンの ID を指定します。

スケジューリング ユーティリティの使用については、オペレーティング システムのマニュアルを参照してください。

電子メール バッチを削除する

電子メール バッチは、送信後に削除できます (「電子メールを一括送信する」を参照)。

次の手順を実行して電子メール バッチを削除することもできます。

  1. データ リポジトリ内の電子メール バッチの名前とコンテンツを判断するには、次のコマンドを入力します。
  2. mailmanager.bat appName list

    appName は、電子メール バッチを生成したエンタープライズ アプリケーションの名前です。コマンドは標準出力に出力します。シェル コマンドを使用して出力をファイルに送ることができます。

  3. バッチを削除するには、次のコマンドを入力します。
  4. mailmanager.bat appName delete batch-name

7. コマースの割引を設定する

割引のキャンペーン アクションを作成する場合は、以下の手順を実行します。手順の詳細については、WebLogic Workshop ヘルプ システムの「コマース アプリケーションを構築する」 (http://edocs.beasys.co.jp/e-docs/workshop/docs81/doc/ja_JP/portal/buildportals/navCommerce.html) を参照してください。

8. キャンペーンをトリガする

定期または行動追跡イベントを使用して、イベントとその値に基づいてキャンペーンの開始またはキャンペーン アクションのトリガを行う必要があります。一般に使用されるイベントは、SessionLoginEvent です。

手順については、「キャンペーンでのイベントの使用」および「キャンペーン用のイベントの登録」を参照してください。「キャンペーンをトリガする方法」も参照してください。

 


キャンペーンの作成

これまでのすべての説明を使用して WebLogic Workshop でキャンペーンを作成する手順については、WebLogic Workshop ヘルプ システムの「キャンペーンを作成する」 (http://edocs.beasys.co.jp/e-docs/workshop/docs81/doc/ja_JP/portal/buildportals/createCampaigns.html) を参照してください。

以下のガイドラインに従ってキャンペーンを作成します。

セッションまたはリクエストのプロパティを使用してキャンペーン アクションをトリガするには、以下の操作を実行します。

注意 : キャンペーン電子メールを送信する場合、デフォルトはバッチ モード操作を使用する true に設定されます。バッチ モードでは、<root>/weblogic81/portal/bin ディレクトリから mailmanager.bat ファイルを実行して、SMTP サーバを通じて電子メールを送信する必要があります。WebLogic Workshop 8.1.x では、キャンペーン電子メールをリアルタイムで送信するように batch flagfalse に変更するためのパッチを要求できます。

 


キャンペーンのリセット

キャンペーンのさまざまな要素をリセットできます。たとえば、以下の操作のうち、必要な操作を実行できます。

キャンペーンは、開発環境 (テスト用) またはプロダクション環境のどちらでもリセットできます。

開発環境でキャンペーンをリセットする

キャンペーン ファイルを開き、[ポータルキャンペーンのリセット] を選択します。図 5-1 に示す [キャンペーンのリセット] ダイアログ ボックスが表示されます。

テストでのこの機能の使用方法の詳細については、この章の「キャンペーンのテスト」を参照してください。

図 5-1 開発環境でのキャンペーンのリセット


 

プロダクション環境でキャンペーンをリセットする

プロダクション環境でキャンペーンをリセットするには、WebLogic Administration Portal でキャンペーンを選択し、[Reset Campaign] ボタンをクリックします。図 5-2 に示す [キャンペーンのリセット] ダイアログ ボックスが表示されます。

図 5-2 プロダクション環境でのキャンペーンのリセット


 

 


キャンペーンのテスト

以下のガイドラインに従って、開発サーバ上の開発環境でキャンペーンをテストします。

 


キャンペーン パフォーマンスの最適化

『パフォーマンス チューニング ガイド』の「キャンペーンのチューニング」を参照してください。

 

ナビゲーション バーのスキップ  ページの先頭 前 次