在PHP中获取teamspeak服务器状态

在PHP中获取teamspeak服务器状态,php,voip,status,Php,Voip,Status,我有一个teamspeak服务器,我想在网页(PHP)中显示服务器状态(在线、离线)。你能帮我吗?我尝试了不同的方法,但都不管用 谢谢 如果您使用的是Teamspeak 3,那么使用Teamspeak php框架就可以很容易地做到这一点。() 之后,您可以使用以下内容检查服务器的状态: TeamSpeak3::init(); $status = "offline"; $ts3 = TeamSpeak3::factory("serverquery://<queryusername>:&

我有一个teamspeak服务器,我想在网页(PHP)中显示服务器状态(在线、离线)。你能帮我吗?我尝试了不同的方法,但都不管用


谢谢

如果您使用的是Teamspeak 3,那么使用Teamspeak php框架就可以很容易地做到这一点。()

之后,您可以使用以下内容检查服务器的状态:

TeamSpeak3::init();
$status = "offline";
$ts3 = TeamSpeak3::factory("serverquery://<queryusername>:<password>@<name_or_ip>:<queryport>/?server_port=<ts3port>&use_offline_as_virtual=1&no_query_clients=1");
$status = $ts3->getProperty("virtualserver_status");
TeamSpeak3::init();
$status=“离线”;
$ts3=TeamSpeak3::factory(“服务器查询:/:@:/?服务器端口=&使用脱机\u作为\u虚拟=1&无查询\u客户端=1”);
$status=$ts3->getProperty(“virtualserver_状态”);

您也可以使用Teamspeak3_node_服务器的isOnline功能。

您能告诉我们您尝试了什么吗?fsockopen+fread应该可以工作,请确保使用低于1秒的超时时间,以避免造成无休止的加载时间,尝试将结果缓存几秒钟甚至更长时间,原因是
$status=“offline”?我看不出原因。@Shuro这是为了将其初始化为默认状态。因此,即使TeamSpeak3::Factory失败,它也会说它处于脱机状态。最好使用try-catch