public function isValidTrackingBeacon($checksum, $event) { return true; $eventsCheck = array('start', 'click', 'impression', 'firstquartile', 'midpoint', 'thirdquartile', 'complete'); if (in_array($event, $eventsCheck)) { $previousEvent = $this->previousTrackingEvent($event); $cacheKey = "Checksum:{$checksum}:{$previousEvent}"; $retval = RedisHelper::get($cacheKey); if ($retval) { //remove key cache -> chỉ chấp nhận request tracking đầu tiên RedisHelper::set($cacheKey); } return $retval; } return false; }
public function retargeting() { $adv = Input::get("adv"); if ($adv <= 0) { return ""; } $referer_url = ""; if (isset($_SERVER['HTTP_REFERER'])) { $referer_url = $_SERVER['HTTP_REFERER']; } if ($referer_url != "") { $tracking = new Tracking(); $key = "Retargeting:{$adv}:{$tracking->getVisitorId()}"; $key_referer_url = $referer_url; $cache = RedisHelper::get($key); if ($cache == null) { $array = new stdClass(); $array->{$referer_url} = $referer_url; RedisHelper::set($key, $array); } else { $array = $cache; $array->{$referer_url} = $referer_url; RedisHelper::set($key, $array); } } }