setIp() public méthode

Allowed only for Super User, must be used along with setTokenAuth()
See also: setTokenAuth()
public setIp ( string $ip )
$ip string IP string, eg. 130.54.2.1
 /**
  * Returns a PiwikTracker object that you can then use to track pages or goals.
  *
  * @param         $idSite
  * @param         $dateTime
  * @param boolean $defaultInit If set to true, the tracker object will have default IP, user agent, time, resolution, etc.
  *
  * @return PiwikTracker
  */
 public static function getTracker($idSite, $dateTime, $defaultInit = true, $useLocal = false)
 {
     if ($useLocal) {
         require_once PIWIK_INCLUDE_PATH . '/tests/LocalTracker.php';
         $t = new Piwik_LocalTracker($idSite, self::getTrackerUrl());
     } else {
         $t = new PiwikTracker($idSite, self::getTrackerUrl());
     }
     $t->setForceVisitDateTime($dateTime);
     if ($defaultInit) {
         $t->setIp('156.5.3.2');
         // Optional tracking
         $t->setUserAgent("Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.2.6) Gecko/20100625 Firefox/3.6.6 (.NET CLR 3.5.30729)");
         $t->setBrowserLanguage('fr');
         $t->setLocalTime('12:34:06');
         $t->setResolution(1024, 768);
         $t->setBrowserHasCookies(true);
         $t->setPlugins($flash = true, $java = true, $director = false);
     }
     return $t;
 }
Exemple #2
0
 /**
  * Inicia a análise de tráfego.
  */
 private function iniciarAnaliseTrafego()
 {
     if ($this->_configuracao->get($this->_servidor . '.piwik_id')) {
         require_once implode(DIRECTORY_SEPARATOR, [__DIR__, '..', '..', '..', '..', 'library', 'PiwikTracker.php']);
         $piwikTracker = new \PiwikTracker($this->_configuracao->get($this->_servidor . '.piwik_id'), $this->_configuracao->get($this->_servidor . '.piwik_url'));
         if ($this->_configuracao->get($this->_servidor . '.piwik_token_auth')) {
             $piwikTracker->setTokenAuth($this->_configuracao->get($this->_servidor . '.piwik_token_auth'));
         }
         if (isset($_SERVER['HTTP_REFERER'])) {
             $piwikTracker->setReferrer($_SERVER['HTTP_REFERER']);
         }
         // detecta o endereço da internet do cliente
         if (isset($_SERVER['HTTP_CLIENT_IP'])) {
             $piwikTracker->setIp($_SERVER['HTTP_CLIENT_IP']);
         } else {
             if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
                 $piwikTracker->setIp($_SERVER['HTTP_X_FORWARDED_FOR']);
             } else {
                 if (isset($_SERVER['HTTP_X_FORWARDED'])) {
                     $piwikTracker->setIp($_SERVER['HTTP_X_FORWARDED']);
                 } else {
                     if (isset($_SERVER['HTTP_FORWARDED_FOR'])) {
                         $piwikTracker->setIp($_SERVER['HTTP_FORWARDED_FOR']);
                     } else {
                         if (isset($_SERVER['HTTP_FORWARDED'])) {
                             $piwikTracker->setIp($_SERVER['HTTP_FORWARDED']);
                         } else {
                             if (isset($_SERVER['REMOTE_ADDR'])) {
                                 $piwikTracker->setIp($_SERVER['REMOTE_ADDR']);
                             } else {
                                 $piwikTracker->setIp('DESCONHECIDO');
                             }
                         }
                     }
                 }
             }
         }
         $piwikTracker->setUserAgent($_SERVER['HTTP_USER_AGENT']);
         if (!empty($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
             $idioma = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']);
             $piwikTracker->setBrowserLanguage($idioma[0]);
             unset($idioma);
         }
         if ($this->postExists('localTime')) {
             $piwikTracker->setLocalTime($this->post('localTime'));
         }
         if ($this->postExists('screenWidth') && $this->postExists('screenHeight')) {
             $piwikTracker->setResolution($this->post('screenWidth'), $this->post('screenHeight'));
         }
         if ($this->postExists('position')) {
             $posicao = $this->post('position');
             $piwikTracker->setLongitude($posicao['longitude']);
             $piwikTracker->setLatitude($posicao['latitude']);
             unset($posicao);
         }
     } else {
         $piwikTracker = null;
     }
     return $piwikTracker;
 }
function saveInPiwik($logHash)
{
    echo $logHash["ip"] . " " . $logHash["status"] . " " . $logHash["utcdatetime"] . " " . $logHash["path"] . " (" . $logHash["agent"] . ")... ";
    global $idSite, $webUrl, $piwikUrl, $tokenAuth;
    $t = new PiwikTracker($idSite, $piwikUrl);
    $t->setUserAgent($logHash["agent"]);
    $t->setTokenAuth($tokenAuth);
    $t->setIp($logHash["ip"]);
    $t->setForceVisitDateTime($logHash["utcdatetime"]);
    $t->setUrlReferrer($logHash["referer"]);
    $t->setUrl($webUrl . $logHash["path"]);
    $HTTPResult = false;
    $HTTPFailCount = 0;
    do {
        $HTTPResult = $t->doTrackPageView(basename($logHash["path"]));
        if (!$HTTPResult) {
            $HTTPFailCount++;
            echo "FAIL\n";
            echo "Unable to save (via HTTP) last log entry for the {$HTTPFailCount} time, retrying in a few seconds...\n";
            sleep($HTTPFailCount);
        } else {
            echo "SUCCESS\n";
        }
    } while (!$HTTPResult);
}
 /**
  * Returns a PiwikTracker object that you can then use to track pages or goals.
  *
  * @param $idSite
  * @param $dateTime
  * @param $defaultInit If set to true, the tracker object will have default IP, user agent, time, resolution, etc.
  * @return PiwikTracker
  */
 protected function getTracker($idSite, $dateTime, $defaultInit = true)
 {
     $t = new PiwikTracker($idSite, $this->getTrackerUrl());
     $t->setForceVisitDateTime($dateTime);
     if ($defaultInit) {
         $t->setIp('156.5.3.2');
         // Optional tracking
         $t->setUserAgent("Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.2.6) Gecko/20100625 Firefox/3.6.6 (.NET CLR 3.5.30729)");
         $t->setBrowserLanguage('fr');
         $t->setLocalTime('12:34:06');
         $t->setResolution(1024, 768);
         $t->setBrowserHasCookies(true);
         $t->setPlugins($flash = true, $java = true, $director = false);
     }
     return $t;
 }