$agentHistory = []; $fromServer = explode(",", $input); if (sizeof($fromServer) < 3 || sizeof($fromServer) % 2 == 0) { throw new Exception("Invalid agent history."); } $lastDate = $fromServer[0]; for ($i = 1; $i < sizeof($fromServer); $i += 2) { $currentDate = $fromServer[$i] + $lastDate; $lastDate = $currentDate; $agentCount = $fromServer[$i + 1]; $agentHistory[] = array("Date" => $currentDate, "Count" => $agentCount); } return $agentHistory; } try { $db = new SimStatsDatabase(); $db->ConnectToDatabase(); } catch (Exception $ex) { http_response_code("500"); LogToFile("Failed to connect to database. See log for details.", $ex->getMessage()); die; } $servers = $db->GetServers(); foreach ($servers as $server) { if (!$server['enabled']) { continue; } $serverResponse = @file_get_contents($server['address'] . "/population"); if ($serverResponse === false) { // TODO: GHETTO. if (strstr($http_response_header[0], "404 Not Found")) {
<?php include_once dirname(__FILE__) . "/lib/SimStatsDatabase.php"; include_once dirname(__FILE__) . "/lib/SecondlifeHeader.php"; include_once dirname(__FILE__) . "/lib/Utils.php"; if (!isset($_GET["queryUrl"])) { http_response_code("500"); LogToFile("No queryUrl sent"); die; } $queryUrl = $_GET["queryUrl"]; $slHeader = new SecondlifeHeader($_SERVER); try { $db = new SimStatsDatabase(); $db->ConnectToDatabase(); } catch (Exception $ex) { http_response_code("500"); LogToFile("Failed to connect to database. See log for details.", $ex->getMessage()); die; } try { $shardId = $db->GetOrCreateShardId($slHeader->shard); $ownerId = $db->GetOrCreateUserId($slHeader->ownerKey, $slHeader->ownerName, $shardId); $db->CreateOrUpdateServer($slHeader->objectName, $shardId, $ownerId, $queryUrl, $slHeader->objectKey); } catch (Exception $ex) { http_response_code("500"); LogToFile("Failed to register server. See log for details.", $ex->getMessage()); die; } echo "OK"; LogToFile("New or updated query server.");
<?php include_once dirname(__FILE__) . "/../lib/SimStatsDatabase.php"; include_once dirname(__FILE__) . "/../lib/Utils.php"; if (!isset($_GET['serverId'])) { die("Missing serverId"); } $uuid = $_GET['serverId']; try { $db = new SimStatsDatabase(); $db->ConnectToDatabase(); } catch (Exception $ex) { http_response_code("500"); LogAndEchoJson("Failed to connect to database. See log for details.", $ex->getMessage()); die; } $mapUrl = $db->GetServerAddress($uuid); if ($mapUrl == null || $mapUrl == "") { LogToFile("Failed to get map address. Try again."); echo "null"; return; } $contents = @file_get_contents($mapUrl . "/agents"); if ($contents == "") { LogToFile("Failed to contact map server. Try again."); echo "null"; return; } // TEMP: Replace 'Players' with 'data' echo substr_replace($contents, "data", 2, 7);
<?php include_once dirname(__FILE__) . "/../lib/SimStatsDatabase.php"; include_once dirname(__FILE__) . "/../lib/Utils.php"; try { $db = new SimStatsDatabase(); $db->ConnectToDatabase(); } catch (Exception $ex) { http_response_code("500"); LogAndEchoJson("Failed to connect to database. See log for details.", $ex->getMessage()); die; } $servers = $db->GetServersForFrontend(); echo json_encode($servers);
} $uuid = $_GET['serverId']; $format = null; $start = null; $end = null; if (isset($_GET['start']) && is_numeric($_GET['start'])) { $start = intval($_GET['start']); } if (isset($_GET['end']) && is_numeric($_GET['end'])) { $end = intval($_GET['end']); } if (isset($_GET['format'])) { $format = $_GET['format']; } try { $db = new SimStatsDatabase(); $db->ConnectToDatabase(); } catch (Exception $ex) { http_response_code("500"); LogAndEchoJson("Failed to connect to database. See log for details.", $ex->getMessage()); die; } try { $serverNameAndId = $db->GetServerNameAndId($uuid); if ($serverNameAndId === null) { http_response_code("500"); LogAndEchoJson("Server not found."); die; } $stats = $db->GetStats($serverNameAndId['id'], $start, $end); } catch (Exception $ex) {