discontinued - hier wird nicht mehr weitergearbeitet

 

Expect Skripte für Teamspeak 2

Vorraussetzungen

messageallforusers

Dies ist nicht mein erstes Skript, aber das erste vernünftige.
Es sammelt Informationen über die User auf mehreren TeamSpeak-prozessen und schreibt diese in die Statuszeile der Klienten. So sieht das z.B. bei mir aus:

[16:28:50] *==>* : Nutzer auf diesem Server: 6 
[16:28:50] *==>* : Dieser TeamSpeak Prozess beherbergt z.Zt. 73 Nutzer auf 3 Servern insgesamt: 
[16:28:50] *==>* : Auf diesem InternetServer sind insgesamt 92 Nutzer 
[16:28:50] *==>* : Diese Meldung kommt per telnet von einem expect-Skript.  Wer's haben will, kann Hede fragen. 
[16:28:50] *==>* : root sponsored by 08/15.Gaming dod -> main server: teamspeak://85.214.33.131:8767/ 
[16:28:50] *==>* : Provisorisches Forum vorerst unter http://85.214.33.131/ bzw. http://h699871.serverkompetenz.net/ erreichbar

Der Text ist natürlich frei veränderbar. Shell-skript halt ;-)

Ach ja: es ist mehr als "DEMO" gedacht. Wirklich professionell ist es ganz bestimmt nicht und ich wollte damit auch mehr expect/tcl/tp und TS2-TCPQuerys kennenlernen als ein professionelles Produkt liefern. Wie wenig fertig das Script ist, sieht man hier mal anhand einer Liste von ToDos bzw. Bugs:

Download: messageallforusers erste Version (einzelne, gzip-gepackte Datei)
Normalerweise erkennt der Browser, dass es sich um eine Textdatei handelt, die er selbst entpacken und anzeigen kann. Einfach auf üblichem Weg speichern.

Installation:
Vorab: es sind keine root-Rechte erforderlich! Irgendein unpreviligierter Nutzer tut's auch!
Die Datei in einem Verzeichnis entpacken.
Dann mit einem Editor öffnen und nach Zeilen, die mit "# ..." beginnen suchen, um diese anzupassen.
zum testen nun einfach mit "expect messageallforusers.exp" aufrufen.
Falls es wie gewünscht läuft und ein cron-Paket installiert ist, nun mit "crontab -e" die crontab öffnen und z.B. folgende Zeile eintragen:
0,20,40 * * * * /usr/bin/expect /home/ts/expect/messageallforusers.exp >> /home/ts/expect/messageallforusers.cron.log
Dieses Beispiel für cron sorgt dafür, dass das Skript alle 20 Minuten ausgeführt wird. Falls keine logs benötigt werden, auf /dev/null weiterleiten, da cron (falls ordentlich installiert) die Ausgabe des Skriptes sonst immer per Email versendet - nervig! ;-)
Pfade sind natürlich anzupassen.

zum Schluss

Für Kritik und Anregung bin ich jederzeit zu haben :-)  
 
 

Kontakt: Michael Heide <michael.heide@student.uni-siegen.de>
Lizenz: Public Domain

Valid HTML 4.01!