@@ -4,48 +4,58 @@ use crate::peer_connection::policy::bundle_policy::RTCBundlePolicy;
4
4
use crate :: peer_connection:: policy:: ice_transport_policy:: RTCIceTransportPolicy ;
5
5
use crate :: peer_connection:: policy:: rtcp_mux_policy:: RTCRtcpMuxPolicy ;
6
6
7
- /// A Configuration defines how peer-to-peer communication via PeerConnection
8
- /// is established or re-established.
9
- /// Configurations may be set up once and reused across multiple connections.
10
- /// Configurations are treated as readonly. As long as they are unmodified,
11
- /// they are safe for concurrent use.
7
+ /// Defines a set of parameters to configure how the peer-to-peer communication via
8
+ /// [`RTCPeerConnection`] is established or re-established. These may be set up once
9
+ /// and reused across multiple connections, and are treated as readonly. As long as
10
+ /// they are unmodified, they are safe for concurrent use.
11
+ ///
12
+ /// [`RTCPeerConnection`]: crate::peer_connection::RTCPeerConnection
12
13
#[ derive( Default , Clone ) ]
13
14
pub struct RTCConfiguration {
14
- /// iceservers defines a slice describing servers available to be used by
15
+ /// Defines a slice describing servers available to be used by
15
16
/// ICE, such as STUN and TURN servers.
16
17
pub ice_servers : Vec < RTCIceServer > ,
17
18
18
- /// icetransport_policy indicates which candidates the ICEAgent is allowed
19
+ /// Indicates which candidates the ICE Agent is allowed
19
20
/// to use.
20
21
pub ice_transport_policy : RTCIceTransportPolicy ,
21
22
22
- /// bundle_policy indicates which media-bundling policy to use when gathering
23
+ /// Indicates which media-bundling policy to use when gathering
23
24
/// ICE candidates.
24
25
pub bundle_policy : RTCBundlePolicy ,
25
26
26
- /// rtcp_mux_policy indicates which rtcp-mux policy to use when gathering ICE
27
+ /// Indicates which rtcp-mux policy to use when gathering ICE
27
28
/// candidates.
28
29
pub rtcp_mux_policy : RTCRtcpMuxPolicy ,
29
30
30
- /// peer_identity sets the target peer identity for the PeerConnection .
31
+ /// **UNIMPLEMENTED:** Sets the target peer identity for the [`RTCPeerConnection`] .
31
32
/// The PeerConnection will not establish a connection to a remote peer
32
33
/// unless it can be successfully authenticated with the provided name.
34
+ ///
35
+ /// [`RTCPeerConnection`]: crate::peer_connection::RTCPeerConnection
33
36
pub peer_identity : String ,
34
37
35
- /// Certificates describes a set of certificates that the PeerConnection
36
- /// uses to authenticate. Valid values for this parameter are created
37
- /// through calls to the generate_certificate function. Although any given
38
- /// DTLS connection will use only one certificate, this attribute allows the
39
- /// caller to provide multiple certificates that support different
40
- /// algorithms. The final certificate will be selected based on the DTLS
41
- /// handshake, which establishes which certificates are allowed. The
42
- /// PeerConnection implementation selects which of the certificates is
38
+ /// A set of certificates that the [`RTCPeerConnection`] uses to authenticate.
39
+ ///
40
+ /// Valid values for this parameter are created through calls to the
41
+ /// generate_certificate function.
42
+ ///
43
+ /// Although any given DTLS connection will use only one certificate, this
44
+ /// attribute allows the caller to provide multiple certificates that support
45
+ /// different algorithms. The final certificate will be selected based on the
46
+ /// DTLS handshake, which establishes which certificates are allowed. The
47
+ /// [`RTCPeerConnection`] implementation selects which of the certificates is
43
48
/// used for a given connection; how certificates are selected is outside
44
- /// the scope of this specification. If this value is absent, then a default
45
- /// set of certificates is generated for each PeerConnection instance.
49
+ /// the scope of this specification.
50
+ ///
51
+ /// If this value is absent, then a default set of certificates is generated
52
+ /// for each [`RTCPeerConnection`] instance.
53
+ ///
54
+ /// [`RTCPeerConnection`]: crate::peer_connection::RTCPeerConnection
46
55
pub certificates : Vec < RTCCertificate > ,
47
56
48
- /// icecandidate_pool_size describes the size of the prefetched ICE pool.
57
+ /// **UNIMPLEMENTED:** The size of the prefetched ICE pool, as defined in
58
+ /// [RFC8829](https://www.rfc-editor.org/rfc/rfc8829).
49
59
pub ice_candidate_pool_size : u8 ,
50
60
}
51
61
0 commit comments