TsgcTURNServerOlaylar › OnTURNBeforeRelayIndication

OnTURNBeforeRelayIndication Olay

Sunucu bir Send-Indication yükünü bir eşe iletmeden önce tetiklenir; paketi düşürmek için Accept'i False olarak ayarlayın.

Sözdizimi

property OnTURNBeforeRelayIndication: TsgcTURNBeforeRelayIndicationEvent;
// TsgcTURNBeforeRelayIndicationEvent = procedure(Sender: TObject; const aSocket: TsgcSocketConnection; const aPeerIP: string; aPeerPort: Word; const aBytes: TBytes; var Accept: Boolean) of object

Varsayılan Değer

Remarks

Aktarma sıcak yolunda, Send-Indication başına bir kez tetiklenir (RFC 5766 bölüm 10): istemci, zaten izin bulunan bir peer'a iletilmesi gereken uygulama verisi taşıyan bir SEND göstergesi göndermiştir. aPeerIP/aPeerPort hedef peer'ı tanımlar (XOR-PEER-ADDRESS'ten alınır) ve aBytes Allocation'ın aktarma soketinde aktarılmak üzere olan yükü içerir. Olayı, aktarılan trafiği incelemek veya yakalamak için (örneğin TURN sunucusu aracılığıyla gönderilen ses/video paketlerini koklamak için) ya da peer başına hız sınırlaması uygulamak için kullanın. Datagramı sessizce bırakmak için Accept := False olarak ayarlayın; gönderen istemciye hata gönderilmez. Bu olay aktarma yolunda tetiklenir ve NotifyEvents onu yönlendirmediği sürece senkron olarak çalışır; ağır yük altında dinleyicide geri basıncı önlemek için neNoSync'i düşünün. aBytes salt okunur bir görünümdür; içeriğini değiştirmeyin.

Örnek

procedure TForm1.OnTURNBeforeRelayIndication(Sender: TObject;
  const aSocket: TsgcSocketConnection; const aPeerIP: string; aPeerPort: Word;
  const aBytes: TBytes; var Accept: Boolean);
begin
  vBytesRelayed := vBytesRelayed + Length(aBytes);
  Accept := True;
end;

Olaylara Dön