Bot erstellen

Das erstellen des Bots ist eigentlich sehr simple. In diesem Bild siehst eine Hilfestellung.

Whiteliste unsere IP

Solange die IP nicht in die Whitelist deines Teamspeaks eingetragen ist musst du den Bot auf langsamen Modus -JA- stellen. Wenn du dieses nicht machst wird der Bot laufend gebannt, zudem kannst du nicht alle Funktionen nutzen und die Logs erzeugen einiges an Fehlern. Grundsätzlich ist das nicht eintragen in die Whitelist und das falsche wählen des Modus der häufigste Fehlergrund. Wir empfehlen daher dringend –  damit der TS3Securitybot einwandfrei läuft sollte die IP des Bots in der Teamspeak Whitelist eingetragen sein. Du hostest dein Teamspeak selbst Wenn du dein Teamspeak selbst auf Root- oder V-Server hostest hast musst du die IP 173.249.29.79 in die Query_ip_whitelist.txt deines Teamspeaks eintragen und den Server einmal neu starten. Vergesse nicht nach der eingetragenen IP einmal mit Enter eine neue Zeile zu erzeugen, wenn du dieses vergisst wird die letzte IP nicht gelesen. Du kannst beim erstellen des Bots nun den vom Teamspeak generierten Admin Server Query mit entsprechenden Passwort verwenden (Passwort vergessen – hier eine Anleitung zum Ändern: >> klick << ) . Der Admin-Query hat automatisch alle benötigten Rechte. Alternativ kannst auch du dir im Teamspeak unter ⇒Extras ⇒Query-Login einen Query erstellen und verwenden. Wichtig: Wenn du im Teamspeak einen Query Login generiert hast und verwendest musst der Gruppe Guest Server Query die permission b_serverinstance_permission_list noch geben. Dieses Recht ist automatisch nicht vergeben und wird vom Bot benötigt, um eine genauere Fehlermeldung auszugeben, falls ein Befehl wegen fehlender Rechte nicht abgesetzt werden konnte. Ohne dieses Recht wird der Bot Fehler in den Logs anzeigen. Mit einem Tool wie YaTQA dürfte das kein Problem sein. Solltest du den normalen Admin Server Query verwenden brauchst du nichts zu machen, dieser hat alle nötigen Rechte. Du hast dein Teamspeak bei einem Hoster gemietet Wenn du dein Teamspeak gemietet hast muss der Hoster die IP in die Whitelist eintragen, du selbst kannst es nicht. Nutze einfach die Vorlage zum eintragen z.B. in das Ticketsystem: Sehr geehrte Damen und Herren, wir möchten den JTS3Servermod als Securitybot in unserem Teamspeak verwenden und bitten daher um Eintragung der IP 173.249.29.79 in die Whitelist unseres Teamspeaks. Ebenfalls bitten wir um Überprüfung ob der Guest-Query-Admin die Permission b_serverinstance_permission_list besitzt. Dies wird lediglich benötigt, um eine genauere Fehlermeldung auszugeben, falls ein Befehl wegen fehlender Rechte nicht abgesetzt werden konnte. Ohne diese Permission werden Fehler in den Logs des JTS3Servermod erzeugt. Mit freundlichen Grüssen


Einstellung beim Teamspeakhoster 4netplayers

Bei einigen Hostern kann keine Whitelistung erfolgen. Dazu gehört unter anderem 4netplayers, die nach Rücksprache aus Sicherheitsgründen keinen Eintrag in die Whiteliste zulassen und ebenfalls die oben beschriebenen Rechte nicht einrichten. In diesem Falle müsst ihr unbedingt in den Einstellungen des Bots unter ->Verbindungsdaten ->Langsamer Modus auf JA stellen, damit ihr diesen Bot nutzen könnt! Solltet ihr dieses nicht machen, werden wir euren Bot ohne jegliche Rücksprache löschen und deinen Account dauerhaft bannen.


Benötigte Rechte für den Bot

Wenn der Serveradmin Query Account verwendet wird, sind bereits alle Rechte gesetzt. Selbst erstellte Query Accounts könnten weitere Rechte benötigen, selbst wenn diese in der Server Admin Gruppe sind. Stelle sicher das der Query Account vom Bot über folgende Rechte verfügt (in Klammern steht immer, wofür das Recht benötigt wird):

  • b_channel_delete_flag_force (Ungültige Channelnamen Überprüfung)
  • 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_join_ignore_password (Erlaube das Betreten aller Channel)
  • b_channel_join_permanent (Erlaube das Betreten aller Channel)
  • b_channel_join_semi_permanent (Erlaube das Betreten aller Channel)
  • b_channel_join_temporary (Erlaube das Betreten aller Channel)
  • b_channel_modify_name (Ungültige Channelnamen Überprüfung)
  • b_client_channel_textmessage_send (Werbenachrichten)
  • b_client_ignore_sticky (Falls mit Sticky Gruppen gearbeitet wird)
  • b_client_info_view (Willkommensnachricht)
  • b_client_remoteaddress_view (Für die Anzeige der IP Adresse)
  • b_client_server_textmessage_send (Werbenachrichten)
  • b_group_is_permanent (Der Bot bleibt Mitglied dieser Gruppe nach dem Neuverbinden)
  • b_virtualserver_channel_list (Immer benötigt)
  • b_virtualserver_channelgroup_client_list (Chat Befehl !removechannelgroups)
  • b_virtualserver_client_dbinfo (Einige Chat Befehle)
  • b_virtualserver_client_dblist (Immer benötigt)
  • b_virtualserver_client_dbsearch (Einige Chat Befehle)
  • b_virtualserver_client_list (Immer benötigt)
  • b_virtualserver_info_view (Immer benötigt)
  • b_virtualserver_notify_register (Immer benötigt)
  • b_virtualserver_notify_unregister (Immer benötigt)
  • b_virtualserver_servergroup_list (Immer benötigt)
  • i_channel_join_power (Erlaube das Betreten aller Channel)
  • i_channel_modify_power (Ungültige Channelnamen Überprüfung)
  • i_client_complain_power (Mehrere Funktionen, wenn der „Beschwerdeeintrag“ aktiviert wurde)
  • i_client_kick_from_channel_power (Ungültige Channelnamen Überprüfung)
  • i_client_kick_from_server_power (Mehrere Funktionen)
  • i_client_move_power (Mehrere Funktionen)
  • i_client_permission_modify_power (Server Gruppen Schutz)
  • i_client_poke_power (Mehrere Funktionen, wenn „poke“ als Benachrichtigungstyp verwendet wird)
  • i_client_private_textmessage_power (Immer benötigt)
  • i_group_member_add_power (Server Gruppen Schutz)
  • i_group_member_remove_power (Server Gruppen Schutz)

Die „Guest Server Query“ Gruppe benötigt außerdem:

  • b_serverquery_login (Zum Verbinden)
  • b_virtualserver_select (Zum Verbinden)

Zusätzliche optionale Rechte, vergebe es entweder an den Query Account vom Bot oder an die „Guest Server Query“ Gruppe. Wenn es an die „Guest Server Query“ Gruppe vergeben wird, gilt es für alle virtuellen TS3 Server:

  • b_serverinstance_permission_list (Anzeige der fehlenden Rechte Namen in der Log – oben bereits erklärt)

Sichtbarkeit vom Bot im Teamspeak

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 Favoriten -> Favoriten verwalten -> wähle den entsprechenden Server aus und klicke, falls nicht bereits geschehen, auf Mehr. 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.


Verschiedene Mitteilungsarten

Es können verschiedene Mitteilungsarten für die meisten Funktionen beim Bot ausgewählt werden. Derzeit sind die Werte chat und poke gültig. 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 1023 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. Wenn eine Nachricht als Kickgrund verschickt wird, so darf der Kickgrund nicht mehr als 80 Zeichen beinhalten.


Globale Variablen für Texte

Wenn dies in der Bot Konfiguration aktiviert ist, können folgende globale Variablen für alle Texte verwendet werden:

    • %SERVER_NAME% – Server Name
    • %SERVER_PLATFORM% – Server Betriebssystem (Windows, Linux, …)
    • %SERVER_VERSION% – Server Version
    • %SERVER_CREATED_DATE% – Server Erstellungsdatum
    • %SERVER_UPTIME% – Server Uptime in Tagen, Stunden, …
    • %SERVER_UPTIME_DATE% – Server Uptime als Datum
    • %SERVER_UPLOAD_QUOTA% – Server Upload Quota
    • %SERVER_DOWNLOAD_QUOTA% – Server Download Quota
    • %SERVER_MONTH_BYTES_UPLOADED% – Menge hochgeladender Daten im aktuellen Monat (Dateitransfer und Avatar)
    • %SERVER_MONTH_BYTES_DOWNLOADED% – Menge heruntergeladender Daten im aktuellen Monat (Dateitransfer und Avatar)
    • %SERVER_TOTAL_BYTES_UPLOADED% – Menge hochgeladender Daten insgesamt (Dateitransfer und Avatar)
    • %SERVER_TOTAL_BYTES_DOWNLOADED% – Menge heruntergeladender Daten insgesamt (Dateitransfer und Avatar)
    • %SERVER_MAX_CLIENTS% – Maximale Clients (Slots)
    • %SERVER_RESERVED_SLOTS% – Reservierte Slots
    • %SERVER_CHANNEL_COUNT% – Aktuelle Channel Anzahl
    • %SERVER_CLIENT_COUNT% – Aktuelle Client Anzahl
    • %SERVER_CLIENT_DB_COUNT% – Vollständige Client Anzahl in der TS3 Datenbank
    • %SERVER_CLIENT_CONNECTIONS_COUNT% – Server Client Verbindungen Anzahl

Die meisten Server Informationen werden nicht sofort aktualisiert, dies geschieht alle 60 Sekunden. Wenn diese Variablen nicht benötigt werden, sollten diese in der Bot Konfiguration abgeschaltet werden, um die dafür benötigte Leistung einzusparen!


Eine Hilfeseite für die einzelnen Funktionen des Bots folgt.