TsgcTURNServer › Events › OnSTUNException
Generato quando viene rilevata un'eccezione non gestita durante l'analisi o la risposta a un messaggio STUN/TURN.
property OnSTUNException: TsgcSTUNExceptionEvent;
// TsgcSTUNExceptionEvent = procedure(Sender: TObject; E: Exception) of object
—
Si attiva quando il server intercetta un'eccezione durante la decodifica di un datagramma, la verifica di MESSAGE-INTEGRITY, l'elaborazione di un metodo ALLOCATE / REFRESH / CREATE-PERMISSION / CHANNEL-BIND, l'inoltro di un pacchetto Send-Indication o ChannelData, o la scrittura di una risposta sul socket. L'eccezione viene assorbita dal listener in modo che il server continui a funzionare e la tabella delle Allocation rimanga coerente; utilizzi questo evento per portare il fallimento ai log o al monitoraggio. Esamini E.ClassName ed E.Message per i dettagli; non sollevi nuovamente E. Il gestore viene eseguito sul thread del listener a meno che NotifyEvents non lo reindirizzi, quindi eviti l'accesso diretto all'interfaccia utente senza un'adeguata sincronizzazione.
procedure TForm1.OnSTUNException(Sender: TObject; E: Exception);
begin
Memo1.Lines.Add('TURN error: ' + E.ClassName + ' - ' + E.Message);
end;