|
|
|
|
@ -49,13 +49,17 @@ module.exports = class Room {
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
this.audioLevelObserver.on('volumes', (volumes) => {
|
|
|
|
|
const volume = volumes[0].volume;
|
|
|
|
|
const { producer, volume } = volumes[0];
|
|
|
|
|
let audioVolume = Math.round(Math.pow(10, volume / 85) * 10); // 1-10
|
|
|
|
|
if (audioVolume > 2) {
|
|
|
|
|
//console.log('PEERS', this.peers);
|
|
|
|
|
//log.debug('PEERS', this.peers);
|
|
|
|
|
this.peers.forEach((peer) => {
|
|
|
|
|
peer.producers.forEach((producer) => {
|
|
|
|
|
if (producer.kind == 'audio' && peer.peer_audio === true) {
|
|
|
|
|
peer.producers.forEach((peerProducer) => {
|
|
|
|
|
if (
|
|
|
|
|
producer.id === peerProducer.id &&
|
|
|
|
|
peerProducer.kind == 'audio' &&
|
|
|
|
|
peer.peer_audio === true
|
|
|
|
|
) {
|
|
|
|
|
let data = { peer_id: peer.id, audioVolume: audioVolume };
|
|
|
|
|
//log.debug('audioLevelObserver', data);
|
|
|
|
|
this.io.emit('audioVolume', data);
|
|
|
|
|
|