Your connection has timed out, zoom webSdk

Description
I have an app in angular which 200 people connect to take a class, but between 4 or 5 people have an error when they want to enter the meeting

Error
your connection has timed out and you cannot join the meeting. verify your network connectivity and try again. sdk.
the error is with any browser or device

Which Web Client SDK version?
zoomus/websdk 1.8.5

Hey gnovia
Something is snapping in between the connection and the rendering. Now this can be many things:

  1. True network issues.
  2. Some error while configuration.
  3. Some error while syncing with either servers (both or either the Zoom Endpoint(s) or your server).
  4. A combination of other errors, including some of these, rendering an exhaustive set of errors.

To be absolutely sure, you should be logging any errors both server and client side. This can be done with simple Javascript (or some other way suitable for you), and also Server - Side. There are many libraries out there which will just take any error and dump a log to your server, for you to store and analyze.

That said, I see you are using WebSDK 1.8.5. Do try upgrading to the latest version WebClient SDK 1.9.5 Changelog, which you can integrate using the docs Zoom WebSDK Docs.

Before ending, if there is an error from your side you can actually try inspecting (Ctrl + Shift + I for Windows) or (Cmd + Shift + I for Mac) the console for any errors.

You can then revert back with the quick logs and help me or the staff really to figure out deep and give you a working solution.

Hope this helps,
Regards,
Anweshan Roy Chowdhury

1 Like

Perfect, I will update my development, but I have this problem from versions like 1.7, researching the internet, I see that I am not the only one who has this problem.

In another topic, how can I remove the green button, I don’t want the participants to see the password, and when they click there, all the information of the meeting comes out
logo_ok_pole

Hey @gnovia
Preface of my solution
Hey what you are asking is very well possible. My interest in obscuring info came when I ran a event management page, where people needed to pay to join an event-meeting. If I was foolish enough to give out crucial details of the meeting, unpaid user(s) would join without knowledge (though we had the paid users as a registrant to the meeting).

Enough taking, here is the solution:

If you go to https://marketplacefront.zoom.us/sdk/meeting/web/ZoomMtg.html, you will get all required functions and docs required to work with the SDK.

As we use ZoomMtg.init({params}) to initiate a meeting (documentation of which is found at https://marketplacefront.zoom.us/sdk/meeting/web/ZoomMtg.html#init), here is a code snippet:
PLEASE NOTE: this snippet here is optimized according to your needs.

ZoomMtg.init({
   ... (All other options),
    disableReport: false, // Optional
    // Toggle the meeting header, includes meeting number and topic
   showMeetingHeader: true, // Optional,
   // Toggle the Invite Button Option
   disableInvite: false // Optional
    // Meeting Info to be show in that green box.
    meetingInfo: [ // optional
      'topic', // Topic of the meeting
      'host', // Host of the meeting
      'mn', // Meeting Number
      'pwd', // Passcode of the meeting
      'telPwd', // Numeric Passcode for Dial In Users
      'invite', // Invite Link
      'participant', // Participant ID
      'dc', // I am not completely sure.
      'enctype', // Type of Encryption Being Used
      'report' // Report Meeting
    ]

Now if you modify the following, and keep the meetingInfo array limited as:

ZoomMtg.init({
  ...,
  /*
  * Doing this bit redacts most information.
  * I am not completely sure if this is an empty array, the green mark is invisible or not!!
  */
  meetingInfo: [
   'topic', // Will display only topic
   'host' // Will display only host
  ],
  disableReport: true, // Just for safety, we do this
  /*
   * Combining this with meetingInfo, but there is nothing unsafe about showing
   * the topic.
   * If you feel this is required, toggle a false.
   * This overrides "meetingInfo".
   */
  showMeetingHeader: true, 
  // This will stop participants from inviting others. So set it true.
  disableInvite: true
});

Key Points

  • Make sure you keep this setting if the role is not 1
  • Make sure there aren’t any more loopholes, like a console.log(...) etc which outputs these to the console.

If you have any other problem, feel free to ask.

A similar thread is here:

Thanks,
Anweshan.

2 Likes

Thank you for your guidance @anweshan! Let us know if you have any questions @gnovia

Max

Hello, I update from version 1.8 to version 1.9.5, but it does not enter the meeting with audio, I pass the errors in console

Warning: validateDOMNesting(...): <h1> cannot appear as a descendant of <p>.
    in h1 (created by l)
    in p (created by l)
    in div (created by l)
    in div (created by l)
    in div (created by l)
    in div (created by l)
    in l (created by A)
    in A (created by a)
    in a (created by A)
    in A (created by p)
    in div (created by p)
    in n (created by p)
    in p
vendor.js:101101 Warning: Invalid DOM property `playsinline`. Did you mean `playsInline`?
    in video (created by l)
    in div (created by l)
    in div (created by l)
    in div (created by l)
    in div (created by l)
    in div (created by l)
    in l (created by A)
    in A (created by a)
    in a (created by A)
    in A (created by p)
    in div (created by p)
    in n (created by p)
    in p
vendor.js:76405 [Deprecation] The ScriptProcessorNode is deprecated. Use AudioWorkletNode instead. (https://bit.ly/audio-worklet)
Warning: Failed prop type: The prop `id` is required to make `n` accessible for users of assistive technologies such as screen readers.
    in n (created by Uncontrolled(n))
    in Uncontrolled(n)
    in div
    in Unknown (created by A)
    in A
    in div
    in div
    in Unknown (created by A)
    in A
    in div
    in div
    in Unknown (created by A)
    in A (created by s)
    in div (created by s)
    in div (created by s)
    in s (created by A)
    in A (created by b)
    in div (created by b)
    in b (created by A)
    in A (created by a)
    in div (created by a)
    in a (created by A)
    in A (created by p)
    in div (created by p)
    in n (created by p)
    in p
[Deprecation] SharedArrayBuffer will require cross-origin isolation as of M92, around July 2021. See <URL> for more details.
Uncaught RuntimeError: memory access out of bounds
    at <anonymous>:wasm-function[2010]:0x46bd4
    at <anonymous>:wasm-function[1887]:0x4295a
    at <anonymous>:wasm-function[1888]:0x42a1e
    at <anonymous>:wasm-function[3572]:0x96c2d
    at <anonymous>:wasm-function[3574]:0x97038
    at <anonymous>:wasm-function[1255]:0x2f777
    at <anonymous>:wasm-function[400]:0x1502d
    at <anonymous>:wasm-function[153]:0xb8a0
    at _Video_Encode (<anonymous>:wasm-function[152]:0xb82f)
    at Module.__Video_Encode (075d0d6f-f415-4b55-b715-1a27a61f0e8c:1)

Enter the meeting well, only the audio options do not come out, the meeting cannot be heard-

Hi,

Did you change reference to 1.9.5 version in meeting.js as well?

Frederik

Hi frederik.gysel, yes
the code is fine, I have that line

Hey @gnovia,

There have been a lot of changes to how the Web SDK is implemented since version 1.8. It might be helpful to reference our Sample Web App or Sample Angular App to spot any potential issues.

If that doesn’t help, are you able to provide a public git repo of your code so that I can test this on my end?

Thanks,
Max