Delphi RCON İstemcisi

· Bileşenler

sgcWebSockets 4.5.1 sürümünden itibaren RCON protokolü desteklenmektedir. Source RCON Protokolü, Source Dedicated Server tarafından kullanılan, konsol komutlarının sunucuya bir "uzak konsol" (remote console) veya RCON aracılığıyla verilmesine olanak tanıyan TCP/IP tabanlı bir iletişim protokolüdür. RCON'un en yaygın kullanımı, sunucu sahiplerinin sunucunun çalıştığı makineye doğrudan erişim olmadan oyun sunucularını kontrol etmelerine olanak tanımaktır.

Yapılandırma 

RCON_Options, aşağıdaki özellikleri yapılandırmaya olanak tanır:


Bağlanma

Sunucuya Bağlanmak / Sunucudan Bağlantıyı Kesmek için Active özelliğini kullanın.

Active True olarak ayarlandığında, istemci sunucuya bağlanmayı dener; bağlanabilirse, sağlanan parolayı kullanarak kimlik doğrulamayı dener.

Sunucu, bir Kimlik Doğrulama isteğine yanıt gönderecektir; OnAuthenticate olayı çağrılacaktır ve Authenticate parametresini kullanarak kimlik doğrulamasının başarılı olup olmadığını okuyabilirsiniz.


Komut Gönderme 

Sunucuya komut göndermek için ExecCommand metodunu kullanın. Yanıtlar OnResponse Olayında kullanılabilir olacaktır.

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;