Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Stefan1200

#976
Since it is useless, I will not add this. ;-)
#977
Just use Channel Groups for this. You can have one channel group at the time, but you can have different channel groups in different channels!

But in fact you only need one single channel group:
"Channel Join" with channel_join_power X. In every private channel where a client should be able to join, you have to add this client to this channel group for this channel. It do exactly what you want.
#978
Quote from: WeHostYou on September 18, 2016, 08:39:30 PM
Stefan hatte jetzt die Lösung für mich. Ich habe im MySQL die Bindung von der externen IP auf die 0.0.0.0 umgestellt. Danach hat der Bot problemlos gestartet.
Jetzt frage ich mich aber warum das vor dem Update funktioniert hatte? Ich hatte beim Update nämlich keinerlei Konfigurationen im Server geändert.
Und eine weitere Frage: Wenn der MySQL-Server vorher nur an die externe IP des Servers gebunden war, warum konnte dann das Webinterface damit arbeiten und diverse andere Dienste? Denn auch das WI ist auf demselben Server und arbeitet dementsprechend über localhost.

Ich habe schon Stunden mit dem "Communications link failure" Fehler verbracht. Nach langem googeln habe ich dann irgendwann rausgefunden, das JDBC mit MySQL auf einem anderen Weg kommuniziert, als PHP. Tatsächlich muss die externe IP nicht auf 0.0.0.0 stehen, wenn alles nur über 127.0.0.1 eine Verbindung aufbaut. Wichtiger ist aber, das dort was eingetragen ist bei bind-address. bind-address = 127.0.0.1 müsste dann auch funktionieren.
#980
@ WeHostYou: Bitte folgenden Beitrag lesen: https://www.stefan1200.de/forum/index.php?topic=448.0
Am Wahrscheinlichsten ist dein Problem der Punkt mit dem bind-address Attribut, da PHP dann funktioniert, aber JDBC nicht.

@ Flofus: Die Meldung hat nichts mit dem MySQL Benutzer zu tun, diese Meldung kommt bereits beim Verbindungsversuch mit der Datenbank.
Und die Zeile:
2016-09-17 19:43:10   QUIT_MANAGER   InstanceManager config file at "/root/JTS3ServerMod_HostingEdition/config/JTS3ServerMod_InstanceManager.cfg" does not exists, is not valid or an error while connecting to the database occurred, quitting now...
Kommt immer, wenn es beim Laden bei der Konfiguration einen Fehler gab, darunter fällt auch die Datenbank Verbindung, wie am Ende von dieser Zeile zu lesen ist. Mit der JTS3ServerMod_InstanceManager.cfg ist alles in Ordnung.
#981
Neu machen ist bei MySQL Fehlermeldungen nie die Lösung, da du den Fehler beim MySQL Server damit aber nicht löst.

Bitte poste hier doch mal die Logdatei.
#982
Allgemeine Diskussionen / Re: Befehl mit argumenten
September 16, 2016, 04:17:41 PM
Quote from: Darkandro on September 16, 2016, 03:46:29 PM
Ich habs jetzt hinbekommen. Danke dennoch. Ich frag einfach eine Passage mit substinrg ab.  ;)

Klar, substring, indexof und split sind deine Freunde. Anders mache ich das in meinen Funktionen auch nicht. ;-)
#983
Allgemeine Diskussionen / Re: Befehl mit argumenten
September 16, 2016, 11:54:52 AM
Quote from: Darkandro on September 16, 2016, 11:34:45 AM

Bei dem Beispiel ist kein Befehl mit dynamischen Argument.

Ich möchte, dass wenn man dem Bot schreibt !gaming <spiel>, dass der Bot das Argument <spiel> auswertet

Klar, der Auto Kick Timer hat ein Chat Befehl mit dem Argument time
#984
Allgemeine Diskussionen / Re: Befehl mit argumenten
September 15, 2016, 08:21:38 PM
Quote from: Darkandro on September 15, 2016, 08:03:33 PM
Das Event "notifyclientleftview" gibt mir keine UniqueID

Habe mal in meine Notizen geguckt, du hast recht. Aber du kannst dir ja theoretisch alle X Sekunden eine Clientlist von der JTS3ServerMod Klasse abfragen und die bei einem notifyclientleftview nach der clid durchsuchen.
#985
Allgemeine Diskussionen / Re: Channel Creator
September 15, 2016, 08:18:59 PM
Quote from: LatroX on September 15, 2016, 07:07:58 PM
Braucht man doch nur übernehmen, ist doch beides Java / Javascript oder?
Kenn mich da leider nicht so aus.

So einfach ist das nicht, beide Bots haben ja komplett unterschiedliche Schnittstellen. Da ist das neu programmieren einfacher.
#986
Allgemeine Diskussionen / Re: Befehl mit argumenten
September 15, 2016, 03:40:20 PM
Quote from: Darkandro on September 15, 2016, 03:15:17 PM
Dafür benötige ich aber die Datenbank ID und wird von den Disconnect-Event nicht übergeben. Ich habe schon alles mögliche probiert nur noch keine Lösung gefunden.

Die Unique ID hast du aber. Damit kann man arbeiten. Falls du das in einem JTS3ServerMod Plugin benötigst, liefert der JTS3ServerMod eine API dafür mit. Schaue dir mal die Doku an: https://www.stefan1200.de/documentation/jts3servermod/Plugin_API/de/stefan1200/jts3servermod/interfaces/ClientDatabaseCache_Interface.html
Zum Beispiel: getDatabaseID(String clientUniqueID)
Mit der Database ID kannst du dann in dieser Klasse auch andere Dinge direkt abfragen, ohne an den TS3 Server gehen zu müssen (falls der Cache aktiv ist, sonst macht die Klasse das Online, wenn möglich).
#987
Allgemeine Diskussionen / Re: Befehl mit argumenten
September 15, 2016, 03:08:17 PM
Quote from: Darkandro on September 15, 2016, 12:55:05 PM
Wie kann ich dann die DBID von einem Client bekommen, wenn dieser sich ausloggt??

ClientInfo geht nur bei Clients, die gerade online sind. Deswegen nur ClientID. Die ClientDBInfo geht auch von offline clients, enthält aber weniger / andere Informationen.
https://www.stefan1200.de/documentation/jts3serverquery/de/stefan1200/jts3serverquery/JTS3ServerQuery.html#INFOMODE_CLIENTDBINFO
#988
Allgemeine Diskussionen / Re: Befehl mit argumenten
September 15, 2016, 12:09:00 PM
Quote from: Darkandro on September 15, 2016, 07:23:17 AM
Edit2: Warum bekomme ich hier die Fehlermeldung?
Die beiden 8en sind nur Debug
ServerQuery Error 512: invalid clientID 8 8

"Invalid ClientID" ist eine Fehlermeldung, die vom TS3 Server kommt. D.h. der Client mit der Client ID, die du übergeben hast, ist aktuell nicht mehr online.
#989
Allgemeine Diskussionen / Re: Befehl mit argumenten
September 15, 2016, 06:13:55 AM
Quote from: Darkandro on September 14, 2016, 09:12:22 PM
Und wie mach ich dann den Zeilenumbruch?


queryLib.doCommand("channeledit cid=189 channel_description=" + queryLib.encodeTS3String("My Description test"));


Fehler:

java.lang.NullPointerException
at java.util.concurrent.ConcurrentHashMap.hash(ConcurrentHashMap.java:333)
at java.util.concurrent.ConcurrentHashMap.putIfAbsent(ConcurrentHashMap.java:1145)
at java.lang.ClassLoader.getClassLoadingLock(ClassLoader.java:464)
at java.lang.ClassLoader.loadClass(ClassLoader.java:405)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at de.stefan1200.jts3servermod.JTS3ServerMod.c(Unknown Source)
at de.stefan1200.jts3servermod.JTS3ServerMod.b(Unknown Source)
at de.stefan1200.jts3servermod.JTS3ServerMod.b(Unknown Source)
at de.stefan1200.jts3servermod.i.run(Unknown Source)
at java.lang.Thread.run(Thread.java:745)



Ganz normal in Java:

queryLib.doCommand("channeledit cid=189 channel_description=" + queryLib.encodeTS3String("My Description test\nIch bin die zweite Zeile"));



Was steht zusammen mit der NullPointerException in der Logdatei? Sicher, das du die Mainclass im JAR Manifest hinzugefügt hast?
#990
Allgemeine Diskussionen / Re: Befehl mit argumenten
September 14, 2016, 09:08:45 PM
Quote from: Darkandro on September 14, 2016, 08:59:07 PM
wenn ich \s \n oder so verwende kommt invalid escape sequence

Das macht doch encodeTS3String(String str) alles für dich.