Delphi UDP Sunucusu
Bir portta UDP datagramlarını dinleyin ve her birini uygulamanıza iletin. TsgcSTUNServer ve TsgcTURNServer'a güç veren motorun aynısı.
Bir portta UDP datagramlarını dinleyin ve her birini uygulamanıza iletin. TsgcSTUNServer ve TsgcTURNServer'a güç veren motorun aynısı.
Yüksek performanslı UDP dinleyici — bir porta bağlanın, herhangi bir eşten datagram alın, belirli uç noktalara yanıt verin, hepsi bağlı tek bir soket üzerinden.
TsgcUDPServer
Windows, macOS, Linux, iOS, Android
Professional / Enterprise
Port ayarlayın, Active := True yapın, ardından gelen datagramları OnUDPRead içinde işleyin ve Socket.WriteData aracılığıyla yanıt verin — tek soket, herhangi bir sayıda uzak eş.
uses
sgcP2P, sgcUDP_Classes, sgcSocket_Classes;
// TFormUDPServer, FServer: TsgcUDPServer ve işleyiciyi tutar
procedure TFormUDPServer.StartServer;
begin
FServer := TsgcUDPServer.Create(nil);
FServer.Port := 4000;
FServer.OnUDPRead := OnUDPRead;
FServer.Active := True;
end;
procedure TFormUDPServer.OnUDPRead(Sender: TObject;
Socket: TsgcUDPSocket; Bytes: TsgcBytes);
begin
// datagramın geldiği eşe geri yankılayın
Socket.WriteData(TBytes(Bytes));
end;
// includes: sgcP2P.hpp, sgcUDP_Classes.hpp, sgcSocket_Classes.hpp
TsgcUDPServer *Server = new TsgcUDPServer(this);
Server->Port = 4000;
Server->OnUDPRead = OnUDPRead;
Server->Active = true;
void __fastcall TFormUDPServer::OnUDPRead(TObject *Sender,
TsgcUDPSocket *Socket, TsgcBytes Bytes)
{
// datagramın geldiği eşe geri yankılayın
Socket->WriteData(TBytes(Bytes));
}
Her datagramı, ulaştığı TsgcUDPSocket ile birlikte işleyicinize veren bir UDP dinleyici; aynı soket yanıt yoludur.
Bağlı tek bir soket, herhangi bir sayıda uzak uç noktadan gelen datagramları işler. Her OnUDPRead, IP ve Port değerleri göndereni tanımlayan bir TsgcUDPSocket ile tetiklenir.
Socket.WriteData, aynı soket üzerinden kaynak eşe geri bir datagram gönderir; sunucu ayrıca başka herhangi bir uç nokta için WriteData(ip, port, ...) sunar.
WatchDog, dinleyici yanıt vermeyi bıraktığında onu yeniden başlatır ve OnBeforeWatchDog yeniden başlatmayı veto etme fırsatı verir. OnStartup ve OnShutdown her bağlamayı çerçeveler.
Aile için IPVersion ayarlayın veya sunucunun birden fazla adreste dinlemesi gerektiğinde AddBinding, RemoveBinding ve GetBinding ile Bindings koleksiyonuna adres başına bir giriş ekleyin.
STUN ve TURN sunucuları (tam RFC 8489 / 8656 uygulamaları) bu bileşenin üzerine kurulur — herhangi bir özel UDP protokolü için aynısını yapabilirsiniz.
Datagramları bir DTLS oturumu içinde çalıştırmak için DTLS := True ayarlayın ve DTLSOptions değerlerini doldurun; hangi eş sertifikalarını kabul edeceğinize OnDTLSVerifyPeer karar verir.
Bileşen referansına doğrudan bağlanın, çalışmaya hazır demo projesini alın ve denemeyi indirin.
| Çevrimiçi Yardım — TsgcUDPServer Bu bileşen için tam özellik, metot ve olay referansı. | Aç | |
| Demo Projesi — Demos\35.P2P\01.UDP_Server_Client Çalışmaya hazır örnek proje. sgcWebSockets paketinin içinde gelir — denemeyi aşağıdan indirin. | Aç | |
| Teknik Belge (PDF) Özellikler, hızlı başlangıç, Delphi ve C++ Builder için kod örnekleri ve birincil kaynak referansları — yalnızca bu bileşen. | Aç | |
| Kullanıcı Kılavuzu (PDF) Kütüphanedeki her bileşeni kapsayan kapsamlı kılavuz. | Aç |