Closed LordRofl closed 3 years ago
Ich hab jetzt die benötigte jquery.flot
Library mit rein gepackt. Ansonsten ist das eigentlich eine lauffähige Version ^^
Ich habe das Projekt noch ein mal frisch aufgespielt und habe jetzt den bug, dass keine Werte aus der Datenbank gelesen werden können.
Zum Beispiel:
PLUGIN [channel-statistics:60:14] serverId: <nil>
hier,
aber wenn ich res[0]
anzeigen lasse, dann ist es korrekterweise {"id":2,"name":...}
.
Beim auslesen mit engine.log(res[0].id)
gibt es wieder nur <nil>
zurück.
Ja bei mir verhält es sich auch komisch. Die Graphen sind gleichbleibend auch wenn keiner mehr im Channel war. Dazu wird es im Firefox echt komisch angezeigt.
ok, das problem war engine.log('serverId:', serverId);
engine.log kann nur strings anzeigen, keine Number :-1:
fix: engine.log('serverId: ' + serverId);
dann kann dbc.query keine null
Werte mehr in die Tabelle einfügen. Es scheint nur mit NaN
zu funktionieren
Und einen Bug hab ich noch gefunden: channel.description()
kann invalide UTF8 Codes enthalten, wodurch dann die query fehlschlägt
Ja bei mir verhält es sich auch komisch. Die Graphen sind gleichbleibend auch wenn keiner mehr im Channel war. Dazu wird es im Firefox echt komisch angezeigt.
Ich hab auch Firefox. Kannst du ein Screenshot machen?
Auf dem Handy sah es jetzt ok aus, ich binde erstmal alle Änderungen von dir ein und schaue mal wie es aussieht. Ich konnte gestern deine bereitgestellten js files nicht nutzen da gab's irgendwie Probleme. Mit den von mir zusammen getragen ging es dann.
Du kannst hier nachschauen wie es bei mir läuft:
Das scheint jetzt bis auf die Formatierung zu laufen. Sehr cool! Kannst du auch PNG aus den Charts erzeugen? Dann kann man die vielleicht sogar in einer Channel Description einbinden. So könnte man vielleicht mit linkzurinstallation&channelid=12 ein Bild des Charts mit der Channel-ID 12 abrufen.
Achja und Kommastellen im Graphen brauchts ja nicht bei der Y-Achse, da könnte die Skalierung noch angepasst werden.
Edit:
PLUGIN error: Error 1062: Duplicate entry '467-1' for key 'channelId'
kommt manchmal im Log des Sinusbots
Die Fehlermeldung kommt, wenn diese Zeile nix zurückgibt, obwohl eigentlich schon ein channel angelegt wurde. https://github.com/subDesTagesMitExtraKaese/sinusbot-channel-statistics/blob/1ab2f5536c43ff4c7d427f64f9ad9da88622c01c/channel-statistics.js#L132 Channeldescriptions sind schon als Tooltip drin, die würden denke ich nur reinpassen, wenn man nur einen Graphen auf einer Seite anzeigt. Statische PNGs müsste man serverseitig rendern, ansonsten wäre nur sowas wie ein screenshot-button mit `canvas.toDataURL("image/png");``möglich.
Das mit der URL ?channelID=123
ist eine coole Idee, ich setze mich mal dran :)
Ich nutze ein kleines PHP Skript was mir meinen Banner mit der Spielerzahl und Datum versieht. Gibt dazu ne Funktion in PHP. Sieht zumindest nicht all zu wild aus. Glaube es ist das https://www.php.net/manual/en/function.imagecreate.php
also brauchst du eigentlich keine png sondern nur eine anzeige für die channelauslastung?
Naja schöne Tabellen als PNG irgendwo einbinden zu können wo man halt [img] nutzen kann hat doch was :)
Ich hab mal was für clientside /channel-plot.html?channelId=9&width=800px&height=300px
und serverside /chart.php?channelId=9
zusammengeworfen. Es ist nicht perfekt und du musst zusehen, dass dir TS3 das Bild nicht einfach nur einmalig abruft und dann cached.
Wenn du eine bessere PNG-render-lib findest, dann kannst du es gerne weiter verbessern :+1:
Uii Memo guck mal :D
Das ja voll Nice, da sind wir etwas auf der Spur! Hoffentlich holt sich der TS-Client das Bild bei jedem Start, dann wäre für mich eigentlich alles save von der usability. Wenn er es cached dann rip^^
Hi,
ich habe jetzt eine connection.php erstellt und auch die flot/js scripte mit in das Verzeichnis gepackt. Jedoch bekomme ich nur eine schlichte Seite mit ein paar Channeln ohne Formatierung und keinem Graphen.
Ist das so wie du es gepushed hast lauffähig? Die .js fehlen ja z.B komplett