Show Menu
トピック×

パーソナライズされたアラートのオペレーターへの送信

この例では、ニュースレターを開封したがそれに含まれるリンクをクリックしなかったプロファイルの名前を記載したアラートをオペレーターに送信します。
プロファイルの氏名フィールドは​ 受信者 ​ターゲティングディメンションにリンクされているのに対して、 アラート ​アクティビティは​ オペレーター ​ターゲティングディメンションにリンクされています。結果として、2 つのターゲティングディメンション間で、紐付けを実行し、氏名フィールドを取得して、アラートアクティビティに表示するのに使用できるフィールドはありません。
このプロセスでは、次のようにワークフローを構築できます。
  1. クエリ ​アクティビティを使用して、データをターゲットにします。
  2. JavaScript コード ​アクティビティをワークフローに追加して、クエリからインスタンス変数に母集団を保存します。
  3. テスト ​アクティビティを使用して、母集団の数を確認します。
  4. アラート ​アクティビティを使用して、 テスト ​アクティビティの結果に応じて、オペレーターにアラートを送信します。

母集団のインスタンス変数への保存

以下のコードを 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 タグは、取得するフィールドの名前に対応している必要があります。
これらの情報を取得するには、以下の手順に従います。
  1. クエリ ​アクティビティからアウトバウンドトランジションを右クリックし、「 ターゲットを表示 」を選択します。
  2. リストを右クリックして、「 リストを設定 」を選択します。
  3. クエリターゲティングディメンションおよびフィールド名がリストに表示されます。

母集団の数のテスト

以下のコードを​ テスト ​アクティビティに追加して、ターゲットにした母集団が少なくとも 1 つのプロファイルを含むかどうかを確認します。
var.recCount>0

アラートの設定

これで、母集団が目的のフィールドを含むインスタンス変数に追加されたので、これらの情報を​ アラート ​アクティビティに追加できます。
そのためには、「 ソース 」タブに以下のコードを追加します。
<ul>
<%
var items = new XML(instance.vars.items)
for each (var item in items){
%>
<li><%= item.target.@firstName %> <%= item.target.@lastName %></li>
<%
} %></ul>

&lt;%= item.target.recipient.@fieldName %> コマンドを使用すると、 JavaScript コード ​アクティビティでインスタンス変数に保存したフィールドのいずれかを追加できます。 フィールドが JavaScript コードに追加されている限り、フィールドを好きな数だけ追加できます。