diff --git a/app/src/Room.js b/app/src/Room.js index 58e9e533..9366d1d9 100644 --- a/app/src/Room.js +++ b/app/src/Room.js @@ -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); diff --git a/app/src/Server.js b/app/src/Server.js index 633c98f3..ebebdced 100644 --- a/app/src/Server.js +++ b/app/src/Server.js @@ -485,9 +485,9 @@ io.on('connection', (socket) => { }); // add & monitor producer audio level - // if (kind === 'audio') { - // roomList.get(socket.room_id).addProducerToAudioLevelObserver({ producerId: producer_id }); - // } + if (kind === 'audio') { + roomList.get(socket.room_id).addProducerToAudioLevelObserver({ producerId: producer_id }); + } // peer_info audio Or video ON let data = {