From fa655d4281a1a366f07eef1ef1e8266c094dc486 Mon Sep 17 00:00:00 2001 From: Clay Date: Tue, 29 Jul 2025 14:54:06 -0400 Subject: [PATCH] Add Mumble/mumble_users.php --- Mumble/mumble_users.php | 112 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 Mumble/mumble_users.php diff --git a/Mumble/mumble_users.php b/Mumble/mumble_users.php new file mode 100644 index 0000000..d71a301 --- /dev/null +++ b/Mumble/mumble_users.php @@ -0,0 +1,112 @@ +]+)>/', $line, $matches); + return isset($matches[1]) ? $matches[1] : null; +} + +// Function to read log file and update list of unique users +function updateUniqueUsers($filename, &$uniqueUsers) { + if (($handle = fopen($filename, "r")) !== false) { + while (($line = fgets($handle)) !== false) { + $username = extractUsername($line); + if ($username !== null && !in_array($username, $uniqueUsers)) { + $uniqueUsers[] = $username; + } + } + fclose($handle); + } +} + +// Function to save list of unique users to a file +function saveUniqueUsersToFile($filename, $uniqueUsers) { + file_put_contents($filename, implode("\n", $uniqueUsers)); +} + +// Main script +$logFilename = '/var/log/mumble-server/mumble-server.log'; // Change this to the path of your log file +$usersFilename = 'unique_users.txt'; // Change this to the path where you want to store the unique users + +$uniqueUsers = []; + +// Load existing unique users from file if it exists +// Main script continued +if (file_exists($usersFilename)) { + $uniqueUsers = file($usersFilename, FILE_IGNORE_NEW_LINES); +} + +// Update list of unique users from the log file +updateUniqueUsers($logFilename, $uniqueUsers); + +// Save updated list of unique users back to file +saveUniqueUsersToFile($usersFilename, $uniqueUsers); + + + + +// + table { + width: 100%; + border-collapse: collapse; + border-radius: 8px; + overflow: hidden; + box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); + } + th, td { + padding: 12px 15px; + text-align: left; + border-bottom: 1px solid #ddd; + } + th { + background-color: #f2f2f2; + font-weight: bold; + color: #333; + border-top: 2px solid #333; + } + tr:nth-child(even) { + background-color: #f9f9f9; + } + tr:hover { + background-color: #f2f2f2; + } + "; + +echo ""; +echo ""; +echo ""; +$count = 1; +foreach ($uniqueUsers as $user) { + // Remove the suffix (-1) from usernames + $user = str_replace('(-1)', '', $user); + echo ""; + $count++; +} +echo ""; +echo "
#Username
$count$user
"; + + + + + + +// Output the list of unique users in a table with numbering and borders +//echo ""; +//echo ""; +//echo ""; +//$count = 1; +//foreach ($uniqueUsers as $user) { + // Remove the suffix (-1) from usernames +// $user = str_replace('(-1)', '', $user); +// echo ""; +// $count++; +//} +//echo ""; +//echo "
# Username
$count $user
"; +?> + + + + +