Implementazione del DataChannel di WebRTC attraverso la libreria Peer.js
Size: 94.51 KB
Language: it
Added: Jun 26, 2014
Slides: 21 pages
Slide Content
PEER.JS
DATACHANNEL DI WEBRTC
Presentazione di / Matteo Colucci@il_matita
Premi N (Next) o P (Previous) per navigare le slide
COS'È WEBRTC
WebRTC is a free, open project that enables web
browsers with Real-Time Communications (RTC)
capabilities via simple JavaScript APIs.
- WebRTC.org
IN PAROLE POVERE
Connessioni peer to peer nel browser per:
Video
Audio
Dati
COME FUNZIONA WEBRTC?
STUN SERVER
Ogni Peer chiede il proprio indirizzo a un server STUN
Il server risponde con l'indirizzo pubblico del peer
OFFER
Il peer trasmette le proprie informazioni (SDP, Session
Description Protocol) a chi si vuole connettere
Il Signaling Channel (canale di trasmissione dell'SDP) può essere
qualunque cosa (Websocket, email, IM, ...)
ANSWER
Il peer ricevente trasmette le proprie informazioni (SDP)
all'offerente
Si instaura la connessione peer to peer
TURN SERVER
(FALLBACK)
Se i peer non riescono a connettersi a causa del firewall si
appoggiano a un server TURN, che fa da proxy tra i peer
COS'È PEER.JS?
WRAPPER DI WEBRTC
1. API di più alto livello
2. Vendor prefix free
3. Set di oggetti Event dispatcher
PEER SERVER
Implementazione del signaling channel
Server open source in node.js - GitHub
PeerServer Cloud gratuito per sviluppatori - PeerServer Cloud
CODICE DI ESEMPIO
var peer = new Peer({ key: 'peer-server-cloud-key' });
peer.on('open', function(peerId) {
// peer connesso al PeerServer
// peerId da mandare agli altri peer
});
peer.on('connection', function(conn) {
initConnection(conn);
});
function initConnection(conn) {
conn.on('open', function() {
conn.on('data', function(data) {
// fai qualcosa con i dati ricevuti
});
conn.send({ foo: 'bar' });
});
}
initConnection(peer.connect(otherPeerId));
INIZIO DEL QUIZ
CONNETTITI TRAMITE
SMARTPHONE
Android && (Chrome || Firefox)
DI QUALE BAND ERA IL
CANTANTE JON ANDERSON?
1. Yes
2. Genesis
3. Korn
4. King Crimson
QUAL E' LA RISPOSTA ALLA
DOMANDA FONDAMENTALE
SULLA VITA, L'UNIVERSO E
TUTTO QUANTO?
1. Dio
2. I soldi
3. Non lo so
4. 42
COM'ERA QUESTA
PRESENTAZIONE?
1. Caruccia
2. Niente di che
3. La più fica
4. Totalmente inutile
CLASSIFICA
ALCUNI PROGETTI
Collaborazione in real-time -
(Quasi)
CDN peer to peer -
TogetherJS
serverless-webrtc
PeerCDN
RISORSE
Peer.js -
Specifiche -
Progetto WebRTC -
Lista di server STUN/TURN accessibili -
PeerJS.com
w3.org
WebRTC.org
gist
GRAZIE PER L'ATTENZIONE
Slides powered by reveal.js