Author: Stefan Martens
E-Mail: info@stefan1200.de
Homepage: http://www.stefan1200.de
JavaScript muss im Browser aktiviert sein um diese Hilfe anzuzeigen.
Inhaltsverzeichnis:
Dieses Programm erweitert den Teamspeak 3 Server um einige weitere Funktionen. Hier die Liste:
- Server Gruppen können vor unerlaubten Clients beschützt werden.
- Client Namen können nach unerlaubten Wörtern oder Zeichen untersucht und ggf. gekickt werden.
- Channel Namen können nach unerlaubten Wörtern oder Zeichen untersucht und ggf. gelöscht werden.
- Untätige (Idle) Clients in einen bestimmten Raum bewegen oder vom Server werfen. In beiden Fällen bekommt dieser eine Nachricht.
- Verschickt eine Warnnachricht an untätige (Idle) Clients.
- Aufnehmende Clients in einen Raum bewegen oder vom Server werfen. In beiden Fällen bekommt dieser eine Nachricht.
- Nach kurzer Zeit können Clients mit aktivierten Abwesendheitsstatus (Away) in einen Raum bewegt werden.
Das zurück bewegen, wenn der Client nicht mehr abwesend ist, ist einschaltbar.
- Nach kurzer Zeit können Clients mit stumm geschalteten Kopfhöhrern oder Mikrofon in einen Raum bewegt werden.
Das zurück bewegen, wenn der Client nicht mehr stumm geschaltet ist, ist einschaltbar.
- Kann in Intervallen eine Textnachricht an den Server oder bestimmten Raum Chat senden.
- Jeder Client der sich mit dem Server verbindet, kann eine Willkommensnachricht bekommen.
Auch spezielle Willkommensnachrichten für bestimmte Server Gruppen möglich.
- !lastseen Chat Befehl um auszugeben, wann jemand zuletzt auf dem Teamspeak Server war.
Alles kann ausführlich eingestellt oder abgeschaltet werden.
Weitere Funktionen sind:
- Viele Bot Instanzen für verschiedene Teamspeak 3 Server in einem Bot Prozess sind nutzbar.
- Automatisches Neuverbinden wenn die Verbindung zum Teamspeak 3 Server verloren geht.
- Viele Chat Befehle ermöglichen das ändern der Einstellungen, das Neuladen der Einstellungen oder um den Bot zu beenden.
- Langsamer Modus um die Nutzung des Bots (mit eingeschränkten Funktionen) auch ohne Änderung der query_ip_whitelist.txt zu ermöglichen.
Hinweis:
Die IP Adresse von diesem Programm sollte in die Datei query_ip_whitelist.txt des Teamspeak 3 Servers hinzugefügt werden.
Ansonsten wird die Anti Spam Funktion des Teamspeak 3 Server das Programm sehr oft für einige Minuten bannen.
Falls ein Bearbeiten der query_ip_whitelist.txt nicht möglich ist, versuche in der Bot Server Konfigurationsdatei
den bot_slowmode auf 1 zu setzen. Dies verlangsamt den Bot beim Verbinden und schaltet einige Funktionen ab.
Java SE Laufzeitumgebung Version 5 oder neuer
Die neuste Version ist auf www.java.com oder http://java.sun.com/javase/downloads/index.jsp zu bekommen.
Anwender von Mac OS X 10.4 oder neuer haben es wohlmöglich bereits installiert.
Linux Anwender sollten das Paket sun-java5-jre oder sun-java6-jre (eventuell funktioniert auch openjdk-6-jre) installieren.
Auf Debian basierenden Linux Systemen: apt-get install sun-java6-jre
Das Paket gcj-jre (GNU Java) wird nicht funktionieren!
Vielleicht soll der maximale Arbeitsspeicher, den der Bot benutzen soll, begrenzt werden.
Das kann auf einem virtuellen Server nützlich sein.
Dies kann mit einem Java Befehlszeilen Argument für die Java Virtuelle Machine erledigt werden.
Wenn zum Beispiel nur 30 MB Arbeitsspeicher maximal verwendet werden soll, starte den Bot mit folgendem Argument:
java -mx30M -jar JTS3ServerMod.jar
Hinweis: Wenn ein zu niedriger Wert gewählt wird, läuft der Bot nicht oder nicht stabil.
Ich habe hierzu keine Langzeittests durchgeführt. Der Bot benötigt weniger Arbeitsspeicher,
wenn der Client Datenbank Cache deaktiviert wird und nur eine Bot Instanz verwendet wird.
Die meisten Funktionen benötigen mindestens den Teamspeak 3 Server beta 13,
aber die Funktion "record check" benötigt mindestens den Teamspeak 3 Server beta 19.
Natürlich wird auch eine Verbindung zum Teamspeak 3 Server benötigt.
Standardmäßig gibt es zwei Hauptkonfigurationsdateien, JTS3ServerMod_InstanceManager.cfg und JTS3ServerMod_server1.cfg.
Die JTS3ServerMod_InstanceManager.cfg enthält alle Informationen über Bot Instanzen die gestartet werden sollen.
Die JTS3ServerMod_server1.cfg enthält alle Bot Einstellungen einer Instanz.
Beide Konfigurationsdateien sollten nach eigenem Wunsch geändert werden. Alles ist direkt in den Dateien erklärt.
Auf jedenfall sollte beachtet werden das beide Dateien im ANSI Format (Kodierung ISO-8859-1) gespeichert werden.
Wichtig: Alle anderen Konfigurationsdateien (wie die advertising, record, idle und welcome Texte)
werden standardmäßig im Unicode (UTF-8 ohne BOM) Format gespeichert. Dies kann in der Hauptkonfigurationsdatei geändert werden.
Dies ist ein Kommandozeilen Programm, es benötigt also eine Shell um Informationen anzuzeigen.
Natürlich funktioniert es auch ohne aktives Shell Fenster, alle Informationen werden auch in die Log Datei geschrieben.
Unter Windows kann die cmd.exe benutzt werden. Linux Anwender können dieses Programm auch ohne X-Server verwenden.
Wird ein X-Server verwendet, sollte dieses Programm in der Terminal / Shell gestartet werden.
Mac OS X Anwender sollten ebenfalls die Terminal verwenden.
Wenn sich die JTS3ServerMod.jar und der config Ordner (welche die Datei JTS3ServerMod_InstanceManager.cfg enthält)
im selben Verzeichnis befinden, kann die Server Modifikation einfach durch folgende Eingabe gestartet werden:
java -jar JTS3ServerMod.jar
Sollen sich die Dateien JTS3ServerMod_InstanceManager.cfg und JTS3ServerMod_InstanceManager.log an einem anderen Ort befinden
oder einen anderen Dateinamen haben, dann kann das Argument -config und -log verwendet werden, hier ein Beispiel:
java -jar JTS3ServerMod.jar -config cfg/instance.cfg -log log/instance.log
Ein anderes Argument ist -help, welches lediglich eine Liste der Kommandozeilenargumente ausgibt und sich dann beendet.
Stelle sicher das der Bot über folgende Rechte verfügt (in Klammern steht immer, wofür das Recht benötigt wird):
b_virtualserver_channel_list (Immer benötigt)
b_virtualserver_client_list (Immer benötigt)
b_virtualserver_client_dblist (Client Datenbank Cache)
b_channel_delete_permanent (Ungültige Channelnamen Überprüfung)
b_channel_delete_semi_permanent (Ungültige Channelnamen Überprüfung)
b_channel_delete_temporary (Ungültige Channelnamen Überprüfung)
b_channel_delete_flag_force (Ungültige Channelnamen Überprüfung)
i_group_member_remove_power (Server Gruppen Schutz)
i_group_member_add_power (Server Gruppen Schutz)
i_client_modify_power (Server Gruppen Schutz)
i_client_kick_power (Mehrere Funktionen)
i_client_move_power (Mehrere Funktionen)
i_client_complain_power (Mehrere Funktionen, wenn der "Beschwerdeeintrag" aktiviert wurde)
i_client_poke_power (Mehrere Funktionen wenn "poke" als Benachrichtigungstyp verwendet wird)
i_client_private_textmessage_power (Immer benötigt)
b_client_channel_textmessage_send (Werbenachrichten)
b_client_server_textmessage_send (Werbenachrichten)
b_virtualserver_select (Zum Verbinden)
Eventuell benötigt für zukünftige Versionen:
b_virtualserver_info_view
Die "Guest Server Query" Gruppe benötigt außerdem:
b_serverquery_login (Zum Verbinden)
Es können verschiedene Mitteilungsarten für die meisten Funktionen beim Bot ausgewählt werden,
prüfe dafür die Standard JTS3ServerMod_server1.cfg Datei.
Derzeit sind die Werte chat und poke gültig, bei einigen Funktionen ebenfalls none um die Mitteilung zu deaktivieren.
Basierend auf den Teamspeak 3 Server gibt es maximal Längen für diese Mitteilungen,
es können lediglich 100 Zeichen für poke Mitteilungen verwendet werden,
einschließlich Leerzeichen und BBCode. Chat Mitteilungen haben ein viel höheres Limit von 1024 Zeichen,
ebenfalls einschließlich Leerzeichen und BBCode. Diese Grenzen sollten unbedingt beachtet werden,
ansonsten kann der Bot keine Mitteilungen verschicken und man wird eine Fehlermeldung in der Logdatei vom Bot vorfinden.
Eine Lösung ist die Verwendung von screen.
Auf Debian basierenden Linux Systemen kann screen wie folgt installiert werden (wenn nicht bereits vorhanden):
apt-get install screen
Nach dem man das gemacht hat, mit cd in den JTS3ServerMod Ordner wechseln und starte folgenden Befehl:
screen -d -m -S ts3bot java -jar JTS3ServerMod.jar
Nun wird der Bot in einem speziellen Shell Screen mit dem Namen ts3bot ausgeführt.
Um den Shell Screen mit dem Namen ts3bot zu öffnen, um vielleicht die Ausgabe vom Bot zu lesen,
einfach folgenden Befehl ausführen:
screen -r ts3bot
Um einen geöffneten Shell Screen zu schliessen ohne den Bot zu beenden, einfach folgende Tastenkombination drücken:
CTRL + A + D
Seit der Version 1.0 ist es möglich einige Bot Befehle im Chat auf dem Teamspeak 3 Server zu verwenden.
Es kann der Server-, Kanal- oder Privatchat verwendet werden. Natürlich muss man für den Kanalchat im selben Kanal sein.
Es sind zu viele Befehle um diese hier alle aufzulisten. Schreibe einfach !bothelp in den Server-, Kanal- oder Privatchat.
Dies gibt eine Liste aller Befehle aus. Um zu prüfen ob der Bot läuft, kann auch einfach !botinfo eingegeben werden.
Um Bot Admin zu sein, muss die Einzigartige ID vom Client in der Bot Konfigurationsdatei angegeben werden.
Seit der Bot Version 3.1 sind zwei verschiedene Bot Admins möglich.
Die "Full Admins" werden in der Datei JTS3ServerMod_InstanceManager.cfg eingestellt,
normale Bot Admins werden in jeder Bot Instanz Konfigurationsdatei bei jedem Server eingestellt.
"Full Admins" können alle Bot Befehle bei jeder Bot Instanz verwenden.
Normale Bot Admins sind auf die eigene Bot Instanz limitiert und können folgende Befehle gar nicht verwenden:
!exec, !execwait, !botquit, !botinstancelist, !botinstancestart, !botinstancestop
Im Normalfall ist der Bot unsichtbar auf dem Teamspeak 3 Server, weil es nur ein Telnet Client und
kein echter Teamspeak 3 Client ist. Mit den Standard Rechten ist es einfach den Bot für
Teamspeak 3 Server Administratoren sichtbar zu machen.
Dazu öffne einfach im Teamspeak 3 Client die Einstellungen -> Optionen und wechsel auf die Seite
Anwendung (der erste Eintrag oben). Hier aktiviere die Einstellung "ServerQuery Clients anzeigen".
Nun sollte der Bot im Teamspeak 3 Client sichtbar sein. Falls nicht, prüfe die Rechte,
wie im nächsten Absatz beschrieben.
Wenn es auch anderen Server Gruppen erlaubt sein soll den Bot zu sehen, füge einfach das Recht
i_client_serverquery_view_power zu dieser Gruppe hinzu.
Verwende einen höheren Wert als die i_client_needed_serverquery_view_power vom Bot.
Jeder Client muss natürlich ebenfalls die Einstellung in den Teamspeak 3 Client Einstellungen tätigen.
Dieses Programm erstellt eine Log Datei mit dem Dateinamen JTS3ServerMod_InstanceManager.log.
Die Log Datei des InstanceManager enthält Informationen und Fehler bezüglich des Starten und Stoppen von Bot Instanzen.
Jede Bot Instanz erstellt ebenfalls eine eigene Log Datei, dies kann in der JTS3ServerMod_InstanceManager.cfg
für jede Bot Instanz eingestellt werden. Die Log Datei von der Bot Instanz protokolliert alle Aktionen
auf dem Teamspeak Server und natürlich auch alle Fehler die dabei auftreten können.
Dieses Programm darf kostenlos verwendet werden, aber bitte informiere mich, wenn ein Fehler gefunden worden ist.
Der Autor von diesem Programm ist nicht verantwortlich für jede Art von Schäden oder Datenverlust!
Es ist nicht erlaubt dieses Programm zu verkaufen, es muss frei erhältlich sein!
Teamspeak 3 wird entwickelt von TeamSpeak Systems GmbH, Verkauf und Lizensierungen durch Triton CI & Associates, Inc.
Weitere Informationen zu Teamspeak 3: http://www.teamspeak.com
Ein Danke für das Einsenden von Fehlermeldungen und Vorschlägen, und das Testen neuer Funktionen geht an:
- BoKo
- Corba
- DaRkBoZ
- DarRoe
- Heiko
- HoschY1987
- MajorThorn
- mastermax
- Megamaluco
- Slater
- sojakfa
- St3v3
- tigerle
- TotoIsBack
Liste in Alphabetischer Reihenfolge.
Die Änderungen sind nur in englischer Sprache in der readme.html aufgeführt.