From dfc54b5240aec3113b23ece6dd86bb73df395c86 Mon Sep 17 00:00:00 2001 From: "enrico.schwendig" Date: Tue, 12 May 2020 09:13:29 +0200 Subject: [PATCH 1/3] Add mobile safari browser constrain in peer browser check --- modules/RTC/TraceablePeerConnection.js | 28 +++++++++++++------------- modules/browser/BrowserCapabilities.js | 2 +- modules/xmpp/SDP.js | 2 ++ 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/modules/RTC/TraceablePeerConnection.js b/modules/RTC/TraceablePeerConnection.js index 200d443f83..75a8fd99be 100644 --- a/modules/RTC/TraceablePeerConnection.js +++ b/modules/RTC/TraceablePeerConnection.js @@ -2378,20 +2378,20 @@ const _fixAnswerRFC4145Setup = function(offer, answer) { // establishment to exceed at least 1 second. To work around Chrome's // idiosyncracy, don't allow it to send a ClientHello i.e. change its // default choice of setup:active to setup:passive. - if (offer && answer - && offer.media && answer.media - && offer.media.length === answer.media.length) { - answer.media.forEach((a, i) => { - if (SDPUtil.findLine( - offer.media[i], - 'a=setup:actpass', - offer.session)) { - answer.media[i] - = a.replace(/a=setup:active/g, 'a=setup:passive'); - } - }); - answer.raw = answer.session + answer.media.join(''); - } + // if (offer && answer + // && offer.media && answer.media + // && offer.media.length === answer.media.length) { + // // answer.media.forEach((a, i) => { + // // if (SDPUtil.findLine( + // // offer.media[i], + // // 'a=setup:actpass', + // // offer.session)) { + // // answer.media[i] + // // = a.replace(/a=setup:active/g, 'a=setup:passive'); + // // } + // //}); + // answer.raw = answer.session + answer.media.join(''); + // } }; TraceablePeerConnection.prototype.createAnswer = function(constraints) { diff --git a/modules/browser/BrowserCapabilities.js b/modules/browser/BrowserCapabilities.js index fc638c082a..2e61b89bc9 100644 --- a/modules/browser/BrowserCapabilities.js +++ b/modules/browser/BrowserCapabilities.js @@ -308,7 +308,7 @@ export default class BrowserCapabilities extends BrowserDetection { peerIsSafari() { const browser = this._getPeerBrowserName(); - return browser === 'Safari'; + return browser === 'Safari' || browser === 'Mobile Safari'; } /** diff --git a/modules/xmpp/SDP.js b/modules/xmpp/SDP.js index 543b21968a..b4e8ebb8c0 100644 --- a/modules/xmpp/SDP.js +++ b/modules/xmpp/SDP.js @@ -610,7 +610,9 @@ SDP.prototype.jingle2media = function(content) { if (content.find('>transport>fingerprint').length || desc.find('encryption').length) { tmp.proto = sctp.length ? 'DTLS/SCTP' : 'RTP/SAVPF'; + } else { + console.log('xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Hallloo': ); tmp.proto = 'RTP/AVPF'; } if (sctp.length) { From e9b8116847632124517cfacb140438c742455365 Mon Sep 17 00:00:00 2001 From: "enrico.schwendig" Date: Tue, 12 May 2020 09:36:32 +0200 Subject: [PATCH 2/3] Clean up SDP.js --- modules/xmpp/SDP.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/modules/xmpp/SDP.js b/modules/xmpp/SDP.js index 914b17f16c..b3b74852f2 100644 --- a/modules/xmpp/SDP.js +++ b/modules/xmpp/SDP.js @@ -606,9 +606,7 @@ SDP.prototype.jingle2media = function(content) { if (content.find('>transport>fingerprint').length || desc.find('encryption').length) { tmp.proto = sctp.length ? 'DTLS/SCTP' : 'RTP/SAVPF'; - } else { - console.log('xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Hallloo': ); tmp.proto = 'RTP/AVPF'; } if (sctp.length) { From b0ba0dd105b382655768953c54d2ccdddea9f3c1 Mon Sep 17 00:00:00 2001 From: "enrico.schwendig" Date: Tue, 12 May 2020 09:59:25 +0200 Subject: [PATCH 3/3] Comments for special changes --- JitsiConference.js | 2 +- deploy.sh | 4 +++- modules/RTC/TraceablePeerConnection.js | 20 +++++++++++--------- 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/JitsiConference.js b/JitsiConference.js index 4bdaf5c05f..8b76ec9f54 100644 --- a/JitsiConference.js +++ b/JitsiConference.js @@ -3117,7 +3117,7 @@ JitsiConference.prototype._maybeStartOrStopP2P = function(userLeftEvent) { sleep(8000); } - // @FIXME safari can not start p2p session if other peer is chrome! + // @FIXME-JAMEDA safari can not start p2p session if other peer is chrome! if (browser.isSafari() && browser.peerIsChrome()) { myId = 99; peersId = 1; diff --git a/deploy.sh b/deploy.sh index ab74b12be8..b74b68d1f0 100755 --- a/deploy.sh +++ b/deploy.sh @@ -1,7 +1,9 @@ #!/bin/bash npm install +echo "Start Deployment" +echo "Deploy local" #cp lib-jitsi-meet.min.* ../../jameda-telemedicine/jitsi-meet/libs/ cp lib-jitsi-meet.min.* ~/.jitsi-meet-cfg/web/jitsi-meet/libs/ - +echo "Deploy devops" cp lib-jitsi-meet.min.* ~/workspace/patientus/devops/roles/projects/jitsi-meet/files/ \ No newline at end of file diff --git a/modules/RTC/TraceablePeerConnection.js b/modules/RTC/TraceablePeerConnection.js index 96e3e1281f..8c5133d884 100644 --- a/modules/RTC/TraceablePeerConnection.js +++ b/modules/RTC/TraceablePeerConnection.js @@ -2380,18 +2380,20 @@ const _fixAnswerRFC4145Setup = function(offer, answer) { // establishment to exceed at least 1 second. To work around Chrome's // idiosyncracy, don't allow it to send a ClientHello i.e. change its // default choice of setup:active to setup:passive. + + // @FIXME-JAMEDA We deactivate this behavior because we did not have WB // if (offer && answer // && offer.media && answer.media // && offer.media.length === answer.media.length) { - // // answer.media.forEach((a, i) => { - // // if (SDPUtil.findLine( - // // offer.media[i], - // // 'a=setup:actpass', - // // offer.session)) { - // // answer.media[i] - // // = a.replace(/a=setup:active/g, 'a=setup:passive'); - // // } - // //}); + // answer.media.forEach((a, i) => { + // if (SDPUtil.findLine( + // offer.media[i], + // 'a=setup:actpass', + // offer.session)) { + // answer.media[i] + // = a.replace(/a=setup:active/g, 'a=setup:passive'); + // } + // }); // answer.raw = answer.session + answer.media.join(''); // } };