|
vor 12 Jahren | |
---|---|---|
bin | vor 12 Jahren | |
deps | vor 12 Jahren | |
dist | vor 12 Jahren | |
docs | vor 12 Jahren | |
examples | vor 12 Jahren | |
lib | vor 12 Jahren | |
test | vor 12 Jahren | |
.gitignore | vor 12 Jahren | |
.gitmodules | vor 12 Jahren | |
LICENSE | vor 12 Jahren | |
Makefile | vor 12 Jahren | |
README.md | vor 12 Jahren | |
changelog.md | vor 12 Jahren | |
package.json | vor 12 Jahren |
PeerJS provides a complete, configurable, and easy-to-use peer-to-peer API built on top of WebRTC, supporting both WebRTC data channels and media streams.
Include the library
<script src="http://cdn.peerjs.com/0.3/peer.js"></script>
Peer
var peer = new Peer('thing1', {key: 'myapikey'}); // You can omit the ID if you want to get a random one from the server.
/** Data connections. */
peer.on('connection', function(connection) {
connection.on('data', function(data){
// Will print 'hi!'
console.log(data);
});
});
/** Media calls. */
var getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;
peer.on('call', function(call) {
getUserMedia({video: true, audio: true}, function(stream) {
call.on('stream', function(stream) {
// Show stream in some <video> element.
});
call.answer(stream); // Answer any call with an A/V stream.
}, function(err) {
console.log(err);
});
});
Connecting peer
var peer = new Peer('thing2', {key: 'myapikey'}); // You can omit the ID if you want to get a random one from the server.
/** Data connections. */
var connection = peer.connect('thing1');
connection.on('open', function() {
connection.send('hi!'); // Send 'hi!' when the data connection opens.
});
/** Media calls. */
var getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;
getUserMedia({video: true, audio: true}, function(stream) {
var call = peer.call('thing1', stream);
call.on('stream', function(stream) {
// Show stream in some <video> element.
});
}, function(err) {
console.log(err);
});