Beiträge von master_d

    Falscher Ansatz, bitte die Logdateien als einzelne Dateien erhalten, damit eine Historie gewahrt bleibt, und auch das Durchsuchen noch möglich ist!!
    Ebenso wäre GZip als Kompressionsverfahren zu bevorzugen, da damit unter anderem auch ein direktes Durchsuchen auf der Konsole möglich ist (zcat/zless).
    Ansonsten könnte noch als Konfigurationsoption hinzugefügt werden, welche Menge an Log-Dateien erhalten bleiben soll.

    Schon einmal vorab.
    Von der Beschreibung in diesem Post her kann ich nur feststellen, dass sich einiges verbessert hat, und ich auf die Closed-Beta gespannt bin.
    Ansonsten muss ich mal schauen, wann ich zu einer kleinen Runde mit der Demo komme, vielleicht fällt mir dann noch etwas auf.


    Was aber die Logfiles angeht, so empfehle ich hier ähnliche Prinzipien wie bei Logrotate.
    system.log -> system.log.1 -> system.log.2.gz -> etc. und dann bis zum File *.9.gz behalten.
    Nur die ersten beiden sind "unkomprimiert", der Rest nimmt nicht mehr ganz so viel Platz weg.

    Da du meinen Hinweis nicht aufgenommen hast, nochmals zur Erläuterung.


    Für Teamspeak sind gewisse Funktionen der Hardware nötig. Wenn diese nicht vorhanden sind, ist es egal, um welches Systeme es sich handelt.
    Hier wäre eine Ausgabe des Befehls "cat /proc/cpuinfo" durchaus hilfreich, vielleich auch im Vergleich zu dem Server wo es funktioniert.

    Wenn jemand in einem Channel bereits eine explizite Gruppe besitzt, wird diese nicht mit der Gruppe des übergeordneten Channel überschrieben.


    Wenn das also bei jemandem nicht funktionieren sollte, per Rechtsklick auf die entsprechende Person, und dann unter "Channelgruppen des Clients" im Rechte-Menu prüfen, ob ggf. falsche Gruppen gesetzt sind, und ggf. über den Button unten alle Gruppen entfernen, und dann die richtigen für die entsprechenden Channel setzen.

    Bitte prüfe die Werte für Group-Member-(add|remove)-Power, sowie die Needed-Group-Member-(add|remove)-Power.
    Die "Needed"-Werte sollten höher liegen, als die entsprechende Power der eigenen Gruppe, sowie die der darunter liegenden Gruppe.
    Ausnahme wären die Admins.


    Danach sollte es der nur der darüberliegenden Gruppe möglich sein, neue Mitglieder zu ernennen.

    Ansonsten impliziert eine "wirksame Verschlüsselung", dass der Nutzer über den Schlüssel verfügt, um die Daten entschlüsseln zu können, und nicht die Plattform.


    Die Verschlüsselung baut auf ein von mir geschriebenen Algorithmus auf welches den String mit ein Master String key verschlüsselt und wieder entschlüsseln kann.


    Also hast du hier gerade selbst bewiesen, dass du keine "wirksame" Verschlüsselung einsetzt.
    Eine passende Funktion wäre hier eine Verschlüsselung mit bspw. dem Nutzer-Kennwort unter Nutzung eines symmetrischen Verschlüsselungsalgorithmus.
    Eine kleine Übersicht von PHP: PHP: Mcrypt ciphers - Manual
    Wobei ich hier nichts nutzen möchte, was nur in der Version 2.2.x vorhanden ist. RC4 ist bspw. bereits gebrochen.

    Und noch als weiterer Fakt.
    Auch ein Teamspeak-Server "kann" eine Dienstleistung sein. Auch wenn dieser hier "unendgeldlich" erbracht wird, kann dies durchaus als Dienstleistung ausgelegt werden, da du hier in Konkurrenz zu bezahlten Anbietern stehst.
    Dieses "Auslegungsproblem" einzugehen, ist deine freie Entscheidung. Ein entsprechendes Impressum funktionsfähig vor zuhalten, ist aber wahrscheinlich der sicherere Weg.

    Dann mal mit Beispiel:
    TeamSpeak 3 PHP Framework: API Documentation


    Das Framework bietet zum einen die nötigen Funktionen, als auch passende Beispiele.
    Unter Punkt 14 findest du ein Beispiel eines kleinen Bots, der genau das tut, was du hier nachfragst, bis auf das benutzte Event. Dieses muss noch auf dein Problem angepasst werden, aber auch das sollte in der Dokumentation vorhanden sein.
    Funktionsdokumentation: TeamSpeak 3 PHP Framework: TeamSpeak3_Node_Server Class Reference
    Und der Befehl selbst ist in der PDF-Datei im "doc"-Ordner des Servers erklärt, also sollte das alles sein, was du benötigst.

    Wenn ich es als "wirksame" Verschlüsselung ansehen können soll, dann bitte Details dazu.


    Ansonsten impliziert eine "wirksame Verschlüsselung", dass der Nutzer über den Schlüssel verfügt, um die Daten entschlüsseln zu können, und nicht die Plattform. Und das kann schwierig sein ;)

    OK. Dann will ich mal einen kurzen Testbericht hinterlassen.


    1. HTTPS sollte Pflicht sein. !!Schnellstmöglich nachrüsten!!
    2. Anscheinend hat das Interface Probleme mit IPv6-Adressen, denn mein Testserver wird nicht angezeigt. Ebenso erhalte ich aber keine Fehlermeldungen, so dass dort am Error-Reporting ebenfalls noch gearbeitet werden sollte.

    Dafür gibt es 2 Varianten:


    1. die offizielle:
    Die Daten des Servers exportieren, und dann neu anlegen, damit der Zeitpunkt richtig gesetzt werden kann.


    2. der inoffizielle
    Den Server herunterfahren, und dann in der Datenbank den entsprechenden Eintrag mit den richtigen Daten füllen.
    !!Vorsicht!! Kann zu Datenverlust führen. Vorher Backup der Datenbank anfertigen.

    Wir kommen der Sache näher.
    Auch der obere Bereich muss nochmals angepasst werden:

    Code
    $serverGroupClientList = $ts3admin->serverGroupClientList(52);
    
    
    $grpUserDbIds = array();
    foreach($serverGroupClientList["data"] as $grp) {
        $grpUserDbIds[] = $grp["cldbid"];
    }


    Danach sollte es passen.

    OK, scheinbar bestehen dort noch Probleme mit den cldbid's, daher bitte einmal folgend anpassen:

    Code
    foreach($serverGroupClientList as $grp) {    var_dump($grp);     $grpUserDbIds[] = $grp["cldbid"];}


    Und der untere Bereich gehört wahrscheinlich so:

    Code
    $serverClientsOnline = $ts3admin->clientList();
    $supsOn = 0;
    foreach($serverClientsOnline["data"] as $client) {
        if(in_array($client["client_database_id"], $grpUserDbIds)) {
            $supsOn++;
        }
    }


    Ist jetzt gerade aus meinem Kopf heraus entstanden, daher nicht 100%ig sicher, dass das funktionierender Code ist.