Show Menu
トピック×

at.js カスタムイベント

mbox リクエストまたはオファーの失敗や成功を把握するための at.js custom events について説明します。
以前は、mbox.js を使用している場合、バックグラウンドでの処理内容を、ページ上で実行される他の JavaScript コードが把握することはできませんでした。at.js の改良により、この問題を独自の方法で解決することができました。
当社のお客様によれば、次のような場合に通知が必要になります。
  • タイムアウト、ステータスコードの誤り、JSON 解析エラーなどの理由で mbox リクエストが失敗した。
  • mbox リクエストが成功した。
  • ラッピング mbox 要素が欠落している、セレクターがないなどの理由でオファーのレンダリングが失敗した。
  • オファーのレンダリングが成功した。DOM の変更が適用されました。
事前定義されたイベントの構造は、イベントのタイプに基づいて必要なデータを抽出できるようになっています。
イベントを様々なシナリオで使用できるようにするため、カスタムイベントにはペイロードオブジェクトがあります。このオブジェクトは(ハンドラーに渡される)イベントオブジェクトの詳細プロパティに割り当てられます。また、文字列をイベント名として渡さないようにするため、イベントは adobe.target.event 名前空間を使用して定数として公開されます。

構造

キー
タイプ
説明
type
文字列
at.js とのインタラクションの追跡、デバッグ、カスタマイズに役立つ通知を受け取るシナリオには、様々なものが考えられます。
以下の各カスタムイベントには、「定数」と「文字列値」の 2 つの形式があります。
  • 定数 : 先頭に adobe.target.event. が追加されます。すべて大文字で記述され、アンダースコア文字が含まれます。at.js の読み込みの​ ​から、mbox の応答の​ ​までの間にカスタムイベントをサブスクライブする場合は、定数を使用します。
  • 文字列値 : 小文字で記述され、ダッシュが含まれます。at.js の読み込みの​ ​にカスタムイベントをサブスクライブする場合は、文字列値を使用します。
Request Failed
Constant: adobe.target.event.REQUEST_FAILED
String value: at-request-failed
Description: An mbox request failed due to timeout, wrong status code, JSON parse error, etc.
Request
SucceededConstant: adobe.target.event.REQUEST_SUCCEEDED
String Value: at-request-succeeded
説明:mboxリクエストが成功しました。
Content Rendering
FailedConstant: adobe.target.event.CONTENT_RENDERING_FAILED
String Value: at-content-rendering-failed
説明:ラッピングmbox要素がない、セレクターが見つからないなどが原因でオファーのレンダリングに失敗しました。
Content Rendering
SucceededConstant: adobe.target.event.CONTENT_RENDERING_SUCCEEDED
String Value: at-content-rendering-succeeded
説明:オファーのレンダリングが成功しました。 DOM の変更が適用されました。
Library
LoadedConstant: adobe.target.event.LIBRARY_LOADED
String Value: at-library-loaded
説明:このイベントは、at.jsが完全に読み込まれた時点を追跡するのに最適です。 このイベントを使用してグローバル mbox の実行をカスタマイズできます。グローバル mbox を無効にしてから、このイベントをリッスンして後でグローバル mbox を呼び出すこともできます。
Request
StartConstant: adobe.target.event.REQUEST_START
String Value: at-request-start
説明:このイベントは、HTTP要求が実行される前に発生します。 このイベントは、Resource Timing API によるパフォーマンス計測に使用できます。
Content Rendering
StartConstant: adobe.target.event.CONTENT_RENDERING_START
String Value: at-content-rendering-start
説明:このイベントは、セレクターのポーリングが開始され、コンテンツがページにレンダリングされる前に発生します。 このイベントを使用して、コンテンツのレンダリングの進捗状況を追跡できます。
Content Rendering No Offers
Constant: adobe.target.event.CONTENT_RENDERING_NO_OFFERS
String Value: at-content-rendering-no-offers
Description: This event is fired when there are no offers returned.
コンテンツレンダリ​
ングRedirectConstant: adobe.target.event.CONTENT_RENDERING_REDIRECT
String Value: at-content-rendering-redirect
説明:このイベントは、オファーがリダイレクトで、Targetが別のURLにリダイレクトする場合に発生します。
mbox
文字列
mbox 名
message
文字列
人間が解読可能な説明(何が起こったか、エラーメッセージの内容など)。
トラッキング
オブジェクト
sessionId deviceId が格納されます。場合によっては、 deviceId が Target を取得できないため、この値が欠落することがあります。

使用方法

document.addEventListener(adobe.target.event.REQUEST_SUCCEEDED, function(event) { 
  console.log('Event', event); 
});

トレーニングビデオ: レスポンストークンと at.js カスタムイベント チュート

次のビデオでは、レスポンストークンと at.js カスタムイベントを使用して Target とサードパーティシステムの間でプロファイル情報を共有する方法について説明します。