データ変換関数について
この記事では、データ変換関数の概要を提供します。
データ変換関数は、データソースからイベントが収集された後、イベントが処理される前に呼び出され、以下のようなさまざまな目的で使用できます:
- 関数に渡されるイベントオブジェクトをフラット化する。
- 電話番号やメールアドレスなどの機密データを削除する。
- イベントオブジェクト内の変数を変更する。例えば、変数を小文字に変更することができます。
- 他の値に基づいてイベントオブジェクト内の変数を入力する。
- 変数の名前を変更する。これは、値を別の変数に割り当てて元の変数を削除することで行われます。
現在、データ変換関数はファイルインポートイベントをサポートしていません。
データ変換関数への入力
データ変換関数は、Tealium Collectからのイベントデータを含むevent
という1つの入力パラメータを持っています。event
パラメータは、イベントを記述するいくつかのプロパティとネストされたオブジェクトを含むメタデータオブジェクトです。実際のイベントデータはevent.data.udo
オブジェクトで参照されます。詳細については、Event Input Parameterを参照してください。
また、Tealiumモジュールは、データ変換関数用のflatten()
ユーティリティをエクスポートします。これは、ネストされたオブジェクトをネストがない新しいオブジェクトに変換します。
カスタムトリガー
データ変換関数は、関数のカスタムトリガーに基づいて呼び出されます。カスタムトリガーは、関数を実行するタイミングを指定するために作成するルールです。条件はevent
パラメータの任意のプロパティに基づくことができますが、通常はデータソースキー、データソースプラットフォーム、およびtealium_event
属性に基づいています。event
パラメータについての詳細は、Event Parameterを参照してください。
カスタムトリガールールは、load rulesに似ており、ブール論理を使用してルール内の条件を組み合わせます。例えば、次のルールでは、特定のデータソース(r2rbm8
)からpurchase
イベントが来たときに関数がトリガーされます。
条件は、event
パラメータオブジェクト内のプロパティを指定するセレクタ、比較演算子、比較値に基づいています。セレクタはJSONPath式(JSONPathを参照)であり、event
内の任意のプロパティを参照できます。
イベントは1つの関数のみをトリガーできます。イベントが複数の関数トリガーと一致する場合、最も古いDate Modifiedを持つ関数のみがトリガーされます。
データ変換関数とカスタムトリガーの作成については、Create a functionを参照してください。
データ変換関数の例については、Example Codeを参照してください。
ルールの制限
- SelectorとValueフィールドは128文字に制限されています。
- 正規表現演算子は利用できません。
- ルールのサイズは10KBに制限されています。
- ORブロックの数は10に制限されています。
- ANDブロック内の条件の数は10に制限されています。
デフォルトの関数コード
データ変換関数を作成すると、Codeタブにデフォルトのコードが表示されます。デフォルトのコードはflatten
ライブラリをインポートし、transform(event)
を呼び出します。ここで、event
パラメータは、着信イベントのメタデータオブジェクトで、着信event
オブジェクトをフラット化します。必要に応じてデフォルトのtransform()
コードを変更し、event.data.udo
オブジェクト内のイベント属性を変更します。
import flatten from "tealium/util/flatten";
// "transform" function allows you to access event and apply changes
transform((event) => {
// changes are applied via mutation of the original event
event.data.udo = flatten(event.data.udo);
console.log(JSON.stringify(event, null, 2));
})
既存の関数のカスタムトリガーへの変換
カスタムトリガーは、データ変換関数の初期リリース後に導入されました。カスタムトリガーが導入される前に存在していたデータ変換関数については、以下のような条件が自動的に作成されます:
この新しい条件は、データソースIDを指定し、それを関数に関連付けられたデータソースのIDに構成します。関数は、データソースからのすべてのイベントに対してトリガーされます。より具体的なイベントに対して関数をトリガーするように、この条件を編集することができます。
最終更新日 :: 2024年March月29日