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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
const internals = {
emitter(name, data, socket) {
socket.emit(name, data);
console.debug(`[${name}] ${JSON.stringify(data)}`);
},
};
export const types = {
/* Listened */
CONNECTION: "connection",
JOIN: "join",
DISCONNECTING: "disconnecting",
RELAY_ICE_CANDIDATE: "relayICECandidate",
RELAY_OFFER: "relayOffer",
RELAY_ANSWER: "relayAnswer",
/* Emitted */
ADD_PEER: "addPeer",
REMOVE_PEER: "removePeer",
OFFER_RECEIVED: "offerReceived",
ANSWER_RECEIVED: "answerReceived",
ICE_CANDIDATE_RECEIVED: "ICECandidateReceived",
};
export function addPeer(peerId, shouldCreateOffer) {
return internals.emitter.bind(null, types.ADD_PEER, {
peerId,
shouldCreateOffer,
});
}
export function removePeer(peerId) {
return internals.emitter.bind(null, types.REMOVE_PEER, {
peerId,
});
}
export function ICECandidateReceived(peerId, candidate) {
return internals.emitter.bind(null, types.ICE_CANDIDATE_RECEIVED, {
peerId,
candidate,
});
}
export function offerReceived(peerId, offer) {
return internals.emitter.bind(null, types.OFFER_RECEIVED, {
peerId,
offer,
});
}
export function answerReceived(peerId, answer) {
return internals.emitter.bind(null, types.ANSWER_RECEIVED, {
peerId,
answer,
});
}
|