getIdentity
sendEvent コマンドを実行すると、訪問者の ID がまだ存在しない場合、Web SDKはその ID を自動的に取得します。 getIdentity コマンドを使用すると、イベントデータを送信せずに訪問者 ID を取得できます。 訪問者 ID を生成してデータを送信するために別々の呼び出しが必要な場合は、このコマンドを使用できます。
getIdentity コマンドは、ECID を取得するために次のフローを実行します。
- Web SDKを使用して
getIdentityまたはappendIdentityToUrlを呼び出します。 - Web SDKは、同意情報が提供されるのを待ちます。
- Web SDKは、呼び出し時に
ECID名前空間がリクエストされたかどうかを確認します。 デフォルトでは、ECID名前空間は常に含まれます。 - Web SDKは
kndctrcookie を読み取り、その値をECIDとして返します(存在する場合)。 これはECID値のみを返し、regionIdは返しません。 kndctrID cookie が設定されていない場合や"CORE"名前空間がリクエストされた場合、Web SDKはEdge Networkに対してリクエストを行います。- Edge Networkは、
ECIDとregionId(および要求された場合はCORE ID)の両方を返します。
設定済みの Web SDK インスタンスを呼び出す際に、getIdentity コマンドを実行します。 このコマンドを設定する際には、次のオプションを使用できます。
-
namespaces:名前空間の配列。 デフォルト値は["ECID"]です。その他にサポートされている値は次のとおりです。["CORE"]["ECID","CORE"]nullundefined
"ECID"と"CORE ID"を同時にリクエストできます。 例:"namespaces": ["ECID","CORE"]。 -
edgeConfigOverrides: データストリーム設定の上書きオブジェクト 。
alloy("getIdentity",{
// This command retrieves both ECID and CORE IDs
"namespaces": ["ECID","CORE"]
});
応答オブジェクト
このコマンドを使用して 応答を処理 する場合、応答オブジェクトで次のプロパティを使用できます。
identity.ECID:訪問者の ECID を含む文字列。identity.CORE:訪問者のコア ID を含む文字列。edge.regionID:ID を取得する際にブラウザーがヒットしたEdge Network リージョンを表す整数。 従来のAudience Managerの場所のヒントと同じです。
// Get the visitor's ECID
alloy('getIdentity').then(result => {
console.log(result.identity.ECID);
});
Web SDK タグ拡張機能を使用した ID の取得
Web SDK タグ拡張機能では、タグ拡張機能 UI を通じてこのコマンドを提供しません。 JavaScript ライブラリ構文を使用したカスタムコードエディターを使用します。
recommendation-more-help
1ae86b30-e55e-49c1-ab11-9d0356a5f3e1