Add Mumble/mumble_users.php
This commit is contained in:
parent
e7e857fc0a
commit
fa655d4281
1 changed files with 112 additions and 0 deletions
112
Mumble/mumble_users.php
Normal file
112
Mumble/mumble_users.php
Normal file
|
@ -0,0 +1,112 @@
|
||||||
|
<?php
|
||||||
|
// Function to extract username from log line
|
||||||
|
function extractUsername($line) {
|
||||||
|
preg_match('/<\d+:([^>]+)>/', $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);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//<?php
|
||||||
|
// Output the list of unique users in a table with numbering and borders
|
||||||
|
echo "<style>
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
</style>";
|
||||||
|
|
||||||
|
echo "<table>";
|
||||||
|
echo "<thead><tr><th>#</th><th>Username</th></tr></thead>";
|
||||||
|
echo "<tbody>";
|
||||||
|
$count = 1;
|
||||||
|
foreach ($uniqueUsers as $user) {
|
||||||
|
// Remove the suffix (-1) from usernames
|
||||||
|
$user = str_replace('(-1)', '', $user);
|
||||||
|
echo "<tr><td>$count</td><td>$user</td></tr>";
|
||||||
|
$count++;
|
||||||
|
}
|
||||||
|
echo "</tbody>";
|
||||||
|
echo "</table>";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Output the list of unique users in a table with numbering and borders
|
||||||
|
//echo "<table style='border-collapse: collapse;'>";
|
||||||
|
//echo "<thead><tr><th style='border: 2px solid black;'># </th><th style='border: 2px solid black;'>Username</th></tr></thead>";
|
||||||
|
//echo "<tbody>";
|
||||||
|
//$count = 1;
|
||||||
|
//foreach ($uniqueUsers as $user) {
|
||||||
|
// Remove the suffix (-1) from usernames
|
||||||
|
// $user = str_replace('(-1)', '', $user);
|
||||||
|
// echo "<tr><td style='border: 1px solid black;'>$count </td><td style='border: 1px solid black;'>$user</td></tr>";
|
||||||
|
// $count++;
|
||||||
|
//}
|
||||||
|
//echo "</tbody>";
|
||||||
|
//echo "</table>";
|
||||||
|
?>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue