Delphi RCON 客户端

· 组件

从 sgcWebSockets 4.5.1 起,支持 RCON 协议。Source RCON 协议是一种基于 TCP/IP 的通信协议,用于 Source 专用服务器,允许通过"远程控制台"(RCON)向服务器发出控制台命令。RCON 最常见的用途是允许服务器所有者在无需直接访问服务器所在机器的情况下控制其游戏服务器。

配置

RCON_Options 允许配置以下属性:


连接

使用属性 Active 来连接/断开与服务器的连接。

当 Active 设置为 True 时,客户端尝试连接到服务器,如果连接成功,将尝试使用提供的密码进行身份验证。

服务器将对身份验证请求发送响应,届时将调用事件 OnAuthenticate,您可以通过 Authenticate 参数读取身份验证是否成功。


发送命令

使用方法 ExecCommand 向服务器发送命令。响应将在 OnResponse 事件中获取。

oRCON := TsgcLib_RCON.Create(nil);
oRCON.RCON_Options.Host := '127.0.0.1';
oRCON.RCON_Options.Port := 25575;
oRCON.RCON_Options.Password := 'test';
oRCON.Active := True;
procedure OnAuthenticate(Sender: TObject; Authenticated: Boolean; const aPacket: TsgcRCON_Packet);
begin
  if Authenticated then
    DoLog('#authenticated')
  else
    DoLog('#not authenticated');
end;
procedure OnResponse(Sender: TObject; const aResponse: string; const aPacket: TsgcRCON_Packet);
begin
  DoLog(aResponse);
end;