$p("sendRobust")

$p("sendRobust"): (String, Object) -> Boolean

$p("sendRobust", "widget_click", {
  clickUrl: "http://asdfasdf.com/asdf", // for widget_click event
  customContextA : "value1",
  customContextB : "value2"
})

📘

カスタムトラッキング機能への使用

ウィジェットクリックイベントを送るためのsendRobustの使用例は、アンカーを使用しないでトラックするのドキュメントを参照してください。

`[sendRobust]は、[send]関数と同じようにLiftIgniterにイベントを送信します。ただし、[send]関数とは違って、ユーザの新しいページ閲覧の際に、バッファに順番待ちとして送り、イベントが確実に送られるようにします。こうすることでクリックイベントが発生する前にページのリダイレクションが発生するケースに対応します。

ローカルのストレージとCookieがバッファとして使用できない場合は、この関数は[false]を返します。そのため、例えば100ms程度の時間間隔を追加したい場合は、下記のような方法も考えられます:

if(!$p("sendRobust","widget_click", {"clickUrl":"url"})){
  $p("send","widget_click", {"clickUrl":"url"});
 // イベントオブジェクトは、実装するクリックリスナーから渡されます。
  // https://developer.mozilla.org/en-US/docs/Web/API/Event
  if (!event.metaKey && !event.shiftKey && event.type == "click") {
    event.preventDefault();
    win.setTimeout(function() {
      win.location.href = url;
    }, 100);
  } 
}