Exemplo n.º 1
0
 /**
  * Build the POST Packet
  *
  * @param AbstractTracking $event
  * @return string
  * @throws Exception\MissingConfigurationException
  */
 private function buildPacket(AbstractTracking $event)
 {
     // get packet
     $eventPacket = $event->getPaket();
     if (!$this->getAccountID()) {
         throw new MissingConfigurationException('Google Account ID is missing');
     }
     // Add Protocol
     $eventPacket['v'] = $this->protocol;
     // protocol version
     $eventPacket['tid'] = $this->getAccountID();
     // account id
     $eventPacket['cid'] = $this->getClientID();
     // client id
     $eventPacket = array_reverse($eventPacket);
     // build query
     return http_build_query($eventPacket);
 }
Exemplo n.º 2
0
 /**
  * Build the Tracking Payload Data
  *
  * @param Tracking\AbstractTracking $event
  * @return array
  * @throws Exception\MissingConfigurationException
  */
 protected function getTrackingPayloadData(Tracking\AbstractTracking $event)
 {
     $payloadData = $event->getPackage();
     $payloadData['v'] = $this->apiProtocolVersion;
     // protocol version
     $payloadData['tid'] = $this->analyticsAccountUid;
     // account id
     $payloadData['uid'] = $this->getOption('user_id');
     $payloadData['cid'] = $this->getClientId();
     $proxy = $this->getOption('proxy');
     if ($proxy) {
         if (!isset($proxy['ip'])) {
             throw new Exception\MissingConfigurationException('proxy options need "ip" key/value');
         }
         if (isset($proxy['user_agent'])) {
             $payloadData['ua'] = $proxy['user_agent'];
         }
         $payloadData['uid'] = $proxy['ip'];
     }
     return array_filter($payloadData);
 }
 /**
  * Build the POST Packet
  *
  * @param AbstractTracking $event
  * @return string
  * @throws Exception\MissingConfigurationException
  */
 private function buildPacket(AbstractTracking $event)
 {
     // get packet
     $eventPacket = $event->getPaket();
     if (!$this->getAccountID()) {
         throw new MissingConfigurationException('Google Account ID is missing');
     }
     // Add Protocol
     $eventPacket['v'] = $this->protocol;
     // protocol version
     $eventPacket['tid'] = $this->getAccountID();
     // account id
     $eventPacket['cid'] = $this->getClientID();
     // client id
     if ($this->getUserID() != null) {
         $eventPacket['uid'] = $this->getUserID();
     }
     //Proxy Variables
     if ($this->getProxy()) {
         $eventPacket['uip'] = $_SERVER['REMOTE_ADDR'];
         // IP Override
         $eventPacket['ua'] = $_SERVER['HTTP_USER_AGENT'];
         // UA Override
     }
     $eventPacket = array_reverse($eventPacket);
     // build query
     return http_build_query($eventPacket);
 }