PDA

View Full Version : TS-Server erstellen automatisieren / Eigenes Webinterface


openFTP
08-01-2007, 14:41
moinmoin

ich bin Betreiber eines NPO-Hosters.

Die Server-Vergabe läuft zZ so ab

User meldet sich für einen Server an > Annahme / Ablehung durch ein Team-Member > Server per Hand im Interface erstellen > eMail mit Daten an den User schicken.

Wir haben uns nun gedacht, dass wir automatisch einen Server nach dem Annehmen des Antrags erstellen lassen und automatisch eine eMail an den User schicken.

Nur wissen wir nicht so ganz wie wir das anstellen sollen.

Hab an TCPquery gedacht, kenn mich damit allerdings bis jez noch 0 aus...

Gibts es irgendwo ein TUT oder Infos welches das Thema behandelt?

Danke schonmal für jede noch so kleine info ;)

ach.. das wichtigste hätte ich fast vergessen, ein user müsste auf diesem weg auch angelegt werden :)

cya
openFTP

Cyrus
08-01-2007, 15:18
Im Verzeichnis deines Server findet sich ein verzeichnis "tcpquerydocs" dort kannst du z.B. anfangen. Die Leute von TeamSpeak-Einstieg hosten soweit ich weiß auch eine deutsche Befehlsübersicht.

openFTP
08-01-2007, 15:39
thx 4 info :)

wenn man die server-infos einträgt um einen server anzulegen werden die daten per POST übermittelt


http://www.domain.com:14534/add_server.tscmd?servername=Teamspeak%20Server&serverwelcomemessage=Welcome%20to%20[TEAMSPEAK]&servermaxusers=10&CODECSPEEX24600=1&serverudpport=20xxx


per ajax könnte man sich im webinterface einloggen und einfach den link per php generieren und an das interface übermitteln, meint ein kollege.

hab mir mal die tcpquerydocs angeschaut, werd aber nicht so recht schlau daraus...

hab bis jetzt auch noch nix auf ts-einstieg finden können, bin aber noch am suchen ;)

weißt du wie ich die befehle per php an den ts-server schicken muss?

schonmal danke für deine hilfe ;)

cya
openFTP

//edit
hab die befehlsliste gefunden
http://docs.teamspeak-einstieg.de/telnet/

damit hat sich auch die frage erledigt wie man die befehle per php sendet ;)

openFTP
08-01-2007, 21:28
sorry fürs doppelposten :)

aber wir haben eine lösung gefunden :D

das zauberwort heißt "tcpquerys" , in kombination mit php einfach ein traum und wirklich easy! :)

*superhappybin* :D

nun müssen wir die teamspeak-anträge nurnoch annehmen, server-erstellung und email-versand an den "kunden" geschieht komplett automatisch :D

wünsch euch allen noch n schönen abend

cya & gn8
openFTP

openFTP
09-01-2007, 09:06
tripple^^ bekomm ich jez n keks :)

hab da ein kleines problem und ich hoffe, dass ihr mir hier helfen könnte da ihr ja nur software-support hier gebt ;)

das skript sieht so aus >


$fp = fsockopen("192.168.1.100",51233);
$results[] = fgets($fp,2084);
$commands[] = fputs($fp,"slogin user passwd\r\n");
$results[] = fgets($fp,2084);
$commands[] = fputs($fp,"serveradd $port\r\n");
$results[] = fgets($fp,2084);
$commands[] = fputs($fp,"sel $port\r\n");
$results[] = fgets($fp,2084);
$commands[] = fputs($fp,"dbuseradd $username $pw $pw serveradmin\r\n");
$results[] = fgets($fp,2084);
if ($results[0] == "OK") echo "Verbindung mit Server hergestellt... OK<br>";
else echo "Verbindung ... FAILED<br>";
if ($results[1] == "OK") echo "Einloggen .... OK<br>";
else echo "Einloggen .... FAILED<br>";
if ($results[2] == "OK") echo "Server Add ... OK<br>";
else echo "Server Add ... FAILED<br>";
if ($results[3] == "OK") echo "Port Sel ..... OK<br>";
else echo "Port Sel ..... FAILED<br>";
if ($results[4] == "OK") echo "User Add ..... OK<br>";
else echo "User Add ..... FAILED<br>";


nu mein problem :

bis zu den if-anweisungen funzt alles wunderbar.. wenn ich die if-anweisungen mit folgendem code ersetze kommt für jedes "result" ein OK zurück

foreach($results as $line)
echo $line."<br>";


mit den if-anweisungen aber klappt das nicht so wirklich da diese nicht das "OK" erkennen.... es wird immer "else" ge'echo'ed ...

weiß jemand wieso?

cya
openFTP


///EDIT

PROBLEM GELÖST!

man ersetze die IFs durch folgendes und schon klappt das :)


if (substr($results[0],1,2) == "TS") echo "<center><i><b>Verbindung zum Server hergestellt</b></i> <br><br></center>";
else echo "Verbindung ... FAILED<br>";
if (substr($results[1],0,2) == "OK") echo "<center><i><b>Einloggen erfolgreich</b></i><br><br></center>";
else echo "Einloggen .... FAILED<br>";
if (substr($results[2],0,2) == "OK") echo "<center><i><b><font size='+1'>Server mit <u>Port $port</u> erstellt</font></b></i><br><br></center>";
else echo "Server Add ... FAILED<br>";
if (substr($results[3],0,2) == "OK") echo "<center><b><i>Server $port ausgewählt</i></b><br><br></center>";
else echo "Port Sel ..... FAILED<br>";
if (substr($results[4],0,2) == "OK") echo "<center><i><b><font size='+1'>Admin angelegt <br> <u>USER: $username <br> PASS: $pw</font></u></b></i><br><br></center>";
else echo "User Add ..... FAILED<br>";


somit steht einem automatisierten server-erstellen nichts mehr im wege :D

I LOVE TEAMSPEAK :D

btw, thx ² silent vapor der mir den code gecoded hat ;)

bibabu
08-02-2007, 09:40
Hallo openFTP,

du kannst dir auchmal die libacts2 und cyts anschauen.
Libacts2 und cyts sind fertige Klassen in php für die Kommunikation mit deinem Teamspeak Server.

Vieleicht kannst du dich ja auch dazu überwinden dein Script für andere Benutzer frei zugänglich zu machen.

Ich denke das viele NPO Hoster so ein Script gut gebrauchen können.


mfg bibabu

EDIT: Cyts & libacts2 bekommst du auf http://metis.absurdcoding.org/index.html

Thomas
08-02-2007, 17:10
=> 3rd Party

Bitte beim nächsten mal auch direkts ins dafür vorgesehene Forum posten.