TsgcTURNServerÉvénements › OnSTUNRequestSuccess

OnSTUNRequestSuccess Event

Déclenché avant que le serveur n'envoie une réponse STUN/TURN réussie, afin que le gestionnaire puisse inspecter ou rejeter la réponse.

Syntaxe

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

Valeur par défaut

Remarques

Déclenché après que le serveur a traité une requête avec succès et construit la réponse, mais avant l'envoi du datagramme. Se déclenche à chaque réponse STUN Binding et à chaque réponse TURN réussie (AllocateResponse, RefreshResponse, CreatePermissionResponse, ChannelBindResponse). aRequest expose le message STUN/TURN original (identifiant de transaction, attributs, point de terminaison source) et aResponse expose la réponse sur le point d'être transmise ; les deux peuvent être inspectés pour la journalisation ou l'audit. Définissez Accept := False pour supprimer silencieusement la réponse — à utiliser avec parcimonie sur les méthodes TURN car le client retransmettra et une AllocateResponse abandonnée peut bloquer une allocation côté serveur. Le gestionnaire s'exécute sur le thread d'écoute sauf si NotifyEvents le redirige.

Exemple

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;

Retour aux événements