TsgcTURNServerOlaylar › OnSTUNRequestSuccess

OnSTUNRequestSuccess Olay

Sunucu başarılı bir STUN/TURN yanıtı göndermeden önce tetiklenir, böylece işleyici yanıtı inceleyebilir veya veto edebilir.

Sözdizimi

property OnSTUNRequestSuccess: TsgcSTUNRequestSuccessEvent;
// TsgcSTUNRequestSuccessEvent = procedure(Sender: TObject; const aSocket: TsgcSocketConnection; const aRequest, aResponse: TsgcSTUN_Message; var Accept: Boolean) of object

Varsayılan Değer

Remarks

Sunucu bir isteği başarıyla işledikten ve yanıtı oluşturduktan sonra, ancak datagram gönderilmeden önce tetiklenir. Her STUN Binding Response'ta ve her başarılı TURN yöntem yanıtında (AllocateResponse, RefreshResponse, CreatePermissionResponse, ChannelBindResponse) tetiklenir. aRequest, orijinal STUN/TURN mesajını (transaction id, attributes, kaynak uç nokta) sunar ve aResponse, iletilmek üzere olan yanıtı sunar; her ikisi de günlüğe kaydetme veya denetim için incelenebilir. Yanıtı sessizce atmak için Accept := False olarak ayarlayın — TURN yöntemlerinde dikkatli kullanın çünkü istemci yeniden iletecektir ve bırakılan bir AllocateResponse sunucu tarafındaki bir Allocation'ı askıda bırakabilir. NotifyEvents onu yönlendirmediği sürece, işleyici dinleyici iş parçacığında çalışır.

Örnek

procedure TForm1.OnSTUNRequestSuccess(Sender: TObject;
  const aSocket: TsgcSocketConnection; const aRequest, aResponse: TsgcSTUN_Message;
  var Accept: Boolean);
begin
  Memo1.Lines.Add('TURN OK from ' + aSocket.PeerIP + ':' + IntToStr(aSocket.PeerPort));
  Accept := True;
end;

Olaylara Dön