TsgcSTUNServerGebeurtenissen › OnSTUNRequestError

OnSTUNRequestError Gebeurtenis

Wordt geactiveerd voordat de server een STUN-foutantwoord verzendt; stelt de handler in staat het antwoord te inspecteren of te onderdrukken.

Syntaxis

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

Standaardwaarde

Opmerkingen

Wordt geactiveerd wanneer de server een Binding Error Response heeft opgebouwd (bijvoorbeeld 400 Bad Request, 401 Unauthorized, 420 Unknown Attribute of 438 Stale Nonce) en op het punt staat dit terug te sturen naar de client. Inspecteer aRequest / aResponse — met name het ERROR-CODE-attribuut van aResponse — om de oorzaak van de fout te registreren. Stel Accept := False in om het datagram te verwijderen en de client zonder antwoord te laten, wat handig kan zijn om versterking te voorkomen wanneer herhaaldelijk ongeldige verzoeken van dezelfde bron binnenkomen. De handler wordt uitgevoerd op de luisterthread, tenzij NotifyEvents een andere modus selecteert.

Voorbeeld

procedure TForm1.OnSTUNRequestError(Sender: TObject;
  const aSocket: TsgcSocketConnection; const aRequest: TsgcSTUN_Message;
  const aResponse: TsgcSTUN_Message; var Accept: Boolean);
begin
  Memo1.Lines.Add('STUN error for ' + aSocket.PeerIP);
  Accept := True;
end;

Terug naar gebeurtenissen