-
- peerConnection.onicecandidate = (event) => {
- if (event.candidate) {
- internals.socket.emit("relayICECandidate", {
- peerId: peerId,
- candidate: event.candidate,
- });
- }
- };
-
- const remoteStream = new MediaStream();
- peerConnection.ontrack = (event) => {
- remoteStream.addTrack(event.track);
- const remoteAudioElement = new Audio();
- remoteAudioElement.srcObject = remoteStream;
- remoteAudioElement.play();
- };
-
- peerConnection.onnegotiationneeded = async () => {
- console.log("Creating RTC offer to ", peerId);
- const offer = await peerConnection.createOffer();
- await peerConnection.setLocalDescription(offer);
-
- // Emit the offer to the peer
- internals.socket.emit("relayOffer", { offer, peerId });
- };
-
- console.log(`There are now ${Peers.count()} participants`);