正在编写我的世界服务器状态检查程序


Going about programming a minecraft server status checking program

我想制作一个程序,允许我检查 Minecraft 服务器的状态,无论它们是在线、离线还是已满。我将如何去做?我在想PHP服务器端,Python客户端和SQL作为服务器?

我需要一些关于完成这样一项任务需要做什么的重要建议。

你不需要数据库。对服务器执行 ping 操作。如果它响应,它就起来了...显示一个大的绿色复选标记。如果它没有响应...它下来了。显示一个大的红色 x。您可以在FB API或任何地方的纯PHP中执行此操作。

请参阅此问题,其中提供了以下代码:

function ping($host, $port, $timeout)
{ 
  $tB = microtime(true); 
  $fP = fSockOpen($host, $port, $errno, $errstr, $timeout); 
  if (!$fP) { return "down"; } 
  $tA = microtime(true); 
  return round((($tA - $tB) * 1000), 0)." ms"; 
}

值得注意的是,如果您想要更多信息,而不仅仅是服务器启动/关闭状态,您可以使用大多数服务器已启用的 MineQuery 协议。

更多信息@DinnerBone的工具。

如果服务器使用 CraftBukkit,这将允许您获取当前/最大玩家、MOTD、游戏版本和其他一些详细信息。

这个版本也是用PHP编写的。