TsgcTURNServerEventos › OnSTUNRequestSuccess

OnSTUNRequestSuccess Event

Gerado antes de o servidor enviar uma resposta STUN/TURN bem-sucedida, para que o manipulador possa inspecionar ou vetar a resposta.

Sintaxe

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

Valor Padrão

Observações

Disparado depois que o servidor processou uma requisição com sucesso e construiu a resposta, mas antes de o datagrama ser enviado. É acionado em cada STUN Binding Response e em cada resposta bem-sucedida de método TURN (AllocateResponse, RefreshResponse, CreatePermissionResponse, ChannelBindResponse). aRequest expõe a mensagem STUN/TURN original (transaction id, atributos, endpoint de origem) e aResponse expõe a resposta prestes a ser transmitida; ambas podem ser inspecionadas para registro ou auditoria. Defina Accept := False para descartar a resposta silenciosamente — use com moderação em métodos TURN, porque o cliente irá retransmitir e uma AllocateResponse descartada pode deixar uma Allocation do lado do servidor presa. O handler é executado na thread do listener, a menos que NotifyEvents o redirecione.

Exemplo

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;

Voltar para Eventos