/** * 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 ); }
/** * 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); }
/** * 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; }
/** * Apply LD Match with tollerance 5 * */ function lookForMatchingUserAgent($userAgent) { return WURFL_Handlers_Utils::ldMatch(array_keys($this->userAgentsWithDeviceID), $userAgent, self::AOL_LD_TOLLERANCE); }
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; }
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; }