RTCPeerConnection | ICE

ICE (Interactive Connectivity Establishment) è il protocollo utilizzato per connettere 2 peer; determina tutti i percorsi possibili tra i 2 peer e garantisce che siano connessi. Questi percorsi sono noti anche come Candidate Pairs, ovvero una coppia di indirizzi di trasporto locali e remoti. Questi indirizzi possono essere l'indirizzo IP locale, l'indirizzo IP pubblico o l'indirizzo di trasporto inoltrato. Ogni peer raccoglie tutti gli indirizzi che desidera utilizzare, li scambia, quindi tenta di connettersi.

 

Raccolta degli indirizzi

I seguenti eventi possono essere chiamati durante la raccolta degli indirizzi

 

OnRTCLocalCandidate

 

L'evento viene chiamato quando viene trovato un nuovo candidato locale.

 

OnRTCRemoteCandidate

 

L'evento viene chiamato quando il server WebSocket invia un candidato remoto a questo peer.

 

OnRTCLocalDescription

 

L'evento viene chiamato quando il TsgcRTCPeerConnection richiede l'SDP locale

 

OnRTCRemoteDescription

 

L'evento viene chiamato quando il server WebSocket invia l'SDP remoto a questo peer.

 

 

 

Test di connettività

Quando il peer invia richieste di binding all'altro peer per verificare se può connettersi, possono essere chiamati i seguenti eventi

 

OnRTCCandidatePairNominated

 

Quando entrambi i peer possono connettersi utilizzando questa coppia di candidati, l'evento viene chiamato.

 

OnRTCCandidatePairFailed

 

Quando i peer non riescono a connettersi utilizzando questa coppia di candidati, viene chiamato questo evento.

 

OnRTCConnect

 

Questo evento viene chiamato quando esiste una coppia di candidati valida e DTLS non è abilitato.

Se DTLS è abilitato, questo evento viene chiamato dopo un handshake DTLS avvenuto con successo.