Delphi WebRTC 信令服务器
音频、视频和数据的点对点实时通信。在您的 Delphi 应用程序中直接构建视频会议、语音通话和低延迟数据通道。
音频、视频和数据的点对点实时通信。在您的 Delphi 应用程序中直接构建视频会议、语音通话和低延迟数据通道。
服务器端 WebRTC 信令通道。将它绑定在 TsgcWebSocketHTTPServer 之上,声明它推送给每个加入对等方的 ICE 服务器,并在这些对等方之间广播 SDP 和 ICE 候选。
TsgcWSPServer_WebRTC
WebRTC 信令通道
Windows, macOS, Linux, iOS, Android
Professional / Enterprise
将 TsgcWSPServer_WebRTC 附加到 TsgcWebSocketHTTPServer,推送 ICE 服务器,向频道订阅者广播 SDP / ICE 候选者。
uses
sgcWebSocket, sgcWebSocket_Server, sgcWebSocket_Protocols;
var
WSServer: TsgcWebSocketHTTPServer;
WebRTC: TsgcWSPServer_WebRTC;
begin
WSServer := TsgcWebSocketHTTPServer.Create(nil);
WSServer.Port := 443;
WSServer.SSL := True;
WebRTC := TsgcWSPServer_WebRTC.Create(nil);
WebRTC.Server := WSServer;
// 一个 JSON RTCConfiguration 对象,推送给每个加入的对等方
WebRTC.WebRTC.IceServers.Add(
'{"iceServers": [{"urls": "stun:stun.l.google.com:19302"}]}');
WebRTC.OnSubscription := DoJoin;
WebRTC.OnUnSubscription := DoLeave;
WSServer.Active := True;
// 向频道内的每个对等方广播 JSON 信令负载
WebRTC.Broadcast('{"type":"offer","sdp":"..."}', 'room-42');
end;
5 个已发布属性、2 个方法、11 个事件 — 摘自组件参考文档。
方法:Broadcast、WriteData。
事件:OnConnect、OnDisconnect、OnError。
已发布属性 WebRTC,包含 IceServers 和 CloseSessionOnHangup。IceServers 是一组 JSON 文本:您放入其中的内容会原样拼接进 sgc@iceservers 帧,并直接交给浏览器的 RTCPeerConnection,因此它必须是一个完整的 RTCConfiguration 对象。
已发布属性:Guid、Version。
属性:Server、Broker。
事件:OnBeforeSubscription、OnSubscription、OnUnSubscription。
该组件实现的协议权威来源。