- simple-peer like
- can make multi data-channels for a peer
npm install simple-datachannel
For example manual signaling and send message each other through multi data-channels.
import WebRTC from "simple-datachannel";
const peerOffer = new WebRTC();
const peerAnswer = new WebRTC();
peerOffer.makeOffer({ disable_stun: true });
peerOffer.ev.on("signal", sdp => {
console.log("offer signal");
peerAnswer.makeAnswer(sdp, { disable_stun: true });
peerAnswer.ev.on("signal", sdp => {
peerOffer.setAnswer(sdp);
});
});
peerOffer.ev.once("connect", () => {
console.log("offer connected");
peerOffer.ev.on("data", data => console.log("ondata offer", data));
peerOffer.send("hello", "test");
peerOffer.send("test", "second");
});
peerAnswer.ev.once("connect", () => {
console.log("answer connected");
peerAnswer.ev.on("data", data => console.log("ondata answer", data));
peerAnswer.send("hi", "test");
peerAnswer.send("test!!", "third");
});
Fired when the peer wants to send signaling data to the remote peer.
Fired when the peer connection and data channel are ready to use.
Fired when the peer connection and data channel disconnected.
Received a message from the remote peer (via the data channel).
data
will be either a String
or a Buffer/Uint8Array
MIT. Copyright (c) shinyoshiaki.