Methods
AddCandidates | (a(usqa{sv}): candidates) | → | nothing | |
CandidatesPrepared | () | → | nothing |
Signals
LocalCandidatesAdded | (a(usqa{sv}): Candidates) | |
LocalCredentialsSet | (s: Username, s: Password) | |
ServerInfoRetrieved | () | |
EndpointsChanged | (ao: EndpointsAdded, ao: EndpointsRemoved) |
Properties
Transport | u (Stream_Transport_Type) | Read only | |
LocalCandidates | a(usqa{sv}) (Candidate_List) | Read only | |
LocalCredentials | (ss) (Stream_Credentials) | Read only | |
STUNServers | a(sq) (Socket_Address_IP_List) | Read only | |
RelayInfo | aa{sv} (String_Variant_Map_List) | Read only | |
RetrievedServerInfo | b | Read only | |
Endpoints | ao | Read only |
Types
Stream_Transport_Type | Enum | u | |
Candidate_Info | Mapping | a{sv} | |
Candidate | Struct | (usqa{sv}) | |
Stream_Credentials | Struct | (ss) |
Description
Methods
AddCandidates (a(usqa{sv}): candidates) → nothing
Parameters
- candidates — a(usqa{sv}) (Candidate_List)
CandidatesPrepared () → nothing
Rationale:
Signals
LocalCandidatesAdded (a(usqa{sv}): Candidates)
Parameters
- Candidates — a(usqa{sv}) (Candidate_List)
LocalCredentialsSet (s: Username, s: Password)
Parameters
- Username — s
- Password — s
ServerInfoRetrieved ()
Signals that the initial information about STUN and Relay servers has been retrieved, i.e. the RetrievedServerInfo property is now true.
Properties
Transport — u (Stream_Transport_Type)
LocalCandidates — a(usqa{sv}) (Candidate_List)
LocalCredentials — (ss) (Stream_Credentials)
STUNServers — a(sq) (Socket_Address_IP_List)
Rationale:
RelayInfo — aa{sv} (String_Variant_Map_List)
A list of mappings describing TURN or Google relay servers available for the client to use in its candidate gathering, as determined from the protocol. Map keys are:
ip
- s- The IP address of the relay server as a dotted-quad IPv4
address literal or an RFC2373 IPv6 address literal. This MUST NOT
be a DNS hostname.
Rationale:
High-quality connection managers already need an asynchronous DNS resolver, so they might as well resolve this name to an IP and make life easier for streaming implementations. type
- s-
Either
udp
for UDP (UDP MUST be assumed if this key is omitted),tcp
for TCP, ortls
.The precise meaning of this key depends on the Transport property: if Transport is ICE,
tls
means TLS over TCP as referenced by ICE draft 19, and if Transport is GTalk_P2P,tls
means a fake SSL session over TCP as implemented by libjingle. port
- q- The UDP or TCP port of the relay server as an ASCII unsigned integer
username
- s- The username to use
password
- s- The password to use
component
- u- The component number to use this relay server for, as an
ASCII unsigned integer; if not included, this relay server
may be used for any or all components.
Rationale:
In ICE draft 6, as used by Google Talk, credentials are only valid once, so each component needs relaying separately.
Rationale:
An equivalent of the gtalk-p2p-relay-token property on MediaSignalling channels is not included here. The connection manager should be responsible for making the necessary HTTP requests to turn the token into a username and password.
The type of relay server that this represents depends on the value of the Transport property. If Transport is ICE, this is a TURN server; if Transport is GTalk_P2P, this is a Google relay server; otherwise, the meaning of RelayInfo is undefined.
If relaying is not possible for this stream, the list is empty.
RetrievedServerInfo — b
True if the initial information about STUN servers and Relay servers has been retrieved. Change notification is via the ServerInfoRetrieved signal.
Rationale:
Streaming implementations that can't cope with STUN and relay servers being added later SHOULD wait for this property to become true before proceeding.
Endpoints — ao
The list of endpoints Endpoint.DRAFT that exist for this stream.
Change notification is via the EndpointsChanged signal.
Types
Stream_Transport_Type — u
- Raw_UDP (0)
- ICE (1)
- GTalk_P2P (2)
- WLM_8_5 (3)
- WLM_2009 (4)
Candidate_Info — a{sv}
- Type (u)
- type of candidate (host, srflx, prflx, relay)
- Foundation (s)
- the foundation of this candiate
- Protocol (u)
- Underlying protocol of the candidate (udp, tcp)
- Priority (u)
- Priority of the candidate
- BaseIP (u)
- Base IP of this candidate
- Username (s)
- Username of this candidate (only if credentials are per candidate)
- Password (s)
- Password of this candidate (only if credentials are per candidate)
- RawUDPFallback (b)
- Indicate whether this candidate may be used to provide a UDP fallback
- Key — s
- Value — v
Candidate — (usqa{sv})
- Component — u
- IP — s
- Port — q
- Info — a{sv} (Candidate_Info)
Stream_Credentials — (ss)
- Username — s
- Password — s