Server RTCMultiConnection

Server di signalling WebSocket compatibile con la libreria JavaScript RTCMultiConnection. Trascinalo su un TsgcWebSocketHTTPServer e i tuoi client browser potranno trovarsi tra loro.

TsgcWSAPIServer_RTCMultiConnection

Implementa il protocollo di wire parlato dal client JavaScript RTCMultiConnection (Muaz Khan) — room, scoperta peer, relay di SDP / ICE — così un server Delphi può sostituire il backend di signalling Node.js.

Classe componente

TsgcWSAPIServer_RTCMultiConnection

Protocollo

RTCMultiConnection

Piattaforme

Windows, macOS, Linux, iOS, Android

Edizione

Enterprise

Trascinalo sul server HTTP, esegui

Trascina un TsgcWebSocketHTTPServer (consigliato TLS) e un TsgcWSAPIServer_RTCMultiConnection accanto — i tuoi client RTCMultiConnection.js esistenti si collegano con il loro URL predefinito.

uses
  sgcWebSocket, sgcWebSocket_Server_APIs;

var
  Server: TsgcWebSocketHTTPServer;
  RTCMC: TsgcWSAPIServer_RTCMultiConnection;
begin
  Server := TsgcWebSocketHTTPServer.Create(nil);
  Server.Port := 443;
  Server.SSL  := True;
  Server.SSLOptions.CertFile := 'cert.pem';
  Server.SSLOptions.KeyFile  := 'key.pem';

  RTCMC := TsgcWSAPIServer_RTCMultiConnection.Create(nil);
  RTCMC.Server := Server;

  Server.Active := True;
end;

Cosa c'è all'interno

Controparte lato server al popolare client RTCMultiConnection.js — ti permette di sostituire il signalling Node.js con un servizio Delphi.

Routing per room / channel

Accetta open-room, join-room, check-presence e il resto dei verbi di wire di RTCMultiConnection — i partecipanti nella stessa room ricevono SDP e candidati ICE l'uno dell'altro.

Relay SDP

Le offer e answer SDP vengono inoltrate verbatim — il server non le decodifica mai, restando così compatibile con l'evoluzione del client JavaScript.

Relay di candidati ICE

I candidati Trickle-ICE fluiscono sullo stesso canale, accodati per peer fino a quando SetRemoteDescription non è stato chiamato lato client.

Multi-istanza

Inserisci più componenti TsgcWSAPIServer_RTCMultiConnection sullo stesso server (uno per virtual host) — ciascuno gestisce il proprio namespace di room.

TLS consigliato

WebRTC richiede TLS in produzione; configura Server.SSLOptions con certificati validi così i browser accettano l'upgrade WebSocket come wss://.

Abbinato a TURN

Combina con TsgcTURNServer per un backend WebRTC interamente in Delphi — signalling qui, relay di candidati lì, nessun servizio di terze parti.

Specifiche e riferimenti

Fonti autorevoli per il progetto implementato da questo componente.

Documentazione e demo

Collegamenti diretti al riferimento del componente, al progetto demo pronto all'uso e al download della versione di prova.

Guida online — RTCMultiConnection Riferimento completo di proprietà, metodi ed eventi di questo componente.
Progetto demo — Demos\30.WebRTC_Protocol\04.RTCMultiConnection Progetto di esempio pronto all'uso. Incluso nel pacchetto sgcWebSockets — scarica la versione di prova qui sotto.
Documento tecnico (PDF) Funzionalità, guida rapida, esempi di codice per Delphi e C++ Builder e riferimenti alle fonti primarie — solo per questo componente.
Manuale utente (PDF) Manuale completo che copre ogni componente della libreria.

Pronto a ospitare RTCMultiConnection in Delphi?

Scarica la versione di prova gratuita e sostituisci il tuo backend di signalling Node.js con un servizio Delphi.