Source code
Revision control
Copy as Markdown
Other Tools
<!DOCTYPE html>
<html>
<head><meta charset="UTF-8"></head>
<body>
<div id="Page that opens a two peerconnections, and starts ICE"></div>
<script>
const test = async () => {
const offerer = new RTCPeerConnection();
const answerer = new RTCPeerConnection();
offerer.addTransceiver('audio');
async function iceConnected(pc) {
return new Promise(r => {
if (pc.iceConnectionState == "connected") {
r();
}
pc.oniceconnectionstatechange = () => {
if (pc.iceConnectionState == "connected") {
r();
}
}
});
}
offerer.onicecandidate = e => answerer.addIceCandidate(e.candidate);
answerer.onicecandidate = e => offerer.addIceCandidate(e.candidate);
await offerer.setLocalDescription();
await answerer.setRemoteDescription(offerer.localDescription);
await answerer.setLocalDescription();
await offerer.setRemoteDescription(answerer.localDescription);
await iceConnected(offerer);
await iceConnected(answerer);
offerer.close();
answerer.close();
};
test();
</script>
</body>
</html>