Serwer TURN
Uruchom własny serwer TURN (RFC 8656) w Delphi. Alokuj przekazywane adresy transportowe dla klientów, którzy nie mogą nawiązać ścieżki peer-to-peer, z poświadczeniami long-term i limitami przypadającymi na alokację.
Uruchom własny serwer TURN (RFC 8656) w Delphi. Alokuj przekazywane adresy transportowe dla klientów, którzy nie mogą nawiązać ścieżki peer-to-peer, z poświadczeniami long-term i limitami przypadającymi na alokację.
Samohostowany serwer TURN — przetwarza Allocate / CreatePermission / ChannelBind / Send / Refresh / Data, zarządza alokacjami i pasmem, waliduje poświadczenia long-term.
TsgcTURNServer
Windows, macOS, Linux, iOS, Android
Enterprise
Ustaw Port + Realm, dostarcz hasła dla użytkowników przez OnTURNAuthenticate, Active := True — serwer alokuje teraz relaye dla każdego klienta zgodnego z RFC 8656.
uses
sgcP2P;
var
TURNServer: TsgcTURNServer;
begin
TURNServer := TsgcTURNServer.Create(nil);
TURNServer.Port := 3478;
TURNServer.Realm := 'turn.example.com';
TURNServer.OnTURNAuthenticate := procedure(Sender: TObject;
const aUsername: string; var aPassword: string;
var Accept: Boolean)
begin
aPassword := LookupPassword(aUsername);
Accept := aPassword <> '';
end;
TURNServer.Active := True;
end;
// uses: sgcP2P
TsgcTURNServer *TURNServer = new TsgcTURNServer(this);
TURNServer->Port = 3478;
TURNServer->Realm = "turn.example.com";
TURNServer->Active = true;
Samohostowany relay — pozwala Twoim wdrożeniom WebRTC i ICE uniezależnić się od zewnętrznych dostawców TURN.
Obsługuje żądania Allocate z REQUESTED-TRANSPORT, wybiera wolny port relayu i śledzi czas życia. Refresh przedłuża alokację; serwer demontuje ją po wygaśnięciu.
Śledzi uprawnienia peerów dla poszczególnych alokacji i bindowanie kanałów. Odrzuca ramki Send/Data dla peerów, którzy nie otrzymali uprawnień zgodnie z RFC 8656 §9.
Obsługiwane są zarówno 36-bajtowe koperty Send / Data, jak i 4-bajtowe ramki ChannelData. Relay przekazuje datagramy między relayed-transport-address a powiązanym peerem.
OnTURNAuthenticate udostępnia nazwę użytkownika; Ty zwracasz hasło — serwer waliduje MESSAGE-INTEGRITY i automatycznie rotuje nonces.
Ustaw Quota.MaxAllocationsPerUser, Quota.MaxBandwidthKbps, Quota.AllocationLifetime, aby ograniczyć nadużycia. OnQuotaExceeded raportuje odrzucenia.
Przełącz transport bazowego serwera — obsługiwane są UDP, TCP oraz TLS przez TCP. Klienci WebRTC wybierają ten, który przechodzi przez ich NAT.
Przejdź bezpośrednio do dokumentacji komponentu, pobierz gotowy do uruchomienia projekt demonstracyjny i pobierz wersję próbną.
| Pomoc online — TsgcTURNServer Pełna dokumentacja właściwości, metod i zdarzeń tego komponentu. | Otwórz | |
| Projekt demonstracyjny — Demos\35.P2P\03.TURN Gotowy do uruchomienia projekt przykładowy. Dostarczany w pakiecie sgcWebSockets — pobierz wersję próbną poniżej. | Otwórz | |
| Dokument techniczny (PDF) Funkcje, szybki start, przykłady kodu dla Delphi i C++ Builder oraz odniesienia do źródeł — tylko ten komponent. | Otwórz | |
| Podręcznik użytkownika (PDF) Kompleksowy podręcznik obejmujący każdy komponent biblioteki. | Otwórz |