blob: 41155d414edac7452a91970b03ed1b4393a5e726 (
plain)
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
|
'use strict';
const internals = {
peers: {},
createAudioElement(source) {
const audioElement = document.createElement('audio');
audioElement.setAttribute('class', 'junction-call-audio');
audioElement.src = source;
audioElement.autoplay = 'autoplay';
document.querySelector('body').appendChild(audioElement);
return audioElement;
}
};
module.exports = {
add(id, url) {
internals.peers[id] && this.remove(id);
internals.peers[id] = internals.createAudioElement(url)
},
remove(id) {
internals.peers[id] && internals.peers[id].remove();
delete internals.peers[id];
},
count() {
return Object.keys(internals.peers).length;
},
reset() {
internals.peers = {};
document.querySelectorAll('.junction-call-audio').forEach((audioElement) => audioElement.remove());
}
};
|