---
title: RTCIceTransport
slug: Web/API/RTCIceTransport
tags:
- API
- Audio
- Interface
- RTCIceTransport
- Referencia
- Video
- WebRTC
- WebRTC API
- rtc
translation_of: Web/API/RTCIceTransport
---
{{APIRef("WebRTC")}}
A interface RTCIceTransport fornece informação a respeito da camada de transporte {{Glossary("ICE")}} na qual os dados estão sendo enviados e recebidos. Isso é particulamente útil se você precisa acessar as informações de estado da conexão.
Propriedades
A interface RTCIceTransport herda propriedades de sua interface pai, {{domxref("EventTarget")}}. ele também oferta as seguintes propriedades:
- {{domxref("RTCIceTransport.component", "component")}} {{ReadOnlyInline}}
- O componente ICE que esta sendo usado pela transporte. O valor é uma das strings do {{domxref("RTCIceTransport")}} tipo enumerável:
{{Glossary("RTP", '"RTP"')}} ou "RTSP".
- {{domxref("RTCIceTransport.gatheringState", "gatheringState")}} {{ReadOnlyInline}}
- O {{domxref("DOMString")}} indica em qual estado de recolhimento o agente ICE esta atualmente. O valor é um dos incluidos no {{domxref("RTCIceGathererState")}} tipo enumerável:
"new", "gathering", ou "complete".
- {{domxref("RTCIceTransport.role", "role")}} {{ReadOnlyInline}}
- Retorna uma {{domxref("DOMString")}} cujo valor é um membro do tipo enumerável {{domxref("RTCIceRole")}}:
"controlling" ou "controlled"; Isso indica se o agente ICE é aquele que toma a decisão final quanto ao par candidato a ser usado ou não.
- {{domxref("RTCIceTransport.state", "state")}} {{ReadOnlyInline}}
- O {{domxref("DOMString")}} indica qual o atual estado do agente ICE. O valor do
state pode ser usado para determinar se o agente ICE fez uma conecxão inicial usando uma par de candidatos viável ("connected"), fez a seleção final do par de candidatos ("completed"), ou em um estado de erro ("failed"), além de outros estados. Veja o tipo enumerável {{domxref("RTCIceTransportState")}} para uma lista completa de estados.
Métodos
Também inclui métodos da interface pai {{domxref("EventTarget")}}.
- {{domxref("RTCIceTransport.getLocalCandidates", "getLocalCandidates()")}}
- Retorna um array de objetos {{domxref("RTCIceCandidate")}}, cada descrevendo um dos candidatos ICE que foram reunidos para o dispositivo local até o momento. Esses são os mesmos candidatos que já foram enviados para o peer remoto, enviando um evento {{event("icecandidate")}} ao {{domxref("RTCPeerConnection")}} para transmissão.
- {{domxref("RTCIceTransport.getLocalParameters", "getLocalParameters()")}}
- Retorna o objeto {{domxref("RTCIceParameters")}} descrevendo o parâmetro ICE estabelecido através de uma ligação ao método {{domxref("RTCPeerConnection.setLocalDescription()")}}. Retorna
null se os parâmetros ainda não foram recebidos.
- {{domxref("RTCIceTransport.getRemoteCandidates", "getRemoteCandidates()")}}
- Retorna um array de objetos {{domxref("RTCIceCandidate")}}, um para cada candidato do dispositivo remoto, que foram recebidos pelo local final da {{domxref("RTCPeerConnection")}} e entrega ao ICE através da chamada {{domxref("RTCPeerConnection.addIceCandidate()", "addIceCandidate()")}}.
- {{domxref("RTCIceTransport.getRemoteParameters", "getRemoteParameters()")}}
- Retorna um objeto {{domxref("RTCIceParameters")}} contendo os parâmetros ICE para o dispositivo remoto, como definido por uma chamada para {{domxref("RTCPeerConnection.setRemoteDescription()")}}. Se
setRemoteDescription() não foi chamada ainda, o retorno será null.
- {{domxref("RTCIceTransport.getSelectedCandidatePair", "getSelectedCandidatePair()")}}
- Retorna um objeto {{domxref("RTCIceCandidatePair")}} que identifica os dois candidatos — um para cada conexão — que foram selecionados até o momento. É possível que um par melhor sejá encontrado e selecionado posteriormente; Se você precisar acompanhar isso, veja o evento {{event("selectedcandidatepairchange")}}. Se nenhum par de candidatos foi selecionado ainda o valor retornado será
null.
Eventos
Escute esses eventos usando {{domxref("EventTarget.addEventListener", "addEventListener()")}} ou atribuindo um event listener para oneventname propriedade dessa interface.
- {{domxref("RTCIceTransport.gatheringstatechange_event", "gatheringstatechange")}}
- Enviado ao objeto {{domxref("RTCIceTransport")}} para indicar que o valor da propriedade {{domxref("RTCIceTransport.gatheringState", "gatheringState")}} foi alterado, indicando uma mudança no processo de negociação de candidatos ICE deste transporte.
Também esta disponível através da propriedade event handler {{domxref("RTCIceTransport.ongatheringstatechange", "ongatheringstatechange")}}.
- {{domxref("RTCIceTransport.selectedcandidatepairchange_event", "selectedcandidatepairchange")}}
Enviado para o RTCIceTransport quando um novo, melhor par de candidatos foi selecionado para descrever a conectividade entre os dois peers. Isso pode ocorrer durante a negotiação ou a renegociação, incluindo depois de um ICE restart, que reusa os objetos RTCIceTransport existentes. O par de candidatos atuais pode ser obtido usando {{domxref("RTCIceTransport.getSelectedCandidatePair", "getSelectedCandidatePair()")}}.
Também esta disponível através da propriedade event handler {{domxref("RTCIceTransport.onselectedcandidatepairchange", "onselectedcandidatepairchange")}}.
- {{domxref("RTCIceTransport.statechange_event", "statechange")}}
- Enviado par a instancia do
RTCIceTransport quando o valor da propriedade {{domxref("RTCIceTransport.state", "state")}} foi alterada, indicando que o processo de recolhimento ICE mudou de estado.
Também esta disponível através da propriedade event handler {{domxref("RTCIceTransport.onstatechange", "onstatechange")}}.
Especificação
| Especificação |
Status |
Comentário |
| {{SpecName('WebRTC 1.0', '#dom-rtcicetransport', 'RTCIceTransport')}} |
{{Spec2('WebRTC 1.0')}} |
Definição initial. |
Compatibilidade com navegadores
{{Compat("api.RTCIceTransport")}}