Unable to use computer's devices to connect to the meeting Audio

Description
I have integrated zoom web SDK in my current project. It is throwing this error most of the times. Sometimes it connects to meeting and sometimes it doesn’t.

Also when I checked console so there is no issue but I encountered an issue while leaving meeting. Console error comes on leave meeting: Writing error in error section below

Error
While joining:
Zoom is temporarily unable to use your computer’s devices to connect to the meeting audio. Click “Join Audio by Computer” to try again.

On leave meeting:
image

Which version?
1.4.2

Hey @abhishek.badola,

First off, can you try upgrading to the latest Web SDK? 1.7.2.

Thanks,
Tommy

Hi @tommy ,
It’s not working yet, Shows below error, I know the Web client is down but till when this will be up?:

Hi @tommy,
Also there is one error when the dialog box comes Join meeting timeout

Clicking on OK results in below console error:

FYI , I am using angular sample web app with latest zoom SDK.

Hey @abhishek.badola,

Please see the update here about the Web SDK,

https://marketplace.zoom.us/docs/guides/getting-started/stay-up-to-date/upcoming-changes/web-sdk

We are working to fix the issue as soon as possible.

Thanks,
Tommy

Hi @tommy,
I have updated the SDK to 1.7.4 and I wanted to join by computer audio by default .
I am using below code:

const joinByAudioBtn = thisRef.renderer.selectRootElement(document).getElementById(‘pc-join’);

              if (joinByAudioBtn) {

                const interval = setInterval(() => {

                  if (joinByAudioBtn.className.indexOf('disabled') < 0) {

                    joinByAudioBtn.click();

                    clearInterval(interval);

                  }

                }, 1000);

              }

But audio doesn’t work when I programatically click on it. Any workaround for this or option in Web SDK?

Hey @abhishek.badola,

The user would need to click the join by computer audio for the browser to allow and prompt the user to enable audio access. It cannot be done programmatically.

You could limit the buttons that appear however in your settings:

Thanks,
Tommy

Thanks @tommy,
Though I find a solution when using it in iframe. by keeping allow=“autoplay” in iframe attribute.

hi,

does your solution with this iframe attribute work?
i had the same problem, but ‘fixed’ this by disabling ‘user-gesture-required’ policy in chrome…

regards,
hari

Hi @harald.glanzer,
Yeah it worked, actually we were embedding iframe in our website to integrate zoom.

Hi @abhishek.badola

We’re glad that you got it working.

@harald.glanzer Let us know if you still need help.

Hi @michael_p.zoom @tommy,
After updating to zoom web sdk to 1.7.6 , I am unable to join meeting as it is throwing console error . It’s working fine with 1.7.5.

Hey @abhishek.badola,

Can you share your Web SDK init and join code functions so I can debug?

Thanks,
Tommy

Hi @tommy,
Please find the below function calls for init and join and let me know if you need further details. This is working with 1.7.5 version but not with 1.7.6

 ZoomMtg.init({

            leaveUrl: 'https://zoom.us',

            // isSupportChat: false,

            screenShare: false,

            disableInvite: true,

            disableCallOut: true,

            disableRecord: true,

            isShowJoiningErrorDialog: false,

            isLockBottom: false,

            // videoDrag: false,

            // videoHeader: false,

            audioPanelAlwaysOpen: true,

            success() {

              ZoomMtg.join({

                meetingNumber: <meetingID>,

                userName: <name>,

                signature: <signature>,

                apiKey: **<API_KEY>**,

                success: () => {

                },

                error: (err) => {

                }

              });

            },

            error(err) {

            }

          });

Hey @abhishek.badola,

We do not support auto choosing the users mic settings in the Web SDK. The user must join with audio themselves via click on the respective button.

Thanks,
Tommy

Hi @tommy ,
I understand and you have already told about it, then is there any solution that we provide user a button and then trigger to enable audio? Because if that is the case then join by audio computer is same if we implement the same by our own.

Also a suggestion Instead of giving join audio by computer just keep the mic at mute by default and on click of unmute enable the audio right?

But I still didn’t get answer for the last message or issue:

Hey @abhishek.badola,

Can you try adding the passWord property in the Join method?

If you don’t require a password, just set it to an empty string.

ZoomMtg.init({

            leaveUrl: 'https://zoom.us',

            // isSupportChat: false,

            screenShare: false,

            disableInvite: true,

            disableCallOut: true,

            disableRecord: true,

            isShowJoiningErrorDialog: false,

            isLockBottom: false,

            // videoDrag: false,

            // videoHeader: false,

            audioPanelAlwaysOpen: true,

            success() {

              ZoomMtg.join({

                meetingNumber: <meetingID>,

                userName: <name>,

                signature: <signature>,

                apiKey: **<API_KEY>**,

                passWord: "",

                success: () => {

                },

                error: (err) => {

                }

              });

            },

            error(err) {

            }

          });

Thanks,
Tommy

Hi @tommy,
I tried keeping password as empty string. The error was gone but it just shows black screen. I feel as we have set meeting password at backend while creating meeting. So how this will work because we can’t expose password at front end.

Hey @abhishek.badola,

Do you see any browser console errors?

The password will be exposed on the frontend, but your connection to the site hosting the Web SDK is secure so no bad actors can intercept the password.

Thanks,
Tommy