パーソナライズされたアラートをオペレーターへ送信 sending-personalized-alerts-to-operators
この例では、ニュースレターを開封したがそれに含まれるリンクをクリックしなかったプロファイルの名前を記載したアラートをオペレーターに送信します。
プロファイルの氏名フィールドは 受信者 ターゲティングディメンションにリンクされているのに対して、アラート アクティビティは オペレーター ターゲティングディメンションにリンクされています。結果として、2 つのターゲティングディメンション間で、紐付けを実行し、氏名フィールドを取得して、アラートアクティビティに表示するのに使用できるフィールドはありません。
このプロセスでは、次のようにワークフローを構築できます。
- クエリ アクティビティを使用して、データをターゲットにします。
- JavaScript コード アクティビティをワークフローに追加して、クエリからインスタンス変数に母集団を保存します。
- テスト アクティビティを使用して、母集団の数を確認します。
- アラート アクティビティを使用して、テスト アクティビティの結果に応じて、オペレーターにアラートを送信します。
インスタンス変数への母集団の保存 saving-the-population-to-the-instance-variable
以下のコードを JavaScript コード アクティビティに追加します。
var query = xtk.queryDef.create(
<queryDef schema="temp:query" operation="select">
<select>
<node expr="[target/recipient.@firstName]"/>
<node expr="[target/recipient.@lastName]"/>
</select>
</queryDef>
);
var items = query.ExecuteQuery();
JavaScript コードがワークフロー情報に対応していることを確認します。
- queryDef schema タグは、クエリアクティビティで使用されるターゲティングディメンションの名前に対応している必要があります。
- node expr タグは、取得するフィールドの名前に対応している必要があります。
これらの情報を取得するには、以下の手順に従います。
-
「クエリ」アクティビティからのアウトバウンドトランジションを右クリックし、「ターゲットを表示」を選択します。
-
リストを右クリックして、「リストを設定」を選択します。
-
クエリターゲティングディメンションおよびフィールド名がリストに表示されます。
母集団数のテスト testing-the-population-count
以下のコードを「テスト」アクティビティに追加すると、ターゲットにした母集団が少なくとも 1 つのプロファイルを含んでいるかどうかを確認できます。
var.recCount>0
アラートの設定 setting-up-the-alert
これで、母集団が目的のフィールドを含むインスタンス変数に追加されたので、これらの情報を アラート アクティビティに追加できます。
そのためには、「ソース」タブに以下のコードを追加します。
<ul>
<%
var items = new XML(instance.vars.items)
for each (var item in items){
%>
<li><%= item.target.@firstName %> <%= item.target.@lastName %></li>
<%
} %></ul>
フィールドが JavaScript コードに追加されている限り、フィールドを好きな数だけ追加できます。