Closed eonbhuwan closed 1 year ago
@horymury
Is this the same as my case with the latest release? I'm trying to allow mobile browsers without Mobile app promo (previously it worked).
If I use disableDeepLinking : true
(or false) together with MOBILE_APP_PROMO: false,
- user can't join any room with mobile browser - with error "Video chat isn't available on mobile. Please use jitsi meet on desktop to join calls." (both on Android/iOS)
After clicking "Use desktop version" user can use mobile browser.
Is this the same as my case with the latest release? I'm trying to allow mobile browsers without Mobile app promo (previously it worked).
If I use
disableDeepLinking : true
(or false) together withMOBILE_APP_PROMO: false,
- user can't join any room with mobile browser - with error "Video chat isn't available on mobile. Please use jitsi meet on desktop to join calls." (both on Android/iOS)After clicking "Use desktop version" user can use mobile browser.
We are not using MOBILE_APP_PROMO, but disableDeepLinking : true was working perfectly before as it was skipping the selection "where to launch jitsi video". But recently it has stopped working and now the selection page has started to appear. User are unable to connect directly on video but has to choose the launch in web option first.
We are not using MOBILE_APP_PROMO, but disableDeepLinking : true was working perfectly before as it was skipping the selection "where to launch jitsi video".
Thanks, anyway, in our case the main problem is the same disableDeepLinking: true
doesn't work as expected.
By the way, if I use this setting in URL, it works. i.e. jitsi-meet-domain.com/RoomName#config.disableDeepLinking=true
, but still, I think everything is well with our interface_config.js
and config.js
because other settings from both files working as they set.
Another refs. with recently updates: https://community.jitsi.org/t/launch-in-web-with-iframe-api/117614/7 https://community.jitsi.org/t/disabledeeplinking-true-has-stopped-working/119920
This is likely the culprit: https://github.com/jitsi/jitsi-meet/pull/12704
@horymury will take a look when available.
Please note it's the end of the year and some of us are trying to stay off and recharge our batteries.
This is likely the culprit: #12704
@horymury will take a look when available.
Please note it's the end of the year and some of us are trying to stay off and recharge our batteries.
Thanks, updated the code as per recent changes and its working now. Please enjoy.
@saghul do we want the deprecated config (if set) to take precedence over the new one for disabling deeplinking?
Thank you.
If the new one is not set, then the old one should work.
If the new one is not set, then the old one should work.
The new one is set on the deploy - so currently the old one is completely ignored
There is definitely still a bug here, possibly because in react/features/deep-linking/functions.ts the getDeepLinkingPage() function does a "return Promise.resolve()", and then back in react/features/app/getRouteToRender.web.ts function _getWebConferenceRoute() cannot convert void to boolean in the "if (deepLinkComponent)".
There is definitely still a bug here, possibly because in react/features/deep-linking/functions.ts the getDeepLinkingPage() function does a "return Promise.resolve()", and then back in react/features/app/getRouteToRender.web.ts function _getWebConferenceRoute() cannot convert void to boolean in the "if (deepLinkComponent)".
@DamjanJovanovic the given if
is falsy
when deepLinkComponent is null or undefined- the above should not be a problem. Could you please describe how the issue you encountered manifests? Have you tried the new config overwrite for disabling/enabling deeplinking? : https://github.com/jitsi/jitsi-meet/blob/f847a3e2e03a1468f4a62b9df35486ca1fdd7b28/config.js#L1214
There is definitely still a bug here, possibly because in react/features/deep-linking/functions.ts the getDeepLinkingPage() function does a "return Promise.resolve()", and then back in react/features/app/getRouteToRender.web.ts function _getWebConferenceRoute() cannot convert void to boolean in the "if (deepLinkComponent)".
@DamjanJovanovic the given
if
isfalsy
when deepLinkComponent is null or undefined- the above should not be a problem. Could you please describe how the issue you encountered manifests? Have you tried the new config overwrite for disabling/enabling deeplinking? :https://github.com/jitsi/jitsi-meet/blob/f847a3e2e03a1468f4a62b9df35486ca1fdd7b28/config.js#L1214
On my self-hosted Debian box, with clients using the IFrame API, in /usr/share/jitsi-meet-web-config/config.js I had both:
disableDeepLinking: true,
deeplinking: {
disabled: true,
},
and it still wasn't working. The only way I got it to work is by hacking the deep linking code to completely disable it with my patch below, then building the patched jitsi-meet project (npm i && make
), then copying libs/app.min.js and libs/external_api.min.js and libs/lib-jitsi-meet.min.* and overwriting the files in /usr/share/jitsi-meet/libs with them, then rebooting. Then, it was crucial to clear the cache/cookies/history/everything in the client web browsers (but why?). Only then did it start working.
While developing this patch, I got some compile-time error about conversion of void to boolean during "make", which is why I return Promise.resolve(false);
instead of return Promise.resolve();
, but I can't seem to reproduce this any more.
diff --git a/react/features/deep-linking/functions.ts b/react/features/deep-linking/functions.ts
index d48b95bee..93b684734 100644
--- a/react/features/deep-linking/functions.ts
+++ b/react/features/deep-linking/functions.ts
@@ -64,9 +64,12 @@ export function getDeepLinkingPage(state: IReduxState) {
|| !room
|| state['features/base/config'].deeplinking?.disabled
|| (isVpaasMeeting(state) && (!appScheme || appScheme === 'com.8x8.meet'))) {
- return Promise.resolve();
+ return Promise.resolve(false);
}
+ // Stop deep linking from EVER HAPPENING:
+ return Promise.resolve(false);
+/*
if (isMobileBrowser()) { // mobile
const mobileAppPromo
= typeof interfaceConfig === 'object'
@@ -80,6 +83,7 @@ export function getDeepLinkingPage(state: IReduxState) {
return _openDesktopApp(state).then(
// eslint-disable-next-line no-confusing-arrow
result => result ? DeepLinkingDesktopPage : undefined);
+*/
}
/**
Debian packages installed are: jitsi-meet 2.0.9078-1 jitsi-meet-prosody 1.0.7629-1 jitsi-meet-turnserver 1.0.7629-1 jitsi-meet-web 1.0.7629-1 jitsi-meet-web-config 1.0.7629-1 jitsi-videobridge2 2.3-59-g5c48e421-1
Download Jitsi App or Launch in Web option is still appearing on mobile browsers. It was working few days back.