この要件の説明は ユースケース #5 をご覧ください。
サーバーに送ったビーコンに多くの情報を追加しなければならない場合はたびたびあると思います。例えば、page_id
と一緒にビーコンにタグをつけたり、A/B テストを行ったり、ビーコンのためにバケットを指定するパラメーターと一緒にビーコンにタグをつけたりしたいかもしれません。これらを BOOMR.addVar()
メソッドを使って実現することができます。
このメソッドを使う前に、それぞれのプラグインは自身のパラメーターを追加すること、これらをあなた自身で上書きする必要がないことを覚えておいてください。boomerang にビルトインされているプラグインが設定するパラメーターの一覧は 使用方法 #0 をご覧ください。その他のプラグインは自身のパラメーターを追加するかもしれません。その場合はプラグインのドキュメントを参考にしてください。
BOOMR.addVar("page_id", 123);
パラメーターの名前は文字列でなければなりません。英数字とアンダースコアのみを使用することを推奨しますが、好きなものを使ってかまいません。パラメーターの値は数値か文字列になりますので、URL の中に置き換えることができます。
もし複数のパラメーターが必要なら、代わりにオブジェクトを使って渡します:
BOOMR.addVar({ "bucket": "test#1", "page_id": 123 });
BOOMR.addVar()
を呼び出す前に boomerang.js が読み込まれているか確認してください。
ビーコンは URL の中に追加した値を全て含めます。キーと値はともに URL エンコードされます。バックエンドのアプリケーションはパラメーターが渡されることを知っておく必要があります。
http://yoursite.com/path/to/beacon.php?bucket=test%231&page_id=123&t_done=.....
あなたが追加した(またはプラグインが追加した)パラメーターをビーコンから削除することもできます。これを行うには BOOMR.removeVar()
メソッドを呼び出します。このメソッドは名前のリストを取り、パラメーターのリストから全てを削除します。パラメーターのリストにない名前は無視されます。
// don't send the stooges to the server
BOOMR.removeVar("larry", "moe", "curly");
ビーコンの発生を止める大ざっぱな方法もあります。before_beacon
イベントハンドラーの中で、全てのパラメーターを単純に削除します。
BOOMR.subscribe('before_beacon', function(o) { var p_names = [], k; if( "t_done" in o ) { return; } // t_done is not set, so don't beacon for(k in o) { if(o.hasOwnProperty(k)) { p_names.push(k); } } // removeVar accepts either a list or an array BOOMR.removeVar(p_names); });
最新のソースコードとドキュメントは github.com/SOASTA/boomerang に公開されています。