TsgcSTUNServerEreignisse › OnSTUNRequestError

OnSTUNRequestError Ereignis

Wird ausgelöst, bevor der Server eine STUN-Fehlerantwort sendet; ermöglicht es dem Handler, die Antwort zu untersuchen oder zu unterdrücken.

Syntax

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

Standardwert

Hinweise

Wird ausgelöst, wenn der Server eine Binding-Fehlerantwort erstellt hat (zum Beispiel 400 Bad Request, 401 Unauthorized, 420 Unknown Attribute oder 438 Stale Nonce) und im Begriff ist, sie an den Client zurückzusenden. Untersuchen Sie aRequest / aResponse — insbesondere das ERROR-CODE-Attribut von aResponse —, um den Fehlergrund zu protokollieren. Setzen Sie Accept := False, um das Datagramm zu verwerfen und den Client ohne Antwort zu lassen, was nützlich sein kann, um eine Verstärkung zu vermeiden, wenn wiederholt ungültige Anfragen von derselben Quelle eintreffen. Der Handler läuft im Listener-Thread, sofern NotifyEvents keinen anderen Modus auswählt.

Beispiel

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;

Zurück zu Ereignissen