ICE (Interactive Connectivity Establishment) is het protocol dat wordt gebruikt om 2 peers te verbinden; het bepaalt alle mogelijke routes tussen de 2 peers en zorgt vervolgens voor de verbinding. Deze routes staan ook bekend als kandidaatparen, wat een koppeling is van lokale en externe transportadressen. Deze adressen kunnen het lokale IP-adres, het openbare IP-adres of het doorgegeven transportadres zijn. Elke peer verzamelt alle adressen die ze willen gebruiken, wisselt ze uit en probeert vervolgens verbinding te maken.
De volgende gebeurtenissen kunnen worden aangeroepen bij het verzamelen van adressen.
OnRTCLocalCandidate
De gebeurtenis wordt aangeroepen wanneer een nieuwe lokale kandidaat is gevonden.
OnRTCRemoteCandidate
De gebeurtenis is called when the websocket server sends a op afstand candidate to this peer.
OnRTCLocalDescription
Het evenement wordt aangeroepen wanneer de TsgcRTCPeerConnection de lokale SDP vereist
OnRTCRemoteDescription
De gebeurtenis wordt aangeroepen wanneer de websocket-server de externe SDP naar deze peer stuurt.
Wanneer de peer bindingsverzoeken stuurt naar de andere peer om te testen of verbinding mogelijk is, kunnen de volgende gebeurtenissen worden aangeroepen
OnRTCCandidatePairNominated
Wanneer beide peers verbinding kunnen maken via dit kandidaatpaar, wordt de gebeurtenis aangeroepen.
OnRTCCandidatePairFailed
Wanneer de peers geen verbinding kunnen maken via dit kandidaatpaar, wordt deze gebeurtenis aangeroepen.
OnRTCConnect
Dit event wordt aangeroepen wanneer er een geldig kandidaatpaar is en DTLS niet is ingeschakeld.
Als DTLS is ingeschakeld, wordt deze gebeurtenis aangeroepen na een succesvolle DTLS-handshake.