RTCMultiConnection Server

Servidor de sinalização WebSocket compatível com a biblioteca JavaScript RTCMultiConnection. Adicione-o em um TsgcWebSocketHTTPServer e seus clientes de navegador poderão se encontrar.

TsgcWSAPIServer_RTCMultiConnection

Implementa o protocolo de comunicação que o cliente JavaScript RTCMultiConnection (Muaz Khan) utiliza — salas, descoberta de peers, relay SDP / ICE — permitindo que um servidor Delphi substitua o backend de sinalização Node.js.

Classe do componente

TsgcWSAPIServer_RTCMultiConnection

Protocolo

RTCMultiConnection

Plataformas

Windows, macOS, Linux, iOS, Android

Edição

Enterprise

Adicione ao servidor HTTP e execute

Adicione um TsgcWebSocketHTTPServer (TLS recomendado) e um TsgcWSAPIServer_RTCMultiConnection ao lado — seus clientes RTCMultiConnection.js existentes se conectam com a URL padrão.

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;

O que tem por dentro

Contraparte server-side do popular cliente RTCMultiConnection.js — permite substituir a sinalização Node.js por um serviço Delphi.

Roteamento de sala / canal

Aceita open-room, join-room, check-presence e os demais verbos do protocolo RTCMultiConnection — participantes na mesma sala recebem mutuamente os SDPs e candidatos ICE.

Relay de SDP

As ofertas e respostas SDP são retransmitidas literalmente — o servidor nunca as decodifica, mantendo a compatibilidade à medida que o cliente JavaScript evolui.

Relay de candidatos ICE

Os candidatos Trickle-ICE fluem pelo mesmo canal, enfileirados por peer até que SetRemoteDescription seja disparado no lado do cliente.

Multi-instância

Adicione múltiplos componentes TsgcWSAPIServer_RTCMultiConnection no mesmo servidor (um por host virtual) — cada um gerencia seu próprio namespace de salas.

TLS recomendado

O WebRTC exige TLS em produção; configure Server.SSLOptions com certificados válidos para que os navegadores aceitem o upgrade WebSocket como wss://.

Funciona com TURN

Combine com TsgcTURNServer para um backend WebRTC 100% em Delphi — sinalização aqui, relay de candidatos lá, sem serviços de terceiros.

Especificações & referências

Fontes oficiais do projeto que este componente implementa.

Documentação & Demos

Acesse a referência do componente, pegue o projeto demo pronto para executar e baixe a versão de avaliação.

Ajuda online — RTCMultiConnection Referência completa de propriedades, métodos e eventos deste componente.
Projeto demo — Demos\30.WebRTC_Protocol\04.RTCMultiConnection Exemplo pronto para executar. Acompanha o pacote sgcWebSockets — baixe a versão de avaliação abaixo.
Documento técnico (PDF) Recursos, início rápido, exemplos de código para Delphi & C++ Builder e referências de fontes primárias — somente deste componente.
Manual do usuário (PDF) Manual completo cobrindo todos os componentes da biblioteca.

Pronto para Hospedar o RTCMultiConnection em Delphi?

Baixe o trial gratuito e substitua seu backend de sinalização Node.js por um serviço Delphi.