/**
	 * If UA starts with "NEC", apply RIS of FS
	 * If UA starts with KGT, apply LD with threshold 2
	 *
	 * @param string $userAgent
	 * @return boolean
	 */
	function lookForMatchingUserAgent($userAgent) {
		if (WURFL_Handlers_Utils::checkIfStartsWith ( $userAgent, "NEC-" )) {
			$tollerance = WURFL_Handlers_Utils::firstSlash ( $userAgent );
			return WURFL_Handlers_Utils::risMatch ( array_keys ( $this->userAgentsWithDeviceID ), $userAgent, $tollerance );
		}
		return WURFL_Handlers_Utils::ldMatch ( array_keys ( $this->userAgentsWithDeviceID ), $userAgent, self::NEC_KGT_TOLLERANCE );
	}
	/**
	 * If UA starts with "SonyEricsson", apply RIS with FS as a threshold.
	 * If UA contains "SonyEricsson" somewhere in the middle,
	 * apply RIS with threshold second slash
	 *
	 * @param string $userAgent
	 * @return string
	 */
	function lookForMatchingUserAgent($userAgent) {
		if (WURFL_Handlers_Utils::checkIfStartsWith ( $userAgent, "SonyEricsson" )) {
			$tollerance = WURFL_Handlers_Utils::firstSlash ( $userAgent );
			return WURFL_Handlers_Utils::risMatch ( array_keys ( $this->userAgentsWithDeviceID ), $userAgent, $tollerance );
		}
		$tollerance = WURFL_Handlers_Utils::secondSlash ( $userAgent );
		return WURFL_Handlers_Utils::ldMatch ( array_keys ( $this->userAgentsWithDeviceID ), $userAgent, $tollerance );
	
	}
예제 #3
0
 /**
  *  If the User Agent contains the String Nokia, apply TokensMatcher strategy
  *  using the Nokia Tokens Provider else
  *	Apply then LD with a threshold of 3
  *
  * @param string $userAgent
  * @return string
  */
 function lookForMatchingUserAgent($userAgent)
 {
     $userAgents = array_keys($this->userAgentsWithDeviceID);
     if (WURFL_Handlers_Utils::checkIfContains($userAgent, "Nokia")) {
         $tollearnce = WURFL_Handlers_Utils::indexOfOrLength($userAgent, "/", strpos($userAgent, "Nokia"));
         return parent::applyRisWithTollerance($userAgents, $userAgent, $tollearnce);
     }
     return WURFL_Handlers_Utils::ldMatch($userAgents, $userAgent, self::TOLLERANCE);
 }
예제 #4
0
 /**
  * If "OpVer x.x.x.x is present, then apply TokensMatcher wit thresold 7,
  * otherwise apply LD with thresold 5.
  *
  * @param string $userAgent
  * @return string
  */
 function lookForMatchingUserAgentx($userAgent)
 {
     $userAgents = array_keys($this->userAgentsWithDeviceID);
     $spvTokensProvider = new WURFL_Handlers_Matcher_SPVProvider();
     if ($spvTokensProvider->canApply($userAgent)) {
         $tokenMatcher = new WURFL_Handlers_Matcher_TokenMatcher($spvTokensProvider);
         return $tokenMatcher->match($userAgents, $userAgent, 7);
     }
     return WURFL_Handlers_Utils::ldMatch($userAgents, $userAgent, 5);
 }
 private function applyMozilla4ConclusiveMatch($userAgent)
 {
     $this->logger->log("Applying Catch All Conclusive Match Mozilla 4 for ua: {$userAgent}");
     $this->mozilla4UserAgentsWithDeviceID = $this->persistenceProvider->load(self::MOZILLA4);
     if (!array_key_exists($userAgent, $this->mozilla4UserAgentsWithDeviceID)) {
         $match = WURFL_Handlers_Utils::ldMatch(array_keys($this->mozilla4UserAgentsWithDeviceID), $userAgent, self::MOZILLA_TOLLERACE);
     }
     if (!empty($match)) {
         return $this->mozilla4UserAgentsWithDeviceID[$match];
     }
     return NULL;
 }
예제 #6
0
 /**
  * Apply LD Match with tollerance 5
  *
  */
 function lookForMatchingUserAgent($userAgent)
 {
     return WURFL_Handlers_Utils::ldMatch(array_keys($this->userAgentsWithDeviceID), $userAgent, self::AOL_LD_TOLLERANCE);
 }
예제 #7
0
파일: Handler.php 프로젝트: vazahat/dudex
 public function getDeviceIDFromLD($userAgent, $tolerance = null)
 {
     $match = WURFL_Handlers_Utils::ldMatch(array_keys($this->userAgentsWithDeviceID), $userAgent, $tolerance);
     if (!empty($match)) {
         return $this->userAgentsWithDeviceID[$match];
     }
     return WURFL_Constants::NO_MATCH;
 }
예제 #8
0
 private function applyMozilla4ConclusiveMatch($userAgent)
 {
     $this->logger->log("Applying Catch All Conclusive Match Mozilla 4 for ua: {$userAgent}");
     if (!array_key_exists($userAgent, $this->mozilla4UserAgentsWithDeviceID)) {
         $match = WURFL_Handlers_Utils::ldMatch(array_keys($this->mozilla4UserAgentsWithDeviceID), $userAgent, self::MOZILLA_TOLERANCE);
     }
     if (!empty($match)) {
         return $this->mozilla4UserAgentsWithDeviceID[$match];
     }
     return WURFL_Constants::NO_MATCH;
 }