Cannot join meeting that requires registering using the Web SDK

Description
I couldn’t log into a meeting (not webinar) using my hosted Web Meeting SDK because of an error on the installation of “sdk-helper”

Browser Console Error

TypeError: Cannot read properties of null (reading 'postMessage')
    at a.value (main.js?v=1.5.0.1811:1)
    at aa (main.js?v=1.5.0.1811:1)
    at vu (main.js?v=1.5.0.1811:1)
    at t.unstable_runWithPriority (main.js?v=1.5.0.1811:1)
    at Yo (main.js?v=1.5.0.1811:1)
    at du (main.js?v=1.5.0.1811:1)
    at tu (main.js?v=1.5.0.1811:1)
    at Qa (main.js?v=1.5.0.1811:1)
    at Fu (main.js?v=1.5.0.1811:1)
    at main.js?v=1.5.0.1811:1

Which Web Meeting SDK version?
2.1.1

Meeting SDK Code Snippets
No customization, using the CDN folder sample app

To Reproduce(If applicable)
Steps to reproduce the behavior:

  1. Go to 'https://maestro-zoom-client-orcin.vercel.app/
  2. Enter meeting id: [REDACTED]
  3. Enter password: [REDACTED]
  4. Try just get to the waiting room because the meeting will be over, but you should at least get to the waiting room

Screenshots
Here is a recording of the problem: Loom | Free Screen & Video Recording Software

Device (please complete the following information):

  • Device: Macbook Pro M1 Max
  • OS: macOS 12.0.1
  • Browser: Chrome
  • Browser Version 96.0.4664.110

Additional context
I was able to join through the official Zoom Web Client by clicking “join by browser”

Greetings, @Felippe,

Thank you for posting in the Zoom Developer Forum. I reviewed the video but can’t reproduce that behavior on my end so I will need additional information. Can you share the meeting configuration set for that meeting? If the meeting is scheduled via API, please share the create meeting API request. This will help diagnose what may be happening.

I will keep an eye out for your response.

Best,
Donte

1 Like

Thanks for the response!

This was someone else’s meeting. Is it not possible to join other people meeting with the SDK Client?

  1. Go to 'https://maestro-zoom-client-orcin.vercel.app/
  2. Enter meeting id: [REDACTED]
  3. Enter password: [REDACTED]
  4. Try just get to the waiting room

@donte.zoom I’m repeating the same steps in a different meeting. Again, a meeting created by someone else, that just requires login (not even registration): Loom | Free Screen & Video Recording Software

@Felippe,

Thank you for posting and calling attention to the behavior you are seeing. I’ve created an internal ticket to have this investigated further [ZSEE-37278]. More to follow as updates become available.

Best,
Donte

Thank you!

Before you getting an answer, can you just tell me if what I’m trying to do should be possible? Joining someone else’s meeting that requires login using the web SDK?

If it should be possible, I’ll wait, otherwise I have to change my plans now

@Felippe,

Yes, you can join someone else’s meeting that requires login using the Web SDK.

Best,
Donte

Awesome!! That is great :grin: will wait for the reply

@Felippe,

Pulled a new version of the Web SDK 2.1.1 and tested it again, and I can confirm sign-in with Only authenticated users can join meetings from Web client and waiting room enabled works. Can you test again and with the sample app and let me know if the behavior persists? Here is a loom video for your reference

Hi @donte.zoom! I was able to login with my localhost. But deployed version running under a URL won’t run it. Is there any special kind of configuration that I need to do related to my domain?

Can you test yourself log in in a login-required-meeting using this client? http://maestro-on-chrome.insidethe.show/

Same code works on localhost

@donte.zoom Hi! Bumping this up. I’ve came to a way of replicating the problem, which is running the default repository with no modifications in the cloud.

What changes should I make to enable authentication when I deploy instead of running locally?

@Felippe,

The authentication workflow should work the same when deployed. It seems like the behavior you are seeing may be related to your network firewall settings. When testing, be sure the appropriate inbound and outbound rules are set for the cloud provider hosting your Application. Down below, I’ve linked our Zoom network firewall or proxy server settings help documentation for reference:

Thanks,
Donte

I have found the solution. It is not proxy. The error that I’ve described in the first posted was about a postMessage method not being found in window.opener.

The window.opener is the browser instance that opened the window that was responsible for authentication. The opener was in my domain address and the authentication popup was in zoom’s address.

Because my Cross-Origin-Opener-Policy was set to same-origin, the browser respected that and didn’t fill in the window.opener for the Zoom popup.

The solution was setting up the Cross-Origin-Opener-Policy on my site so that it could accept the Zoom domain.

Now everything is working!

1 Like

Glad to hear you were able to resolve the issue. I will pass this thread along to our documentation team for consideration. Perhaps we can make updates to our Improve Performance in Chrome help documentation. For other community members, please post the exact solution/resources that you found helpful. This will be of great help, and fellow community members will benefit significantly. I’ve linked related help documentation along with additional resources on that subject below.

Improve Performance in Chrome

https://marketplace.zoom.us/docs/sdk/overview/improve-performance

A guide to enable cross-origin isolation

Enable and debug cross-origin isolated

Cross-Origin Resource Policy (CORP)

Making your website “cross-origin isolated” using COOP and COEP

Enable powerful features: COOP and COEP

Thank you for taking the time to share your insight – it is genuinely appreciated.

Happy Coding,
Donte

1 Like

@donte.zoom Sorry to be the bearer of bad news, but the solution was a false alarm.

Gallery View requires COOP to be “same-origin”.
Login popup requires COOP to be off.

The solution I’ve found was to disable COOP, which makes the gallery view stop working.

How can I have Gallery view AND login at the same time with the Web SDK?

I’m creating another thread to discuss this specific problem: How can I have Gallery view AND login at the same time with the Web SDK?

1 Like

@Felippe Thanks for making a new thread! I’ll follow up with you there ASAP.