Beiträge von master_d

    OK, du hast in dem Array eine Übersicht über alle vorhandenen Supporter. Die fehlt hier die "Clients-Online-List", in der du dann einfach vergleichen kannst.


    Dabei einfach die cldbid aus den Einträgen in dem von dir geposteten Array mit denen in den Einträgen der Clients-Online-List vergleichen, und deinen Counter hochzählen.
    Die dafür benötigte Funktion nennt sich "clientList", und beinhaltet für jeden Client den Parameter "client_database_id", welcher dem Eintrag "cldbid" in deinem Array entspricht.

    Die einfache Variante wäre es, sich erst einmal Gedanken über die Datenbankanbindung an sich zu machen.


    Zum ersten wäre da PHP-PDO (PHP: PDO - Manual ), welches als Abstraktionsschicht bereits viele Anforderungen abdecken sollte.
    Danach kommt dann die Applikation selbst. Die erste Variante ist hier, zumindest die "meißtgenutzten" Datenbanken abzudecken, was im Web derzeit MySQL/MariaDB, sowie PostgreSQL sind. MS-SQL wäre auch noch von Vorteil, da manche "Hoster" ja durchaus Windows-Server einsetzen könnten.


    Und vor allem, wenn es um Hoster geht, kann man davon ausgehen, dass Applikationsserver und Datenbankserver getrennt von einander betrieben werden, so dass auch der Programmierer hier seinen Teil beisteuern sollte, und entsprechende Sicherheitsfunktionen in seiner Applikation einbauen sollte.
    Datenbankverbindungen, die per SSL abgesichert sind, sind auf jeden Fall ein guter Anfang.
    Des weiteren wäre eine Absicherung der Kommunikation zu den TS3-Servern ebenfalls eine gute Idee, denn das Interface ist "unverschlüsselt", daher sollten die Verbindungen, die "sensible Daten" enthalten, nicht im Klartext lesbar sein, egal wie sicher die Transportwege sind.


    Ich hoffe, das Thema allgemein etwas erläutert zu haben, und die gewünschten Informationen etwas in den Vordergrund gerückt zu haben.

    Dann will ich hier auch auf die selben Anforderungen hinweisen, wie bei anderen Projekten dieser Art.


    Wenn das Interface "Remote-Datenbanken" unterstützen soll, dann bitte auch entsprechende SSL-Absicherung in der DB-Verbindung implementieren.
    Ansonsten wäre eine Unterstützung von anderen Datenbanken, beispielsweise PostgreSQL, durchaus gern gesehen.


    Ansonsten klingt das Projekt durchaus interessant.

    Das war nicht die Frage. Die Aussage, die du getroffen hat, wäre "ich starte 1 Request, aber am Server kommen potentiell 3 an."
    Mir wäre hier die Information wichtig gewesen, "Es wird nur 1 Request an den Server gesendet, aber es werden potentiell 3 ausgeführt."


    Bitte einmal im Firefox die Webdev-Konsole öffnen (F12), und den Reiter "Netzwerk" öffnen. Dann einmal F5 drücken, und dort schauen, ob wirklich nur 1 Request an den Server gesendet wird, habe da leider bereits die interessantesten Effekte gesehen.


    In dem von dir geposteten Script ist keinerlei Rekursion oder Wiederholung enthalten, daher muss das Problem von einer anderen Stelle kommen.

    Und was die SQL-Statements angeht, würde ich die SQL-Dateien nochmals mit denen aus dem Installationspaket überschreiben, zur Sicherheit.
    Da die SQL-Statements in Dateien abgelegt sind, könnte es dort zu Änderungen gekommen sein, die diesen Fehler auslösen.

    Aufgrund dessen, dass ich mich nun eine "Festanstellung" habe, hat sich bei mir die Priorisierung ein wenig verschoben. Ebenso habe ich derzeit ein paar "Interne Projekte", die meine Zeit erfordern, daher fehlt mir etwas Zeit, meine Planungen zu verwirklichen.


    Die Planung, wie oben erläutert, steht durchaus noch, aber würde ich das Projekt derzeit nur ungern allein starten, da mir die Zeit fehlt, ein solches Projekt allein zu betreuen.

    Zuerst empfehle ich dir, deine Satzstruktur etwas lesbarer zu gestalten, denn ich hatte etwas Mühe, den Inhalt zu verstehen.


    Aber zu deiner Frage, auch Teamspeak nutzt eine GeoIP-Datenbank. Es wäre also eine Möglichkeit, die IP einfach bei einem Anbieter einer GeoIP-Datebank zur Prüfung über eine API einzureichen, oder aber eine GeoIP-DB in dein Plugin zu integrieren. Aber bitte bedenken, diese Datenbanken sind nicht zu 100% verlässlig.

    Laut dem Log wird der Server herunter gefahren, doch sieht man hier nur das serverlog "_1.log", wichtig wäre hier das Hostlog "_0.log", möglicherweise steht dort dein Problem drin.

    OK, bei Punkt 1 handelt es sich um einen "TS3-Bot" der zum Spammen gemacht ist. Wenn man also auf Connect klickt, wird sich der Bot zu dem genannten Server verbinden, und seinen "Scheiß" machen, den er machen will.


    Was Punkt 2 angeht, so erhöht man die Sicherheitsstufe der Identität nur in der grafischen Oberfläche des Clients. Es ist also erforderlich, dass du auf den Server eine grafische Oberfläche einrichtest, damit du das machen kannst. Ein Script gibt es meines Wissens nach dafür nicht.

    Am besten die Person verhauen, die die Serverliste programmiert hat, und die Eingabe von Domains erlaubt, aber nicht richtig damit umgehen kann.
    Bei diesen Serverlisten wird scheinbar nicht auf SRV-Records geachtet, und nur der A-Record abgefragt. Daher wird dein Server als offline angezeigt.

    TS3-Client unter Windows?


    Dann %APPDATA% im Explorer eingeben, und dort den Ordner "Teamspeak3 Client" entsprechend sichern und an anderer Stelle speichern. Der Ordner wird zwar normalerweise nicht gelöscht, aber sicher ist sicher.

    Der Bot benötigt gewisse Pakete in deinem Linux-System um überhaupt starten zu können.
    Dazu gehört unter anderem xvfb, sowie xinit. Die genauen Paket-Namen kann ich dir gerade nicht nennen, da ich nicht weiß, welche Distribution eingesetzt wird.
    Wenn du den Namen der Distribution nennst, könnten dir auch die Paket-Namen genannt werden, falls du diese nicht selbst herausfinden kannst, oder willst.

    Zitat

    Das "öffentliche" verbreiten von "GEMA"-Musik ist mit Kosten verbunden. Dabei ist es egal, aus welcher Quelle diese kommt. Wenn du also ein Webradio abspielen solltest, welche Gema-pflichtige Musik abspielt, musst auch du entsprechende Gelder an die Gema abdrücken, jeweils gerechnet anhand der durchschnittlichen "Hörer" in dem entsprechenden Channel.


    Das wäre so ungefähr die einfache, rechtlich verständliche Form des Problems, soweit ich die ohne rechtliche Kenntnisse in den letzten Jahren verfolgt und erfasst habe.
    Der beste Weg wäre also, auf "öffentliche" Musikbots zu verzichten, und die Musik-Bots nur in Channeln zu verwenden, die nur von bestimmten Benutzergruppen betreten werden können. Denn dies definiert den Begriff "Geschlossene Gruppe" und ist somit rechtlich ein anderer Rahmen als eine "öffentliche Vorführung".

    Sorry, wenn das etwas harsch klingen sollte, aber hast du dir deine Frage nicht bereits selbst beantwortet?


    Wenn du doch immer einen User weniger anzeigen möchtest, warum tust du das dann nicht einfach?

    Code
    echo (count($clients['data']) - 1) . '/12';


    Es verwundert einfach, dass solches "Grundwissen" nachgefragt wird.
    An dieser Stelle müsste ich eigentlich sagen, "Lerne erst mit der gewählten Sprache umzugehen, bevor du damit arbeitest!", denn leider ist dies nicht mehr selbstverständlich.
    Ich hoffe dir damit geholfen zu haben, empfehle aber trotzdem, dass du dich mit den Grundzügen der Programmierung vertraut machst, und dir die Grundstrukturen der entsprechenden Sprache aneignest.

    In diesem Forum wird dafür im allgemeinen die ts3admin.class eingesetzt.
    Alternativ kann aber auch das Framework von ScP aus dem offiziellen TeamSpeak-Forum verwendet werden.


    Ansonsten hilft die ServerQuery-Dokumentation aus dem TS3-Server-Paket.

    Die Uptime ist in den Informationen enthalten, die man abfragen kann. Dabei kann man zwischen den Hostinformationen und den Instanzinformationen unterscheiden, welche durchaus unterschiedlich sein können.


    Was den Ping angeht, so finde ich eine solche Funktion an sich zwar durchaus interessant, aber nicht passend zu diesem Anwendungsfall.
    Der Ping ist nutzerabhängig, und somit nicht wirklich aussagekräftig. Daher würde mich interessieren, aus welchem Grund dir diese Information wichtig ist.

    Solch eine Funktion wäre zwar durchaus interessant, aber aus welchem Grund sollte man das benötigen.
    Der Ping ist ja von User zu User unterschiedlich, und würde bei einer solchen Funktion ja von dem anfragenden Server aus berechnet werden, und nicht vom Nutzer aus.