WebRTC

音声、映像、データのためのピアツーピアリアルタイム通信です。Delphi アプリケーションで直接、ビデオ会議、音声通話、低遅延データチャネルを構築できます。

TsgcWSPServer_WebRTC

サーバーサイドの WebRTC シグナリングチャネルです。TsgcWebSocketHTTPServer の上にバインドし、ICE サーバーを宣言して、ピア間で SDP / ICE 候補をブロードキャストします。

コンポーネントクラス

TsgcWSPServer_WebRTC

プロトコル

WebRTC シグナリングチャネル

プラットフォーム

Windows, macOS, Linux, iOS, Android

エディション

Enterprise

コンポーネントを配置してプロパティを設定するだけ

TsgcWSPServer_WebRTC を TsgcWebSocketHTTPServer に接続し、ICE サーバーをプッシュして、チャネルサブスクライバーに SDP / ICE 候補をブロードキャストします。

uses
  sgcWebSocket, sgcWebSocket_Server, sgcWebSocket_Protocol_WebRTC_Server;

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;

  // STUN/TURN ICE servers pushed to every joining peer
  WebRTC.WebRTC.IceServers.Add('stun:stun.l.google.com:19302');

  WebRTC.OnSubscription   := DoJoin;
  WebRTC.OnUnSubscription := DoLeave;

  WSServer.Active := True;

  // Broadcast a JSON signalling payload to every peer in a channel
  WebRTC.Broadcast('{"type":"offer","sdp":"..."}', 'room-42');
end;

主な機能

公開プロパティ 5 個、メソッド 2 個、イベント 11 個 ― コンポーネントリファレンスより。

メッセージング

メソッド:BroadcastWriteData

ライフサイクル

イベント:OnConnectOnDisconnectOnError

設定

公開プロパティ:WebRTC

診断

公開プロパティ:GuidVersion

サーバー

プロパティ:ServerBroker

PubSub

イベント:OnBeforeSubscriptionOnSubscriptionOnUnSubscription

仕様と参考資料

本コンポーネントが実装するプロトコルの公式リファレンスです。

ドキュメントとデモ

コンポーネントリファレンスへのディープリンク、すぐに実行可能なデモプロジェクト、そして体験版のダウンロードはこちらです。

オンラインヘルプ — Protocol_WebRTC 本コンポーネントのプロパティ、メソッド、イベントの完全なリファレンスです。
デモプロジェクト — Demos\Protocols\WebRTC すぐに実行可能なサンプルプロジェクトです。sgcWebSockets パッケージに同梱されています。下記より体験版をダウンロードしてください。
技術ドキュメント (PDF) 本コンポーネントのみを対象とした機能解説、クイックスタート、Delphi および C++ Builder のコードサンプル、一次資料への参照を収録しています。
ユーザーマニュアル (PDF) ライブラリ内のすべてのコンポーネントを網羅した総合マニュアルです。

WebRTC を始める準備はできましたか?

体験版をダウンロードして、数分でピアツーピア通信の構築を始めましょう。