Example: ConnectToTeamspeak

  • Difficulty: Very easy


    Note: A newer version of this plugin is available!


    This is basically a very simple plugin: Once a player types "/ts" into chat, he will be connected to a TeamSpeak server (you have to set the ip and port in the plugin).

  • Hmm sorry red51 aber wo und wie soll ich meine ip für ts3 eintragen.da ist keine txt oder sowas eingetragen so wie bei dem gästebuch.


    mfg Rana

    Wier Die Ausgestossenen


    TS3: 78.31.64.46 - Gameserver: CS:S 78.31.64.46:27015 - RW: IPV6: [2001:4ba0:babe:1575::]:26015

  • Hallo
    Galveston01


    schön das du mir antwortest aber so weit war ich auch schon es sind 2 dateien die eine die fertig compeliert ist und die andere muss mann compelieren da ich aber nicht compelieren kann/will sollte so eine txt datei dabei sein so wie oben schon beschrieben danke

    Wier Die Ausgestossenen


    TS3: 78.31.64.46 - Gameserver: CS:S 78.31.64.46:27015 - RW: IPV6: [2001:4ba0:babe:1575::]:26015

  • So hab mal eine überarbeitete jar hochgeladen.
    In einer Datei Config.txt können 4 verschiedene Parameter übergeben werden: ip, port, channel und message
    die Datei könnte dann beispielsweise so aussehen:

    Code
    ip:172.16.40.60
    port:5560
  • Hmm sorry red51 aber wo und wie soll ich meine ip für ts3 eintragen.da ist keine txt oder sowas eingetragen so wie bei dem gästebuch.

    Also das Problem ist im Grunde, dass diese Beispielplugins in erster Linie als Programmierbeispiele dienen sollen. Der Hintergrund bei diesem Plugin war gewesen, ein sehr einfaches Plugin anzubieten, was wirklich nur einen sehr rudimentären Aufbau hat, ohne irgendein extra Geschnörkel :D Das Auslesen aus einer Datei ist zwar nicht sonderlich kompliziert (zumal die API dafür einfache Hilfsfunktionen anbietet), würde den Aufbau dieses Plugins aber etwas verkomplizieren.
    D.h. man müsste tatsächlich, wie @Galveston01 schon sagt, die Codezeile (Zeile 65) player.connectToTeamSpeak("127.0.0.1", 1234, "Gaming/Rising World"); abändern und durch die eigene IP, Port und Channel ersetzen, und das Projekt anschließend kompilieren. Aber dass @Galveston01 eine angepasste Version ja bereits gepostet hat (Danke @Galveston01 für deinen Beitrag! :) ) ist natürlich umso besser ^^

  • Moin ;D


    Schau mal in den Ordner src --> net --> risingworld --> api --> example --> ts


    da ist eine datei drinne, wo du ganz unten die Ip und Port eintragen kannst. Dann muss das Plugin nur noch kompilieren und in den Plugins ordner schieben, sollte dann funzen ;D


    Aber denke das mit der Textdatei auslesen ist ein wenig leichter ;D da würde mich der Quelltext sehr intressieren ;D


    Sehe grade, der gute Galaveston war da ziemlich schnell ;D

  • Danke Galveston01 und den rest


    es geht mit der Config.txt habe aber erst das c klein gehabt da ging es nicht aber mit dem grossen gehts ;)



    bis zum nechsten mal ;)

    Wier Die Ausgestossenen


    TS3: 78.31.64.46 - Gameserver: CS:S 78.31.64.46:27015 - RW: IPV6: [2001:4ba0:babe:1575::]:26015

    Edited once, last by Ranaarvalis ().

  • So hab mal eine überarbeitete jar hochgeladen.
    In einer Datei Config.txt können 4 verschiedene Parameter übergeben werden: ip, port, channel und message
    die Datei könnte dann beispielsweise so aussehen:

    Code
    ip:172.16.40.60
    port:5560

    Dürfte ich den Code sehen um zu schauen wie das geht das man etwas über eine extra Datei einbindet?

  • Das Guestbook-Plugin enthält ein Beispiel, wie etwas aus einer Datei ausgelesen werden kann, wenngleich das Beispiel etwas umfangreicher ist (da alle Eventualitäten abgedeckt werden, also geprüft wird, ob der Text in der Textdatei das richtige Format hat, es sich um Zahlen handelt etc).


    Um ganz simpel den Inhalt einer Datei zu erhalten, kann die Hilfsklasse "Utils.FileUtils" herangezogen werden: Diese bietet statische Methoden (d.h. sie sind von überall aus aufrufbar), um bspw. Dateien einzulesen, etwas in eine Datei zu schreiben oder Md5 Checksummen zu erstellen. Mit Utils.FileUtils.readStringFromFile(file) kann ein String aus einer Datei gelesen werden. Also Parameter muss man die entsprechende "File" mitgeben. Beispiel:

    Java
    //Zugriff auf eine Datei "test.txt" im Pluginordner,
    //getPath() liefert den Pfad in den Pluginordner zurück
    File file = new File(getPath() + "/test.txt");
    //Text auslesen
    String text = Utils.FileUtils.readStringFromFile(file);
    //In "text" steht nun der gesamte Text aus der Datei


    Mit den Grund-String-Funktionen wie split(), contains(), startsWith(), matches(), equals() und/oder substring() kann der String dann überprüft und manipuliert werden (zB wenn mehrere Zeilen eingelesen werden usw).

  • Ok I am not the Java Programmer but I tried to load the APIs.jars and add my Teamspeak address and compile the TS example. It compiled with no errors but then I put it on my server I cannot connect.


    Any way to make this a bit easier with an admin command to add the TS address and port without having to be a programmer? I mean without me being a programmer... not whoever saves my but on this frustration. :/

Participate now!

Don’t have an account yet? Create a new account now and be part of our community!