Cliente RCON para Delphi

· Componentes

A partir de sgcWebSockets 4.5.1 se admite el protocolo RCON. El Source RCON Protocol es un protocolo de comunicación basado en TCP/IP usado por Source Dedicated Server, que permite enviar comandos de consola al servidor mediante una "consola remota", o RCON. El uso más habitual de RCON es permitir que los propietarios de servidores controlen sus servidores de juego sin acceso directo a la máquina en la que se ejecuta el servidor.

Configuración 

La propiedad RCON_Options permite configurar las siguientes propiedades:


Conectar

Usa la propiedad Active para conectar y desconectar del servidor.

Cuando Active se pone a True, el cliente intenta conectar con el servidor; si lo consigue, intentará autenticarse usando la contraseña indicada.

El servidor enviará una respuesta a la petición de autenticación; se llamará al evento OnAuthenticate y podrás comprobar si la autenticación ha sido correcta o no a través del parámetro Authenticate.


Enviar comandos 

Usa el método ExecCommand para enviar comandos al servidor. Las respuestas estarán disponibles en el evento 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;