Hallo zusammen,
Ich nutze folgendes Framework: https://docs.planetteamspeak.com/ts3...ork/index.html
Der Versuchsaufbau:
Das Script wird in der Konsole ausgeführt und das Framework verbindet sich erfolgreich auf den Server.
Der Parentchannel "TestChannel" ist erstellt und enthält Subchannel.
Nun erwarte ich als Ausgabe die Anzahl der Clients im letzten Subchannel
Wenn das Script gestartet wird und es befindet sich nimand im letzten Subchannel wird mir 0 zurückgegeben, allerdings sobald jemand den Channel betritt bleibt dieser Wert auf 0.
Andersherum genau so: wird das Script gestartet während sich bereits jemand im Channel befindet wird eine 1 zurückgegeben, sobald der Client den Channel verlässt bleibt dieser Wert auf 1 bestehen.
Sprich "clientList" gibt keine geänderten Werte.
Wenn ich "Teamspeak3::factory" mit in die Whileschleife gebe funktioniert es, allerdings habe ich dann pro Update der Zahl eine neue Serververbindung, was deffinitiv keine Endlösung ist.
Ich habe bereits versucht mit der Funktion "channelListReset" die Framework-Internen(?) Listen zurückzusetzen, ohne Erfolg.
Hat jemand eine Idee oder eine Lösung?
Vielen Dank
MfG
Elias
Ich nutze folgendes Framework: https://docs.planetteamspeak.com/ts3...ork/index.html
Der Versuchsaufbau:
PHP-Code:
require_once("framework/teamspeak3/libraries/TeamSpeak3/TeamSpeak3.php");
TeamSpeak3::init();
$server = Teamspeak3::factory("serverquery://bot:2RXM2UXc@127.0.0.1:10011/?server_port=9987&nickname=PHP-Bot#no_query_clients");
while(true) {
$server->channelListReset();
$parent = $server->channelGetByName("TestChannel");
$subs = $parent->subChannelList();
echo count(end($subs)->clientList());
sleep(1);
}
Der Parentchannel "TestChannel" ist erstellt und enthält Subchannel.
Nun erwarte ich als Ausgabe die Anzahl der Clients im letzten Subchannel
Wenn das Script gestartet wird und es befindet sich nimand im letzten Subchannel wird mir 0 zurückgegeben, allerdings sobald jemand den Channel betritt bleibt dieser Wert auf 0.
Andersherum genau so: wird das Script gestartet während sich bereits jemand im Channel befindet wird eine 1 zurückgegeben, sobald der Client den Channel verlässt bleibt dieser Wert auf 1 bestehen.
Sprich "clientList" gibt keine geänderten Werte.
Wenn ich "Teamspeak3::factory" mit in die Whileschleife gebe funktioniert es, allerdings habe ich dann pro Update der Zahl eine neue Serververbindung, was deffinitiv keine Endlösung ist.
Ich habe bereits versucht mit der Funktion "channelListReset" die Framework-Internen(?) Listen zurückzusetzen, ohne Erfolg.
Hat jemand eine Idee oder eine Lösung?
Vielen Dank
MfG
Elias
Kommentar