Compare commits

...

9 Commits

4 changed files with 101 additions and 6 deletions

71
app.js
View File

@ -227,6 +227,17 @@ peers.on('connection', async (socket) => {
videoCalls[callId].receiverProducerTransport = await createWebRtcTransportLayer(callId, callback); videoCalls[callId].receiverProducerTransport = await createWebRtcTransportLayer(callId, callback);
} else if (!videoCalls[callId].initiatorProducerTransport && isInitiator(callId, socket.id)) { } else if (!videoCalls[callId].initiatorProducerTransport && isInitiator(callId, socket.id)) {
videoCalls[callId].initiatorProducerTransport = await createWebRtcTransportLayer(callId, callback); videoCalls[callId].initiatorProducerTransport = await createWebRtcTransportLayer(callId, callback);
videoCalls[callId].initiatorProducerTransport.observer.on("newproducer", (producer) =>
{
console.log(
"------------------new producer created [worker.pid:%d, router.id:%s, transport.id:%s, producer.id:%s]", producer.id);
producer.observer.on("close", () => {
console.log("-------------------producer closed [producer.id:%s]", producer.id);
});
});
} else { } else {
console.log(`producerTransport has already been defined | callId ${callId}`); console.log(`producerTransport has already been defined | callId ${callId}`);
callback(null); callback(null);
@ -289,11 +300,14 @@ peers.on('connection', async (socket) => {
); );
videoCalls[callId].receiverVideoProducer.on('transportclose', () => { videoCalls[callId].receiverVideoProducer.on('transportclose', () => {
const callId = socketDetails[socket.id];
console.log('transport for this producer closed', callId); console.log('transport for this producer closed', callId);
closeCall(callId); closeCall(callId);
}); });
videoCalls[callId].receiverVideoProducer.on('close', () => {
console.log('receiverVideoProducer for this producer closed', callId);
});
// Send back to the client the Producer's id // Send back to the client the Producer's id
callback && callback &&
callback({ callback({
@ -310,11 +324,30 @@ peers.on('connection', async (socket) => {
); );
videoCalls[callId].initiatorVideoProducer.on('transportclose', () => { videoCalls[callId].initiatorVideoProducer.on('transportclose', () => {
const callId = socketDetails[socket.id];
console.log('transport for this producer closed', callId); console.log('transport for this producer closed', callId);
closeCall(callId); closeCall(callId);
}); });
console.log('🟢');
videoCalls[callId].initiatorVideoProducer.on('close', () => {
console.log('===================1 initiatorVideoProducer for this producer closed', callId);
});
videoCalls[callId].initiatorVideoProducer.observer.on("close", () => {
console.log('====================2 initiatorVideoProducer for this producer closed', callId);
})
// videoCalls[callId].initiatorProducerTransport.observer.on("newproducer", (producer) =>
// {
// console.log(
// "new producer created [worker.pid:%d, router.id:%s, transport.id:%s, producer.id:%s]", producer.id);
// producer.observer.on("close", () => {
// console.log("producer closed [producer.id:%s]", producer.id);
// });
// });
callback && callback &&
callback({ callback({
id: videoCalls[callId].initiatorVideoProducer.id, id: videoCalls[callId].initiatorVideoProducer.id,
@ -332,11 +365,14 @@ peers.on('connection', async (socket) => {
); );
videoCalls[callId].receiverAudioProducer.on('transportclose', () => { videoCalls[callId].receiverAudioProducer.on('transportclose', () => {
const callId = socketDetails[socket.id];
console.log('transport for this producer closed', callId); console.log('transport for this producer closed', callId);
closeCall(callId); closeCall(callId);
}); });
videoCalls[callId].receiverAudioProducer.on('close', () => {
console.log('receiverAudioProducer for this producer closed', callId);
});
// Send back to the client the Producer's id // Send back to the client the Producer's id
callback && callback &&
callback({ callback({
@ -353,11 +389,14 @@ peers.on('connection', async (socket) => {
); );
videoCalls[callId].initiatorAudioProducer.on('transportclose', () => { videoCalls[callId].initiatorAudioProducer.on('transportclose', () => {
const callId = socketDetails[socket.id];
console.log('transport for this producer closed', callId); console.log('transport for this producer closed', callId);
closeCall(callId); closeCall(callId);
}); });
videoCalls[callId].initiatorAudioProducer.on('close', () => {
console.log('initiatorAudioProducer for this producer closed', callId);
});
// Send back to the client the Producer's id // Send back to the client the Producer's id
callback && callback &&
callback({ callback({
@ -645,6 +684,30 @@ const createWebRtcTransportLayer = async (callId, callback) => {
console.log(`transport | closed | calldId ${callId}`); console.log(`transport | closed | calldId ${callId}`);
}); });
transport.observer.on("newdataproducer", (dataProducer) =>
{
console.log(
"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^new data producer created [worker.pid:%d, router.id:%s, transport.id:%s, dataProducer.id:%s]",
worker.pid, router.id, transport.id, dataProducer.id);
dataProducer.observer.on("close", () =>
{
console.log("^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^data producer closed [dataProducer.id:%s]", dataProducer.id);
});
});
transport.observer.on("newproducer", (producer) =>
{
console.log(
"$$$$$$$$$$$$$$$$$$$$$$$$$$new producer created [worker.pid:%d, router.id:%s, transport.id:%s, producer.id:%s]",
worker.pid, router.id, transport.id, producer.id);
producer.observer.on("close", () =>
{
console.log("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$producer closed [producer.id:%s]", producer.id);
});
});
const params = { const params = {
id: transport.id, id: transport.id,
iceParameters: transport.iceParameters, iceParameters: transport.iceParameters,

View File

@ -20353,7 +20353,7 @@ module.exports = yeast;
},{}],94:[function(require,module,exports){ },{}],94:[function(require,module,exports){
module.exports = { module.exports = {
hubAddress: 'https://hub.dev.linx.safemobile.com/', hubAddress: 'https://hub.dev.linx.safemobile.com/',
mediasoupAddress: 'https://video.safemobile.org/', mediasoupAddress: 'https://testing.video.safemobile.org/',
} }
},{}],95:[function(require,module,exports){ },{}],95:[function(require,module,exports){
const io = require('socket.io-client') const io = require('socket.io-client')
@ -20850,6 +20850,14 @@ const getVideoTrask = async (videoParams) => {
console.log('transport closed so consumer closed') console.log('transport closed so consumer closed')
}) })
consumerVideo.on('producerclose', () => {
console.log('===================1 consumerVideo producerclose');
});
consumerVideo.on("producerclose", () => {
console.log('====================2 consumerVideo producerclose');
})
return consumerVideo.track return consumerVideo.track
} }
@ -20865,6 +20873,14 @@ const getAudioTrask = async (audioParams) => {
console.log('transport closed so consumer closed') console.log('transport closed so consumer closed')
}) })
consumerAudio.on('producerclose', () => {
console.log('===================1 consumerAudio producerclose');
});
consumerAudio.on("producerclose", () => {
console.log('====================2 consumerAudio producerclose');
})
const audioTrack = consumerAudio.track const audioTrack = consumerAudio.track
audioTrack.applyConstraints({ audioTrack.applyConstraints({

View File

@ -1,4 +1,4 @@
module.exports = { module.exports = {
hubAddress: 'https://hub.dev.linx.safemobile.com/', hubAddress: 'https://hub.dev.linx.safemobile.com/',
mediasoupAddress: 'https://video.safemobile.org/', mediasoupAddress: 'https://testing.video.safemobile.org/',
} }

View File

@ -492,6 +492,14 @@ const getVideoTrask = async (videoParams) => {
console.log('transport closed so consumer closed') console.log('transport closed so consumer closed')
}) })
consumerVideo.on('producerclose', () => {
console.log('===================1 consumerVideo producerclose');
});
consumerVideo.on("producerclose", () => {
console.log('====================2 consumerVideo producerclose');
})
return consumerVideo.track return consumerVideo.track
} }
@ -507,6 +515,14 @@ const getAudioTrask = async (audioParams) => {
console.log('transport closed so consumer closed') console.log('transport closed so consumer closed')
}) })
consumerAudio.on('producerclose', () => {
console.log('===================1 consumerAudio producerclose');
});
consumerAudio.on("producerclose", () => {
console.log('====================2 consumerAudio producerclose');
})
const audioTrack = consumerAudio.track const audioTrack = consumerAudio.track
audioTrack.applyConstraints({ audioTrack.applyConstraints({