RTCPeerConnection: peerIdentity property
The read-only RTCPeerConnection property
peerIdentity returns a JavaScript Promise
that resolves to an RTCIdentityAssertion which contains a
string identifying the remote peer. Once this promise
resolves successfully, the resulting identity is the target peer
identity and cannot change for the duration of the connection.
Value
A JavaScript Promise which resolves to an
RTCIdentityAssertion that describes the remote peer's identity.
If an error occurs while attempting to validate an incoming identity assertion (that
is, the information describing a peer's identity), the promise is rejected. If there
isn't already a target peer identity, peerIdentity is set to a newly
created promise and the process begins again, until the process succeeds or no further
attempts to authenticate occur.
Note: The promise returned by
setRemoteDescription() cannot
resolve until any target peer identity that's been set is validated. If the identity
hasn't been validated yet, the promise returned by setRemoteDescription()
will be rejected. If there's no target peer identity,
setRemoteDescription() doesn't need to wait for validation to occur
before it resolves.
Examples
In this example, a function, getIdentityAssertion(), is created which
asynchronously waits for the peer's identity to be verified, then returns the identity
to the caller. If an error occurs and the promise is rejected, this logs the error to
the console and returns null to the caller.
js
let pc = new RTCPeerConnection();
// …
async function getIdentityAssertion(pc) {
try {
const identity = await pc.peerIdentity;
return identity;
} catch (err) {
console.log("Error identifying remote peer: ", err);
return null;
}
}
Specifications
| Specification |
|---|
| Identity for WebRTC 1.0 # dom-rtcpeerconnection-peeridentity |
Browser compatibility
BCD tables only load in the browser