You might find this function useful:  var fixedSendPing = (function(){
        var last={};
        return function(left,top,pageid,playerid,pull){
            if( last.left   === left   &&
                last.top    === top    &&
                last.pageid === pageid ) {
                sendPing(-100,-100,pageid,null,false);
            }
            sendPing(left,top,pageid,playerid,pull);
            last.left=left;
            last.top=top;
            last.pageid=pageid;
        };
    }())
  It might not be an issue for your use case, but in testing I found that sendPing() won't ping the same place twice in a row.  This version of sendPing(), called as fixedSendPing() and otherwise identical, will detect if the same location is pinged twice in a row and send a ping for a non-visible location first to clear things out.  =D