$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);
}
}