Mit cyts.class.php TeamSpeak Subserver anzeigen

nfsmw15

Mitglied
Wie kann ich mit cyts.class.php Subserver anzeigen lassen?
Also auf der Seite von CYTS-DELTA ahbe ich das: serverList gefunden aber jetzt weiß ich nicht wie ich das in eine PHP Datei schreiben soll das mir die Subserver ausgegeben werden und kann man auch gleichzeitig den Status ermitteln?
 
Zuletzt bearbeitet:
Ja habe ich. Aber habe immer eine fehler meldung bekommen weil ich das falsch eingebaut habe. Kannst du mir mal bitte das Script Posten?
 
PHP:
<pre>
<?php

$ip = 'xxx';
$port = 'xxx';

function tsCheckStatus($ip, $port)
{
  if(@fsockopen('udp://'.$ip, $port, $errno, $errstr, 1) === false)
  {
    return false;
  }
  return true;
}

require_once('cyts.class.php');

$ts = new cyts;

$ts->connect($ip, $port);

$info = $ts->info_serverList();
$subs_cnt = count($info);
print '<b>Subserver:</b><br>';

for($i = 0; $i < $subs_cnt; $i++)
{
  $ts->select($info[$i]);

  $subserver = $ts->info_serverInfo();
  print 'Name: '.$subserver['server_name'].'<br>';
  print 'Benutzer: '.$subserver['server_currentusers'].'<br>';
  print 'Status: '.( tsCheckStatus($ip, $subserver['server_udpport']) ? 'Online' : 'Offline' ).'<br>';  
}
$ts->disconnect();

?>
</pre>

Dauert natürlich etwas länger durch die Kommunikation mit dem Server und bei jedem die fsockopen Prüfung, aber es funktioniert.
 
Nein, denn wenn der Server verschwindet, heißt das dass der Hauptserver ihn nicht mehr auflistet. Ergo kannst du ihn auch nicht mehr automatisch auslesen.
Sprich du müsstest die Subserver selbst speichern und dann erst auslesen.
 
Zurück