TsgcTURNServer › メソッド › AddBinding
既存のバインディングを停止することなく TURN サーバーに追加のリスニングエンドポイント(IP/ポート)を追加します。
function AddBinding(const aIPAddress: string; aPort: Integer) : TIdSocketHandle;
| 名前 | タイプ | 説明 |
|---|---|---|
aIPAddress | const string | バインドするローカル IPv4/IPv6 アドレス。すべてのインターフェースでリッスンするには空文字列、0.0.0.0、または :: を使用します。 |
aPort | Integer | TURN サーバーがクライアントリクエストを受け付けるローカル UDP ポート(1 から 65535)。IANA 予約の TURN ポートに一致させるには 3478 を使用します。 |
新しく作成された TIdSocketHandle、または同じ IP/ポートのエントリが既に存在する場合は既存のもの。ハンドルは内部 Bindings コレクションが所有しているため、呼び出し元が解放してはなりません。(TIdSocketHandle)
AddBinding は Active が True の間にサーバーにリスニングエンドポイントを追加します。既存のバインディングを停止せずに追加できます。複数のインターフェース(例: 同じホスト上の IPv4 と IPv6)に TURN サービスを公開したり、別のポートでクライアントを受け入れたりするために使用します。追加された各エンドポイントは完全な TURN メソッドセット(ALLOCATE、REFRESH、CREATE-PERMISSION、CHANNEL-BIND、Send/Data インジケーション、および ChannelData)とプレーン STUN バインディングリクエストを受け取ります。指定された IP/ポートがすでにバインドされている場合、既存のハンドルが返され、追加のソケットは開かれません。個々のアロケーションに割り当てられたリレーポートはこの呼び出しの影響を受けません。これらは TURNOptions.Allocation.MinPort〜MaxPort の範囲から取得されます。
oTURN.AddBinding('0.0.0.0', 3478);
oTURN.AddBinding('::', 3478);
oTURN.Active := True;