Spaces:
Sleeping
Sleeping
File size: 1,062 Bytes
0ed692f 032a736 0ed692f |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
window.onload = () => {
document.getElementById('my-button').onclick = () => {
init();
}
}
async function init() {
const stream = await navigator.mediaDevices.getUserMedia({ video: true });
document.getElementById("video").srcObject = stream;
const peer = createPeer();
stream.getTracks().forEach(track => peer.addTrack(track, stream));
}
function createPeer() {
const peer = new RTCPeerConnection({
iceServers: [
{
urls: "stun:stun.stunprotocol.org"
}
]
});
peer.onnegotiationneeded = () => handleNegotiationNeededEvent(peer);
return peer;
}
async function handleNegotiationNeededEvent(peer) {
const offer = await peer.createOffer();
await peer.setLocalDescription(offer);
const payload = {
sdp: peer.localDescription
// , roomId: "gods"
};
const { data } = await axios.post('/broadcast', payload);
const desc = new RTCSessionDescription(data.sdp);
peer.setRemoteDescription(desc).catch(e => console.log(e));
} |