From df5b3eab9031d07aa15a9055f346703cb8e239a6 Mon Sep 17 00:00:00 2001 From: Sergiu Toma Date: Thu, 12 Jan 2023 12:31:52 +0200 Subject: [PATCH 1/9] Check for initiatorConsumerAudio before resume() --- app.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app.js b/app.js index fd7dbf3..31a7e4c 100644 --- a/app.js +++ b/app.js @@ -449,10 +449,12 @@ peers.on('connection', async socket => { console.log(`[consumer-resume] callId ${callId}`) if (isInitiator(callId, socket.id)) { + console.log('🟩'); console.log(`[consumer-resume] isInitiator true`); - await videoCalls[callId].initiatorConsumerVideo.resume(); - await videoCalls[callId].initiatorConsumerAudio.resume(); + (videoCalls[callId].initiatorConsumerAudio) && await videoCalls[callId].initiatorConsumerVideo.resume(); + (videoCalls[callId].initiatorConsumerAudio) && await videoCalls[callId].initiatorConsumerAudio.resume(); } else { + console.log('🟥'); console.log(`[consumer-resume] isInitiator false`); (videoCalls[callId].receiverConsumerVideo) && await videoCalls[callId].receiverConsumerVideo.resume(); (videoCalls[callId].receiverConsumerVideo) && await videoCalls[callId].receiverConsumerAudio.resume(); From c03461047150e2d715a98d5214b7dd8ff7baa2d9 Mon Sep 17 00:00:00 2001 From: Sergiu Toma Date: Thu, 12 Jan 2023 12:38:01 +0200 Subject: [PATCH 2/9] Rollback --- app.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app.js b/app.js index 31a7e4c..a06f4a9 100644 --- a/app.js +++ b/app.js @@ -451,8 +451,8 @@ peers.on('connection', async socket => { if (isInitiator(callId, socket.id)) { console.log('🟩'); console.log(`[consumer-resume] isInitiator true`); - (videoCalls[callId].initiatorConsumerAudio) && await videoCalls[callId].initiatorConsumerVideo.resume(); - (videoCalls[callId].initiatorConsumerAudio) && await videoCalls[callId].initiatorConsumerAudio.resume(); + await videoCalls[callId].initiatorConsumerVideo.resume(); + await videoCalls[callId].initiatorConsumerAudio.resume(); } else { console.log('🟥'); console.log(`[consumer-resume] isInitiator false`); From 5bf31d452f5d9dea2cc519ac86a769605928072f Mon Sep 17 00:00:00 2001 From: Sergiu Toma Date: Thu, 12 Jan 2023 12:38:40 +0200 Subject: [PATCH 3/9] Check for initiatorConsumerAudio before resume() --- app.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app.js b/app.js index a06f4a9..b37597d 100644 --- a/app.js +++ b/app.js @@ -451,13 +451,13 @@ peers.on('connection', async socket => { if (isInitiator(callId, socket.id)) { console.log('🟩'); console.log(`[consumer-resume] isInitiator true`); - await videoCalls[callId].initiatorConsumerVideo.resume(); - await videoCalls[callId].initiatorConsumerAudio.resume(); + await videoCalls[callId]?.initiatorConsumerVideo?.resume(); + await videoCalls[callId]?.initiatorConsumerAudio?.resume(); } else { console.log('🟥'); console.log(`[consumer-resume] isInitiator false`); - (videoCalls[callId].receiverConsumerVideo) && await videoCalls[callId].receiverConsumerVideo.resume(); - (videoCalls[callId].receiverConsumerVideo) && await videoCalls[callId].receiverConsumerAudio.resume(); + await videoCalls[callId]?.receiverConsumerVideo?.resume(); + await videoCalls[callId]?.receiverConsumerAudio?.resume(); } } catch (error) { console.log(`ERROR | consumer-resume | callId ${socketDetails[socket.id]} | ${error.message}`); From d8405eccc7da85a84b6a123b6915cd91880a8bcf Mon Sep 17 00:00:00 2001 From: Sergiu Toma Date: Thu, 12 Jan 2023 12:44:11 +0200 Subject: [PATCH 4/9] Refactor consumer-resume --- app.js | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/app.js b/app.js index b37597d..d4370ad 100644 --- a/app.js +++ b/app.js @@ -441,23 +441,18 @@ peers.on('connection', async socket => { /* - Event sent by the consumer after consuming to resume the pause - - When consuming on consumerTransport, it is initially done with paused: true, here we will resume + - When consuming on consumerTransport, it is initially done with paused: true, here we will resume + - For the initiator we resume the initiatorConsumerAUDIO/VIDEO and for receiver the receiverConsumerAUDIO/VIDEO */ - socket.on('consumer-resume', async () => { + socket.on('consumer-resume',() => { try { const callId = socketDetails[socket.id]; - console.log(`[consumer-resume] callId ${callId}`) - if (isInitiator(callId, socket.id)) { - console.log('🟩'); - console.log(`[consumer-resume] isInitiator true`); - await videoCalls[callId]?.initiatorConsumerVideo?.resume(); - await videoCalls[callId]?.initiatorConsumerAudio?.resume(); + initiatorConsumerVideo && videoCalls[callId].initiatorConsumerVideo?.resume(); + initiatorConsumerAudio && videoCalls[callId].initiatorConsumerAudio?.resume(); } else { - console.log('🟥'); - console.log(`[consumer-resume] isInitiator false`); - await videoCalls[callId]?.receiverConsumerVideo?.resume(); - await videoCalls[callId]?.receiverConsumerAudio?.resume(); + receiverConsumerVideo && videoCalls[callId].receiverConsumerVideo?.resume(); + receiverConsumerAudio && videoCalls[callId].receiverConsumerAudio?.resume(); } } catch (error) { console.log(`ERROR | consumer-resume | callId ${socketDetails[socket.id]} | ${error.message}`); From 1342e812e6a2085462e23ac2f295f6b7f6f736c4 Mon Sep 17 00:00:00 2001 From: Sergiu Toma Date: Thu, 12 Jan 2023 12:45:23 +0200 Subject: [PATCH 5/9] Refactor consumer-resume --- app.js | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/app.js b/app.js index d4370ad..2f1791e 100644 --- a/app.js +++ b/app.js @@ -448,11 +448,19 @@ peers.on('connection', async socket => { try { const callId = socketDetails[socket.id]; if (isInitiator(callId, socket.id)) { - initiatorConsumerVideo && videoCalls[callId].initiatorConsumerVideo?.resume(); - initiatorConsumerAudio && videoCalls[callId].initiatorConsumerAudio?.resume(); + if (videoCalls[callId]?.initiatorConsumerVideo){ + videoCalls[callId].initiatorConsumerVideo?.resume(); + } + if (videoCalls[callId]?.initiatorConsumerAudio){ + videoCalls[callId].initiatorConsumerAudio?.resume(); + } } else { - receiverConsumerVideo && videoCalls[callId].receiverConsumerVideo?.resume(); - receiverConsumerAudio && videoCalls[callId].receiverConsumerAudio?.resume(); + if (videoCalls[callId]?.receiverConsumerVideo) { + videoCalls[callId].receiverConsumerVideo?.resume(); + } + if (videoCalls[callId]?.receiverConsumerAudio) { + videoCalls[callId].receiverConsumerAudio?.resume(); + } } } catch (error) { console.log(`ERROR | consumer-resume | callId ${socketDetails[socket.id]} | ${error.message}`); From e6c08a2c1d4adcbaa63d328159c45d9cb188e175 Mon Sep 17 00:00:00 2001 From: Sergiu Toma Date: Thu, 12 Jan 2023 12:46:46 +0200 Subject: [PATCH 6/9] Refactor consumer-resume v3 --- app.js | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/app.js b/app.js index 2f1791e..9c28924 100644 --- a/app.js +++ b/app.js @@ -448,19 +448,11 @@ peers.on('connection', async socket => { try { const callId = socketDetails[socket.id]; if (isInitiator(callId, socket.id)) { - if (videoCalls[callId]?.initiatorConsumerVideo){ - videoCalls[callId].initiatorConsumerVideo?.resume(); - } - if (videoCalls[callId]?.initiatorConsumerAudio){ - videoCalls[callId].initiatorConsumerAudio?.resume(); - } + videoCalls[callId].initiatorConsumerVideo && videoCalls[callId].initiatorConsumerVideo?.resume(); + videoCalls[callId].initiatorConsumerAudio && videoCalls[callId].initiatorConsumerAudio?.resume(); } else { - if (videoCalls[callId]?.receiverConsumerVideo) { - videoCalls[callId].receiverConsumerVideo?.resume(); - } - if (videoCalls[callId]?.receiverConsumerAudio) { - videoCalls[callId].receiverConsumerAudio?.resume(); - } + videoCalls[callId].receiverConsumerVideo && videoCalls[callId].receiverConsumerVideo?.resume(); + videoCalls[callId].receiverConsumerAudio && videoCalls[callId].receiverConsumerAudio?.resume(); } } catch (error) { console.log(`ERROR | consumer-resume | callId ${socketDetails[socket.id]} | ${error.message}`); From 9716bddd713cf31b86225a1c0921dda21c8306d6 Mon Sep 17 00:00:00 2001 From: Sergiu Toma Date: Thu, 12 Jan 2023 12:50:40 +0200 Subject: [PATCH 7/9] Added log --- app.js | 1 + 1 file changed, 1 insertion(+) diff --git a/app.js b/app.js index 9c28924..af192e9 100644 --- a/app.js +++ b/app.js @@ -446,6 +446,7 @@ peers.on('connection', async socket => { */ socket.on('consumer-resume',() => { try { + console.log(`[consumer-resume] callId ${callId}`) const callId = socketDetails[socket.id]; if (isInitiator(callId, socket.id)) { videoCalls[callId].initiatorConsumerVideo && videoCalls[callId].initiatorConsumerVideo?.resume(); From c037240f47139dcbfdaf384f6664b2f5e9e8e5d3 Mon Sep 17 00:00:00 2001 From: Sergiu Toma Date: Thu, 12 Jan 2023 14:32:48 +0200 Subject: [PATCH 8/9] Refactor consumer-resume --- app.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app.js b/app.js index af192e9..f5e4264 100644 --- a/app.js +++ b/app.js @@ -449,11 +449,11 @@ peers.on('connection', async socket => { console.log(`[consumer-resume] callId ${callId}`) const callId = socketDetails[socket.id]; if (isInitiator(callId, socket.id)) { - videoCalls[callId].initiatorConsumerVideo && videoCalls[callId].initiatorConsumerVideo?.resume(); - videoCalls[callId].initiatorConsumerAudio && videoCalls[callId].initiatorConsumerAudio?.resume(); + videoCalls[callId]?.initiatorConsumerVideo?.resume(); + videoCalls[callId]?.initiatorConsumerAudio?.resume(); } else { - videoCalls[callId].receiverConsumerVideo && videoCalls[callId].receiverConsumerVideo?.resume(); - videoCalls[callId].receiverConsumerAudio && videoCalls[callId].receiverConsumerAudio?.resume(); + videoCalls[callId]?.receiverConsumerVideo?.resume(); + videoCalls[callId]?.receiverConsumerAudio?.resume(); } } catch (error) { console.log(`ERROR | consumer-resume | callId ${socketDetails[socket.id]} | ${error.message}`); From 1b72941a3240099fe9b004f9b5969921add881fa Mon Sep 17 00:00:00 2001 From: Sergiu Toma Date: Thu, 12 Jan 2023 15:09:21 +0200 Subject: [PATCH 9/9] Moved callId in consumer-resume --- app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app.js b/app.js index f5e4264..82b7682 100644 --- a/app.js +++ b/app.js @@ -446,8 +446,8 @@ peers.on('connection', async socket => { */ socket.on('consumer-resume',() => { try { - console.log(`[consumer-resume] callId ${callId}`) const callId = socketDetails[socket.id]; + console.log(`[consumer-resume] callId ${callId}`) if (isInitiator(callId, socket.id)) { videoCalls[callId]?.initiatorConsumerVideo?.resume(); videoCalls[callId]?.initiatorConsumerAudio?.resume();