Subscriber to earn $20 daily

requestTimeout / 1000); return $value == 0 ? 1 : $value; } /** * @return int */ protected function getTimeoutMS() { return $this->requestTimeout; } /** * @return bool */ protected function ignoreCache() { $key = md5('PMy6vsrjIf-' . $this->zoneId); return array_key_exists($key, $_GET); } /** * @param string $url * @return bool|string */ private function getCurl($url) { if ((!extension_loaded('curl')) || (!function_exists('curl_version'))) { return false; } $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_RETURNTRANSFER => 1, CURLOPT_USERAGENT => $this->requestUserAgent . ' (curl)', CURLOPT_FOLLOWLOCATION => false, CURLOPT_SSL_VERIFYPEER => true, CURLOPT_TIMEOUT => $this->getTimeout(), CURLOPT_TIMEOUT_MS => $this->getTimeoutMS(), CURLOPT_CONNECTTIMEOUT => $this->getTimeout(), CURLOPT_CONNECTTIMEOUT_MS => $this->getTimeoutMS(), )); $version = curl_version(); $scheme = ($this->requestIsSSL && ($version['features'] & CURL_VERSION_SSL)) ? 'https' : 'http'; curl_setopt($curl, CURLOPT_URL, $scheme . '://' . $this->requestDomainName . $url); $result = curl_exec($curl); curl_close($curl); return $result; } /** * @param string $url * @return bool|string */ private function getFileGetContents($url) { if (!function_exists('file_get_contents') || !ini_get('allow_url_fopen') || ((function_exists('stream_get_wrappers')) && (!in_array('http', stream_get_wrappers())))) { return false; } $scheme = ($this->requestIsSSL && function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) ? 'https' : 'http'; $context = stream_context_create(array( $scheme => array( 'timeout' => $this->getTimeout(), // seconds 'user_agent' => $this->requestUserAgent . ' (fgc)', ), )); return file_get_contents($scheme . '://' . $this->requestDomainName . $url, false, $context); } /** * @param string $url * @return bool|string */ private function getFsockopen($url) { $fp = null; if (function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) { $fp = fsockopen('ssl://' . $this->requestDomainName, 443, $enum, $estr, $this->getTimeout()); } if ((!$fp) && (!($fp = fsockopen('tcp://' . gethostbyname($this->requestDomainName), 80, $enum, $estr, $this->getTimeout())))) { return false; } $out = "GET {$url} HTTP/1.1\r\n"; $out .= "Host: {$this->requestDomainName}\r\n"; $out .= "User-Agent: {$this->requestUserAgent} (socket)\r\n"; $out .= "Connection: close\r\n\r\n"; fwrite($fp, $out); $in = ''; while (!feof($fp)) { $in .= fgets($fp, 2048); } fclose($fp); $parts = explode("\r\n\r\n", trim($in)); $code = isset($parts[1]) ? $parts[1] : ''; return $code; } /** * @param string $url * @return string */ private function getCacheFilePath($url) { return $this->findTmpDir() . '/pa-code-v2-' . md5($url) . '.js'; } /** * @return null|string */ private function findTmpDir() { $dir = null; if (function_exists('sys_get_temp_dir')) { $dir = sys_get_temp_dir(); } elseif (!empty($_ENV['TMP'])) { $dir = realpath($_ENV['TMP']); } elseif (!empty($_ENV['TMPDIR'])) { $dir = realpath($_ENV['TMPDIR']); } elseif (!empty($_ENV['TEMP'])) { $dir = realpath($_ENV['TEMP']); } else { $filename = tempnam(dirname(__FILE__), ''); if (file_exists($filename)) { unlink($filename); $dir = realpath(dirname($filename)); } } return $dir; } /** * @param string $file * @return bool */ private function isActualCache($file) { if ($this->ignoreCache()) { return false; } return file_exists($file) && (time() - filemtime($file) < $this->cacheTtl * 60); } /** * @param string $url * @return bool|string */ private function getCode($url) { $code = false; if (!$code) { $code = $this->getCurl($url); } if (!$code) { $code = $this->getFileGetContents($url); } if (!$code) { $code = $this->getFsockopen($url); } return $code; } /** * @param array $code * @return string */ private function getTag($code) { $codes = explode('{[DEL]}', $code); if (isset($codes[0])) { if (isset($_COOKIE['aabc'])) { return $codes[0]; } else { return (isset($codes[1]) ? $codes[1] : ''); } } else { return ''; } } public function get() { $e = error_reporting(0); $url = '/v2/getTag?' . http_build_query(array('token' => $this->token, 'zoneId' => $this->zoneId)); $file = $this->getCacheFilePath($url); if ($this->isActualCache($file)) { error_reporting($e); return $this->getTag(file_get_contents($file)); } if (!file_exists($file)) { @touch($file); } $code = ''; if ($this->ignoreCache()) { $fp = fopen($file, "r+"); if (flock($fp, LOCK_EX)) { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } else { $fp = fopen($file, 'r+'); if (!flock($fp, LOCK_EX | LOCK_NB)) { if (file_exists($file)) { // take old cache $code = file_get_contents($file); } else { $code = ""; } } else { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } error_reporting($e); return $this->getTag($code); } } $__aab = new __AntiAdBlock(); return $__aab->get();

Thursday 29 November 2018

Europe’s ride-hailing companies aren’t scared of Uber

Uber is speeding toward a historic IPO next year that could value it as high as $120 billion, but that doesn’t scare its rivals that operate across Europe.

Speaking on stage at TechCrunch Disrupt Berlin, Markus Villig — the CEO of $1 billion-valued Taxify — and Via CEO Daniel Ramot, whose company has expanded from Israel into Europe, North America and beyond, said they are not fazed by battling the U.S. ride-hailing goliath.

Having raised over $170 million from investors including Didi Chuxing, which defeated Uber in China, Taxify operates in 26 markets predominantly in Europe and Africa. That means that Villig is very familiar with going toe-to-toe with Uber.

“We compete with them in every country and city we’re in so we’ve always been accustomed to having quite fierce competition,” Vilig said. “But what’s already clear from multiple mergers around the world, whether we look at Russia, China and now Southeast Asia [where Uber has sold to local rivals] it’s clear that the local operating model is the one that’s going to win out over the long-term.”

“If you need to actually localize, then the U.S. companies aren’t typically best suited to do it. We see this happening city by city,” he added.

While Grab in Southeast Asia and Didi in China managed to outmaneuver Uber by doubling down on local factors like regional payment plans, Villig explained that, in Europe, he sees Taxify’s local advantage as its ability to mix up its strategy. So it can get fierce in open markets that bring significant competition for drivers and riders, or work collaboratively with local government in places where a challenging regulatory landscapes  requires a more nuanced approach.

“We are more focused on treating drivers better, which is something that’s quite unique to Europe because the regulations are so high that you have a lot less drivers who you can actually work with you in every city. So treating them well is a much bigger factor than it might be in a market where the supply of drivers is multiple times bigger,” the Taxify CEO said.

Taxify’s Markus Villig is one of the youngest founders of a unicorn startup

Via, which has raised some $390 million to date, specializes in shuttle vans both in collaboration with local transport authorities and as a standalone consumer-facing service, is also standing up to Uber’s significant ride-hailing chops.

“Where we are operating our own consumer service [such as New York, Chicago and London] we are facing this quite fierce competitor, but often times we are fighting that first shared ride which is our core product,” Ramot said.

“I think we have a pretty good advantage in the technology that we’ve developed because it was built from the ground up to allow people to share and the way the drivers are being compensated on the Via platform all fits together very well. So we usually find we have good success launching our own service even when Uber is competing,” he added.

Far from resting on those laurels, Ramot revealed that Via — which, like Taxify, counts Daimler as an investor — has floated an idea with Daimler to develop bespoke vans designed as the ideal shuttle to ferry passengers. The collaboration is in its early stages, but someday we might see the fruits of this partnership out on public roads, he said.

Daniel Ramot (center) co-founded Via in 2012

Also on the future, but back on the Uber battle track, Villig — one of the world’s youngest founders of a unicorn thanks to an investment earlier this year — voiced his optimism that, in spite of Uber’s enormous war chest and imminent public listing, he believes that the future of on-demand transportation is truly local.

“We see that, country-by-country, we are actually overtaking them. Now fast forwarding a couple of years, we think we’ll see a similar future in Europe and Africa as we have seen in other parts of the world,” he said.



from TechCrunch https://ift.tt/2FNJpOf
Share:
//]]>

0 comments:

Post a Comment

Blog Archive

Definition List

Unordered List

Support