/** * Run the listFeatures demo. Calls listFeatures with a rectangle * containing all of the features in the pre-generated * database. Prints each response as it comes in. */ function runListFeatures() { print "Running ListFeatures...\n"; global $client; $lo_point = new routeguide\Point(); $hi_point = new routeguide\Point(); $lo_point->setLatitude(400000000); $lo_point->setLongitude(-750000000); $hi_point->setLatitude(420000000); $hi_point->setLongitude(-730000000); $rectangle = new routeguide\Rectangle(); $rectangle->setLo($lo_point); $rectangle->setHi($hi_point); // start the server streaming call $call = $client->ListFeatures($rectangle); // an iterator over the server streaming responses $features = $call->responses(); foreach ($features as $feature) { printFeature($feature); } }
function printFeatureInfo() { @($response = file_get_contents("http://localhost/admin/license.php", 0)); if (!$response) { $response = "Unable to retrieve license file"; } else { try { $features = @new SimpleXMLElement($response); } catch (Exception $e) { // nuttin } } if (!isset($features)) { printFeature("License", false, $response); return; } printFeature("Registered To", true, $features->RegisteredTo); $expressMax = $features->Express; $spMax = $features->ServiceProvider; $routerMax = $features->Router; $appMax = $features->AppServer; $videoMax = $features->VideoServer; $rtspMax = $features->WebcastServer; $expDate = strtotime($features->ContractEndDate); $curDate = strtotime("now"); # Assume license is outdated $valid = false; if ($expDate >= $curDate) { $valid = true; } printFeature("Expiration Date", $valid, date('d M Y', $expDate)); $expressCount = 0; $spCount = 0; $routerCount = 0; $appCount = 0; $videoCount = 0; $rtspCount = 0; foreach (listServers() as $server) { if ($server['status'] == 'active') { switch ($server['role']) { case 'allInOne': $expressCount++; break; case 'spHost': $spCount++; break; case 'routerHost': $routerCount++; break; case 'appHost': $appCount++; break; case 'videoHost': $videoCount++; break; case 'rtspHost': $rtspCount++; break; case 'webcastHost': $rtspCount++; break; } } } $namedSeats = totalUserCount(); $props = getServerConfigProperties('localhost', array("OpenQwaq.AD.Enabled")); $hasAD = $props['OpenQwaq.AD.Enabled'] == 'true'; $roles = array(array("Named Seats", $namedSeats, $features->NamedSeats), array("Express Edition", $expressCount, $expressMax), array("Service Provider", $spCount, $spMax), array("Router / Balancer", $routerCount, $routerMax), array("Application Server", $appCount, $appMax), array("Video Server", $videoCount, $videoMax), array("Webcast Server", $rtspCount, $rtspMax)); foreach ($roles as $role) { if ($role[1] > 0 or $role[2] > 0) { printFeature($role[0], $role[1] <= $role[2], $role[1] . " / " . $role[2]); } } }