BEA ホーム | 製品 | デベロッパ・センタ | support | askBEA
 ドキュメントのダウンロード   サイト マップ   用語集 
検索

開発者ガイド

 前 次 目次 索引 PDFで表示  

Campaign サービスのセットアップ

キャンペーンでは、WebLogic Portal のいくつかのサービスを連携させて、e コマース Web サイトでのマーケティング目標の作成と追跡を行います。 たとえば、マーケティング組織では、キャンペーンを利用して 6 月中に ACME 社ののこぎりを 100 個販売するといったことができます。 この目標を達成するために、マーケティング部門では、一連の条件を満たす顧客(たとえば、以前 ACME 社の金物類をサイトから購入したことがある顧客など)を対象に、広告、電子メール、および商品価格の割引を実施することができます。

キャンペーン サービスのセットアップにおける開発者の責務は、キャンペーンを支援するインフラストラクチャを開発し、個々のキャンペーンの要件に合わせてそのインフラストラクチャに変更を加えることです。こうした作業としては、キャンペーン用プレースホルダの作成、表示およびクリックスルー動作の指定、コンテンツ管理システムへの広告のロード、パーソナライズされたキャンペーン用電子メールの作成、および見込み客と既存顧客へのメールの一括送信などがあります。

この章では、以下の内容について説明します。

注意: キャンペーンは、匿名ユーザに対しては使用できません。

 


Campaign サービスとは

キャンペーンでは、以下のサービスを連携利用します。

シナリオでは、以下のサービスをどれでも利用することができます。

 


キャンペーン用プレースホルダの作成

広告プレースホルダは、ブラウザでの広告コンテンツの表示に必要な HTML を生成し、それを JSP 内のプレースホルダ タグの位置に挿入する入れ物の働きをします。広告とは、コンテンツ管理システムに格納されているドキュメントのうち、広告プレースホルダによって表示されるものです。 広告は、キャンペーンに不可欠な要素となることがあります。 たとえば、キャンペーンでは、一定の広告クリックスルー数を記録することを目標として指定することができます。

 


属性を用いた表示およびクリックスルー動作の指定

以下の機能をサポートするために広告プレースホルダで用いられるドキュメント属性を、コンテンツ管理システム内に定義する必要があります。

ドキュメントへの属性の関連付けについては、コンテンツ管理システムのマニュアルを参照してください。BEA から提供される参考版のコンテンツ管理システムを使用する場合には、参考版のコンテンツ管理システムへの広告のロードを参照してください。有効な属性の一覧を表13-1表13-2、および 表13-3 に示します。

 


コンテンツ管理システムへの広告のロード

広告プレースホルダに定義可能なクエリでは、コンテンツ管理システム内のドキュメントに関連付けられている属性が検索されます。WebLogic Portal では、広告を記述するのに用いられる属性群についての制限はありません。 たとえば、ドキュメントで宣伝している商品の名前、広告スポンサーの名前、および e コマース商品カタログ内のカテゴリと一致する商品カテゴリを記述する属性を作成することができます。

コンテンツ管理システム (CMS) 内に広告をロードする方法については、CMS 側で指定されています。

参考版のコンテンツ管理システムへの広告のロード

WebLogic Portal には、コンテンツ管理ニーズが限られているサイト向けのコンコンテンツ管理システムがあらかじめ用意されています。 この参考版のコンテンツ管理システムを使用する場合には、広告と広告属性を同時にロードする必要があります。 既にロードされているドキュメントに属性を追加することはできません。

WebLogic Portal をインストールすると、参考版のコンテンツ管理システム(サンプル PointBase データベースを使用)には、一連のサンプル広告が格納されています。

参考版のコンテンツ管理システムに広告と広告属性をロードするには、以下の作業を行う必要があります。

ステップ 1: HTML ドキュメントに属性をセットアップする

HTML だけで構成される広告の場合には、ドキュメントの <HEAD> 要素内の <META> タグにドキュメント属性を記述する必要があります。 <META> タグでは、以下の構文に従います。

<META name="attribute-name" content="attribute-value">

ドキュメント属性ごとに別個の <META> タグを使用します。たとえば、次のように指定します。

<META name="attribute1-name" content="attribute1-value">
<META name="
attribute2-name" content="attribute2-value">
<META name="
attribute3-name" content="attribute3-value">

複数の属性を持つ簡単な広告が含まれた HTML ファイルの例を、リスト 13-1 に示します。

コード リスト 13-1 HTML 広告の属性

<HTML>
<HEAD>
<META name="adWeight" content="3"> 
<META name="productCategory" content="hardware">
<META name="productSubCategory" content="electic drill">
<META name="productName" content="Super Drill">
<META name="Manufacturer" content="ACME">
</HEAD>
<BODY>
<P>Buy our Super Drill. Itユll get the job done!</P>
</BODY>
</HTML>

表13-1 では adWeight 属性について説明しますが、これは、XHTML ドキュメント、画像、および Shockwave ドキュメントに関連付けることができる属性です。

表13-1 すべてのドキュメント タイプに適用される属性

属性名

属性値のデータ型

解説および推奨事項

adWeight

Integer

クエリの結果、複数のドキュメントが返される場合にドキュメントを選択するのに使用される整数値を指定する。 広告が選択される確率を高めるには、この属性値を大きくする。この属性のデフォルト値は 1

注意: E-Business Control Center では、シナリオ アクションのクエリに「優先順位」を割り当てることができる。 優先順位は adWeight 属性とは無関係で、プレースホルダでクエリが実行される確率を増減させるためのものである。 adWeight 属性は、クエリが実行されたあとで広告を選択するために用いられる。


 

ステップ 2: 画像および Shockwave ドキュメントの属性ファイルをセットアップする

広告が画像または Shockwave ムービーの場合には、属性を別個のファイルに記述する必要があります。 個々の画像ファイルまたは Shockwave ファイルには、以下の命名規則に従う名前のファイルが別途付いている必要があります。

filename.extension.md.properties

広告本体のファイルと付属ファイルは、どちらも同じディレクトリに存在しなければなりません。

たとえば、superDrill.jpg という画像ファイルの場合には、その属性を superDrill.jpg.md.properties というファイルに記述する必要があります。

filename.extension.md.properties ファイル内では、以下の構文に従って属性とその値を記述します。

attribute-name=attribute-value

画像広告の属性を記述したサンプル ファイルを、リスト 13-2 に示します。

コード リスト 13-2 属性ファイルの構文

adWeight=5 
adTargetUrl=AcmeAds/saws.jpg
adAltText=Buy ACME and save!
productCategory=hardware
productSubCategory=electic drill
productName=Super Drill
Manufacturer=ACME

その他の画像ファイル属性

画像ファイルに関連付けることができる属性には、adWeight の他に、表13-2 に示すものがあります。

表13-2 画像ファイルの属性

属性名

属性値のデータ型

解説および推奨事項

adTargetUrl

String

画像をクリック可能にし、クリックスルーの遷移先を URL で指定する。 クリックスルーは Event サービスによって記録される。

広告クリックスルーの遷移先の指定方法に応じて、adTargetUrladTargetContentadMapName のいずれかの属性を使用する。

adTargetContent

String

画像をクリック可能にし、クリックスルーの遷移先をコンテンツ管理システムのコンテンツ ID で指定する。クリックスルーは Event サービスによって記録される。

広告クリックスルーの遷移先の指定方法に応じて、adTargetUrladTargetContentadMapName のいずれかの属性を使用する。

adMapName

String

画像をクリック可能にし、イメージ マップを用いて任意の数の遷移先を指定する。

この属性の値は、以下の 2 箇所で使用される。

広告クリックスルーの遷移先の指定方法に応じて、adTargetUrladTargetContentadMapName のいずれかの属性を使用する。

adMapName の値を指定する場合には、adMap の値も指定する必要がある。

adMap

String

イメージ マップの XHTML 定義を指定する。

adMap の値を指定する場合には、adMapName の値も指定する必要がある。

adWinTarget

String

JavaScript を用いてポップアップを定義し、遷移先を新しいポップアップ ウィンドウに表示する。

この属性に指定できる値は newwindow だけである。

adWinClose

String

ポップアップ ウィンドウを閉じるリンクの名前を指定する。 このリンクは、ウィンドウ コンテンツの最下部に表示される。

たとえば、この属性の値に「Close this window」を指定すると、ポップアップ ウィンドウの最後の行に「Close this window」というハイパーリンクが表示される。 顧客がこのリンクをクリックすると、ウィンドウが閉じる。

adAltText

String

<img> タグの alt 属性のテキスト文字列を指定する。 この属性を定義しない場合には、<img> タグの alt 属性は指定されない。

adBorder

Integer

<img> タグの border 属性の値を指定する。 この属性を定義しない場合には、border 属性の値は "0" になる。


 

その他の Shockwave 属性

Shockwave ファイルに関連付けることができる属性には、adWeight の他に、表13-3 に示すものがあります。広告プレースホルダと <ad:adTarget> タグでは、これらの値は <OBJECT> タグまたは <EMBED> タグの属性として書式化されます。Shockwave ファイルの表示には、Windows 上の Internet Explorer では <OBJECT> タグが用いられ、Netscape 互換プラグインをサポートするブラウザでは <EMBED> タグが用いられます。

これらの属性の詳細については、Shockwave 開発者用マニュアルを参照してください。

表13-3 Shockwave ファイルの属性

属性名

属性値のデータ型

解説および推奨事項

swfLoop

String

ムービーを無限に繰り返す(true)か、最後のフレームに達した時点で停止する(false)かを指定する。

有効な値は true または false。 この属性を定義しない場合には、true がデフォルト値になる。

swfQuality

String

表示する画像の品質を指定する。 クライアント側のインターネット接続環境によっては、品質を下げることで再生が高速になる場合がある。

有効な値は lowhighautolowautohighbest のいずれか。

swfPlay

String

ムービーがブラウザにロードされた時点で直ちに再生を開始するかどうかを指定する。

有効な値は truefalse。この属性を定義しない場合には、true がデフォルト値になる。

swfBGColor

String

ムービーの背景色を指定する。 この属性は、HTML ページの背景色には影響を与えない。

値を指定するための有効な構文は #RRGGBB

swfScale

String

HTML ページでムービー用に定義されている領域に対するムービーの相対的な大きさを指定する。

有効な値は showallnoborderexact fit のいずれか。

swfAlign

String

ブラウザ ウィンドウ内でのムービーの表示位置(中央、左、上、右、または下)を指定する。

値を指定しない場合、ムービーはブラウザ ウィンドウの中央に配置される。

有効な値は ltrb のいずれか。

swfSAlign

String

ムービーの配置をブラウザ ウィンドウに対する相対位置で指定する。

有効な値は ltrbtltrblbr のいずれか。

swfBase

String

ムービーでの相対パス名の解決に用いられるディレクトリまたは URL を指定する。

有効な値は .(ピリオド)、ディレクトリ名、URL のいずれか。

swfMenu

String

ムービー プレーヤーに完全なメニューを表示するかどうかを指定する。

有効な値は truefalse


 

ステップ 3: dmsBase/Ads ディレクトリ ツリーにファイルを移動する

キャンペーンで広告を利用できるようにするには、HTML ファイル、画像ファイル、Shockwave ファイル、および属性ファイルをすべて、以下のパスの Ads ディレクトリ内に格納します。

<BEA_HOME>/user_projects/<YOUR-APPLICATIONDOMAIN>/dmsBase/Ads 

ここで、<BEA_HOME> は BEA WebLogic Platform のインストール先ディレクトリ、<YOUR-APPLICATIONDOMAIN> は個々のドメインのディレクトリです。

ドキュメントを Ads ディレクトリのサブディレクトリに格納することもできますが、参考版のコンテンツ管理システムでは、ドキュメントの編成にサブディレクトリを使用しません。

サブディレクトリを用いてソース ファイルを管理する場合には、属性ファイルを、その記述対象である本体ファイルと同じディレクトリに格納する必要があります。 たとえば、superDrill.jpgsuperDrill.jpg.md.properties は同じディレクトリに存在しなければなりません。

ステップ 4: loadads スクリプトを実行する

loadads スクリプト(Windows の場合は loadad.bat、Unix の場合は loadad.sh)は、BulkLoader を実行して、dmsBase/Ads ディレクトリ内のドキュメントをコンテンツ管理システムにロードします。 また、ドキュメントへの属性の関連付けも行います。

loadads を実行するには、以下のいずれかを実行します。

または

BulkLoader の実行方法の詳細については、Bulk Loader を用いたコンテンツの追加を参照してください。

 


パーソナライズされたキャンペーン用電子メールの作成

電子メール サービスでは、JSP を用いて電子メールを生成するとともに、電子メールを一括送信するためのユーティリティを提供します。 Mail サービスでは電子メールの生成に JSP が使用されるため、JSP タグを用いて電子メールをパーソナライズすることができます。この節では、パーソナライズされたキャンペーン用電子メールを以下の手順で作成する方法を示します。

ステップ 1: 電子メールのプロパティをコンフィグレーションする

キャンペーンで電子メールを送信するには、まず、Campaign サービスでメールの送受信に使用されるプロパティをコンフィグレーションしておく必要があります。クラスタ環境では、これらのプロパティは WebLogic Server によってクラスタ内の各ノードに伝達されます。

メール関係のプロパティをコンフィグレーションするには、以下を実行します。

  1. E-Business Control Center で、アプリケーションを開きます。

  2. E-Business Control Center の エクスプローラ ウィンドウで、[サイト インフラストラクチャ] タブをクリックします。

  3. [ユーザ プロファイル] をクリックし、以下を確認します。

ステップ 2: ユーザ プロパティの名前を見つける

  1. サーバを起動し、該当するドメインの WebLogic Server Administration Console にアクセスします。

  2. WebLogic Server Administration Console の左ペインで、[デプロイメントアプリケーションmyApplicationService ConfigurationCampaign Service] をクリックします。

  3. [Campaign サービス] ページで、[メール アクション] タブをクリックします。

  4. [メール アクション] タブで、以下の値を入力します。


     

  5. [適用] をクリックします。

    以後、Campaign サービスで生成されるすべての電子メールには、これらの設定が適用されます。

  6. 左ペインの [Mail Service] をクリックして、Mail サービスのデフォルト SMTP ホスト名をコンフィグレーションします。

    注意: [Mail サービス] ページで行う変更は何であれ、WebLogic Portal を用いて送信されるすべての電子メール(Campaign サービスによって生成されるかどうかによらない)に影響を及ぼします。

ステップ 3: 電子メール JSP を作成する

Mail サービスでは、電子メールの内容および書式設定を JSP ファイルに記述する必要があります。 この JSP では、WebLogic Portal における他の JSP で利用できる JSP タグおよび API をすべて使用することができます。

このステップでは、以下の事がらを説明します。

電子メール パラメータ

シナリオ アクションは、電子メール JSP を要求する際に userid パラメータを渡して、そのシナリオ アクションをトリガした顧客のログイン名を指定します。 request.getParameter()メソッドを使用すれば、ユーザ ID を取得し、それを電子メール JSP 内の JSP タグに渡すことができます。

さらに、シナリオは以下のパラメータも渡します(これらのパラメータを電子メール JSP 内の JSP タグに渡すこともできます)。

セッション生成の無効化

Campaign サービスで JSP から電子メールを生成するのに用いられる Java クラス InternalRequestDispatcher では、HTTPSession オブジェクトも生成します。通常は、電子メール JSP からこの HTTPSession オブジェクトを生成する必要はありません。HTTPSession オブジェクトは、顧客がサイトにアクセスしたときにアプリケーションによって生成済みだからです。

必要でない HTTPSession の生成を無効にするには、キャンペーン用電子メールの生成に用いる JSP の冒頭に以下のディレクティブを追加します。

<%@ page session="false" %>  

このディレクティブの追加が必要なのは、顧客がサイトにアクセス(またはログイン)したときにアプリケーションによって HTTPSession オブジェクトが生成され、かつ、電子メールが InternalRequestDispatcher を通じて生成される場合だけです。

電子メール JSP のサンプル

サンプル Web アプリケーションの構成要素をなす電子メール JSP を、リスト 13-3 に示します。このファイルは、<BEA_HOME>/weblogic700/samples/portal/ wlcsDomain/beaApps/wlcsApp/wlcs/campaigns/emails/ 内にあります。

コード リスト 13-3 電子メール JSP のサンプル

Sample1.jsp:
<%@ page session="false" %>
<%@ page contentType="text/plain" %>

(このサンプル電子メールは、BEA Commerce Templates で新規ユーザ登録中にトリガされたサンプル キャンペーンの一環として自動的に送信されたものです。)

-------------------------------

拝啓 <%= request.getParameter("userId") %> 様

このたびは当サイトの会員にご登録いただき、誠にありがとうございます。ご登録後は、5,000 円以上のお買い物で 1,000 円の割引をご利用いただけます。

さらに、ご登録いただいたお客様には、以下のプレミアム サービスもご利用いただけます。

**「会員様限定」特別割引

** 新製品リリース情報をいち早くお届け

** お客様のご興味に合わせてカスタマイズされた各種サービス

ご登録ありがとうございました。

敬具

電子メール JSP の保存

E-Business Control Center ユーザがキャンペーン用電子メールを参照および選択できるように、電子メール JSP を Web アプリケーション内の特定のディレクトリに保存する必要があります。

デフォルトの保存先ディレクトリは myApp/myWebApp/campaigns/emails です。

(ここで、myWebApp は当該キャンペーンが定義されている Web アプリケーションの名前です。)

たとえば、Web アプリケーション wlcs のサンプル電子メール (Sample1.jsp) は、次のディレクトリに用意されています。

<BEA_HOME>/weblogic700/samples/portal/wlcsDomain/beaApps/wlcsApp/
wlcs/campaigns/emails/

シナリオ アクションの一部としてこの電子メールを選択するには、以下を実行します。

  1. E-Business Control Center で wlcsApp アプリケーションを開きます。

  2. 電子メール アクションの作成時に、<BEA_HOME>/weblogic700/samples/portal/wlcsDomain/ beaApps/wlcsApp/wlcs/campaigns/emails に保存されているすべての電子メール JSP をブラウズし、シナリオで用いる Sample1.jsp を選択します。

電子メール JSP の保存先のデフォルト位置を変更するには、以下を実行します。

  1. WebLogic Server Administration Console の左ペインで、[デプロイメントアプリケーションmyApplicationService ConfigurationCampaign Service] をクリックします。

  2. [Campaign サービス] ページで、[コンフィグレーション] タブをクリックします。

  3. [電子メール ブラウズ開始ディレクトリ ] ボックスに、Web アプリケーションのルート ディレクトリからの相対パスでディレクトリ名を入力します。

 


メールの一括送信

コマンドを定期的に実行して、WebLogic Portal データ リポジトリに JSP によって格納されている電子メール バッチ(一括処理単位)を送信する必要があります。 また、cron など、オペレーティング システムでサポートされている任意のスケジューラを利用して、メール送信コマンドを発行することもできます。

この節では、以下のトピックを扱います。

リモート ホストから、あるいはクラスタ環境でメールを送信する

メール送信ラッパー スクリプトでは、メール送信リクエストを処理する WebLogic Portal ホストの名前とリスン ポートを指定します。 ラッパー スクリプトで指定されるホスト名およびリスン ポートは、デフォルトでは localhost:7501 です。 ただし、localhost:7501 が有効なのは、シングル ノード環境内の WebLogic Portal ホストにログイン中にこのスクリプトを実行し、かつデフォルトのリスン ポートを変更していない場合だけです。

それ以外のコンフィグレーションからメール送信スクリプトを使用するには、以下のいずれかを行ってスクリプトを修正する必要があります。

リモート ホストから実行できるようにメール送信スクリプトを修正する

メール送信スクリプトをリモート ホスト(すなわち、WebLogic Portal ホストでないコンピュータ)から実行する場合には、以下を実行します。

  1. テキスト エディタで以下のファイルを開きます。

    <BEA_HOME>¥weblogic700¥portal¥bin¥win32¥mailmanager.bat (Windows の場合)

    <BEA_HOME>¥weblogic700¥portal¥bin¥win32¥mailmanager.sh (Unix の場合)

  2. mailmanager スクリプトの SET HOST= 行で、localhost の部分を WebLogic Portal ホストの名前に置き換えます。

  3. ホストで 7501 以外のリスン ポートを使用する場合には、SET PORT= 行の値 7501 を、実際のリスン ポートの番号に置き換えます。

  4. mailmanager スクリプトを保存します。

クラスタ環境で実行できるようにメール送信スクリプトを修正する

クラスタ環境で作業する場合には、クラスタ内のホストの名前を指定するようにメール送信ラッパー スクリプトを修正する必要があります。 デフォルト値の localhost は、クラスタ環境で Mail サービスを利用する場合には無効です。

クラスタ環境でメール送信スクリプトを使用するには、スクリプトを実行する各ホスト上で以下を行います。

  1. テキスト エディタで以下のファイルを開きます。

    <BEA_HOME>¥weblogic700¥portal¥bin¥win32¥mailmanager.bat (Windows の場合)

    <BEA_HOME>¥weblogic700¥portal¥bin¥win32¥mailmanager.sh (Unix の場合)

  2. mailmanager スクリプトの SET HOST= 行で、localhost の部分を WebLogic Portal ホストの名前に置き換えます。電子メール メッセージを格納するデータ リポジトリにはクラスタ内の各ホストからアクセスできるため、クラスタ内の任意のホストの名前を指定することができます。

  3. ホストで 7501 以外のリスン ポートを使用する場合には、SET PORT= 行の値 7501 を、実際のリスン ポートの番号に置き換えます。

  4. mailmanager スクリプトを保存します。

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

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

  1. 以下のコマンドを入力して、データ リポジトリ内の電子メール バッチの名前と内容を調べます。

    mailmanager.bat appName list (Windows の場合)

    mailmanager.sh appName list (Unix の場合)

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

  2. 電子メール バッチを送信後、データ リポジトリから削除するには、以下のコマンドを入力します。

    mailmanager.bat appName send-delete batch-name (Windows の場合)

    mailmanager.sh appName send-delete batch-name (Unix の場合)

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

スケジューリング ユーティリティを利用して、データ リポジトリ内の電子メール バッチを送信することができます。 mailmanager コマンドを用いてメールを送信する際にはバッチ名の指定が必要なため、キャンペーン シナリオごとにメール送信を個別にスケジューリングする必要があります。 バッチの名前はシナリオのコンテナ ID に対応します。コンテナ ID については、電子メール パラメータを参照してください。

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

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

電子メールを一括送信する」で説明したように、電子メール バッチを送信と同時に削除することができます。それ以外にも、以下の方法で電子メール バッチを削除することができます。

  1. 以下のコマンドを入力して、データ リポジトリ内の電子メール バッチの名前と内容を調べます。

    mailmanager.bat appName list(Windows の場合)

    mailmanager.sh appName list(Unix の場合)

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

  2. 以下のコマンドを入力して、電子メール バッチを削除します。

    mailmanager.bat appName delete batch-name (Windows の場合)

    mailmanager.sh appName delete batch-name (Unix の場合)

 

ページの先頭 前 次